@charset "UTF-8";

html {
  font-family: "Zen Maru Gothic", serif;
  color: #333333;
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
}

.title-box {
  text-align: center;
  position: relative;
}

.title-e {
  font-size: 1.806vw;
  font-weight: 500;
  color: #a0cf36;
  margin: 0.694vw;
}

.title-box h2 {
  font-size: 3.194vw;
  font-weight: 700;
  color: #fa9a41;
  filter: drop-shadow(0.208vw 0.208vw 0px #fff);
}

.title-box::before {
  content: "";
  display: inline-block;
  background-image: url(../images/title-deco.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 7.5vw;
  height: 0.218vw;
  position: absolute;
  bottom: -2.431vw;
  left: 50%;
  transform: translateX(-50%);
}

.title-box h2 span {
  font-size: 4.514vw;
}

.sp-only {
  display: none;
}

@media screen and (max-width: 768px) {
  .title-e {
    font-size: 4.267vw;
  }

  .title-box h2 {
    font-size: 6.4vw;
  }

  .title-box::before {
    width: 28.8vw;
    height: 0.8vw;
    bottom: -4vw;
  }

  .title-box h2 span {
    font-size: 7.467vw;
  }

  .pc-only {
    display: none;
  }

  .sp-only {
    display: block;
  }
}

/*************************
   header
*************************/
header {
  width: 100%;
  position: fixed;
  top: 0;
  z-index: 1000;
}

.header__inner {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.header__logo {
  width: 13.333vw;
  height: 3.333vw;
  margin: 1.736vw 0 0 3.681vw;
}

.header__logo img {}

.header__contact {
  width: 44.236vw;
  height: 5.972vw;
  padding-left: 1.042vw;
  background-color: #fff;
  border-bottom-left-radius: 2.083vw;
  display: flex;
  align-items: center;
  justify-content: center;
  align-content: center;
}

.header__contact-tel {
  font-size: 2.917vw;
  color: #fa9a41;
  padding-bottom: 0.278vw;
  margin-right: 2.083vw;
  font-weight: 900;
  position: relative;
}

.header__contact-tel::before {
  content: "";
  display: inline-block;
  background-image: url(../images/tel.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 1.528vw;
  height: 2.014vw;
  position: absolute;
  top: 55%;
  left: -1.736vw;
  transform: translateY(-50%);
}

.header__contact-mail {
  width: 15.833vw;
  padding: 0.625vw 0 0.694vw;
  text-align: center;
  border-radius: 1.597vw;
  font-size: 1.806vw;
  line-height: 1;
  color: #fff;
  background-color: #ff938d;
  border: 0.069vw solid #ff938d;
  font-weight: 700;
  transition: .3s;
}

@media screen and (min-width: 769px) {
  .header__contact-mail:hover {
    color: #ff938d;
    background-color: #fff;
  }
}

@media screen and (max-width: 768px) {
  .header__logo {
    width: 26.667vw;
    height: 6.667vw;
    margin: 2.667vw 0 0 4vw;
  }

  .header__logo img {}

  .header__contact {
    flex-flow: column;
    width: 34.667vw;
    height: 16.267vw;
    padding-left: 0;
    border-bottom-left-radius: 5.333vw;
  }

  .header__contact-tel {
    font-size: 4vw;
    padding-bottom: 0.8vw;
    margin-right: 0;
    margin-left: 3.2vw;
  }

  .header__contact-tel::before {
    width: 2.4vw;
    height: 3.2vw;
    top: 48%;
    left: -2.667vw;
    transform: translateY(-50%);
  }

  .header__contact-mail {
    width: 26.667vw;
    padding: 0.8vw 0 1.067vw;
    border-radius: 4vw;
    font-size: 3.733vw;
  }
}

/*************************
   fv
*************************/
.fv {
  background-image: url(../images/bg-perpar.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  padding-bottom: 4.167vw;
  position: relative;
}

.fv-picture {
  position: relative;
  z-index: 10;
}

.fv h1 {
  width: 36.319vw;
  height: 21.111vw;
  position: absolute;
  bottom: 10%;
  right: 8%;
}

.fv-img img {
  padding-top: 4.514vw;
}

@media screen and (max-width: 768px) {
  .fv {
    background-image: url(../images/bg-perpar.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100%;
    padding-bottom: 53.333vw;
    position: relative;
  }

  .fv h1 {
    width: 61.333vw;
    bottom: 12%;
    right: 4%;
  }

  .fv-img img {
    padding-top: 13.333vw;
  }

}

/*************************
   sec1
*************************/
.course {
  background-image: url(../images/course-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  padding: 11.806vw 0 34.722vw;
  margin-top: -9.028vw;
  text-align: center;
  position: relative;
}

.course__text {
  font-size: 1.806vw;
  font-weight: 500;
  line-height: 2.4;
  margin-top: 3.472vw;
}

.course-img1::before {
  content: "";
  display: inline-block;
  background-image: url(../images/course-01.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 18.819vw;
  height: 18.75vw;
  position: absolute;
  top: 15.972vw;
  left: 9%;
}

.course-img1::after {
  content: "";
  display: inline-block;
  background-image: url(../images/course-02.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 30.278vw;
  height: 30.556vw;
  position: absolute;
  top: 3.472vw;
  right: -2.083vw;
}

.course-img2::before {
  content: "";
  display: inline-block;
  background-image: url(../images/course-03.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 34.583vw;
  height: 23.681vw;
  position: absolute;
  bottom: 30%;
  left: -2.083vw;
}

.course-img2::after {
  content: "";
  display: inline-block;
  background-image: url(../images/course-04.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 26.389vw;
  height: 21.319vw;
  position: absolute;
  bottom: 30%;
  right: 4.514vw;
}

@media screen and (max-width: 768px) {
  .course {
    padding: 21.333vw 0 80vw;
    margin-top: -26.667vw;
    background-position-x: 11%;
  }

  .course__text {
    font-size: 5.333vw;
    font-weight: 500;
    line-height: 2.4;
    margin-top: 10.667vw;
  }

  .course-img1::before {
    width: 26.667vw;
    height: 26.4vw;
    top: -4%;
    left: 9%;
  }

  .course-img1::after {
    width: 32vw;
    height: 32vw;
    top: -4%;
    right: 3%;
  }

  .course-img2::before {
    width: 42.933vw;
    height: 29.333vw;
    bottom: 19%;
    left: 5%;
  }

  .course-img2::after {
    content: "";
    width: 38.133vw;
    height: 30.933vw;
    bottom: 19%;
    right: 10%;
  }

}

/*************************
   sec2
*************************/
.worries {
  background-image: url(../images/worries-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  padding: 18.958vw 0 0;
  margin-top: -28.819vw;
  text-align: center;
  position: relative;
}

.worries .title-box::before {
  bottom: -4.514vw;
}

.worries .title-box h2 {
  position: relative;
  line-height: 1.2;
}

.worries__deco::before {
  content: "";
  display: inline-block;
  background-image: url(../images/worries-titlee-deco1.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 3.472vw;
  height: 4.167vw;
  position: absolute;
  bottom: -7%;
  left: 31%;
}

.worries__deco::after {
  content: "";
  display: inline-block;
  background-image: url(../images/worries-titlee-deco2.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 2.847vw;
  height: 4.514vw;
  position: absolute;
  top: 3%;
  right: 31%;
}

.worries-flex1 {
  display: flex;
  justify-content: center;
  gap: 4.167vw;
  margin-top: 11.875vw;
  margin-right: 6.25vw;
}

.worries-wrap1,
.worries-wrap2 {
  position: relative;
}

.worries-wrap1 {
  width: 45.625vw;
  height: 18.333vw;
}

.worries-wrap2 {
  width: 23.889vw;
  height: 27.222vw;
  margin-top: -2.778vw;
}

.worries-wrap img {}

.worries__text1 {
  width: 16.806vw;
  height: 6.042vw;
  position: absolute;
  top: 30%;
  right: 10%;
}

.worries__text1 img {}

.worries__text2 {
  width: 16.875vw;
  height: 6.042vw;
  position: absolute;
  top: 17%;
  right: 17%;
}

.worries__text2 img {}

.worries-flex2 {
  display: flex;
  justify-content: center;
  align-items: flex-end;
  gap: 4.167vw;
  margin-top: -5.556vw;
  position: relative;
}

.worries-flex2::before {
  content: "";
  display: inline-block;
  background-image: url(../images/worries-arrow.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 4.444vw;
  height: 1.667vw;
  position: absolute;
  bottom: -5.208vw;
  left: 50%;
  transform: translateX(-50%);
}

.worries-wrap3,
.worries-wrap4 {
  position: relative;
}

.worries-wrap3 {
  width: 44.514vw;
  height: 20.833vw;
}

.worries-wrap4 {
  width: 41.389vw;
  height: 24.514vw;
}

.worries-wrap3 img {}

.worries__text3 {
  width: 18.889vw;
  height: 9.167vw;
  position: absolute;
  top: 33%;
  left: 6%;
}

.worries__text3 img {}

.worries__text4 {
  width: 20vw;
  height: 6.111vw;
  position: absolute;
  top: 46%;
  left: 7%;
}

.worries__text4 img {}

.worries__message {
  display: flex;
  justify-content: center;
  margin-top: 1.389vw;
}

.worries__message-girl {
  width: 33.125vw;
  height: 32.292vw;
}

.worries__message-text {
  width: 54.167vw;
  height: 15.556vw;
  margin-top: 4.861vw;
}

@media screen and (max-width: 768px) {
  .worries {
    background-image: none;
    padding: 32vw 0 0;
    margin-top: -24.667vw;
    position: relative;
  }

  .worries::before {
    content: "";
    display: inline-block;
    background-image: url(../images/worries-bg-sp.png);
    background-repeat: no-repeat;
    background-size: cover;
    width: 100vw;
    height: 288vw;
    position: absolute;
    top: 0;
    left: 0;
  }

  .worries__deco::before {
    width: 4.8vw;
    height: 5.6vw;
    bottom: -7%;
    left: 18%;
  }
  
  .worries__deco::after {
    width: 4.8vw;
    height: 7.467vw;
    top: 26%;
    right: 17%;
  }
  .worries .title-box::before {
    bottom: -4vw;
  }

  .worries-flex1 {
    flex-flow: column;
    gap: 8vw;
    margin-top: 13.333vw;
    margin-right: 0;
  }

  .worries-wrap1 {
    width: 76vw;
    height: 30.933vw;
    margin: 0 auto;
  }

  .worries-wrap2 {
    width: 41.6vw;
    height: 48vw;
    margin-top: 8vw;
    margin-left: 5.333vw;
  }

  .worries__text1 {
    width: 28.8vw;
    height: 11.733vw;
    top: 28%;
    right: 9%;
  }

  .worries__text1 img {}

  .worries__text2 {
    width: 28.8vw;
    height: 11.733vw;
    position: absolute;
    top: 17%;
    right: 17%;
  }

  .worries__text2 img {}

  .worries-flex2 {
    flex-flow: column;
    gap: 16vw;
    margin-top: -21.333vw;
  }

  .worries-flex2::before {
    width: 10.667vw;
    height: 3.733vw;
    bottom: -12vw;
  }

  .worries-wrap3 {
    width: 74.667vw;
    height: 37.867vw;
    margin: 23.733vw auto 0;
  }

  .worries-wrap4 {
    width: 46.4vw;
    height: 64.267vw;
    position: absolute;
    top: -73%;
    right: 5%;
  }

  .worries-wrap3 img {}

  .worries__text3 {
    width: 30.133vw;
    height: 11.733vw;
    position: absolute;
    top: 33%;
    left: 6%;
  }

  .worries__text3 img {}

  .worries__text4 {
    width: 33.333vw;
    height: 11.733vw;
    position: absolute;
    top: 13%;
    left: 10%;
  }

  .worries__text4 img {}

  .worries__message {
    margin-top: 18.667vw;
    position: relative;
    padding: 0 2.667vw;
  }

  .worries__message-girl {
    width: 30%;
    height: auto;
  }

  .worries__message-text {
    width: 70%;
    height: auto;
    margin-top: -5.333vw;
  }
}

/*************************
   sec3
*************************/
.manga {
  width: 100%;
  padding: 7.292vw 0 41.667vw;
  margin-top: -2.083vw;
  background-color: #fffff0;
  position: relative;
}

.manga::before {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-top.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 3.681vw;
  position: absolute;
  top: -3.472vw;
  left: 0;
}

.manga .title-box h2 {
  line-height: 1.5;
}

.manga__title-deco::before {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-title-border1.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 26.1vw;
  height: 0.208vw;
  position: absolute;
  top: 67%;
  left: 50%;
  transform: translateX(-50%);
}

.manga__title-deco::after {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-title-border2.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 11.111vw;
  height: 0.208vw;
  position: absolute;
  bottom: -2%;
  left: 50%;
  transform: translateX(-50%);
}

.manga .title-box::before {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-title-deco1.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 15.764vw;
  height: 10.556vw;
  position: absolute;
  bottom: -30%;
  left: 27%;
}

.manga .title-box::after {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-title-deco2.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 12.569vw;
  height: 17.569vw;
  position: absolute;
  bottom: -40%;
  right: 22%;
}

.manga-wrap {
  width: 76.389vw;
  margin: 105px auto 0;
  border-bottom: 0.208vw solid #000;
  position: relative;
  z-index: 10;
}

.manga-wrap img {
  border-top: 0.208vw solid #000;
  border-left: 0.208vw solid #000;
  border-right: 0.208vw solid #000;
}

.manga-deco1::before {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-deco-01.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 15.208vw;
  height: 5.833vw;
  position: absolute;
  top: 3%;
  left: -2%;
}

.manga-deco1::after {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-deco-02.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 11.875vw;
  height: 10.347vw;
  position: absolute;
  top: 5%;
  right: -2%;
}

.manga-deco2::before {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-deco-03.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 2.5vw;
  height: 2.5vw;
  position: absolute;
  top: 40%;
  right: 5%;
}

.manga-deco2::after {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-deco-04.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 2.5vw;
  height: 4.375vw;
  position: absolute;
  bottom: 40%;
  left: 5%;
}

.manga-deco3::before {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-deco-05.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 5.833vw;
  height: 15.208vw;
  position: absolute;
  bottom: 9%;
  right: 2%;
}

.manga-deco3::after {
  content: "";
  display: inline-block;
  background-image: url(../images/manga-deco-06.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 11.875vw;
  height: 10.347vw;
  position: absolute;
  bottom: 7%;
  left: -2%;
}


@media screen and (max-width: 768px) {
  .manga {
    padding: 14.667vw 0 64vw;
    margin-top: -0.533vw;
  }

  .manga::before {
    height: 4vw;
    top: -3.467vw;
  }

  .manga .title-box h2 {
    line-height: 1.5;
  }

  .manga__title-deco::before {
    width: 46.933vw;
    height: 0.8vw;
    top: 61%;
  }

  .manga__title-deco::after {
    width: 20vw;
    height: 0.8vw;
  }

  .manga .title-box::before {
    width: 18.667vw;
    height: 12.533vw;
    bottom: -27%;
    left: 16%;
  }

  .manga .title-box::after {
    width: 17.067vw;
    height: 24vw;
    bottom: 31%;
    right: 5%;
  }

  .manga-wrap {
    width: 90%;
    margin: 13.333vw auto 0;
  }
}

/*************************
   sec4
*************************/
.reason {
  width: 100%;
  padding: 8.333vw 0 0;
  margin-top: -35.764vw;
  text-align: center;
  position: relative;
}

.reason::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 140.972vw;
  position: absolute;
  top: 0;
  left: 0;
}

.reason .title-box .reason-deco::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-title-deco01.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 17.639vw;
  height: 18.125vw;
  position: absolute;
  top: -80%;
  left: 18%;
}

.reason .title-box .reason-deco::after {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-title-deco02.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 5.278vw;
  height: 7.569vw;
  position: absolute;
  top: 19%;
  right: 25%;
}

.reason__list {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 6.944vw 1.736vw;
  margin-top: 12.5vw;
}

.reason__item {
  position: relative;
}

.reason__img {
  width: 27.361vw;
  height: 27.847vw;
  position: relative;
}

.reason__img img {}

.reason-number {
  width: 5.903vw;
  height: 5.903vw;
  border-radius: 50%;
  font-size: 3.819vw;
  font-weight: 700;
  position: absolute;
  top: -2.778vw;
  left: 50%;
  transform: translateX(-50%);
  color: #fff;
  background-color: #fa9a41;
  text-align: center;
  align-content: center;
  padding-bottom: 0.278vw;
}

.reason__item:nth-of-type(1)::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-deco-01.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 6.181vw;
  height: 8.611vw;
  position: absolute;
  top: 3%;
  left: -12%;
  z-index: 1;
}

.reason__item:nth-of-type(2) .reason-number {
  background-color: #a0cf36;
}

.reason__item:nth-of-type(3) .reason-number {
  background-color: #ff938d;
}

.reason__item:nth-of-type(3)::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-deco-03.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 7.153vw;
  height: 14.861vw;
  position: absolute;
  bottom: 11%;
  right: -10%;
  z-index: 1;
}

.reason__item:nth-of-type(4) .reason-number {
  background-color: #a0cf36;
}

.reason__item:nth-of-type(4)::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-deco-04.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 20.069vw;
  height: 16.528vw;
  position: absolute;
  bottom: 28%;
  left: -67%;
  z-index: 1;
}

.reason__item:nth-of-type(5) .reason-number {
  background-color: #fa9a41;
}

.reason__item:nth-of-type(5)::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-deco-05.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 17.708vw;
  height: 24.306vw;
  position: absolute;
  bottom: 4%;
  right: -54%;
  z-index: 1;
}

.reason__text {
  margin-top: 1.389vw;
  font-size: 2.153vw;
  font-weight: 500;
  line-height: 1.5;
  text-align: center;
}

.reason-detail__list {
  margin-top: 8.681vw;
}

.reason-detail__item {
  padding: 11.458vw 0 16.278vw;
  width: 100%;
  position: relative;
}

.reason-detail__wrap {
  margin: 0 auto;
  display: flex;
  position: relative;
}

.reason-detail__item::before {
  content: "";
  display: inline-block;
  width: 89.722vw;
  height: 31.389vw;
  background-color: #fff;
  border-radius: 3.681vw;
  position: absolute;
  top: 13.889vw;
  left: 50%;
  transform: translateX(-50%);
  z-index: 0;
}

.reason-detail__item:nth-of-type(1) {
  background-image: url(../images/reason-06-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  z-index: 50;
}

.reason-detail__item:nth-of-type(2) {
  background-image: url(../images/reason-07-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: -3.819vw;
  z-index: 40;
}

.reason-detail__item:nth-of-type(3) {
  background-image: url(../images/reason-08-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: -3.819vw;
  z-index: 30;
}

.reason-detail__item:nth-of-type(4) {
  background-image: url(../images/reason-09-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  margin-top: -3.819vw;
  z-index: 20;
}

.reason-detail__item:nth-of-type(1) .reason-detail__wrap {
  width: 82.5vw;
  justify-content: center;
  gap: 3.472vw;
}

.reason-detail__item:nth-of-type(1) .reason-detail__wrap::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-detail-01.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 12.639vw;
  height: 17.5vw;
  position: absolute;
  bottom: -52%;
  right: -9%;
  z-index: 50;
}

.reason-detail__item:nth-of-type(2) .reason-detail__wrap {
  width: 83.611vw;
  justify-content: space-between;
  flex-flow: row-reverse;
}

.reason-detail__item:nth-of-type(2) .reason-detail__wrap::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-detail-02.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 16.875vw;
  height: 23.889vw;
  position: absolute;
  bottom: -62%;
  left: 0%;
  z-index: 40;
}

.reason-detail__item:nth-of-type(3) .reason-detail__wrap {
  width: 81.597vw;
  justify-content: center;
  gap: 3.472vw;
}

.reason-detail__item:nth-of-type(3) .reason-detail__wrap::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-detail-03.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 9.167vw;
  height: 16.667vw;
  position: absolute;
  bottom: -40%;
  right: -4%;
  z-index: 30;
}

.reason-detail__item:nth-of-type(4) .reason-detail__wrap {
  width: 82.222vw;
  justify-content: space-between;
  flex-flow: row-reverse;
}

.reason-detail__item:nth-of-type(4) .reason-detail__wrap::before {
  content: "";
  display: inline-block;
  background-image: url(../images/reason-detail-04.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 14.792vw;
  height: 17.431vw;
  position: absolute;
  bottom: -33%;
  left: 40%;
  z-index: 20;
}

.reason-detail__picture {
  width: 33.194vw;
  height: 31.111vw;
  position: relative;
  z-index: 1;
}

.reason-detail__picture img {}

.reason-detail__text-box {
  width: 46.875vw;
  text-align: left;
  position: relative;
  z-index: 1;
}

.reason-detail__item:nth-of-type(1) .reason-detail__text-box {
  margin-top: -1.389vw;
}

.reason-detail__text-box h3 {
  font-size: 3.542vw;
  font-weight: 700;
  line-height: 1.4;
  color: #fa9a41;
}

.reason-detail__item:nth-of-type(2) h3 {
  color: #feba46;
}

.reason-detail__item:nth-of-type(3) h3 {
  color: #a0cf36;
}

.reason-detail__item:nth-of-type(4) h3 {
  color: #ff938d;
}

.reason-detail__text-box h3 span {
  font-size: 3.542vw;
  font-weight: 700;
  background-color: #fdf7e3;
  margin-bottom: 0.833vw;
  padding: 0 0.903vw;
  border-radius: 0.625vw;
  filter: drop-shadow(0.208vw 0.208vw 0px rgb(250, 154, 65, 0.7));
}

.reason-detail__item:nth-of-type(2) h3 span {
  filter: drop-shadow(0.208vw 0.208vw 0px rgb(216, 202, 39, 0.7));
}

.reason-detail__item:nth-of-type(3) h3 span {
  filter: drop-shadow(0.208vw 0.208vw 0px rgb(118, 198, 66, 0.7));
}

.reason-detail__item:nth-of-type(4) h3 span {
  filter: drop-shadow(0.208vw 0.208vw 0px rgb(219, 119, 38, 0.7));
}

.reason__subtitle {}

.reason-detail__text {
  font-size: 1.389vw;
  font-weight: 500;
  line-height: 1.55;
  margin-top: 0;
}

.reason-detail__text:nth-of-type(1) {
  margin-top: 0.894vw;
}

@media screen and (max-width: 768px) {
  .reason {
    padding: 16vw 0 0;
    margin-top: -37.333vw;
  }

  .reason::before {
    background-image: url(../images/reason-bg-sp.png);
    width: 100%;
    height: 808vw;
    position: absolute;
    top: 0;
    left: 0;
  }

  .reason .title-box .reason-deco::before {
    width: 20.533vw;
    height: 21.067vw;
    position: absolute;
    top: -18.4vw;
    left: 8%;
  }

  .reason .title-box .reason-deco::after {
    width: 9.067vw;
    height: 12.8vw;
    position: absolute;
    top: -67%;
    right: 6%;
  }

  .reason__list {
    flex-flow: column;
    gap: 16vw;
    margin: 21.333vw auto 0;
    width: 80%;
  }

  .reason__img {
    width: 100%;
    height: auto;
  }

  .reason__img img {}

  .reason-number {
    width: 13.333vw;
    height: 13.333vw;
    border-radius: 50%;
    font-size: 9.333vw;
    font-weight: 700;
    position: absolute;
    top: -6.667vw;
  }

  .reason__item:nth-of-type(1)::before {
    width: 14.667vw;
    height: 19.733vw;
    left: -3%;
  }

  .reason__item:nth-of-type(3)::before {
    width: 16.8vw;
    height: 35.733vw;
    bottom: 17%;
    right: -10%;
  }

  .reason__item:nth-of-type(4)::before {
    width: 31.467vw;
    height: 25.867vw;
    bottom: 19%;
    left: -10%;

  }

  .reason__item:nth-of-type(5)::before {
    width: 26.4vw;
    height: 36.267vw;
    bottom: 12%;
    right: -9%;
  }

  .reason__text {
    margin-top: 4vw;
    font-size: 5.6vw;
  }

  .reason-detail__list {
    margin-top: 18.667vw;
  }

  .reason-detail__item {
    padding: 29.333vw 0 37.333vw;
    width: 100%;
    position: relative;
  }

  .reason-detail__wrap {
    margin: 0 auto;
    flex-flow: column;
  }

  .reason-detail__item::before {
    width: 90%;
    height: 191.2vw;
    border-radius: 5.333vw;
    top: 38.667vw;
  }

  .reason-detail__item:nth-of-type(2):before {
    height: 165.333vw;
  }

  .reason-detail__item:nth-of-type(3):before {
    height: 171.467vw;
  }

  .reason-detail__item:nth-of-type(4):before {
    height: 165.867vw;
  }

  .reason-detail__item:nth-of-type(1) {
    background-image: url(../images/reason-06-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position-x: -15.733vw;
    z-index: 50;
  }

  .reason-detail__item:nth-of-type(2) {
    background-image: url(../images/reason-07-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    background-position-x: -60vw;
    margin-top: -17.333vw;
    z-index: 40;
  }

  .reason-detail__item:nth-of-type(3) {
    background-image: url(../images/reason-08-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: -17.333vw;
    z-index: 30;
  }

  .reason-detail__item:nth-of-type(4) {
    background-image: url(../images/reason-09-bg.png);
    background-repeat: no-repeat;
    background-size: cover;
    margin-top: -17.333vw;
    z-index: 20;
  }

  .reason-detail__item:nth-of-type(1) .reason-detail__wrap {
    width: 80%;
    justify-content: center;
    gap: 5.333vw;
  }

  .reason-detail__item:nth-of-type(1) .reason-detail__wrap::before {
    width: 19.2vw;
    height: 26.4vw;
    bottom: -25.867vw;
    right: -5%;
  }

  .reason-detail__item:nth-of-type(2) .reason-detail__wrap {
    width: 80%;
    justify-content: space-between;
    flex-flow: column;
    gap: 5.333vw;
  }

  .reason-detail__item:nth-of-type(2) .reason-detail__wrap::before {
    width: 23.733vw;
    height: 33.6vw;
    bottom: -21%;
    left: 0%;

  }

  .reason-detail__item:nth-of-type(3) .reason-detail__wrap {
    width: 80%;
    justify-content: center;
    gap: 5.333vw;
  }

  .reason-detail__item:nth-of-type(3) .reason-detail__wrap::before {
    width: 15.2vw;
    height: 27.733vw;
    bottom: -16%;
    right: -4%;
  }

  .reason-detail__item:nth-of-type(4) .reason-detail__wrap {
    width: 80%;
    flex-flow: column;
    gap: 5.333vw;
  }

  .reason-detail__item:nth-of-type(4) .reason-detail__wrap::before {
    width: 21.333vw;
    height: 25.067vw;
    bottom: -21%;
    left: 33%;
  }

  .reason-detail__picture {
    width: 100%;
    height: auto;
    margin: 0 auto;
  }

  .reason-detail__picture img {}

  .reason-detail__text-box {
    width: 100%;
  }

  .reason-detail__item:nth-of-type(1) .reason-detail__text-box {
    margin-top: 0;
  }

  .reason-detail__text-box h3 {
    font-size: 6.133vw;
  }

  .reason-detail__text-box h3 span {
    font-size: 6.133vw;
    margin-bottom: 3.2vw;
    padding: 0 3.467vw;
    border-radius: 2.4vw;
    filter: drop-shadow(0.8vw 0.8vw 0px rgb(250, 154, 65, 0.7));
  }

  .reason-detail__item:nth-of-type(2) h3 span {
    filter: drop-shadow(0.8vw 0.8vw 0px rgb(216, 202, 39, 0.7));
  }

  .reason-detail__item:nth-of-type(3) h3 span {
    filter: drop-shadow(0.8vw 0.8vw 0px rgb(118, 198, 66, 0.7));
  }

  .reason-detail__item:nth-of-type(4) h3 span {
    filter: drop-shadow(0.8vw 0.8vw 0px rgb(219, 119, 38, 0.7));
  }

  .reason-detail__text {
    font-size: 4vw;
    margin-top: 1rem;
  }

  .reason-detail__text:nth-of-type(1) {
    margin-top: 2.667vw;
  }

}

/*************************
   sec5
*************************/
.bottom-wrap {
  background-image: url(../images/bottom-bg.png);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
}

.contact {
  padding-top: 12.5vw;
  margin-top: -3.819vw;
}

.contact-bottom-tel {
  position: relative;
}

.contact-bottom-tel__wrap {
  width: 66.806vw;
  padding: 2.431vw 0 3.472vw;
  margin: 130px auto 0;
  background-color: #fff;
  text-align: center;
  border-radius: 2.778vw;
  filter: drop-shadow(0.694vw 0.694vw 0px #fa9a41);
}

.contact-tel-deco::before {
  content: "";
  display: inline-block;
  background-image: url(../images/contact-01.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 12.014vw;
  height: 15.417vw;
  position: absolute;
  top: -38%;
  left: 13%;
}

.contact-tel-deco::after {
  content: "";
  display: inline-block;
  background-image: url(../images/contact-02.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 9.375vw;
  height: 17.153vw;
  position: absolute;
  top: 6%;
  right: 11%;
}

.contact-bottom-tel__text {
  font-size: 2.222vw;
}

.contact-bottom-tel__number {
  width: 47.292vw;
  height: 5.625vw;
  margin-top: 1.389vw;
}

.contact-bottom-tel__number img {}

.form-block {
  width: 67.639vw;
  margin: 0 22.431vw 0 9.306vw;
}

.form-block ul {
  margin-top: 9.375vw;
}

.form-block ul li {
  display: flex;
  align-items: center;
  margin-bottom: 2.431vw;
}

.form-block ul li:last-of-type {
  align-items: flex-start;
  margin-bottom: 5.903vw;
}

.form__box {
  width: 22.917vw;
  margin-right: 3.125vw;
  font-size: 1.667vw;
  text-align: right;
}

.form__box .required {
  width: 5.764vw;
  font-size: 1.319vw;
  line-height: 1.3;
  padding: 0.208vw 0 0.278vw;
  margin-left: 1.736vw;
  color: #fff;
  background-color: #a0cf36;
  text-align: center;
  border-radius: 0.347vw;
}

.form-block ul li:nth-of-type(2) .required {
  background-color: #a6a6a6;
}
.wpcf7-form-control-wrap{
  width: 100%;
}
.form__input {
  flex: 1;
}

.form__input input {
  width: 100%;
  padding: 1.319vw 0.694vw;
  font-size: 1.25vw;
  border: 0.069vw solid #9d9d9d;
  border-radius: 0.903vw;
  background-color: #fff;
}

.form-block ul li:last-of-type .form__box {
  margin-top: 0.903vw;
}

.form__input textarea {
  width: 100%;
  height: 17.778vw;
  padding: 1.319vw 0.694vw;
  border: 0.069vw solid #9d9d9d;
  border-radius: 0.903vw;
  background-color: #fff;
  font-size: 1.25vw;
}

.form-block .form__btn {
  text-align: center;
  margin-left: 13.889vw;
}

[type="submit"] {
  width: 24.583vw;
  padding: 1.042vw 0;
  font-size: 2.083vw;
  color: #fff;
  background-color: #a0cf36;
  border-radius: 0.625vw;
  border: 0.069vw solid #a0cf36;
  transition: .3s;
}

@media screen and (min-width: 769px) {
  .form-block .form__btn button:hover {
    color: #a0cf36;
    background-color: #fff;
  }
}

.wpcf7-spinner {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .contact {
    padding-top: 40vw;
    margin-top: -17.333vw;
  }

  .contact-bottom-tel {
    position: relative;
  }

  .contact-bottom-tel__wrap {
    width: 90%;
    padding: 5.333vw 0;
    margin: 50px auto 0;
    border-radius: 4vw;
    filter: drop-shadow(1.6vw 1.6vw 0px #fa9a41);
  }

  .contact-tel-deco::before {
    width: 17.067vw;
    height: 21.867vw;
    top: -60%;
    left: 4%;
  }

  .contact-tel-deco::after {
    width: 15.467vw;
    height: 28.533vw;
    top: -79%;
    right: 2%
  }

  .contact-bottom-tel__text {
    font-size: 4.8vw;
  }

  .contact-bottom-tel__number {
    width: 85%;
    height: auto;
    margin-top: 3.467vw;
  }

  .form-block {
    width: 90%;
    margin: 0 auto;
  }

  .form-block ul {
    margin-top: 18.667vw;
  }

  .form-block ul li {
    display: block;
    margin-bottom: 5.333vw;
  }

  .form-block ul li:last-of-type {
    margin-bottom: 9.333vw;
  }

  .form__box {
    width: 100%;
    margin: 0 0 1.333vw 0.8vw;
    font-size: 4.267vw;
    text-align: left;
  }

  .form__box .required {
    width: 13.333vw;
    font-size: 3.733vw;
    line-height: 1.3;
    padding: 0.267vw 0 0.267vw;
    margin-left: 4vw;
    border-radius: 1.333vw;
  }

  .form__input input {
    width: 100%;
    padding: 1.867vw;
    font-size: 3.733vw;
    border: 0.267vw solid #9d9d9d;
    border-radius: 2.133vw;
  }

  .form-block ul li:last-of-type .form__box {
    margin-top: 2.667vw;
  }

  .form__input textarea {
    width: 100%;
    height: 40vw;
    padding: 1.867vw;
    border: 0.267vw solid #9d9d9d;
    border-radius: 2.133vw;
    font-size: 3.733vw;
  }

  .form-block .form__btn {
    margin-left: 0;
  }

  [type="submit"] {
    width: 70%;
    padding: 2.667vw 0;
    font-size: 4.267vw;
    border-radius: 1.333vw;
    border: 0.267vw solid #a0cf36;
  }
}

/*************************
   sec6
*************************/
.overview {
  padding-bottom: 7.292vw;
  margin-top: 11.806vw;
}

.overview__wrap {
  width: 79.583vw;
  padding: 6.458vw 0 6.944vw;
  margin: 0 auto;
  background-color: #fff;
  position: relative;
}

.overview__wrap::before {
  content: "";
  position: absolute;
  top: 0.556vw;
  bottom: 0.556vw;
  left: 0.556vw;
  right: 0.556vw;
  border: 0.069vw solid #fa9a41;
}

.overview__list {
  margin-top: 8.681vw;
}

.overview__item {
  width: 67.431vw;
  height: 8.542vw;
  margin: 0 auto;
  display: flex;
  align-items: center;
  justify-content: left;
  position: relative;
}

.overview__item:nth-of-type(6) {
  height: auto;
  padding: 1vw 0;
}

.overview__item::before {
  content: "";
  display: inline-block;
  background-image: url(../images/overview_border.svg);
  background-repeat: no-repeat;
  background-size: cover;
  width: 100%;
  height: 0.208vw;
  position: absolute;
  bottom: 0;
  left: 0;
}

.overview__label {
  width: 27.083vw;
  padding-left: 1.389vw;
  font-size: 2.222vw;
}

.overview__text {
  flex: 1;
  font-size: 1.736vw;
  line-height: 1.4;
}

.map {
  width: 67.431vw;
  margin: 3.125vw auto 0;
}

.map iframe {
  width: 100%;
  height: 26.736vw;
}

@media screen and (max-width: 768px) {
  .overview {
    padding-bottom: 10.667vw;
    margin-top: 26.667vw;
  }

  .overview__wrap {
    width: 95%;
    padding: 10.667vw 0 5.333vw;
  }

  .overview__wrap::before {
    top: 1.6vw;
    bottom: 1.6vw;
    left: 1.6vw;
    right: 1.6vw;
    border: 0.267vw solid #fa9a41;
  }

  .overview__list {
    margin-top: 10.667vw;
  }

  .overview__item {
    width: 90%;
    height: auto;
    display: flex;
    padding: 3.467vw 0 3.467vw 1.333vw;
  }

  .overview__item:nth-of-type(6) {
    padding: 3.467vw 0 3.467vw 1.333vw;
  }
	
  .overview__item::before {
    height: 0.8vw;
  }

  .overview__label {
    width: 25%;
    padding-left: 1.333vw;
    font-size: 3.733vw;
  }

  .overview__text {
    flex: 1;
    font-size: 3.733vw;
    line-height: 1.4;
  }

  .map {
    width: 90%;
    margin: 8vw auto 0;
  }

  .map iframe {
    width: 100%;
    height: 66.667vw;
  }
}

/*************************
   sec7
*************************/

.copyright {
  padding: 1.528vw 0 1.736vw;
  font-size: 1.389vw;
  font-weight: 500;
  color: #fff;
  background-color: #fa9a41;
  text-align: center;
}

@media screen and (max-width: 768px) {

  .copyright {
    padding: 2.667vw 0;
    font-size: 3.2vw;
  }
}