@charset "UTF-8";
html {
  font-size: 62.5%;
  font-family: "Zen Maru Gothic", sans-serif;
  color: #4d4d4d;
  line-height: 1.5;
  letter-spacing: 0.05em;
  font-weight: 500;
  font-style: normal;
}

body {
  font-size: 1.6rem;
}

img {
  width: 100%;
  vertical-align: bottom;
}

header .header__logo {
  width: 65px;
  position: absolute;
  top: 52px;
  left: 36px;
  z-index: 100;
}
@media screen and (min-width: 821px) {
  header .header__logo {
    width: 122px;
    top: 70px;
  }
}

main {
  overflow: hidden;
  padding-bottom: 90px;
}
@media screen and (min-width: 821px) {
  main {
    padding-bottom: 0;
  }
}

@media screen and (min-width: 821px) {
  .sp {
    display: none !important;
  }
}

.pc {
  display: none;
}
@media screen and (min-width: 821px) {
  .pc {
    display: block;
  }
}

.sec-ttl {
  text-align: center;
  font-size: 3.6rem;
  font-weight: 500;
  line-height: 1.2;
  color: #1f2851;
  margin-bottom: 30px;
}
@media screen and (min-width: 821px) {
  .sec-ttl {
    font-size: 4rem;
    margin-bottom: 50px;
  }
}
.sec-ttl span {
  font-family: "Libre Baskerville", serif;
  font-size: 1.2rem;
  color: #fff;
  display: block;
  text-align: center;
  background: #1f2851;
  width: 180px;
  margin: 4px auto 0;
  padding: 6px 0;
}
@media screen and (min-width: 821px) {
  .sec-ttl span {
    margin: 10px auto 0;
  }
}

@media screen and (min-width: 821px) {
  .mv {
    position: relative;
  }
}
.mv .mv__notice {
  background: #ffb39d;
  background: linear-gradient(90deg, rgb(255, 179, 157) 0%, rgb(255, 149, 136) 50%, rgb(255, 219, 167) 100%);
  padding: 10px 0;
  font-size: 1.4rem;
  color: #fff;
  text-align: center;
  font-weight: 500;
}
@media screen and (min-width: 821px) {
  .mv .mv__notice {
    font-size: 2rem;
  }
}
.mv .mv__image {
  margin-top: -6px;
}
@media screen and (min-width: 821px) {
  .mv .mv__image {
    margin-top: 0;
  }
}
.mv .mv__btn {
  display: flex;
  width: 100%;
  position: fixed;
  bottom: 0;
  left: 0;
  background: #fff;
  z-index: 100;
}
@media screen and (min-width: 821px) {
  .mv .mv__btn {
    background: none;
    position: absolute;
    transform: translateX(-50%);
    left: 50%;
    bottom: inherit;
    justify-content: center;
    gap: 20px;
    bottom: 5%;
  }
}
.mv .mv__btn a {
  width: 50%;
  position: relative;
  overflow: hidden;
}
@media screen and (min-width: 821px) {
  .mv .mv__btn a {
    max-width: 31.25%;
    border-radius: 50px;
  }
}
.mv .mv__btn a::before {
  position: absolute;
  content: "";
  display: inline-block;
  top: -180px;
  left: 0;
  width: 30px;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.5);
  -webkit-animation: btn_animation 2.5s ease-in-out infinite;
  animation: btn_animation 2.5s ease-in-out infinite;
  border-radius: 50px;
}

@-webkit-keyframes btn_animation {
  0% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0;
  }
  80% {
    -webkit-transform: scale(0) rotate(45deg);
    opacity: 0.5;
  }
  81% {
    -webkit-transform: scale(4) rotate(45deg);
    opacity: 1;
  }
  100% {
    -webkit-transform: scale(50) rotate(45deg);
    opacity: 0;
  }
}
.p-point__bg {
  padding: 50px 20px 70px;
  background: url("../img/bg-point-sp.webp") no-repeat top/cover;
  background-position: bottom;
}
@media screen and (min-width: 821px) {
  .p-point__bg {
    background: url("../img/bg-point.webp") no-repeat top/cover;
    background-position: bottom;
    padding: 60px 10px 170px;
  }
}
.p-point__logo {
  width: 80px;
  margin: 0 auto 30px;
}
@media screen and (min-width: 821px) {
  .p-point__logo {
    width: 122px;
    margin: 0 auto 50px;
  }
}
.p-point__title {
  width: 100%;
  margin: 0 auto 40px;
}
@media screen and (min-width: 821px) {
  .p-point__title {
    width: 31.25%;
    margin: 0 auto 60px;
  }
}
.p-point__list-wrap {
  display: grid;
  gap: 30px 16px;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (min-width: 821px) {
  .p-point__list-wrap {
    grid-template-columns: repeat(4, 1fr);
    max-width: 1000px;
    margin: 0 auto;
    gap: 16px;
  }
}
.p-point__item {
  background: #fff;
  border-radius: 20px;
  position: relative;
  padding: 30px 0 20px;
}
@media screen and (min-width: 821px) {
  .p-point__item {
    padding: 40px 0 30px;
  }
}
.p-point__number {
  position: absolute;
  top: -20px;
  left: 14px;
  width: 44px;
  height: 44px;
}
@media screen and (min-width: 821px) {
  .p-point__number {
    width: 64px;
    height: 64px;
    top: -30px;
  }
}
.p-point__draw {
  margin-bottom: 12px;
}
.p-point__draw img {
  height: 70px;
  display: block;
  width: auto;
  margin: 0 auto;
}
@media screen and (min-width: 821px) {
  .p-point__draw img {
    height: 134px;
  }
}
.p-point__text {
  text-align: center;
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.5;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (min-width: 821px) {
  .p-point__text {
    font-size: 2.6rem;
  }
}
.p-point__text strong {
  color: #ff765e;
  font-weight: 500;
}
.p-point__text span {
  color: #1f2851;
  display: inline-block;
  background: linear-gradient(transparent 75%, #fffcaf 75%);
}
.p-point__contents {
  padding: 30px 18px;
  position: relative;
}
@media screen and (min-width: 821px) {
  .p-point__contents {
    padding: 50px 10px;
  }
}
.p-point__deco-sp img {
  position: absolute;
  width: 305px;
  top: 6%;
  right: 0;
  z-index: -1;
}
.p-point__deco-sp img:nth-child(2) {
  width: 244px;
  top: 22%;
  right: inherit;
  left: 0;
}
.p-point__deco-sp img:nth-child(3) {
  width: 226px;
  top: 34%;
}
.p-point__deco-sp img:nth-child(4) {
  width: 286px;
  right: inherit;
  left: 0;
  top: 50%;
}
.p-point__deco-sp img:nth-child(5) {
  width: 241px;
  top: 66%;
}
.p-point__deco-pc img {
  position: absolute;
  width: 480px;
  top: -2%;
  right: 0%;
  z-index: -1;
}
.p-point__deco-pc img:nth-child(2) {
  width: 574px;
  top: 12%;
  right: inherit;
  left: 0;
}
.p-point__deco-pc img:nth-child(3) {
  width: 580px;
  top: 32%;
}
.p-point__deco-pc img:nth-child(4) {
  width: 440px;
  right: inherit;
  left: 10%;
  top: 54%;
}
.p-point__deco-pc img:nth-child(5) {
  width: 560px;
  top: 69%;
  right: 0;
}
.p-point__deco-pc img:nth-child(6) {
  width: 594px;
  top: 83%;
  right: inherit;
  left: 0;
}
.p-point__content {
  display: flex;
  flex-direction: column;
  margin-bottom: 30px;
}
@media screen and (min-width: 821px) {
  .p-point__content {
    flex-direction: row;
    align-items: flex-start;
    max-width: 800px;
    margin: 0 auto 50px;
    gap: 30px;
  }
}
.p-point__content-text {
  display: contents;
}
@media screen and (min-width: 821px) {
  .p-point__content-text {
    display: block;
  }
}
.p-point__content-title {
  color: #1f2851;
  font-size: 3rem;
  font-weight: 500;
  line-height: 1.6;
  order: 0;
  margin-bottom: 20px;
  display: flex;
  align-items: center;
}
@media screen and (min-width: 821px) {
  .p-point__content-title {
    font-size: 3.2rem;
  }
}
.p-point__content-title::before {
  content: "";
  display: block;
  width: 80px;
  height: 80px;
  background: url("../img/point-num01.webp") no-repeat center/contain;
  flex-shrink: 0;
  margin-right: 14px;
}
@media screen and (min-width: 821px) {
  .p-point__content-title::before {
    width: 96px;
    height: 96px;
    margin-right: 20px;
  }
}
.p-point__content-title span {
  border-bottom: 3px dotted #1f2851;
  display: inline-block;
  line-height: 1.4;
}
.p-point__content-title strong {
  font-weight: 500;
  color: #ff765e;
}
.p-point__content-image {
  order: 1;
  position: relative;
  margin-bottom: 60px;
}
@media screen and (min-width: 821px) {
  .p-point__content-image {
    max-width: 380px;
    flex-shrink: 0;
    margin: 0;
  }
}
.p-point__content-image figcaption {
  position: absolute;
  bottom: -48px;
  left: 0;
}
@media screen and (min-width: 821px) {
  .p-point__content-image figcaption {
    bottom: -18px;
    left: 16px;
  }
}
.p-point__content-image figcaption span {
  display: inline-block;
  font-size: 1.8rem;
  color: #1f2851;
  font-weight: 500;
  background: #fff;
  margin-bottom: 5px;
  padding: 4px;
  box-shadow: 1px 1px 3px rgb(175, 175, 175);
}
@media screen and (min-width: 821px) {
  .p-point__content-image figcaption span {
    font-size: 2.3rem;
  }
}
.p-point__content-image figcaption span strong {
  color: #3cd2af;
  font-weight: 500;
}
.p-point__content-carrer {
  margin-bottom: 10px;
  order: 2;
}
@media screen and (min-width: 821px) {
  .p-point__content-carrer {
    margin-bottom: 20px;
  }
}
.p-point__content-carrer h4 {
  display: flex;
  justify-content: center;
  align-items: center;
  color: #1f2851;
  font-size: 1.7rem;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  margin-bottom: 10px;
}
@media screen and (min-width: 821px) {
  .p-point__content-carrer h4 {
    font-size: 2rem;
  }
}
.p-point__content-carrer h4 span {
  flex-shrink: 0;
  width: 105px;
  margin: 0 8px;
}
@media screen and (min-width: 821px) {
  .p-point__content-carrer h4 span {
    width: 123px;
  }
}
.p-point__content-carrer h4::before, .p-point__content-carrer h4::after {
  content: "";
  display: block;
  width: 50%;
  height: 1px;
  background: #1f2851;
}
.p-point__content-carrer ul {
  display: flex;
  justify-content: space-between;
}
.p-point__content-carrer ul li {
  text-align: center;
  width: 32%;
  color: #1f2851;
  font-weight: 500;
  background: rgba(255, 252, 175, 0.5);
  border-radius: 8px;
  padding: 10px 0;
  line-height: 1.2;
}
@media screen and (min-width: 821px) {
  .p-point__content-carrer ul li {
    font-size: 1.8rem;
  }
}
.p-point__content-description {
  order: 2;
  line-height: 1.875;
  font-weight: 500;
  letter-spacing: normal;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (min-width: 821px) {
  .p-point__content-description {
    font-size: 1.8rem;
    line-height: 1.6666666667;
  }
}
.p-point__content-description span {
  color: #ff765e;
}
.p-point__content:nth-of-type(2) .p-point__content-title::before {
  background: url("../img/point-num02.webp") no-repeat center/contain;
}
.p-point__content:nth-of-type(3) .p-point__content-title::before {
  background: url("../img/point-num03.webp") no-repeat center/contain;
}
.p-point__content:nth-of-type(4) .p-point__content-title::before {
  background: url("../img/point-num04.webp") no-repeat center/contain;
}
.p-point__content:last-child {
  margin-bottom: 0;
}
@media screen and (min-width: 821px) {
  .p-point__content:nth-child(even) {
    flex-direction: row-reverse;
  }
}

.p-voice {
  background: url("../img/bg-voice-sp.webp") no-repeat top/cover;
  background-position: top;
  padding: 60px 20px;
}
@media screen and (min-width: 821px) {
  .p-voice {
    background: url("../img/bg-voice.webp") no-repeat top/cover;
    background-position: top;
    padding: 90px 10px;
  }
}
.p-voice__item {
  display: flex;
  flex-wrap: wrap;
  position: relative;
  z-index: 1;
  margin-bottom: 50px;
  padding-bottom: 50px;
  border-bottom: 3px dotted #1f2851;
}
@media screen and (min-width: 821px) {
  .p-voice__item {
    max-width: 800px;
    align-items: center;
    margin: 0 auto;
    flex-wrap: inherit;
    gap: 50px;
    border: none;
  }
}
.p-voice__item-image {
  width: 150px;
  margin-right: 10px;
}
@media screen and (min-width: 821px) {
  .p-voice__item-image {
    width: 300px;
    flex-shrink: 0;
    margin-right: 0;
  }
}
.p-voice__item:nth-child(2) .p-voice__item-image {
  order: 1;
  margin: 0 0 0 10px;
}
@media screen and (min-width: 821px) {
  .p-voice__item:nth-child(2) .p-voice__item-image {
    order: 0;
  }
}
.p-voice__item:nth-child(2) .p-voice__text .p-voice__text-list li::before {
  background: url("../img/icon-check-green.svg") no-repeat center top/cover;
}
.p-voice__item:nth-child(2) .p-voice__text .p-voice__text-content {
  order: 0;
}
.p-voice__item:nth-child(2) .p-voice__text .p-voice__text-content .p-voice__text-seido {
  margin: 0 0 10px calc(50% - 50vw);
  border-radius: 0 15px 15px 0;
  text-align: right;
  color: #3cd2af;
}
@media screen and (min-width: 821px) {
  .p-voice__item:nth-child(2) .p-voice__text .p-voice__text-content .p-voice__text-seido {
    margin: 0 0 14px 0;
  }
}
.p-voice__item:nth-child(2) .p-voice__explanation {
  order: 2;
}
@media screen and (min-width: 821px) {
  .p-voice__item:nth-child(2) .p-voice__text-list {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
  }
}
.p-voice__item:nth-child(2) .en {
  right: inherit;
  left: -28px;
  top: -27px;
}
@media screen and (min-width: 821px) {
  .p-voice__item:nth-child(2) .en {
    left: inherit;
    right: -150px;
    top: inherit;
    bottom: 10%;
  }
}
.p-voice__item:last-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
@media screen and (min-width: 821px) {
  .p-voice__item:last-child .p-voice__text-list {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
  }
}
@media screen and (min-width: 821px) {
  .p-voice__item:last-child .en {
    bottom: -10px;
    right: -160px;
  }
}
.p-voice__text {
  display: contents;
}
@media screen and (min-width: 821px) {
  .p-voice__text {
    display: block;
  }
}
.p-voice__text-content {
  width: calc(100% - 160px);
}
@media screen and (min-width: 821px) {
  .p-voice__text-content {
    width: auto;
  }
}
.p-voice__text-title {
  font-weight: 500;
  line-height: 1.375;
  margin-bottom: 10px;
  color: #1f2851;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.p-voice__text-seido {
  font-size: 1.6rem;
  color: #ff765e;
  font-weight: 500;
  margin-bottom: 10px;
  background: #fff;
  padding: 7px 16px;
  margin-right: calc(50% - 50vw);
  border-radius: 15px 0 0 15px;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (min-width: 821px) {
  .p-voice__text-seido {
    margin: 0 0 14px 0;
    display: inline-block;
    border-radius: 0 15px 15px 0;
  }
}
.p-voice__text-list li {
  display: flex;
  align-items: center;
  margin-bottom: 6px;
}
.p-voice__text-list li::before {
  content: "";
  display: block;
  width: 12px;
  height: 11px;
  background: url("../img/icon-check-orange.svg") no-repeat center top/cover;
  margin-right: 4px;
}
.p-voice__text-list li span {
  font-size: 1.8rem;
  font-weight: 500;
  color: #1f2851;
  font-family: "Zen Kaku Gothic New", sans-serif;
  background: linear-gradient(transparent 75%, #fffcaf 75%);
}
@media screen and (min-width: 821px) {
  .p-voice__text-list li span {
    font-size: 2rem;
  }
}
.p-voice__explanation {
  font-size: 1.6rem;
  color: #1f2851;
  line-height: 1.75;
  font-family: "Zen Kaku Gothic New", sans-serif;
  margin-top: 16px;
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 821px) {
  .p-voice__explanation {
    letter-spacing: 0.01em;
    margin-top: 20px;
  }
}
.p-voice__explanation span {
  color: #f95461;
  font-weight: bold;
}
.p-voice .en {
  color: rgba(255, 255, 255, 0.5);
  font-family: "Libre Baskerville", serif;
  font-size: 6.6rem;
  writing-mode: vertical-rl;
  position: absolute;
  z-index: -1;
  top: -14px;
  right: -28px;
  height: auto;
  font-style: italic;
  white-space: nowrap;
}
@media screen and (min-width: 821px) {
  .p-voice .en {
    transform: rotate(0);
    top: inherit;
    bottom: 20px;
    right: -100px;
    text-align: right;
    height: auto;
    font-size: 6.2rem;
    writing-mode: inherit;
  }
}

.p-number {
  background: url("../img/bg-number-sp.webp") no-repeat top/cover;
  background-position: bottom;
  padding: 60px 20px 80px;
}
@media screen and (min-width: 821px) {
  .p-number {
    background: url("../img/bg-number.webp") no-repeat top/cover;
    background-position: bottom;
    padding: 90px 10px 180px;
  }
}
@media screen and (min-width: 821px) {
  .p-number__list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 50px 32px;
    max-width: 1000px;
    margin: 0 auto;
  }
}
.p-number__list .p-number__item {
  margin-bottom: 30px;
}
@media screen and (min-width: 821px) {
  .p-number__list .p-number__item {
    margin-bottom: 0;
  }
}
.p-number__list .p-number__item:last-child {
  margin-bottom: 0 !important;
}
.p-number__list .p-number__item:nth-child(even) h3 {
  color: #ff765e;
}
@media screen and (min-width: 821px) {
  .p-number__list .p-number__item:nth-child(3) {
    order: 4;
  }
}
.p-number__list h3 {
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 2.4rem;
  color: #3cd2af;
  margin-bottom: 14px;
}
@media screen and (min-width: 821px) {
  .p-number__list h3 {
    font-size: 3.4rem;
  }
}
.p-number__list h3 img {
  height: 20px;
  width: auto;
  margin-right: 8px;
}
@media screen and (min-width: 821px) {
  .p-number__list h3 img {
    height: 32px;
  }
}

.p-recruit {
  padding: 50px 20px;
}
.p-recruit .p-recruit__item {
  display: flex;
  align-items: center;
  position: relative;
  margin-bottom: 30px;
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item {
    max-width: 660px;
    margin: 0 auto 40px;
  }
}
.p-recruit .p-recruit__item:last-child {
  margin-bottom: 0;
}
.p-recruit .p-recruit__item:nth-child(2) .p-recruit__item-deco {
  right: -20px;
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item:nth-child(2) .p-recruit__item-deco {
    width: 220px;
    right: 40px;
    top: -20px;
  }
}
.p-recruit .p-recruit__item:nth-child(3) .p-recruit__item-deco {
  right: -37px;
  width: 171px;
  top: -22px;
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item:nth-child(3) .p-recruit__item-deco {
    width: 250px;
  }
}
.p-recruit .p-recruit__item:nth-child(4) .p-recruit__item-deco {
  right: -10px;
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item:nth-child(4) .p-recruit__item-deco {
    width: 220px;
    top: -45px;
  }
}
.p-recruit .p-recruit__item:nth-child(4) .p-recruit__item-image::before {
  display: none;
}
.p-recruit .p-recruit__item-image {
  width: 55px;
  height: 55px;
  flex-shrink: 0;
  margin-right: 14px;
  position: relative;
}
.p-recruit .p-recruit__item-image::before {
  content: "";
  display: block;
  width: 1px;
  height: 16px;
  background: #ffdaca;
  position: absolute;
  transform: translateX(-50%);
  left: 50%;
  bottom: -22px;
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item-image::before {
    height: 30px;
    bottom: -36px;
  }
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item-image {
    width: 100px;
    height: 100px;
    margin-right: 20px;
  }
}
.p-recruit .p-recruit__item-text {
  flex-shrink: 0;
  font-size: 1.8rem;
  color: #1f2851;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.4444444444;
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item-text {
    font-size: 3.2rem;
  }
}
.p-recruit .p-recruit__item-text small {
  font-size: 1.6rem;
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item-text small {
    font-size: 2.8rem;
  }
}
.p-recruit .p-recruit__item-deco {
  width: 140px;
  position: absolute;
  right: -55px;
  top: -27px;
  z-index: -1;
}
@media screen and (min-width: 821px) {
  .p-recruit .p-recruit__item-deco {
    width: 300px;
    right: -58px;
    top: -68px;
  }
}

.p-faq {
  background: url("../img/bg-faq-sp.webp") no-repeat top/cover;
  background-position: top;
  padding: 60px 20px;
}
@media screen and (min-width: 821px) {
  .p-faq {
    padding: 170px 10px 70px;
    background: url("../img/bg-faq.webp") no-repeat top/cover;
    background-position: top;
  }
}
.p-faq .p-faq__item {
  margin-bottom: 24px;
}
@media screen and (min-width: 821px) {
  .p-faq .p-faq__item {
    max-width: 800px;
    margin: 0 auto 30px;
  }
}
.p-faq .p-faq__item:nth-child(2) .p-faq__item-question .q::before {
  background: url("../img/q02.svg") no-repeat center top/contain;
}
.p-faq .p-faq__item:nth-child(3) .p-faq__item-question .q::before {
  background: url("../img/q03.svg") no-repeat center top/contain;
}
.p-faq .p-faq__item:nth-child(4) .p-faq__item-question .q::before {
  background: url("../img/q04.svg") no-repeat center top/contain;
}
.p-faq .p-faq__item:nth-child(5) .p-faq__item-question .q::before {
  background: url("../img/q05.svg") no-repeat center top/contain;
}
.p-faq .p-faq__item:nth-child(6) .p-faq__item-question .q::before {
  background: url("../img/q06.svg") no-repeat center top/contain;
}
.p-faq .p-faq__item .p-faq__item-question {
  margin-left: 12px;
}
.p-faq .p-faq__item .p-faq__item-question .q {
  padding: 12px 10px 12px 32px;
  background: #fff;
  font-size: 2rem;
  letter-spacing: 0.08em;
  color: #1f2851;
  line-height: 1.3;
  font-family: "Zen Kaku Gothic New", sans-serif;
  margin-bottom: 5px;
  border-radius: 10px 10px 0 0;
  position: relative;
}
@media screen and (min-width: 821px) {
  .p-faq .p-faq__item .p-faq__item-question .q {
    padding: 20px 20px 20px 40px;
  }
}
.p-faq .p-faq__item .p-faq__item-question .q::before {
  content: "";
  display: block;
  width: 47px;
  height: 47px;
  background: url("../img/icon-q.svg") no-repeat center top/contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -21px;
}
.p-faq .p-faq__item .p-faq__item-question .a {
  padding: 12px 12px 12px 32px;
  background: #fff;
  color: #1f2851;
  line-height: 1.5;
  border-radius: 0 0 10px 10px;
  position: relative;
  font-family: "Zen Kaku Gothic New", sans-serif;
  letter-spacing: normal;
}
@media screen and (min-width: 821px) {
  .p-faq .p-faq__item .p-faq__item-question .a {
    font-size: 1.8rem;
    padding: 20px 20px 20px 40px;
  }
}
.p-faq .p-faq__item .p-faq__item-question .a::before {
  content: "";
  display: block;
  width: 47px;
  height: 47px;
  background: url("../img/icon-a.svg") no-repeat center top/contain;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -21px;
}

.p-guide {
  padding: 60px 20px;
}
@media screen and (min-width: 821px) {
  .p-guide {
    padding: 70px 20px;
  }
}
.p-guide dl {
  margin: 0 calc(50% - 50vw);
}
@media screen and (min-width: 821px) {
  .p-guide dl {
    margin: 0 auto;
    max-width: 800px;
  }
}
.p-guide dl .wrapper {
  border-bottom: 1px solid #dddddd;
  padding: 16px;
  display: flex;
  font-size: 1.4rem;
  color: #1f2851;
  align-items: flex-start;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (min-width: 821px) {
  .p-guide dl .wrapper {
    font-size: 1.6rem;
  }
}
.p-guide dl .wrapper dt {
  width: 25%;
  line-height: 1.5;
}
@media screen and (min-width: 821px) {
  .p-guide dl .wrapper dt {
    width: 20%;
  }
}
.p-guide dl .wrapper dd {
  flex: 1;
  line-height: 1.5;
}

.p-form {
  padding: 50px 20px;
  background: #f4f2f2;
  position: relative;
  /* タブのスタイル */
  /* タブコンテンツのスタイル */
}
@media screen and (min-width: 821px) {
  .p-form {
    padding: 70px 20px 100px;
  }
}
.p-form .required-text {
  text-align: center;
  color: #1f2851;
  margin: 20px 0;
}
.p-form .required-text span {
  color: #f95461;
}
@media screen and (min-width: 821px) {
  .p-form .required-text {
    margin: 30px 0;
  }
}
.p-form .required {
  color: #f95461;
}
.p-form .p-form__tabs {
  display: flex;
  margin-bottom: 20px;
  flex-wrap: wrap;
}
@media screen and (min-width: 821px) {
  .p-form .p-form__tabs {
    justify-content: center;
  }
}
.p-form .p-form__tab {
  color: #1f2851;
  border: none;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  background: none;
  font-size: 1.8rem;
  display: flex;
  align-items: center;
  position: relative;
  padding: 0 10px 0 0;
}
.p-form .p-form__tab::before {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  border: 1px solid #1f2851;
  margin-right: 6px;
}
.p-form .p-form__tab::after {
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #1f2851;
  position: absolute;
  left: 2px;
  display: none;
}
@media screen and (min-width: 821px) {
  .p-form .form-wrapper {
    max-width: 590px;
    margin: 0 auto;
  }
}
.p-form .p-form__tab.active::after {
  display: block;
}
.p-form .p-form__tab-content {
  display: none;
}
.p-form .p-form__tab-content.active {
  display: block;
}
.p-form .form-group {
  display: block;
  margin-bottom: 20px;
  /* Chrome, Safari, Edge */
  /* Firefox */
}
@media screen and (min-width: 821px) {
  .p-form .form-group {
    display: flex;
    margin-bottom: 28px;
  }
  .p-form .form-group > label {
    width: 32%;
    flex-shrink: 0;
  }
}
.p-form .form-group:last-child {
  margin-bottom: 0;
}
.p-form .form-group label {
  color: #1f2851;
  font-size: 2rem;
  margin-bottom: 10px;
  display: block;
  line-height: 1.3;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.p-form .form-group input[type=text],
.p-form .form-group input[type=email],
.p-form .form-group input[type=tel],
.p-form .form-group input[type=date],
.p-form .form-group input[type=number],
.p-form .form-group select {
  display: block;
  width: 100%;
  padding: 16px;
  border: 1px solid #1f2851;
  font-size: 1.6rem;
  border-radius: inherit;
}
.p-form .form-group input[type=number]::-webkit-inner-spin-button,
.p-form .form-group input[type=number]::-webkit-outer-spin-button {
  -webkit-appearance: none;
  margin: 0;
}
.p-form .form-group input[type=number] {
  -moz-appearance: textfield;
}
.p-form .form-group input[type=number] {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.p-form .form-group input[type=date] {
  width: 100% !important;
  background: #fff;
  border-radius: inherit;
  appearance: none; /* ブラウザのデフォルトスタイルを無効化 */
  -webkit-appearance: none;
  -moz-appearance: none;
  background-color: white;
}
.p-form .form-group select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: #fff;
}
.p-form .form-group textarea {
  display: block;
  width: 100%;
  padding: 16px;
  border: 1px solid #1f2851;
  font-size: 1.6rem;
  resize: none;
}
@media screen and (min-width: 821px) {
  .p-form .form-group textarea {
    height: 200px;
  }
}
.p-form .form-group.select-group .select-wrapper {
  position: relative;
  width: 100%;
}
.p-form .form-group.select-group .select-wrapper::after {
  display: block;
  content: "";
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #1f2851;
  position: absolute;
  right: 16px;
  top: 50%;
  transform: translateY(-50%);
  pointer-events: none;
}
.p-form .form-group.radio-group .flex {
  display: flex;
  flex-wrap: wrap;
  gap: 3px;
}
.p-form .form-group.radio-group label {
  display: inline-block;
}
.p-form .form-group.radio-group div {
  position: relative;
}
.p-form .form-group.radio-group div > label {
  font-size: 1.7rem;
  position: relative;
}
.p-form .form-group.radio-group div > label::before {
  content: "";
  display: block;
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #1f2851;
  position: absolute;
  left: -16px;
  top: 50%;
  transform: translateY(-50%);
}
.p-form .form-group.radio-group input[type=radio] {
  font-size: 1.8rem;
  opacity: 0;
  position: relative;
}
.p-form .form-group.radio-group input[type=radio]:checked + label::after {
  content: "";
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #1f2851;
  position: absolute;
  left: -14px;
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (min-width: 821px) {
  .p-form .form-group.file {
    display: block;
  }
}
.p-form .form-group.file label {
  font-size: 1.6rem;
}
@media screen and (min-width: 821px) {
  .p-form .form-group.file label {
    width: 100%;
    text-align: center;
    margin-bottom: 20px;
  }
}
.p-form .form-group.file input[type=file] {
  display: block;
  width: 100%;
  padding: 16px;
  border: 1px solid #1f2851;
  font-size: 1.6rem;
  background: #fff;
}
.p-form ::-moz-placeholder {
  color: #c6c6c6;
}
.p-form ::placeholder {
  color: #c6c6c6;
}
.p-form .annotation {
  color: #1f2851;
  font-family: "Zen Kaku Gothic New", sans-serif;
  line-height: 1.5;
  margin-bottom: 20px;
}
@media screen and (min-width: 821px) {
  .p-form .annotation {
    text-align: center;
  }
}
.p-form .submit {
  width: 335px;
  height: 80px;
  background: url("../img/btn-submit.webp") no-repeat center top/cover;
  position: absolute;
  bottom: -40px;
  left: 50%;
  transform: translateX(-50%);
  cursor: pointer;
  transition: opacity 0.3s;
}
.p-form .submit:hover {
  opacity: 0.5;
}
@media screen and (min-width: 821px) {
  .p-form .submit {
    margin: 60px auto 0;
    position: static;
    transform: none;
  }
}
.p-form .submit input {
  font-size: 0;
  background: none;
  border: none;
  display: block;
  width: 100%;
  height: 100%;
}

.btn-line {
  width: 60px;
  height: 60px;
  position: fixed;
  right: 0;
  bottom: 12%;
  z-index: 100;
}
@media screen and (min-width: 821px) {
  .btn-line {
    bottom: 50%;
  }
}

.to-top {
  position: absolute;
  width: 80px;
  height: 80px;
  top: -40px;
  right: 20px;
  z-index: 100;
}
@media screen and (min-width: 821px) {
  .to-top {
    right: 100px;
  }
}

footer {
  position: relative;
  background: url("../img/bg-footer.webp") no-repeat center top/cover;
  z-index: 0;
  margin-bottom: 64px;
}
@media screen and (min-width: 821px) {
  footer {
    margin-bottom: 0;
  }
}
footer .footer__inner {
  padding: 50px 0;
}
footer .footer__inner .footer__logo {
  width: 117px;
  margin: 0 auto 30px;
}
@media screen and (min-width: 821px) {
  footer .footer__inner .footer__logo {
    width: 180px;
  }
}
footer .footer__inner .insta {
  display: block;
  width: 40px;
  margin: 0 auto 20px;
}
@media screen and (min-width: 821px) {
  footer .footer__inner .insta {
    width: 60px;
  }
}
footer .footer__inner p {
  text-align: center;
}
@media screen and (min-width: 821px) {
  footer .footer__inner p {
    display: flex;
    gap: 40px;
    justify-content: center;
  }
}
footer .footer__inner p a {
  font-size: 1.8rem;
  line-height: 1.5;
  font-family: "Zen Kaku Gothic New", sans-serif;
  color: #fff;
  display: block;
  position: relative;
}
@media screen and (min-width: 821px) {
  footer .footer__inner p a:first-child::after {
    content: "";
    display: block;
    width: 1px;
    height: 16px;
    background: #fff;
    position: absolute;
    right: -22px;
    top: 50%;
    transform: translateY(-50%);
  }
}
footer .footer__copyright {
  text-align: center;
  color: #ff765e;
  background: #fff;
  font-size: 1.4rem;
  padding: 6px 0;
  font-family: "Zen Kaku Gothic New", sans-serif;
}

.thanks__container {
  height: 80vh;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.thanks__container h1 {
  font-size: 2rem;
  margin-bottom: 20px;
}
@media screen and (min-width: 821px) {
  .thanks__container h1 {
    font-size: 4rem;
  }
}
.thanks__container p {
  text-align: center;
  font-size: 1.8rem;
  line-height: 1.5;
  margin-bottom: 20px;
}

#formWrap {
  margin: 50px 0;
  padding: 0 20px;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
@media screen and (min-width: 821px) {
  #formWrap {
    max-width: 800px;
    margin: 50px auto;
  }
}
#formWrap .lead {
  text-align: center;
  margin-bottom: 14px;
}
#formWrap table {
  margin: 0 auto;
}
#formWrap table tr {
  border-bottom: 1px solid #ccc;
}
#formWrap table tr th,
#formWrap table tr td {
  padding: 10px;
}
@media screen and (min-width: 821px) {
  #formWrap table tr th,
#formWrap table tr td {
    padding: 20px;
  }
}

.form-btn-wrap {
  display: flex;
  flex-direction: column;
  gap: 10px;
  margin-top: 16px;
}
@media screen and (min-width: 821px) {
  .form-btn-wrap {
    flex-direction: row;
    justify-content: center;
    margin-top: 24px;
  }
}

.form-btn {
  background: url("../img/bg-btn.webp") no-repeat center top/cover;
  width: 335px;
  height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.form-btn input {
  border: none;
  background: none;
  font-size: 2.4rem;
  color: #fff;
  width: 100%;
  height: 100%;
  font-weight: 500;
  display: block;
}

.bnt-back {
  background: url("../img/bg-btn-back.webp") no-repeat center top/cover;
}
/*# sourceMappingURL=index.css.map */