html {
  scroll-behavior: smooth;
}

body {
  font-family: "Noto Sans JP";
  line-height: 1.5;
  font-weight: 400;
}

.site-header {
  position: relative;
}
@media (min-width: 1200px) {
  .site-header {
    background-color: #9c7c62;
    padding: 16px 12px;
    width: 270px;
    height: 100vh;
    position: fixed;
    top: 0;
    left: 0;
  }
}
.site-header__main-copy {
  width: 100%;
  display: block;
}

.site-title {
  margin: 0;
  position: absolute;
  top: 4vw;
  left: 3.2vw;
}
@media (min-width: 1200px) {
  .site-title {
    margin-bottom: 16px;
    position: static;
    top: auto;
    left: auto;
  }
}
.site-title__link {
  display: block;
}
.site-title__site-logo {
  display: block;
  width: 34.66667vw;
}
@media (min-width: 1200px) {
  .site-title__site-logo {
    width: 206px;
  }
}

.gnav {
  margin-bottom: 24px;
}
.gnav__list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.gnav__list-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}
.gnav__link {
  color: #fff;
  display: block;
  padding: 14px 4px;
}
.gnav__link:focus, .gnav__link:hover {
  background-color: rgba(0, 0, 0, 0.2);
  color: #fff;
  text-decoration: none;
}

.contact {
  overflow: hidden;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}
.contact__hot-link {
  display: block;
  margin-bottom: 8px;
}
.contact__hot-icon {
  display: block;
  height: 56px;
}
.contact__line-link {
  display: block;
}
.contact__line-icon {
  display: block;
  height: 56px;
}

@media (min-width: 1200px) {
  .main-visual {
    margin-left: 270px;
  }
}
.main-visual__img-sp {
  width: 100%;
}
.main-visual__img-pc {
  width: 100%;
}

.fixed-cta {
  background-color: #9c7c62;
  background-color: rgb(255, 255, 255);
  width: 100%;
  padding: 12px 0;
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 3000;
}
.fixed-cta__link {
  display: block;
}
.fixed-cta__link--hpb .fixed-cta__icon {
  margin: 0 4.5px 0 auto;
}
.fixed-cta__icon {
  display: block;
  width: 90%;
  max-width: 200px;
  margin: 0 auto 0 4.5px;
}

.btn-modal-gnav {
  width: 48px;
  height: 48px;
  display: block;
  border: 2px solid #fff;
  border-radius: 4px;
  background-color: rgba(255, 255, 255, 0.2);
  position: absolute;
  bottom: calc(100% + 8px);
  right: 8px;
}
.btn-modal-gnav:focus {
  box-shadow: none;
}
.btn-modal-gnav__bar {
  background-color: #fff;
  border-radius: 1px;
  width: 26px;
  height: 2px;
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
.btn-modal-gnav__bar::before, .btn-modal-gnav__bar::after {
  background-color: #fff;
  border-radius: 1px;
  content: "";
  width: 100%;
  height: 100%;
  display: block;
  position: absolute;
  top: -8px;
  left: 0;
}
.btn-modal-gnav__bar::after {
  top: 8px;
}

.modal .close {
  color: #fff;
  text-shadow: none;
  font-size: 40px;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 9;
}
.modal__site-logo {
  height: 60px;
  display: block;
  margin-bottom: 8px;
}

.modal-body {
  background-color: #8D6F42;
}

.modal-gnav {
  margin-bottom: 24px;
}
.modal-gnav__list {
  list-style: none;
  padding: 0;
  margin: 0;
}
.modal-gnav__list-item {
  border-bottom: 1px solid rgba(255, 255, 255, 0.6);
}
.modal-gnav__link {
  color: #fff;
  display: block;
  padding: 12px 4px;
}
.modal-gnav__link:focus, .modal-gnav__link:hover {
  background-color: rgba(0, 0, 0, 0.2);
  color: #fff;
  text-decoration: none;
}

.modal-contact {
  overflow: hidden;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto 24px auto;
}
.modal-contact__hot-link {
  display: block;
  margin-right: 8px;
  float: left;
}
.modal-contact__hot-icon {
  display: block;
  height: 48px;
}
.modal-contact__line-link {
  display: block;
  float: left;
}
.modal-contact__line-icon {
  display: block;
  height: 48px;
}

.before-after {
  background-color: #F2E8E0;
}
@media (min-width: 1200px) {
  .before-after {
    margin-left: 270px;
  }
}
.before-after__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .before-after__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.before-after__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.customer-reviews {
  background-color: #F2E8E0;
  padding-bottom: 4px;
}
@media (min-width: 1200px) {
  .customer-reviews {
    margin-left: 270px;
  }
}
.customer-reviews__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .customer-reviews__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.customer-reviews__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.worries {
  background-color: #F2E8E0;
}
@media (min-width: 1200px) {
  .worries {
    margin-left: 270px;
  }
}
.worries__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .worries__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.worries__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.plan {
  background-color: #F2E8E0;
  margin-top: -4.8vw;
  padding-bottom: 32px;
}
@media (min-width: 1200px) {
  .plan {
    margin-left: 270px;
    margin-top: -40px;
  }
}
.plan__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .plan__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.plan__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.plan-price {
  background-color: #fff;
  border: 2px solid #F75863;
  padding: 12.8vw 0 8.53334vw;
  margin: 12.8vw 4vw;
  position: relative;
}
@media (min-width: 768px) {
  .plan-price {
    padding: 8.33334vw 0 5.2083vw;
  }
}
@media (min-width: 1200px) {
  .plan-price {
    width: 800px;
    padding: 72px 0 48px;
    margin: 96px auto;
  }
}
.plan-price__ttl {
  background-color: #F75863;
  border-radius: 8px;
  color: #fff;
  font-size: 6.4vw;
  line-height: 1.5;
  padding: 8px 16px;
  white-space: nowrap;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 768px) {
  .plan-price__ttl {
    font-size: 32px;
  }
}
@media (min-width: 1200px) {
  .plan-price__ttl {
    font-size: 48px;
  }
}
.plan-price__regular-price {
  display: block;
  width: 70%;
  max-width: 350px;
  margin: 0 auto 3.2vw auto;
}
@media (min-width: 768px) {
  .plan-price__regular-price {
    margin-bottom: 1.5625vw;
  }
}
@media (min-width: 1200px) {
  .plan-price__regular-price {
    margin-bottom: 12px;
  }
}
.plan-price__icon-arrow {
  display: block;
  width: 60px;
  margin: 0 auto 3.2vw auto;
}
@media (min-width: 768px) {
  .plan-price__icon-arrow {
    margin-bottom: 1.5625vw;
  }
}
@media (min-width: 1200px) {
  .plan-price__icon-arrow {
    margin-bottom: 12px;
  }
}
.plan-price__limited-price {
  display: block;
  width: 90%;
  max-width: 500px;
  margin: 0 auto 8.5333vw auto;
}
@media (min-width: 768px) {
  .plan-price__limited-price {
    margin-bottom: 4.16667vw;
  }
}
@media (min-width: 1200px) {
  .plan-price__limited-price {
    margin-bottom: 32px;
  }
}
.plan-price__link {
  display: block;
  width: 80%;
  max-width: 400px;
  margin: 0 auto 12px auto;
}
.plan-price__btn-img {
  display: block;
  width: 100%;
}

.craniosacral-therapy {
  background-color: #F2E8E0;
  margin-top: -4.8vw;
  padding-bottom: 1px;
}
@media (min-width: 1200px) {
  .craniosacral-therapy {
    margin-left: 270px;
    margin-top: -40px;
  }
}
.craniosacral-therapy__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .craniosacral-therapy__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.craniosacral-therapy__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.cranio-price {
  background-color: #fff;
  border: 2px solid #F75863;
  padding: 10.66667vw 0 8.53334vw;
  margin: 12.8vw 4vw;
  position: relative;
}
@media (min-width: 768px) {
  .cranio-price {
    padding: 7.29167vw 0 5.2083vw;
  }
}
@media (min-width: 1200px) {
  .cranio-price {
    width: 800px;
    padding: 72px 0 48px;
    margin: 96px auto;
  }
}
.cranio-price__ttl {
  background-color: #F75863;
  border-radius: 8px;
  color: #fff;
  font-size: 6.4vw;
  line-height: 1.5;
  padding: 8px 16px;
  white-space: nowrap;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 768px) {
  .cranio-price__ttl {
    font-size: 32px;
  }
}
@media (min-width: 1200px) {
  .cranio-price__ttl {
    font-size: 48px;
  }
}
.cranio-price__text {
  display: block;
  width: 80%;
  max-width: 400px;
  margin: 0 auto 3.2vw auto;
}
@media (min-width: 768px) {
  .cranio-price__text {
    margin-bottom: 1.5625vw;
  }
}
@media (min-width: 1200px) {
  .cranio-price__text {
    margin-bottom: 12px;
  }
}
.cranio-price__special-price {
  display: block;
  width: 90%;
  max-width: 500px;
  margin: 0 auto 8.5333vw auto;
}
@media (min-width: 768px) {
  .cranio-price__special-price {
    margin-bottom: 4.16667vw;
  }
}
@media (min-width: 1200px) {
  .cranio-price__special-price {
    margin-bottom: 32px;
  }
}
.cranio-price__link {
  display: block;
  width: 80%;
  max-width: 400px;
  margin: 0 auto 12px auto;
}
.cranio-price__btn-img {
  display: block;
  width: 100%;
}

.reason {
  background-color: #F2E8E0;
  margin-top: -4.8vw;
}
@media (min-width: 1200px) {
  .reason {
    margin-left: 270px;
    margin-top: -40px;
  }
}
.reason__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .reason__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.reason__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.banner-ads {
  background-color: #F2E8E0;
}
@media (min-width: 1200px) {
  .banner-ads {
    margin-left: 270px;
  }
}
.banner-ads__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .banner-ads__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.banner-ads__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.profile {
  background-color: #F2E8E0;
}
@media (min-width: 1200px) {
  .profile {
    margin-left: 270px;
  }
}
.profile__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .profile__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.profile__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.flow {
  background-color: #F2E8E0;
}
@media (min-width: 1200px) {
  .flow {
    margin-left: 270px;
  }
}
.flow__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .flow__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.flow__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.faq {
  background-color: #F2E8E0;
  padding-bottom: 32px;
}
@media (min-width: 1200px) {
  .faq {
    margin-left: 270px;
    padding-bottom: 64px;
  }
}
.faq__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .faq__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.faq__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.banner-ads-2 {
  background-color: #F2E8E0;
  background-color: #fff;
  padding: 30px 15px;
}
@media (min-width: 1200px) {
  .banner-ads-2 {
    margin-left: 270px;
  }
}
.banner-ads-2__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .banner-ads-2__img-sp {
    display: block;
    width: 800px;
    margin: 0 auto;
  }
}
.banner-ads-2__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}

.site-footer {
  background-color: #F2E8E0;
  padding-bottom: 128px;
}
@media (min-width: 1200px) {
  .site-footer {
    margin-left: 270px;
    padding-bottom: 256px;
  }
}
.site-footer__img-sp {
  width: 100%;
}
@media (min-width: 1200px) {
  .site-footer__img-sp {
    width: 800px;
    display: block;
    margin: 0 auto;
  }
}
.site-footer__img-pc {
  width: 830px;
  display: block;
  margin: 0 auto;
}/*# sourceMappingURL=style.css.map */