@charset "UTF-8";
/* ----------------------------------------
	reset & common
---------------------------------------- */

/* デバックコメント削除 */
div[style*="background: #f0f0f0"] {
    display: none!important;
}

.grecaptcha-badge { visibility: hidden; }

.preload * {
  transition: none !important;
}

html {
  font-size: 100%;
  margin-top: 0 !important;
}

body {
  margin: 0 !important;
  padding: 0;
  -webkit-text-size-adjust: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: 400;
  margin: 0;
  padding: 0;
  letter-spacing: 0.05em;
}

p,
li,
dt,
dd,
th,
td,
pre {
  -ms-line-break: strict;
  line-break: strict;
  -ms-word-break: break-strict;
  word-break: break-strict;
}

img {
  max-width: 100%;
  max-height: 100%;
  vertical-align: top;
  border: 0;
}

ul,
ol {
  padding: 0;
  margin: 0;
}

dd {
  margin: 0;
}

object,
embed {
  vertical-align: top;
}

a {
  text-decoration: none;
  transition: all 0.3s ease;
}

a:hover {
  cursor: pointer;
  opacity: 0.7;
}

a.false,
a.false:hover {
  opacity: 1 !important;
}

a:focus {
  outline: none;
}

p {
  display: block;
  margin: 0 0 0;
}

.layout {
  padding: 0;
  list-style: none;
}

.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.flex {
  display: flex;
}

.m0 {
  margin: 0;
}

section {
  z-index: 1;
  position: relative;
}

main {
  display: block;
  position: relative;
  z-index: 2;
}

ul {
  list-style: none;
}

@media only screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media only screen and (min-width: 768px) {
  .tablet2 {
    display: none !important;
  }
}
@media only screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}
@media only screen and (max-width: 767px) {
  .tablet {
    display: none !important;
  }
}
/* ----------------------------------------
	変数
---------------------------------------- */
/* ----------------------------------------
	z-index memo

	ヘッダー　： 30
	コンテンツ内 : 20以下
  バックグランドイメージフォント: -1
  バックグランドサークル: -20

  font memo
  font-family: "Hiragino Sans", 'Noto Sans JP', sans-serif;
  font-family: 'Lato', sans-serif;

---------------------------------------- */
/* ----------------------------------------
	common
---------------------------------------- */
body {
  font-family: "Hiragino Kaku Gothic", "Noto Sans JP", sans-serif;
  font-weight: 300;
  letter-spacing: 0.025em;
  color: #302d2c;
}

a {
  color: #302d2c;
  letter-spacing: 0.05;
  font-weight: 300px;
  cursor: pointer;
  font-family: "Hiragino Kaku Gothic", "Noto Sans JP", sans-serif;
}
a:hover {
  cursor: pointer;
  opacity: 0.8;
}

iframe {
  max-width: 100%;
}

li > a {
  transition: color 0.2s;
}
li > a:hover, li > a:active {
  opacity: 1;
  color: #6db6d8;
}

p {
  color: #302d2c;
  letter-spacing: 0.05;
  font-weight: 300px;
  font-family: "Hiragino Kaku Gothic", "Noto Sans JP", sans-serif;
}

img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

main {
  overflow: hidden;
}

.lato, .side__item__text__data, .side__bar .popular__contents__title > span, .way__item__text > p, .way__item__text > span, .num__item__img > span::before, .page__nation > a, .column__fv__data, .scroll__bar > p, .btn__border.send::after, .coulum__contents > a.send::after,
.campaign__content > a.send::after, .btn__border .small, .coulum__contents > a .small,
.campaign__content > a .small, .btn__sinple, .btn__main, .breadcrumd > a, .breadcrumd p, .slide-content .slide-title > span, .post__date, .list_tag > li, .content__tag, .content__item__inner__text__data > a > p, .label__point, .chara__edge, .section__while > p, .title__bg, .top__message__img::after, .top__greeting__title .title__main::after, .top__greeting__title .normal__medical_content > h2::after, .title__sub, .title__main > span, .normal__medical_content > h2 > span, .medlical__item__title > p > span, .catch__small {
  font-family: "Lato", sans-serif;
}

.container {
  transition: transform 0.8s, opacity 0.3s;
  position: relative;
  overflow: hidden;
}
.container::after {
  content: "";
  background-color: #1c4457;
  height: 100%;
  width: 100%;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
  position: absolute;
  z-index: 50;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.5s ease;
}

.centercenter, .way__item__fin, .under__kv, .btn__qa__anc, .btn__cat, .header__col02__menu__box > a, .beauty__flow__box .flow__item__des__title__img, .news__post__arrow {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
}

.content__width, main.under02 .useful__info__items, .beauty__qa .inner, .beauty__qa, .beauty__machine, main.under .useful__info__items, .news__section, .popular__contents, .useful__info, .top__clinic__box, .top__message, .top__seek, .top__medical, .reservation__col02, .reservation__col01, .beauty__kv, .top__kv, .footer__nav .inner, .footer__clinic .box, .text__caution, .course__items, .border {
  padding: 0 20px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  box-sizing: border-box;
  max-width: 1260px;
}
@media only screen and (min-width: 769px) {
  .content__width, main.under02 .useful__info__items, .beauty__qa .inner, .beauty__qa, .beauty__machine, main.under .useful__info__items, .news__section, .popular__contents, .useful__info, .top__clinic__box, .top__message, .top__seek, .top__medical, .reservation__col02, .reservation__col01, .beauty__kv, .top__kv, .footer__nav .inner, .footer__clinic .box, .text__caution, .course__items, .border {
    padding: 0;
    width: 100%;
    max-width: 1260px;
  }
}

.content__1080, .column__box, .section__sitemap, .news__section, .campaign__list, .qa__detail .beauty__qa:nth-child(2n) .inner, .qa__detail .beauty__qa:nth-child(2n+1), .qa__anchors, .clinic__box, .course__content .top__seek, .course__reco, .normal__medical_content, main.under02 .popular__contents, main.under02 .useful__info, .cont__boxs, .remove__hair__contents, .beauty__flow .box, .beauty__caution, .beauty__dl, .beauty__featur, .beauty__point__box, .beauty__about__box, .beauty__campaign, main.under .popular__contents, main.under .useful__info, main.under .title__main, main.under .normal__medical_content > h2, .column__single__pan, .coulum__contents .beauty__about__box,
.campaign__content .beauty__about__box, .column__pan, .under02__kv, .medical__kv, main.under02 .beauty__flow {
  max-width: 1080px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 0 20px;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .content__1080, .column__box, .section__sitemap, .news__section, .campaign__list, .qa__detail .beauty__qa:nth-child(2n) .inner, .qa__detail .beauty__qa:nth-child(2n+1), .qa__anchors, .clinic__box, .course__content .top__seek, .course__reco, .normal__medical_content, main.under02 .popular__contents, main.under02 .useful__info, .cont__boxs, .remove__hair__contents, .beauty__flow .box, .beauty__caution, .beauty__dl, .beauty__featur, .beauty__point__box, .beauty__about__box, .beauty__campaign, main.under .popular__contents, main.under .useful__info, main.under .title__main, main.under .normal__medical_content > h2, .column__single__pan, .coulum__contents .beauty__about__box,
  .campaign__content .beauty__about__box, .column__pan, .under02__kv, .medical__kv, main.under02 .beauty__flow {
    padding: 0;
  }
}

.content__960, .campaign__btn__box, .campaign__content, .clinic__way, .clinic__deatil {
  max-width: 960px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 0 20px;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .content__960, .campaign__btn__box, .campaign__content, .clinic__way, .clinic__deatil {
    padding: 0;
  }
}

.content__740, .column__box__col01, .section__privacy, .section__contact, .column__content, .under03__kv {
  max-width: 740px;
  width: 100%;
  margin-right: auto;
  margin-left: auto;
  padding: 0 20px;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .content__740, .column__box__col01, .section__privacy, .section__contact, .column__content, .under03__kv {
    padding: 0;
  }
}

.content__lg, .header {
  padding: 0 20px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .content__lg, .header {
    margin: 0;
    padding: 0 0 0 90px;
  }
}

.content__md, .top__point .title__main, .top__point .normal__medical_content > h2 {
  padding: 0 20px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .content__md, .top__point .title__main, .top__point .normal__medical_content > h2 {
    padding: 0;
    max-width: 1090px;
    margin: 0 0 0 auto;
    align-items: flex-end;
  }
}

.content__sm, .top__greeting {
  padding: 0 20px;
  width: 100%;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .content__sm, .top__greeting {
    padding: 0 90px 0 610px;
  }
}

.pseudo, .top__greeting__img::after, .index__list__item > ul > li::before, .toc_list > li > ul > li::before, .column__index__title::before, div#toc_container .toc_title::before, .coulum__price__title::after, .coulum__contents .check__box::before,
.campaign__content .check__box::before, .coulum__contents > h4::after,
.campaign__content > h4::after, .coulum__contents > h3::after,
.campaign__content > h3::after, .coulum__contents > h2::after,
.campaign__content > h2::after, .page__btn::before, .page-numbers .next::before, .page-numbers .prev::before, .page__nation__btn::before, .btn__qa__anc::after, .btn__cat::after, .btn__area::before, .kv__swiper__btn.point > div .point02::before, .seek__box__list > li::before {
  position: absolute;
  content: "";
  background-repeat: no-repeat;
  background-position: center center;
  background-size: cover;
  left: 0;
  top: 0;
  right: 0;
  bottom: 0;
}

.main__logo {
  width: 224px;
  height: -moz-fit-content;
  height: fit-content;
}
@media only screen and (max-width: 559px) {
  .main__logo {
    width: 201px;
  }
}
.main__logo__catch {
  font-size: 14px;
  line-height: 1;
  letter-spacing: 0.03em;
  font-weight: 300;
  margin-top: 20px;
}

main {
  padding-top: 85px;
}
@media only screen and (min-width: 769px) {
  main {
    padding-top: 176px;
  }
}

.catch__small {
  font-size: 11px;
  letter-spacing: 0.15em;
  font-weight: 400;
  color: #6db6d8;
  line-height: 1;
}
@media only screen and (min-width: 769px) {
  .catch__small {
    font-size: 12px;
  }
}

.medlical__item {
  width: 300px;
  height: -moz-fit-content;
  height: fit-content;
}
@media only screen and (min-width: 769px) {
  .medlical__item {
    width: 555px;
  }
}
.medlical__item__img {
  width: 100%;
  height: 168px;
  overflow: visible;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .medlical__item__img {
    height: 312px;
  }
}
.medlical__item__img > img {
  border-radius: 0 8px 0 8px;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.medlical__item__title > p {
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1.6;
  font-weight: 300;
  margin-top: -0.4em;
  margin-bottom: -0.4em;
}
@media only screen and (min-width: 769px) {
  .medlical__item__title > p {
    font-size: 16px;
  }
}
.medlical__item__title > p > span {
  font-size: 10px;
  line-height: 1;
  vertical-align: super;
  margin-left: 10px;
  color: #6db6d8;
}
.medlical__item.-small {
  width: 48%;
}
@media only screen and (min-width: 769px) {
  .medlical__item.-small {
    width: 250px;
  }
}
.medlical__item.-small .medlical__item__img {
  height: 102px;
}
@media only screen and (min-width: 769px) {
  .medlical__item.-small .medlical__item__img {
    height: 150px;
  }
}
.medlical__item.-small .medlical__item__img > img {
  border-radius: unset;
}
.medlical__item.-gray {
  margin-bottom: 0 !important;
}
.medlical__item.-gray .medlical__item__title > p > span {
  color: #d3d3d3;
}

.mb__10 {
  margin-bottom: 20px !important;
}

.mb__20 {
  margin-bottom: 20px !important;
}

.mb__40 {
  margin-bottom: 40px !important;
}
@media only screen and (min-width: 769px) {
  .mb__40 {
    margin-bottom: 60px !important;
  }
}

.mb__60, .des.course__content .course__reco .course__reco__box {
  margin-bottom: 60px !important;
}
@media only screen and (min-width: 769px) {
  .mb__60, .des.course__content .course__reco .course__reco__box {
    margin-bottom: 80px !important;
  }
}

.mb__80, .under02__kv.post {
  margin-bottom: 80px !important;
}
@media only screen and (min-width: 769px) {
  .mb__80, .under02__kv.post {
    margin-bottom: 100px !important;
  }
}

.mb__100 {
  margin-bottom: 100px !important;
}
@media only screen and (min-width: 769px) {
  .mb__100 {
    margin-bottom: 120px !important;
  }
}

.mb__120, .section__column__cat, .section__privacy, .section__404, .section__sitemap, .section__contact, main.under02 .popular__contents, main.under .popular__contents {
  margin-bottom: 60px !important;
}
@media only screen and (min-width: 769px) {
  .mb__120, .section__column__cat, .section__privacy, .section__404, .section__sitemap, .section__contact, main.under02 .popular__contents, main.under .popular__contents {
    margin-bottom: 150px !important;
  }
}

.mb__240 {
  margin-bottom: 240px !important;
}
@media only screen and (min-width: 769px) {
  .mb__240 {
    margin-bottom: 150px !important;
  }
}

@media only screen and (min-width: 769px) {
  .pl__60 {
    transform: translateX(60px);
  }
}

.title__main, .normal__medical_content > h2 {
  font-size: 18px;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 2;
  margin: -11px 0;
  color: #302d2c;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .title__main, .normal__medical_content > h2 {
    font-size: 24px;
    font-weight: 400;
  }
}
.title__main > span, .normal__medical_content > h2 > span {
  font-size: 12px;
  margin-bottom: 60px;
  color: #6db6d8;
  letter-spacing: 0;
  font-weight: 300;
  display: block;
  text-transform: capitalize;
}
@media only screen and (min-width: 769px) {
  .title__main > span, .normal__medical_content > h2 > span {
    margin-bottom: 30px;
  }
}
.title__main.sentence, .normal__medical_content > h2.sentence {
  line-height: 2;
  font-size: 18px;
  line-height: 2;
  font-weight: 400;
  margin: -2px 0;
}
.title__main.Medical, .normal__medical_content > h2.Medical {
  font-size: 20px;
}
.title__main.Medical > span, .normal__medical_content > h2.Medical > span {
  margin-bottom: 25px;
}
.title__main.center, .normal__medical_content > h2.center {
  text-align: center;
}
.title__main.mb_s > span, .normal__medical_content > h2.mb_s > span {
  margin-bottom: 30px;
}
.title__main.under > span, .normal__medical_content > h2.under > span {
  margin-bottom: 25px;
}

.title__sub {
  font-size: 12px;
  letter-spacing: 0.15em;
  position: relative;
  padding-left: 65px;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .title__sub {
    padding-left: 86px;
  }
}
.title__sub::before {
  position: absolute;
  content: "";
  height: 1px;
  width: 50px;
  top: 50%;
  left: 0;
  background-color: #302d2c;
}
@media only screen and (min-width: 769px) {
  .title__sub::before {
    width: 60px;
  }
}

.title__bg, .top__message__img::after, .top__greeting__title .title__main::after, .top__greeting__title .normal__medical_content > h2::after {
  position: absolute;
  font-size: 100px;
  line-height: 1.53;
  color: #fafafa;
  font-weight: 300;
  width: -moz-max-content;
  width: max-content;
  top: -4px;
  left: 0;
  z-index: -1;
}
@media only screen and (min-width: 769px) {
  .title__bg, .top__message__img::after, .top__greeting__title .title__main::after, .top__greeting__title .normal__medical_content > h2::after {
    font-size: 210px;
    line-height: 1;
  }
}

.title__subhead, .normal__medical_content > h3 {
  font-size: 14px;
  font-weight: 400;
  box-sizing: border-box;
  padding-left: 65px;
  position: relative;
  color: #302d2c;
}
@media only screen and (min-width: 769px) {
  .title__subhead, .normal__medical_content > h3 {
    font-size: 18px;
    padding-left: 80px;
  }
}
.title__subhead::before, .normal__medical_content > h3::before {
  content: "";
  height: 1px;
  width: 50px;
  background-color: #302d2c;
  position: absolute;
  top: 50%;
  left: 0;
}
@media only screen and (min-width: 769px) {
  .title__subhead::before, .normal__medical_content > h3::before {
    width: 60px;
  }
}

.title__h4, .normal__medical_content h4 {
  padding: 9px 6px 9px 4px;
  box-sizing: border-box;
  border-top: 1px solid #302d2c;
  border-bottom: 1px solid #302d2c;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0;
}
.title__h4::before, .normal__medical_content h4::before {
  content: "・";
  margin-right: 2px;
}

.chara__edge, .section__while > p {
  line-height: 1;
  letter-spacing: 0;
  font-size: 72px;
  font-weight: 100;
  color: #fff;
  opacity: 22%;
  text-shadow: 1px 1px 0 #6db6d8, -1px -1px 0 #6db6d8, -1px 1px 0 #6db6d8, 1px -1px 0 #6db6d8, 0px 1px 0 #6db6d8, -1px 0 #6db6d8, -1px 0 0 #6db6d8, 1px 0 0 #6db6d8;
  width: -moz-max-content;
  width: max-content;
}

.section__while {
  position: relative;
  width: 100vw;
  height: 86px;
  overflow: visible;
}
@media only screen and (min-width: 769px) {
  .section__while {
    height: 192px;
  }
}
.section__while > p {
  top: 0;
  position: absolute;
}
@media only screen and (min-width: 769px) {
  .section__while > p {
    font-size: 160px;
  }
}
.section__while.Commitments {
  margin-bottom: 100px;
}
@media only screen and (min-width: 769px) {
  .section__while.Commitments {
    margin-bottom: 89px;
  }
}
.section__while.Commitments > p {
  left: -306px;
}
@media only screen and (min-width: 769px) {
  .section__while.Commitments > p {
    left: -554px;
  }
}
.section__while.useful {
  position: absolute;
  bottom: unset;
  left: -20px;
  top: 333px;
  z-index: -1;
}
@media only screen and (min-width: 769px) {
  .section__while.useful {
    left: -10px;
    top: 461px;
  }
}
.section__while.useful > p {
  left: -86px;
}
@media only screen and (min-width: 769px) {
  .section__while.useful > p {
    left: 0;
  }
}

.img {
  width: 100%;
  max-width: 460px;
  margin: 0 auto 40px;
}
@media only screen and (min-width: 769px) {
  .img {
    margin: 0 0 40px 40px;
  }
}

.img__radius, .content__item__sinple__img {
  border-radius: 0 8px 0 8px;
  overflow: hidden;
}

.img__radius__lg, .column__fv__img, .under03__kv__img, .under02__kv__img > img, .under02__kv__img, .beauty__kv__img {
  border-radius: 0 20px 0 20px;
  overflow: hidden;
}

.label__point {
  position: absolute;
  height: 26px;
  z-index: 1;
  width: 100px;
  text-align: center;
  background-color: #fff;
  font-size: 12px;
  line-height: 25px;
  color: #6db6d8;
  border-radius: 0 15px 0 15px;
  top: 10px;
  right: 10px;
}

/* ----------------------------------------
	drop down menu
---------------------------------------- */
.drop__down > ul {
  display: none;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 300px;
  margin-top: 45px;
}
.drop__down > ul > li {
  line-height: 1;
  font-weight: 200;
  font-size: 20px;
  padding-left: 45px;
}
.drop__down > ul > li:not(:nth-last-child(1)) {
  margin-bottom: 45px;
}
@media only screen and (max-width: 559px) {
  .drop__down > ul > li {
    font-size: 16px;
    color: #fff;
  }
  .drop__down > ul > li > a {
    color: #fff;
  }
}
.drop__down.-seek {
  position: relative;
}
.drop__down.-seek::before {
  content: "";
  position: absolute;
  width: 100%;
  height: 1px;
  background-color: #fff;
  left: 0;
  right: 0;
  bottom: 0;
  top: unset;
  margin: 0 auto;
}
.drop__down.-seek > span {
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1;
  padding: 25px 10px;
  width: 100%;
  box-sizing: border-box;
  display: block;
  color: #fff;
  font-weight: 300;
}
.drop__down.-seek > span::before {
  display: none;
}
.drop__down.-seek > span::after {
  transition: transform 0.7s;
  transform-origin: center center;
  content: "";
  position: absolute;
  width: 11px;
  height: 6px;
  top: 50%;
  right: 10px;
  background-color: unset;
  background-image: url("../images/common/arrow_white.svg");
  background-size: cover;
}
.drop__down.-seek > ul {
  width: 100%;
  margin: 0;
}
.drop__down.-seek > ul > li {
  padding: 8px 12px 8px 20px;
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 0;
  width: 310px;
  box-sizing: border-box;
}
.drop__down.-seek > ul > li > a {
  color: #fff;
}
.drop__down.-seek > ul > li:nth-child(1) {
  margin-top: -8px;
}
.drop__down.-seek > ul > li:nth-last-child(1) {
  padding-bottom: 20px;
}

/* ----------------------------------------
	tabs
---------------------------------------- */
.seek__box__list {
  display: flex;
  padding: 0;
  flex-direction: row;
  width: 100%;
  /*   height: auto; */
  position: relative;
  margin: 0 auto;
}
@media only screen and (min-width: 769px) {
  .seek__box__list::after {
    content: "";
    position: absolute;
    width: 100%;
    height: 5px;
    background: linear-gradient(90deg, #60abce 0%, #60abce 50%, #497990 50%, #497990 100%);
    bottom: -2px;
    left: 0;
    right: 0;
    margin: 0 auto;
    z-index: 10;
  }
}
.seek__box__list > li {
  align-items: flex-end;
  justify-content: center;
  margin: 0;
  padding-bottom: 17px;
  display: flex;
  font-size: 16px;
  font-weight: 200;
  letter-spacing: 0.05em;
  color: #fff;
  background-color: #60abce;
  position: relative;
  cursor: pointer;
  list-style: none;
  -webkit-user-select: none;
     -moz-user-select: none;
          user-select: none;
  height: 80px;
  width: 50%;
  box-sizing: border-box;
  line-height: 1;
}
@media only screen and (min-width: 769px) {
  .seek__box__list > li {
    margin-bottom: 15px;
    height: 155px;
    font-size: 20px;
    margin-bottom: 0;
  }
}
.seek__box__list > li::before {
  background-image: url("../images/common/seek_icon_01.png");
  height: 20px;
  width: 20px;
  top: 17px;
  margin: 0 auto;
}
@media only screen and (min-width: 769px) {
  .seek__box__list > li::before {
    width: 40px;
    height: 40px;
    top: 60px;
  }
}
.seek__box__list > li:nth-last-child(1) {
  background-color: #497990;
}
.seek__box__list > li:nth-last-child(1)::before {
  background-image: url("../images/common/seek_icon_02.png");
  width: 23px;
}
@media only screen and (min-width: 769px) {
  .seek__box__list > li:nth-last-child(1)::before {
    width: 47px;
  }
}

.seek__item, .seek__box__article__item--02, .seek__box__article__item {
  width: 100%;
  padding: 5px 20px 80px;
  height: -moz-fit-content;
  height: fit-content;
  left: 0;
  top: 0;
  line-height: 1.5;
  overflow: hidden;
  background-color: #60abce;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .seek__item, .seek__box__article__item--02, .seek__box__article__item {
    display: block;
    padding: 0 155px 60px;
    height: inherit;
  }
}

.seek__box__article {
  width: 100%;
  background: #fff;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
}
@media only screen and (min-width: 769px) {
  .seek__box__article {
    display: flex;
    height: inherit;
  }
}
.seek__box__article__item {
  display: none;
}
.seek__box__article__item.active {
  display: block;
}
.seek__box__article__item--02 {
  background-color: #497990;
  transition: opacity 0.4s ease;
  display: none;
}
@media only screen and (min-width: 769px) {
  .seek__box__article__item--02 {
    display: block;
  }
}
.seek__box__article__item--02.active {
  display: block;
}

.clinic__item {
  width: 100%;
  max-width: 520px;
}
.clinic__item.fix04 {
  max-width: 520px !important;
}
@media only screen and (max-width: 559px) {
  .clinic__item.fix04 {
    margin-bottom: 60px;
  }
}
@media only screen and (max-width: 559px) {
  .clinic__item.fix04.fix05 {
    margin-top: 60px;
  }
}
@media only screen and (min-width: 769px) {
  .clinic__item {
    width: 520px;
  }
}
.clinic__item__img {
  width: 100%;
  height: 210px;
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .clinic__item__img {
    height: 312px;
  }
}
.clinic__item__img > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.clinic__item__text__name {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 30px;
}
.clinic__item__text__name > h3 {
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: 2;
  margin: -8px 0;
  font-weight: 300;
}
.clinic__item__text__data > p {
  font-size: 12px;
  letter-spacing: 0.05em;
  font-weight: 300px;
  line-height: 2.16;
  margin: -12px 0;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text__data > p {
    font-size: 14px;
  }
}

.clinic__item__text__map > p > iframe {
  height: 320px;
}
@media only screen and (max-width: 559px) {
  .clinic__item__text__map > p > iframe {
    width: 290px;
    height: 165px;
  }
}

.clinic__item__text__inst {
  background-color: unset !important;
  margin: 0 auto;
}
.clinic__item__text__inst > iframe {
  transform-origin: top left;
  transform: scale(0.53);
}
@media only screen and (max-width: 559px) {
  .clinic__item__text__inst > iframe {
    transform: scale(0.7);
  }
}

.content__item {
  position: relative;
}
.content__item__inner__img {
  height: 197px;
  width: 100%;
  border-radius: 0 8px 0 8px;
  overflow: hidden;
  margin-bottom: 25px;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .content__item__inner__img {
    margin-bottom: 18px;
  }
}
.content__item__inner__img > img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  transition: transform 0.6s;
}
.content__item__inner__img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0;
  pointer-events: none;
  transition: all 0.6s;
}
.content__item__inner__text__title {
  font-size: 13px;
  line-height: 1.6;
  margin-bottom: 24px;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .content__item__inner__text__title {
    font-size: 16px;
    margin-bottom: 26px;
  }
}
.content__item__inner__text__data {
  display: flex;
  align-items: center;
  justify-content: flex-start;
}
.content__item__inner__text__data > a {
  height: 20px;
}
.content__item__inner__text__data > a > p {
  font-size: 12px;
  line-height: 20px;
  margin-right: 20px;
  color: #808080;
  width: -moz-fit-content;
  width: fit-content;
}
.content__item:not(:nth-last-child(1)) {
  margin-bottom: 60px;
}
.content__item:hover .content__item__inner__img > img, .content__item:active .content__item__inner__img > img {
  transform: scale(1.2);
}
.content__item:hover .content__item__inner__img::after, .content__item:active .content__item__inner__img::after {
  opacity: 0.2;
}

.content__tag {
  font-size: 10px;
  line-height: 1.9;
  padding: 0 14px;
  background-color: #6db6d8;
  border-radius: 2px;
  color: #fff;
}

.border__inner {
  height: 1px;
  background-color: #c1c1c1;
}

.news__post {
  padding: 30px 20px;
  border-bottom: 1px solid #c1c1c1;
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .news__post {
    padding: 30px;
  }
}
@media only screen and (min-width: 769px) {
  .news__post > a {
    display: flex;
    justify-content: flex-start;
    gap: 80px;
    align-items: center;
  }
}
.news__post__data {
  font-size: 13px;
  line-height: 1;
  font-size: 300;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .news__post__data {
    margin-bottom: 0;
    font-size: 16px;
  }
}
.news__post__title {
  font-size: 13px;
  line-height: 2;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .news__post__title {
    font-size: 16px;
    width: 661px;
  }
}
.news__post__arrow {
  width: 20px;
  height: 12px;
  opacity: 0.8;
}

@keyframes opacity__animation {
  0% {
    opacity: 0.15;
    transform: scale(1);
  }
  100% {
    opacity: 0.5;
    transform: scale(1.2);
  }
}
@keyframes roll__animation {
  0% {
    transform: rotate(0);
  }
  100% {
    transform: rotate(360deg);
  }
}
.bg__circle {
  --size: 250px;
  --speed: 5s;
  --easing: cubic-bezier(0.8, 0.2, 0.2, 0.8);
  width: var(--size);
  height: var(--size);
  position: absolute;
  border-radius: 50%;
  z-index: -20;
  background: radial-gradient(#81e2ff, transparent);
  filter: blur(50px);
  opacity: 0.3;
  animation: opacity__animation var(--speed) var(--easing) alternate infinite;
}
@media only screen and (min-width: 769px) {
  .bg__circle {
    --size: 1260px;
    filter: blur(160px);
  }
}

.dl__box {
  --border: #c1c1c1;
  display: flex;
  justify-content: flex-start;
}
@media only screen and (max-width: 559px) {
  .dl__box {
    overflow: scroll;
  }
}
.dl__box .speace {
  opacity: 0;
}
@media only screen and (min-width: 769px) {
  .dl__box {
    justify-content: center;
  }
}
.dl__box dl {
  min-width: 260px;
  width: -moz-fit-content;
  width: fit-content;
}
.dl__box dl:nth-last-child(1) {
  border-right: 1px solid rgba(205, 205, 205, 0.5);
}
.dl__box .dl01 > dt {
  border-radius: 6px 0px 0px 0px;
}
.dl__box .dl01 > dd {
  background-color: #f8f8f4;
}
.dl__box .dl05 > dt {
  width: 195px;
}
.dl__box .dl05 > dd {
  width: 195px;
  padding-left: 6px;
}
.dl__box .dl06 > dt {
  border-radius: 0px 6px 0px 0px;
  width: 128px;
}
.dl__box .dl06 > dd {
  width: 128px;
}
.dl__box dt {
  width: 100%;
  height: 66px;
  background-color: #f8f8f4;
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
}
.dl__box dt > dfn {
  font-weight: 400;
  font-style: normal;
  font-size: 14px;
  line-height: 1.8571428571;
  color: #302d2c;
}
.dl__box dd {
  font-size: 14px;
  font-weight: 300;
  margin-left: 0px;
  width: 100%;
  height: 66px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  padding-left: 10px;
  border-top: 1px solid var(--border);
  box-sizing: border-box;
}
.dl__box dd:nth-last-child(1) {
  border-bottom: 1px solid var(--border);
}

.content__item__sinple {
  width: 300px;
}
@media only screen and (min-width: 769px) {
  .content__item__sinple {
    width: 510px;
  }
}
.content__item__sinple__img {
  width: 100%;
  height: 167px;
  margin-bottom: 20px;
  position: relative;
}
.content__item__sinple__img::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #000;
  opacity: 0;
  pointer-events: none;
  transition: all 0.6s;
}
@media only screen and (min-width: 769px) {
  .content__item__sinple__img {
    height: 287px;
    margin-bottom: 30px;
  }
}
.content__item__sinple__img > img {
  transition: transform 0.6s;
  width: 100%;
  height: 100%;
}
.content__item__sinple__title {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 2;
  margin: -4px 0;
  font-weight: 300;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .content__item__sinple__title {
    font-size: 16px;
  }
}
.content__item__sinple:hover .content__item__sinple__img > img, .content__item__sinple:active .content__item__sinple__img > img {
  transform: scale(1.2);
}
.content__item__sinple:hover .content__item__sinple__img::after, .content__item__sinple:active .content__item__sinple__img::after {
  opacity: 0.2;
}

@media only screen and (min-width: 769px) {
  .course__items {
    margin-bottom: 0 !important;
    margin-top: -20px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 0 90px;
  }
}
.course__items .course__item:not(:nth-last-child(1)) {
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .course__items .course__item:not(:nth-last-child(1)) {
    margin-bottom: 60px;
  }
}
@media only screen and (min-width: 769px) {
  .course__items .course__item:nth-last-child(1) {
    margin-bottom: 60px;
  }
}

.course__item {
  width: 100%;
  max-width: 500px;
  background-color: #fafafa;
  padding: 40px 25px;
  box-sizing: border-box;
  border-radius: 0 8px 0 8px;
}
@media only screen and (min-width: 769px) {
  .course__item {
    padding: 50px 40px 60px;
  }
}
.course__item__title {
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 1.6;
  text-align: center;
  padding-bottom: 10px;
  position: relative;
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .course__item__title {
    font-size: 18px;
  }
}
.course__item__title > span {
  font-size: 11px;
}
@media only screen and (min-width: 769px) {
  .course__item__title > span {
    font-size: 12px;
  }
}
.course__item__title::after {
  content: "";
  position: absolute;
  height: 1px;
  width: 100%;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: 0;
  background-color: #c1c1c1;
}
.course__item .box {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .course__item .box {
    flex-direction: row;
    justify-content: flex-start;
  }
}
.course__item__img {
  width: 200px;
  height: -moz-fit-content;
  height: fit-content;
  margin-bottom: 20px;
  background-color: #fff;
  align-items: flex-start;
}
@media only screen and (min-width: 769px) {
  .course__item__img {
    width: 220px;
    height: -moz-fit-content;
    height: fit-content;
    margin-right: 20px;
    margin-bottom: 0;
  }
}
.course__item__img > img {
  -o-object-fit: contain;
     object-fit: contain;
}
.course__item__des {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .course__item__des {
    justify-content: flex-start;
    align-self: flex-end;
    align-items: flex-start;
  }
}
.course__item__des__label {
  margin-bottom: 20px;
  font-size: 12px;
  line-height: 1;
  padding: 9px 16px;
  background-color: #96c5f7;
  min-width: 140px;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .course__item__des__label {
    font-size: 14px;
    margin-bottom: 10px;
  }
}
.course__item__des__label > p {
  color: #fff;
}
.course__item__des__label.trial {
  background-color: #ffe67c;
}
.course__item__des__label.trial > p {
  color: #302d2c;
}
.course__item__des__col01 {
  display: flex;
  align-items: center;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .course__item__des__col01 {
    flex-direction: column;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 769px) {
  .course__item__des__col01 .price__box:nth-child(1) {
    order: 2;
  }
}
@media only screen and (min-width: 769px) {
  .course__item__des__col01 .price__box:nth-child(2) {
    order: 1;
    margin-bottom: 20px;
  }
}
.course__item__des__col01 .price__box__data {
  font-size: 12px;
}
.course__item__des__col01 > div:nth-child(1) {
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .course__item__des__col01 > div:nth-child(1) {
    margin-right: 0;
  }
}
.course__item__des__col01.many {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

.price__box {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .price__box {
    align-items: flex-start;
  }
}
.price__box__data {
  font-size: 13px;
  margin-bottom: 10px;
  font-weight: 400;
}
@media only screen and (min-width: 769px) {
  .price__box__data {
    font-size: 14px;
  }
}

.course__price {
  font-size: 20px;
  font-weight: 400;
  line-height: 1;
  vertical-align: bottom;
}
@media only screen and (min-width: 769px) {
  .course__price {
    font-size: 24px;
  }
}
.course__price > span {
  font-size: 11px;
  font-weight: 300;
  margin-left: 5px;
}
@media only screen and (min-width: 769px) {
  .course__price > span {
    font-size: 12px;
  }
}
.course__price__left {
  margin-right: 5px;
}

.text__caution {
  font-size: 10px;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 769px) {
  .text__caution {
    text-align: center;
    font-size: 11px;
  }
}

.course__content {
  display: flex;
  flex-direction: column;
  align-items: center;
}
.course__content .btn__main {
  margin-top: -20px;
}

.list_tag {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.list_tag > li {
  border-radius: 2px;
  padding: 5px 19px;
  color: #fff;
  font-size: 10px;
  letter-spacing: 0.05em;
  line-height: 1;
  background-color: #6db6d8;
}

.list__qa {
  width: 100%;
  max-width: 920px;
  margin: 0 auto;
}
.list__qa .drop__down {
  padding: 0 20px;
  box-sizing: border-box;
  border-bottom: 1px solid #c1c1c1;
}
@media only screen and (min-width: 769px) {
  .list__qa .drop__down {
    padding: 0 26px;
  }
}
.list__qa .drop__down .btn__dropDown {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: -moz-fit-content;
  height: fit-content;
  padding-top: 20px;
  padding-bottom: 20px;
  box-sizing: border-box;
  position: relative;
  --time: 1s;
  padding-right: 0;
  cursor: pointer;
  transition: opacity 0.4s;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 769px) {
  .list__qa .drop__down .btn__dropDown {
    height: 76px;
  }
}
.list__qa .drop__down .btn__dropDown > svg {
  min-width: 4%;
  min-height: 14px;
  transition: transform var(--time);
}
@media only screen and (min-width: 769px) {
  .list__qa .drop__down .btn__dropDown > svg {
    min-width: 2%;
    min-height: 19px;
  }
}
.list__qa .drop__down .btn__dropDown > svg > path {
  transition: fill var(--time);
}
.list__qa .drop__down .btn__dropDown::before {
  display: none;
}
.list__qa .drop__down .btn__dropDown::after {
  display: none;
}
.list__qa .drop__down .btn__dropDown > p {
  font-size: 13px;
  font-weight: 300;
  line-height: 2;
  letter-spacing: 0.05em;
  transition: color var(--time);
  max-width: 95%;
}
@media only screen and (min-width: 769px) {
  .list__qa .drop__down .btn__dropDown > p {
    max-width: 97%;
    font-size: 16px;
  }
}
.list__qa .drop__down .btn__dropDown:hover, .list__qa .drop__down .btn__dropDown:active {
  opacity: 0.6;
}
.list__qa .drop__down__text {
  margin-bottom: 20px;
  display: none;
  margin-top: 0;
  max-width: unset;
}
.list__qa .drop__down__text > p {
  font-size: 12px;
  line-height: 2;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 769px) {
  .list__qa .drop__down__text > p {
    font-size: 14px;
  }
}
.list__qa .drop__down__text > p.list {
  padding-left: 13px;
  position: relative;
}
.list__qa .drop__down__text > p.list::before {
  content: "・";
  position: absolute;
  left: 0;
  top: 0;
}
.list__qa .drop__down__text > p.list:not(:nth-last-child(1)) {
  margin-bottom: 20px;
}
.list__qa .drop__down__text > img {
  max-width: 560px;
  -o-object-fit: contain;
     object-fit: contain;
}
.list__qa .drop__down.drop .btn__dropDown > p {
  color: #6db6d8;
}
.list__qa .drop__down.drop .btn__dropDown > svg {
  transform: rotateX(180deg);
}
.list__qa .drop__down.drop .btn__dropDown > svg > path {
  fill: #6db6d8;
}

.beauty__flow__box {
  background-color: #60abce;
  padding: 60px 20px;
  max-width: 510px;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .beauty__flow__box {
    padding: 60px 55px 84px;
  }
}
.beauty__flow__box__title {
  font-size: 18px;
  text-align: center;
  letter-spacing: 0.05em;
  font-weight: 400;
  color: #fff;
}
.beauty__flow__box .flow__item {
  padding: 30px 10px 0;
}
@media only screen and (min-width: 769px) {
  .beauty__flow__box .flow__item {
    padding-left: 20px;
    padding-right: 20px;
  }
}
.beauty__flow__box .flow__item:not(:nth-last-child(1)) {
  border-bottom: 1px solid #fff;
  padding-bottom: 30px;
}
.beauty__flow__box .flow__item__des__title {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  margin-bottom: 15px;
}
.beauty__flow__box .flow__item__des__title__img {
  width: 34px;
  height: 34px;
  border-radius: 50%;
  background-color: #fff;
  margin-right: 10px;
}
.beauty__flow__box .flow__item__des__title__img > svg {
  height: 16px;
}
.beauty__flow__box .flow__item__des__title > h4 {
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0;
  vertical-align: bottom;
  color: #fff;
}
@media only screen and (min-width: 769px) {
  .beauty__flow__box .flow__item__des__title > h4 {
    font-size: 16px;
  }
}
.beauty__flow__box .flow__item__des__title > h4 > span {
  font-size: 12px;
  margin-right: 10px;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .beauty__flow__box .flow__item__des__title > h4 > span {
    font-size: 14px;
  }
}
.beauty__flow__box .flow__item__des__text {
  color: #fff;
  line-height: 2;
  font-size: 12px;
  font-weight: 400;
  letter-spacing: 0.05em;
}
.beauty__flow__box.bg02 {
  background-color: #497990;
}
.beauty__flow__box.bg02 .flow__item__des__title__img > svg > path {
  fill: #497990;
}

.note, .normal__medical_content > p.note {
  font-size: 11px;
  line-height: 2.3636363636;
  letter-spacing: 0.05em;
  font-weight: 300;
}

.medical__price__box {
  background-color: #fafafa;
  padding: 40px 20px;
  text-align: center;
  width: 100%;
  max-width: 350px;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .medical__price__box {
    padding: 60px 20px;
  }
}
.medical__price__box__title {
  font-size: 16px;
  line-height: 1.6;
  width: 100%;
  font-weight: 400;
  border-bottom: 1px solid #c1c1c1;
  padding-bottom: 4px;
  box-sizing: border-box;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .medical__price__box__title {
    font-size: 18px;
  }
}
.medical__price__box__des {
  font-size: 20px;
  font-weight: 500;
  vertical-align: bottom;
}
@media only screen and (min-width: 769px) {
  .medical__price__box__des {
    font-size: 24px;
  }
}
.medical__price__box__des > span {
  font-size: 11px;
  line-height: 1;
  margin-left: 5px;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .medical__price__box__des > span {
    font-size: 12px;
  }
}

main.under02 .beauty__flow .box {
  padding: 0;
}
@media only screen and (min-width: 769px) {
  main.under02 .beauty__caution {
    margin-bottom: 150px;
  }
}

.post__date {
  font-size: 12px;
  font-weight: 300;
  color: #808080;
}

.sumple__page {
  padding-top: 20px;
}
.sumple__page > h1 {
  font-size: 22px;
  margin-bottom: 20px;
}
.sumple__page > a {
  display: block;
  font-size: 16px;
  transition: all 0.6s;
}
.sumple__page > a:not(:nth-last-child(1)) {
  margin-bottom: 20px;
}
.sumple__page > a:hover {
  color: #6db6d8;
}
@media only screen and (min-width: 769px) {
  .sumple__page {
    padding-top: 100px;
  }
}

@media only screen and (min-width: 769px) {
  .bg__circle.fix01 {
    top: -301px;
    right: -181px;
    width: 800px;
    height: 800px;
  }
}

.bg__circle.fix02 {
  top: -413px;
  left: -344px;
  right: unset;
  width: 630px;
  height: 630px;
}
@media only screen and (max-width: 559px) {
  .bg__circle.fix02 {
    display: none;
  }
}

@media only screen and (max-width: 559px) {
  .section__while.hiro__clinic.fix06 > p {
    left: -295px !important;
  }
}

.page__content {
  width: 100%;
  margin: 0 auto;
  max-width: 1080px;
}

.fix08 > p {
  font-size: 13px;
}
@media only screen and (min-width: 769px) {
  .fix08 > p {
    font-size: 14px;
  }
}

.youtube__box {
  max-width: 640px;
  width: 100%;
  margin: 0 auto;
}
.youtube__box.clinic {
  margin: 40px 0 0;
}

/* ----------------------------------------
	header
---------------------------------------- */
.header {
  display: flex;
  justify-content: space-between;
  align-items: center;
  height: 176px;
  position: fixed;
  z-index: 30;
  top: 0;
  left: 0;
  right: 0;
  transition: box-shadow 0.8s ease, opacity 1s, background-color 1s;
  opacity: 1;
}
@media only screen and (max-width: 559px) {
  .header.fixed {
    background-color: #fff;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.1);
  }
}
@media only screen and (min-width: 769px) {
  .header.fixed .header__col02__menu {
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    background-color: white;
  }
}
@media only screen and (max-width: 559px) {
  .header {
    box-shadow: none;
    height: 85px;
    padding: 0 15px;
    margin: 0 auto;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
  }
}
.header__col01 > a {
  width: 224px;
  height: -moz-fit-content;
  height: fit-content;
}
@media only screen and (max-width: 559px) {
  .header__col01 > a {
    width: 291px;
  }
}
.header__col02 {
  align-self: flex-start;
}
@media only screen and (max-width: 559px) {
  .header__col02 {
    align-self: center;
  }
}
.header__col02__menu {
  border-radius: 0 0 0 20px;
  height: 116px;
  padding: 50px 90px 46px;
  display: flex;
  justify-content: space-between;
  box-sizing: border-box;
  background-color: white;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.06);
  transition: box-shadow 0.8s ease, background-color 0.8s;
}
@media only screen and (max-width: 559px) {
  .header__col02__menu {
    box-shadow: none;
    padding: 0;
    height: -moz-fit-content;
    height: fit-content;
    background-color: unset;
  }
}
.header__col02__menu .list__pcnav {
  margin-right: 80px;
}
.header__col02__menu__box {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.header__col02__menu__box > a {
  font-size: 12px;
  height: 20px;
  width: 102px;
  position: relative;
  margin-right: 40px;
}
@media only screen and (max-width: 559px) {
  .header__col02__menu__box > a {
    width: 88px;
    margin-right: 16px;
  }
}
.header__col02__menu__box > a::before {
  width: 1px;
  height: 20px;
  content: "";
  position: absolute;
  background-color: #d9d9d9;
  left: 0;
  top: 0;
}
.header__col02__menu__box > a::after {
  width: 1px;
  height: 20px;
  content: "";
  position: absolute;
  background-color: #d9d9d9;
  right: 0;
  top: 0;
}
.header__col02__menu__box > a > span {
  position: relative;
  padding-right: 9px;
}
.header__col02__menu__box > a > span::after {
  transition: all 0.4s;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  content: "";
  position: absolute;
  background-color: #60a0d0;
  right: 0;
  top: 0;
}
.header__col02__menu__box > a:hover, .header__col02__menu__box > a:active {
  color: #6db6d8;
  opacity: 1;
}
.header__col02__menu__box > a:hover > span::after, .header__col02__menu__box > a:active > span::after {
  transform: scale(1.2) translateX(4px);
}

.list__pcnav.kv_animation .item {
  transition-delay: 0.8s !important;
}

.header__col02__menu__box.kv_animation02 {
  transition-delay: 1s;
}
@media only screen and (max-width: 559px) {
  .header__col02__menu__box.kv_animation02 {
    transition-delay: 0.6s;
  }
}

.drop__down.head {
  min-width: 100px;
  margin-right: 28px !important;
}
.drop__down.head .btn__dropDown {
  padding: 0;
}
.drop__down.head .btn__dropDown::after {
  display: none;
}
.drop__down.head .btn__dropDown::before {
  display: none;
}
.drop__down.head > ul {
  background-color: #fff;
  margin-right: 0;
  margin-top: 30px;
  padding: 10px;
  border-radius: 8px;
}
.drop__down.head > ul > li {
  padding: 0;
  line-height: 1;
  font-weight: 300;
  font-size: 12px;
  margin-bottom: 30px;
}

/* ----------------------------------------
	シンプルアニメーション
---------------------------------------- */
.fade_under {
  transform: translateY(40px);
  opacity: 0;
  visibility: hidden;
  transition: transform 1s, opacity 1s, visibility 1s;
}

/* フェードイン時に入るクラス */
.is_fadein {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}

/* ----------------------------------------
	時差のアニメーション
---------------------------------------- */
.appear.up .item {
  transform: translateY(6px);
}

.appear.down .item {
  transform: translateY(-6px);
}

.appear.left .item {
  transform: translateX(40px);
}

.appear.right .item {
  transform: translateX(-40px);
}

.kv_animation.up .item {
  transform: translateY(6px);
}

.kv_animation.down .item {
  transform: translateY(-6px);
}

.kv_animation.left .item {
  transform: translateX(40px);
}

.kv_animation.right .item {
  transform: translateX(-40px);
}

.kv_animation .item {
  transition: transform 1s, opacity 1s;
  opacity: 0;
}
.kv_animation.loaded .item {
  opacity: 1;
  transform: none;
}
.kv_animation.loaded .item:nth-child(1) {
  transition-delay: 0.3s;
}
.kv_animation.loaded .item:nth-child(2) {
  transition-delay: 0.6s;
}
.kv_animation.loaded .item:nth-child(3) {
  transition-delay: 0.9s;
}
.kv_animation.loaded .item:nth-child(4) {
  transition-delay: 1.2s;
}
.kv_animation.loaded .item:nth-child(5) {
  transition-delay: 1.5s;
}
.kv_animation.loaded .item:nth-child(6) {
  transition-delay: 1.8s;
}
.kv_animation.loaded .item:nth-child(7) {
  transition-delay: 2.1s;
}
.kv_animation.loaded .item:nth-child(8) {
  transition-delay: 2.4s;
}
.kv_animation.loaded .item:nth-child(9) {
  transition-delay: 2.7s;
}
.kv_animation.loaded .item:nth-child(10) {
  transition-delay: 3s;
}
.kv_animation.loaded .item:nth-child(11) {
  transition-delay: 3.3s;
}
.kv_animation.loaded .item:nth-child(12) {
  transition-delay: 3.6s;
}
.kv_animation.loaded .item:nth-child(13) {
  transition-delay: 3.9s;
}
.kv_animation.loaded .item:nth-child(14) {
  transition-delay: 4.2s;
}
.kv_animation.loaded .item:nth-child(15) {
  transition-delay: 4.5s;
}
.kv_animation.loaded .item:nth-child(16) {
  transition-delay: 4.8s;
}
.kv_animation.loaded .item:nth-child(17) {
  transition-delay: 5.1s;
}
.kv_animation.loaded .item:nth-child(18) {
  transition-delay: 5.4s;
}
.kv_animation.loaded .item:nth-child(19) {
  transition-delay: 5.7s;
}
.kv_animation.loaded .item:nth-child(20) {
  transition-delay: 6s;
}
.kv_animation.loaded .item:nth-child(21) {
  transition-delay: 6.3s;
}
.kv_animation.loaded .item:nth-child(22) {
  transition-delay: 6.6s;
}
.kv_animation.loaded .item:nth-child(23) {
  transition-delay: 6.9s;
}
.kv_animation.loaded .item:nth-child(24) {
  transition-delay: 7.2s;
}
.kv_animation.loaded .item:nth-child(25) {
  transition-delay: 7.5s;
}
.kv_animation.loaded .item:nth-child(26) {
  transition-delay: 7.8s;
}
.kv_animation.loaded .item:nth-child(27) {
  transition-delay: 8.1s;
}
.kv_animation.loaded .item:nth-child(28) {
  transition-delay: 8.4s;
}
.kv_animation.loaded .item:nth-child(29) {
  transition-delay: 8.7s;
}
.kv_animation.loaded .item:nth-child(30) {
  transition-delay: 9s;
}

.kv_animation02 {
  /* 最初は非表示 */
  transform: translateY(40px);
  opacity: 0;
  visibility: hidden;
  transition: transform 1s, opacity 1s, visibility 1s;
}
.kv_animation02.loaded {
  transform: translateX(0);
  opacity: 1;
  visibility: visible;
}

.appear .item {
  transition: transform 1s, opacity 1s;
  opacity: 0;
}
.appear.inview .item {
  opacity: 1;
  transform: none;
}
.appear.inview .item:nth-child(1) {
  transition-delay: 0.3s;
}
.appear.inview .item:nth-child(2) {
  transition-delay: 0.6s;
}
.appear.inview .item:nth-child(3) {
  transition-delay: 0.9s;
}
.appear.inview .item:nth-child(4) {
  transition-delay: 1.2s;
}
.appear.inview .item:nth-child(5) {
  transition-delay: 1.5s;
}
.appear.inview .item:nth-child(6) {
  transition-delay: 1.8s;
}
.appear.inview .item:nth-child(7) {
  transition-delay: 2.1s;
}
.appear.inview .item:nth-child(8) {
  transition-delay: 2.4s;
}
.appear.inview .item:nth-child(9) {
  transition-delay: 2.7s;
}
.appear.inview .item:nth-child(10) {
  transition-delay: 3s;
}
.appear.inview .item:nth-child(11) {
  transition-delay: 3.3s;
}
.appear.inview .item:nth-child(12) {
  transition-delay: 3.6s;
}
.appear.inview .item:nth-child(13) {
  transition-delay: 3.9s;
}
.appear.inview .item:nth-child(14) {
  transition-delay: 4.2s;
}
.appear.inview .item:nth-child(15) {
  transition-delay: 4.5s;
}
.appear.inview .item:nth-child(16) {
  transition-delay: 4.8s;
}
.appear.inview .item:nth-child(17) {
  transition-delay: 5.1s;
}
.appear.inview .item:nth-child(18) {
  transition-delay: 5.4s;
}
.appear.inview .item:nth-child(19) {
  transition-delay: 5.7s;
}
.appear.inview .item:nth-child(20) {
  transition-delay: 6s;
}
.appear.inview .item:nth-child(21) {
  transition-delay: 6.3s;
}
.appear.inview .item:nth-child(22) {
  transition-delay: 6.6s;
}
.appear.inview .item:nth-child(23) {
  transition-delay: 6.9s;
}
.appear.inview .item:nth-child(24) {
  transition-delay: 7.2s;
}
.appear.inview .item:nth-child(25) {
  transition-delay: 7.5s;
}
.appear.inview .item:nth-child(26) {
  transition-delay: 7.8s;
}
.appear.inview .item:nth-child(27) {
  transition-delay: 8.1s;
}
.appear.inview .item:nth-child(28) {
  transition-delay: 8.4s;
}
.appear.inview .item:nth-child(29) {
  transition-delay: 8.7s;
}
.appear.inview .item:nth-child(30) {
  transition-delay: 9s;
}
.appear.inview.swiper-wrapper .item:nth-child(1) {
  transition-delay: 0.1s;
}
.appear.inview.swiper-wrapper .item:nth-child(2) {
  transition-delay: 0.2s;
}
.appear.inview.swiper-wrapper .item:nth-child(3) {
  transition-delay: 0.3s;
}
.appear.inview.swiper-wrapper .item:nth-child(4) {
  transition-delay: 0.4s;
}
.appear.inview.swiper-wrapper .item:nth-child(5) {
  transition-delay: 0.5s;
}
.appear.inview.swiper-wrapper .item:nth-child(6) {
  transition-delay: 0.6s;
}
.appear.inview.swiper-wrapper .item:nth-child(7) {
  transition-delay: 0.7s;
}
.appear.inview.swiper-wrapper .item:nth-child(8) {
  transition-delay: 0.8s;
}
.appear.inview.swiper-wrapper .item:nth-child(9) {
  transition-delay: 0.9s;
}
.appear.inview.swiper-wrapper .item:nth-child(10) {
  transition-delay: 1s;
}
.appear.inview.swiper-wrapper .item:nth-child(11) {
  transition-delay: 1.1s;
}
.appear.inview.swiper-wrapper .item:nth-child(12) {
  transition-delay: 1.2s;
}
.appear.inview.swiper-wrapper .item:nth-child(13) {
  transition-delay: 1.3s;
}
.appear.inview.swiper-wrapper .item:nth-child(14) {
  transition-delay: 1.4s;
}
.appear.inview.swiper-wrapper .item:nth-child(15) {
  transition-delay: 1.5s;
}
.appear.inview.swiper-wrapper .item:nth-child(16) {
  transition-delay: 1.6s;
}
.appear.inview.swiper-wrapper .item:nth-child(17) {
  transition-delay: 1.7s;
}
.appear.inview.swiper-wrapper .item:nth-child(18) {
  transition-delay: 1.8s;
}
.appear.inview.swiper-wrapper .item:nth-child(19) {
  transition-delay: 1.9s;
}
.appear.inview.swiper-wrapper .item:nth-child(20) {
  transition-delay: 2s;
}
.appear.inview.swiper-wrapper .item:nth-child(21) {
  transition-delay: 2.1s;
}
.appear.inview.swiper-wrapper .item:nth-child(22) {
  transition-delay: 2.2s;
}
.appear.inview.swiper-wrapper .item:nth-child(23) {
  transition-delay: 2.3s;
}
.appear.inview.swiper-wrapper .item:nth-child(24) {
  transition-delay: 2.4s;
}
.appear.inview.swiper-wrapper .item:nth-child(25) {
  transition-delay: 2.5s;
}
.appear.inview.swiper-wrapper .item:nth-child(26) {
  transition-delay: 2.6s;
}
.appear.inview.swiper-wrapper .item:nth-child(27) {
  transition-delay: 2.7s;
}
.appear.inview.swiper-wrapper .item:nth-child(28) {
  transition-delay: 2.8s;
}
.appear.inview.swiper-wrapper .item:nth-child(29) {
  transition-delay: 2.9s;
}
.appear.inview.swiper-wrapper .item:nth-child(30) {
  transition-delay: 3s;
}

/* ----------------------------------------
  少しリッチなアニメーション
---------------------------------------- */
/* ----------------------------------------
	gnavi
---------------------------------------- */
.gnav {
  max-width: 100vw;
  background-color: #fff;
  opacity: 0;
  pointer-events: none;
  transition: all 0.8s ease;
}
.gnav > div {
  transition: transform 0.8s ease;
}
.gnav__img {
  height: 100%;
  position: fixed;
  z-index: 150;
  width: 50%;
  top: 0;
  left: 0;
  transform: translateY(100%);
}
.gnav__img > img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.gnav__menu {
  height: 100%;
  position: fixed;
  z-index: 150;
  top: 0;
  right: 0;
  width: 50%;
  background-color: #fff;
  transform: translateY(-100%);
}
@media only screen and (max-width: 559px) {
  .gnav__menu {
    width: 100%;
    height: 100%;
    transform: translateX(100%);
    top: 0;
    right: 0;
    left: 0;
    bottom: 0;
    background-image: url("../images/common/menu_bg_sp.jpg");
    background-repeat: no-repeat;
    background-size: cover;
    overflow: scroll;
  }
}
.gnav__menu__btn {
  position: absolute;
  top: 64px;
  right: 85px;
}
@media only screen and (max-width: 559px) {
  .gnav__menu__btn {
    top: 43px;
    right: 25px;
  }
}
.gnav__menu__btn .btn__menu > span {
  transition: transform 1.5s;
}
@media only screen and (max-width: 559px) {
  .gnav__menu__btn .btn__menu > span {
    background-color: #fff;
  }
}
.gnav__menu__col01 {
  display: flex;
  padding: 168px 85px 168px 152px;
  height: 100%;
  justify-content: space-between;
  align-items: flex-start;
  box-sizing: border-box;
  /*スクロールバー非表示（IE・Edge）*/
  -ms-overflow-style: none;
  /*スクロールバー非表示（Firefox）*/
  scrollbar-width: none;
}
.gnav__menu__col01::-webkit-scrollbar {
  display: none;
}
@media only screen and (max-width: 559px) {
  .gnav__menu__col01 {
    padding: 111px 24px 80px 40px;
    height: -moz-fit-content;
    height: fit-content;
  }
}
.gnav__menu__col01 .list__gnav .drop__down .btn__dropDown {
  transition: color 0.4s;
  cursor: pointer;
}
.gnav__menu__col01 .list__gnav .drop__down .btn__dropDown:hover, .gnav__menu__col01 .list__gnav .drop__down .btn__dropDown:active {
  color: #6db6d8;
}
@media only screen and (max-width: 559px) {
  .gnav__menu__col01 .list__gnav .drop__down .btn__dropDown::before {
    background-color: #fff;
    opacity: 0.7;
  }
}
@media only screen and (max-width: 559px) {
  .gnav__menu__col01 .list__gnav .drop__down .btn__dropDown::after {
    background-color: #fff;
    opacity: 0.7;
  }
}
.gnav__menu__col01.active {
  overflow: scroll;
}
.gnav__menu__col01.active .list__gnav .drop__down .btn__dropDown::before {
  background-color: #6db6d8;
}
.gnav__menu__col01.active .list__gnav .drop__down .btn__dropDown::after {
  transform: rotate(90deg);
  background-color: #6db6d8;
}

.global__container.gnav__active .gnav {
  opacity: 1;
  pointer-events: all;
}
.global__container.gnav__active .gnav__img {
  transform: none;
}
.global__container.gnav__active .gnav__menu {
  transform: none;
}
.global__container.gnav__active .gnav__menu__btn .btn__menu > span:nth-child(1) {
  transform: rotate(45deg);
}
.global__container.gnav__active .gnav__menu__btn .btn__menu > span:nth-last-child(1) {
  transform: rotate(-45deg) translate(6px, -7px);
}
@media only screen and (max-width: 559px) {
  .global__container.gnav__active .gnav__menu__btn .btn__menu > span:nth-last-child(1) {
    transform: rotate(-45deg) translate(4px, -6px);
  }
}
.global__container.gnav__active .container {
  pointer-events: none;
  transform: translateX(-100%);
}
.global__container.gnav__active .container::after {
  opacity: 0.6;
}
@media only screen and (max-width: 559px) {
  .global__container.gnav__active .container {
    transform: translateX(-100%);
  }
}
.global__container.gnav__active .container .header {
  opacity: 0;
  transition-delay: 1s;
}
.global__container.gnav__active .container .header__col02__menu__box .btn__menu > span:nth-child(1) {
  transform: rotate(45deg);
}
.global__container.gnav__active .container .header__col02__menu__box .btn__menu > span:nth-last-child(1) {
  transform: rotate(-45deg) translate(4px, -6px);
}

/* ----------------------------------------
	list
---------------------------------------- */
.list__pcnav {
  display: flex;
  height: -moz-fit-content;
  height: fit-content;
}
.list__pcnav > li {
  height: -moz-fit-content;
  height: fit-content;
  font-size: 12px;
}
.list__pcnav > li:not(:nth-last-child(1)) {
  margin-right: 50px;
}

@media only screen and (max-width: 559px) {
  .list__gnav {
    align-self: flex-end;
    padding-top: 315px;
  }
}
.list__gnav .drop__down > ul > li {
  line-height: 2;
  margin-top: -24px !important;
}
.list__gnav > li {
  font-size: 20px;
  letter-spacing: 0.1em;
  line-height: 1;
  font-weight: 200;
}
@media only screen and (max-width: 559px) {
  .list__gnav > li {
    font-size: 16px;
    color: #fff;
  }
  .list__gnav > li > a {
    color: #fff;
  }
}
.list__gnav > li > a {
  transition: color 0.4s;
}
.list__gnav > li > a:hover, .list__gnav > li > a:active {
  opacity: 1;
  color: #6db6d8;
}
.list__gnav > li:not(:nth-last-child(1)) {
  margin-bottom: 45px;
}
@media only screen and (max-width: 559px) {
  .list__gnav > li:not(:nth-last-child(1)) {
    margin-bottom: 30px;
  }
}
.list__gnav-contact {
  text-align: end;
}
@media only screen and (max-width: 559px) {
  .list__gnav-contact > li {
    white-space: nowrap;
  }
}
.list__gnav-contact > li > a {
  font-weight: 400;
}
@media only screen and (max-width: 559px) {
  .list__gnav-contact > li > a {
    color: #fff;
    font-weight: 300;
  }
}
.list__gnav-contact > li:nth-child(1) {
  margin-bottom: 30px;
}
.list__gnav-contact > li:nth-last-child(1) > a::after {
  background-color: unset;
  border-radius: unset;
  background-image: url("../images/common/line_icon_main.png");
  background-size: cover;
  background-repeat: no-repeat;
}

/* ----------------------------------------
	footer
---------------------------------------- */
.footer__clinic {
  padding: 80px 0;
  background-color: #fafafa;
}
@media only screen and (min-width: 769px) {
  .footer__clinic {
    padding: 120px 0;
  }
}
.footer__clinic__item:nth-child(1) {
  margin-bottom: 60px;
}
@media only screen and (min-width: 769px) {
  .footer__clinic__item:nth-child(1) {
    margin-bottom: 80px;
  }
}
@media only screen and (min-width: 769px) {
  .footer__clinic__item:nth-child(2n) {
    padding-left: 192px;
  }
}

@media only screen and (min-width: 769px) {
  .footer__clinic__item {
    display: flex;
    align-items: center;
  }
}
.footer__clinic__item__img {
  width: 100%;
  height: 165px;
  margin-bottom: 25px;
}
@media only screen and (min-width: 769px) {
  .footer__clinic__item__img {
    width: 640px;
    height: 300px;
    margin-right: 80px;
    margin-bottom: 0;
  }
}
.footer__clinic__item__text__title {
  font-size: 18px;
  line-height: 1;
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .footer__clinic__item__text__title {
    font-size: 20px;
    font-weight: 400;
    margin-bottom: 60px;
  }
}
.footer__clinic__item__text__tel {
  font-size: 16px;
  font-weight: 400;
  line-height: 1;
  margin-bottom: 20px;
  display: block;
}
@media only screen and (min-width: 769px) {
  .footer__clinic__item__text__tel {
    margin-bottom: 30px;
  }
}
.footer__clinic__item__text__access {
  font-size: 13px;
  font-weight: 300;
  line-height: 2;
  margin: -6px 0;
}
@media only screen and (min-width: 769px) {
  .footer__clinic__item__text__access {
    font-size: 14px;
  }
}

@media only screen and (min-width: 769px) {
  .footer {
    display: flex;
  }
}
.footer__sns {
  background-color: #6db6d8;
  padding: 80px 0;
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .footer__sns {
    width: 350px;
    justify-content: center;
    padding: 0;
  }
}
.footer__sns__catch {
  font-size: 10px;
  font-weight: 300;
  letter-spacing: 0.03em;
  line-height: 1;
  margin-bottom: 20px;
  color: #fff;
}
.footer__sns__img {
  width: 187px;
  margin-bottom: 30px;
}
.footer__sns__items {
  display: flex;
  justify-content: space-evenly;
  width: 187px;
}
.footer__sns__items__icon {
  width: 20px;
}
.footer__sns__items__icon:hover, .footer__sns__items__icon:active {
  transform: scale(1.2);
}
.footer__nav {
  background-color: #302d2c;
  padding: 100px 0 20px;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .footer__nav {
    padding: 96px 90px 20px 80px;
  }
}
.footer__nav .inner > p {
  color: #fff;
  font-size: 12px;
  line-height: 1;
  font-weight: 300;
  text-align: end;
}
.footer__nav__col01 {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  margin-bottom: 60px;
}
@media only screen and (min-width: 769px) {
  .footer__nav__col01 {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
  }
}
.footer__nav__col01__list {
  margin-bottom: 60px;
  align-self: flex-start;
}
@media only screen and (min-width: 769px) {
  .footer__nav__col01__list {
    display: flex;
    flex-direction: column;
    max-height: 380px;
    flex-wrap: wrap;
    margin-bottom: 0;
  }
}
.footer__nav__col01__list > li {
  font-size: 13px;
}
@media only screen and (min-width: 769px) {
  .footer__nav__col01__list > li {
    font-size: 14px;
    margin-right: 120px;
  }
}
.footer__nav__col01__list > li:not(:nth-last-child(1)) {
  margin-bottom: 35px;
}
@media only screen and (min-width: 769px) {
  .footer__nav__col01__list > li:nth-child(7) {
    margin-bottom: 0;
  }
}
.footer__nav__col01__list > li > a {
  color: #fff;
  font-size: 13px;
  line-height: 1;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .footer__nav__col01__list > li > a {
    font-size: 14px;
  }
}
.footer__nav__col01__list > li > a:hover, .footer__nav__col01__list > li > a:active {
  color: #6db6d8;
}
.footer__nav__col01 .btn__main {
  color: #fff;
  font-weight: 300;
}

/* ----------------------------------------
	slider
---------------------------------------- */
.swiper {
  width: 100%;
  height: 100%;
}

.swiper-slide {
  background-position: center;
  background-size: cover;
}

.swiper-slide img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.kv__swiper .swiper-wrapper .swiper-slide {
  overflow: hidden;
  border-radius: 0 20px 0 20px;
}
.kv__swiper__btn {
  width: 90px;
  height: 10px;
  position: absolute;
  top: 428px;
  right: -66px;
  margin: 0;
  transform-origin: center center;
  transform: rotate(90deg);
}
.kv__swiper__btn.front {
  top: 255px;
}
.kv__swiper__btn .diseble {
  opacity: 0.5;
  pointer-events: none !important;
}
.kv__swiper__btn .swiper-button-prev {
  background-image: none;
  height: 100%;
  width: 45px;
  left: -5px;
  top: 0;
  margin-top: 0;
}
.kv__swiper__btn .swiper-button-prev::after {
  display: none;
}
.kv__swiper__btn .swiper-button-next {
  background-image: none;
  height: 100%;
  width: 45px;
  right: -5px;
  top: 0;
  margin-top: 0;
}
.kv__swiper__btn .swiper-button-next::after {
  display: none;
}
.kv__swiper__btn__text {
  font-size: 8px;
  letter-spacing: 0.09em;
  text-align: start;
  line-height: 1;
}
.kv__swiper__btn__text.-prev::after {
  display: inline;
  content: "<";
  margin-left: 10px;
}
.kv__swiper__btn__text.-next {
  text-align: end;
}
.kv__swiper__btn__text.-next::before {
  content: ">";
  margin-right: 10px;
}

/* ----------------------------------------
	point slide
---------------------------------------- */
:root {
  --easing: cubic-bezier(0.2, 1, 0.2, 1);
  --transition: 0.8s var(--easing);
  --color-base: #f8f8f8;
  --color-gray: #ddd;
  --color-theme: #60a8d0;
  --color-theme-darken: #f12617;
  --box-shadow: 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.05),
    -0.8rem -0.8rem 1.2rem #fff;
  --box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, 0.08),
    -1rem -1rem 1.5rem #fff;
  --box-shadow-inset: inset 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.05),
    inset -0.8rem -0.8rem 1.2rem #fff;
  --box-shadow-dark: 0.8rem 0.8rem 1.2rem rgba(0, 0, 0, 0.1),
    -0.8rem -0.8rem 1.2rem rgba(#fff, 0.2);
}

.kv__swiper__btn.point {
  z-index: 1;
  width: 69px;
  height: 36px;
  right: 20px;
  transform: none;
  top: -66px;
}
@media only screen and (min-width: 769px) {
  .kv__swiper__btn.point {
    right: 18%;
    top: -108px;
    width: 72px;
  }
}
.kv__swiper__btn.point > div {
  display: flex;
  align-items: end;
  justify-content: center;
}
.kv__swiper__btn.point > div::before {
  display: none;
}
.kv__swiper__btn.point > div::after {
  display: none;
}
.kv__swiper__btn.point > div .point02 {
  font-size: 10px;
  padding: 0;
}
.kv__swiper__btn.point > div .point02::before {
  position: absolute;
  content: "";
  width: 10px;
  height: 17px;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-image: url("../images/common/arrow_black_right.svg");
}
.kv__swiper__btn.point > div .point02::after {
  display: none;
}
.kv__swiper__btn.point > div.diseble > p::before {
  opacity: 0.3;
}
.kv__swiper__btn.point .swiper-button-prev > p::before {
  background-image: url("../images/common/arrow_black_left.svg");
}

.l-inner {
  position: relative;
  box-sizing: content-box;
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 10rem;
}

.l-section {
  border-top: none;
}

.l-section .l-inner {
  padding-top: 8rem;
  padding-bottom: 8rem;
}

[class*=swiper]:focus {
  outline: none;
}

.slide-media,
.thumb-media {
  position: relative;
  overflow: hidden;
}

.slide-media img,
.thumb-media img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.swiper-button-prev,
.swiper-button-next {
  display: grid;
  place-content: center;
  width: 6.4rem;
  height: 6.4rem;
  cursor: pointer;
  transition: var(--transition);
}

.swiper-button-prev::before,
.swiper-button-next::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  border-radius: 50%;
  box-shadow: var(--box-shadow);
}

.swiper-button-prev::after,
.swiper-button-next::after {
  width: 1.2rem;
  height: 1.2rem;
  content: "";
  border: solid var(--color-gray);
  border-width: 3px 3px 0 0;
}

.swiper-button-prev::after {
  margin-left: 0.4rem;
  transform: rotate(-135deg);
}

.swiper-button-next::after {
  margin-right: 0.4rem;
  transform: rotate(45deg);
}

.swiper-button-disabled {
  pointer-events: none;
  opacity: 0;
}

.mv04 {
  margin-bottom: 16rem;
}

.mv04 .l-inner {
  padding-bottom: 0;
}

.mv04 .swiper {
  width: 100%;
  position: relative;
}
.mv04 .swiper::after {
  content: "";
  background-color: #fafafa;
  height: 80%;
  width: 100vw;
  position: absolute;
  top: 270px;
  left: -10px;
  right: 0;
  margin: 0 auto;
}
@media only screen and (min-width: 769px) {
  .mv04 .swiper::after {
    right: unset;
    left: 260px;
    top: -100px;
    height: 200%;
    width: 100%;
  }
}

.slide-content {
  width: 280px;
}
.slide-content .slide-title {
  font-size: 16px;
  letter-spacing: 0.05em;
  font-weight: 500;
  margin-bottom: 50px;
}
.slide-content .slide-title > span {
  font-size: 10px;
  line-height: 1;
  vertical-align: top;
  margin-left: 10px;
  color: #6db6d8;
}
@media only screen and (min-width: 769px) {
  .slide-content .slide-title {
    align-self: flex-start;
    margin-bottom: 40px;
  }
}
.slide-content > p {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 2;
  margin: -6px 0;
}
@media only screen and (min-width: 769px) {
  .slide-content > p {
    font-size: 14px;
    font-weight: 300;
  }
}

.mv04 .swiper-wrapper {
  width: 280px;
  margin-left: -25px;
}
@media only screen and (min-width: 769px) {
  .mv04 .swiper-wrapper {
    width: 1260px;
    margin-left: 0;
  }
}

@media only screen and (min-width: 769px) {
  .mv04 .slide {
    display: flex;
    flex-direction: row;
  }
}

.mv04 .swiper-fade .swiper-slide {
  transition-property: opacity, transform !important;
  pointer-events: none;
}

.mv04 .swiper-fade .swiper-slide-active {
  pointer-events: auto;
}

.mv04 .progressbar {
  position: relative;
  width: 100%;
  height: 4px;
  background-color: var(--color-gray);
}

.mv04 .progressbar-fill {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: scaleX(0);
  transform-origin: left top;
  background-color: var(--color-theme);
}

.mv04 .swiper-slide {
  width: 280px;
  margin-right: 20px;
}
@media only screen and (min-width: 769px) {
  .mv04 .swiper-slide {
    width: 1300 !important;
  }
}
.mv04 .swiper-slide:nth-child(2n) {
  margin-top: 30px;
}
@media only screen and (min-width: 769px) {
  .mv04 .swiper-slide:nth-child(2n) {
    margin-top: 0;
  }
}

.mv04 .slide-media {
  height: 350px;
  width: 280px;
  border-radius: 0 15px 0 15px;
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .mv04 .slide-media {
    width: 520px;
    height: 312px;
    margin-bottom: 0;
    border-radius: unset;
  }
}

.mv04 .slide-media img {
  transition-delay: 1s;
  transition-timing-function: linear;
  transform: scale(1.05);
}

.mv04 .slide-fraction {
  font-weight: bold;
  position: relative;
  text-align: center;
  --size: 150px;
}
@media only screen and (max-width: 559px) {
  .mv04 .slide-fraction {
    display: none;
  }
}
@media only screen and (min-width: 769px) {
  .mv04 .slide-fraction {
    position: absolute;
    top: -176px;
    right: 0px;
  }
}

.mv04 .slide-fraction .circle {
  display: block;
  width: var(--size);
  height: var(--size);
  transform: rotate(90deg);
}

.mv04 .slide-fraction .circle svg {
  width: 100%;
  height: 100%;
  fill: none;
}

.mv04 .slide-fraction .circle-01 {
  stroke: rgba(112, 112, 112, 0.4);
  stroke-width: 1px;
}

.mv04 .slide-fraction .circle-02 {
  stroke: var(--color-theme);
  stroke-width: 2px;
  stroke-dasharray: 201.056px;
  stroke-dashoffset: 201.056px;
}

.mv04 .slide-fraction .current {
  font-size: 12px;
  line-height: var(--size);
  position: absolute;
  top: 0.05em;
  left: 0;
  width: var(--size);
  text-align: center;
  color: var(--color-theme);
}

.mv04 .slide-fraction .total {
  font-size: 1.6rem;
  display: none;
}

.mv04 .slide-fraction .total::before {
  position: relative;
  display: block;
  width: 3px;
  height: 1em;
  margin: -3px auto 0.5em;
  content: "";
  background-color: var(--color-theme);
}

.mv04 .swiper-slide[class*=-active] .slide-media img {
  transition-delay: 0s;
  transform: scale(1);
}

.mv04 .swiper-slide[class*=-active] .slide-fraction .circle-02 {
  animation: mv04-circle linear both;
}
@keyframes mv04-circle {
  100% {
    stroke-dashoffset: 0;
  }
}
@media only screen and (max-width: 1024px) {
  html {
    -webkit-text-size-adjust: 100%;
  }
  .l-inner {
    padding: 0 4rem;
  }
  .mv04 .slide-fraction {
    --size: 64px;
  }
  .mv04 .slide-fraction .total::before {
    width: 2px;
    margin-top: -2px;
  }
}
@media only screen and (max-width: 599px) {
  html {
    font-size: 50%;
  }
  .pc-tab {
    display: none !important;
  }
  .mv04 {
    margin-bottom: 8rem;
  }
  .mv04 .slide-content {
    position: relative;
  }
  .mv04 .slide-fraction {
    position: absolute;
    bottom: calc(100% + 1rem);
    left: 4rem;
  }
}
@media only screen and (min-width: 1025px) {
  .tab-sp {
    display: none !important;
  }
  .swiper-button-prev::before,
  .swiper-button-next::before {
    transition: var(--transition);
  }
  .swiper-button-prev:hover::before,
  .swiper-button-next:hover::before {
    transform: scale(1.2);
  }
}
@media only screen and (min-width: 600px) {
  .mv04 .slide-media::after {
    position: absolute;
    right: 0;
    bottom: 0;
    left: 0;
    height: 40%;
    content: "";
    background: linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.5) 50%);
    mix-blend-mode: soft-light;
  }
  .mv04 .slide-content {
    position: relative;
    display: flex;
    align-items: flex-end;
    flex-direction: column;
    position: relative;
    padding: 93px 90px 93px 80px;
    box-sizing: border-box;
    width: 740px;
    height: 312px;
  }
}
@media only screen and (max-width: 1024px) and (min-width: 600px) {
  .mv04 .slide-content {
    padding: 3.2rem;
  }
  .mv04 .slide-fraction {
    margin-right: 3.2rem;
  }
}
/* ----------------------------------------
	campaign slide
---------------------------------------- */
.campaign__slide .swiper-slide {
  width: -moz-fit-content;
  width: fit-content;
}
.campaign__slide .kv__swiper__btn {
  right: 0;
  top: 110px;
}

/* ----------------------------------------
	ぱんくず
---------------------------------------- */
.breadcrumd {
  display: flex;
  flex-wrap: wrap;
}
.breadcrumd > a, .breadcrumd p {
  font-size: 9px;
  letter-spacing: 0.05em;
  font-weight: 400;
}
@media only screen and (min-width: 769px) {
  .breadcrumd > a, .breadcrumd p {
    font-size: 11px;
  }
}
.breadcrumd > a {
  margin-right: 1em;
}
.breadcrumd > a::after {
  content: ">";
  margin-left: 1em;
}
.breadcrumd > p {
  opacity: 0.7;
}

/* ----------------------------------------
	button
---------------------------------------- */
.btn__main {
  font-weight: 500;
  font-size: 13px;
  padding-right: 36px;
  letter-spacing: 0.15em;
  position: relative;
  transition: color 0.6s, transform 1s, opacity 1s;
}
.btn__main::after {
  position: absolute;
  content: "";
  width: 16px;
  height: 16px;
  border-radius: 50%;
  background-color: #6db6d8;
  top: 0;
  right: 0;
  transition: transform 0.6s;
}
.btn__main:hover, .btn__main:active {
  color: #6db6d8;
  opacity: 1;
}
.btn__main:hover::after, .btn__main:active::after {
  transform: translateX(8px) scale(1.2);
}

.btn__sinple {
  font-size: 10px;
  letter-spacing: 0.15em;
  line-height: 1;
}
.btn__sinple::after {
  content: ">";
  margin-left: 4px;
}

.btn__menu {
  border: 0;
  background-color: unset;
  width: 35px;
  height: 12px;
  position: relative;
  cursor: pointer;
}
@media only screen and (max-width: 559px) {
  .btn__menu {
    width: 25px;
    height: 9px;
  }
}
.btn__menu > span {
  position: absolute;
  height: 2px;
  width: 100%;
  background-color: #302d2c;
  left: 0;
  right: 0;
  margin: 0 auto;
  transform-origin: center center;
  transition: transform 0.5s ease;
}
@media only screen and (max-width: 559px) {
  .btn__menu > span {
    opacity: 0.6;
  }
}
.btn__menu > span:nth-child(1) {
  top: 0;
}
.btn__menu > span:nth-last-child(1) {
  bottom: 0;
}

.btn__dropDown {
  position: relative;
  padding-right: 60px;
  cursor: pointer;
}
@media only screen and (max-width: 559px) {
  .btn__dropDown {
    padding-right: 36px;
  }
}
.btn__dropDown::before {
  content: "";
  position: absolute;
  width: 2px;
  height: 16px;
  top: 8px;
  right: 10px;
  background-color: #6db6d8;
  transform-origin: center center;
  transform: rotate(90deg);
  transition: background-color 0.7s;
}
@media only screen and (max-width: 559px) {
  .btn__dropDown::before {
    height: 14px;
    top: 6px;
  }
}
.btn__dropDown::after {
  transition: transform 0.7s, background-color 0.7s;
  transform-origin: center center;
  content: "";
  position: absolute;
  width: 2px;
  height: 16px;
  top: 8px;
  right: 10px;
  background-color: #6db6d8;
}
@media only screen and (max-width: 559px) {
  .btn__dropDown::after {
    height: 14px;
    top: 6px;
  }
}

.btn__area {
  font-size: 13px;
  line-height: 1;
  padding-left: 20px;
  color: #6db6d8;
  font-weight: 300;
  position: relative;
  letter-spacing: 0.05em;
}
.btn__area::before {
  width: 11px;
  height: 15px;
  left: 0;
  bottom: 0;
  background-image: url("../images/common/access_icon.svg");
}

.btn__qa__anc, .btn__cat {
  width: 100%;
  max-width: 535px;
  min-height: 40px;
  background-color: #6db6d8;
  position: relative;
  height: -moz-fit-content;
  height: fit-content;
}
@media only screen and (min-width: 769px) {
  .btn__qa__anc, .btn__cat {
    height: 50px;
  }
}
.btn__qa__anc::after, .btn__cat::after {
  background-image: url("../images/common/arrow_white.svg");
  width: 13px;
  height: 15px;
  background-repeat: no-repeat;
  background-size: contain;
  top: 12px;
  left: unset;
  right: 20px;
  bottom: unset;
}
@media only screen and (min-width: 769px) {
  .btn__qa__anc::after, .btn__cat::after {
    width: 21px;
    height: 22px;
    right: 28px;
  }
}
.btn__qa__anc > span, .btn__cat > span {
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1.7;
  color: #fff;
  font-weight: 300;
  width: 80%;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .btn__qa__anc > span, .btn__cat > span {
    font-size: 18px;
  }
}

.btn__border, .coulum__contents > a,
.campaign__content > a {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 30px;
  border: 1px solid #302d2c;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .btn__border, .coulum__contents > a,
  .campaign__content > a {
    width: 50%;
    box-sizing: border-box;
    flex-direction: row;
    padding-top: 0;
    padding-bottom: 0;
    height: 80px;
    justify-content: space-between;
    align-items: center;
  }
}
@media only screen and (min-width: 769px) {
  .btn__border:nth-child(1), .coulum__contents > a:nth-child(1),
  .campaign__content > a:nth-child(1) {
    margin-right: 10px;
  }
}
.btn__border__title {
  font-size: 16px;
  line-height: 1;
  font-weight: 300;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .btn__border__title {
    margin-bottom: 0;
  }
}
.btn__border .small, .coulum__contents > a .small,
.campaign__content > a .small {
  font-size: 10px;
  line-height: 1.6;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .btn__border .small, .coulum__contents > a .small,
  .campaign__content > a .small {
    text-align: left;
  }
}
.btn__border:hover, .coulum__contents > a:hover,
.campaign__content > a:hover, .btn__border:active, .coulum__contents > a:active,
.campaign__content > a:active {
  opacity: 1;
  transition: background-color 0.2s border 0.2s;
  background-color: #6db6d8;
  border: none;
}
.btn__border:hover > a, .coulum__contents > a:hover > a,
.campaign__content > a:hover > a,
.btn__border:hover p,
.coulum__contents > a:hover p,
.campaign__content > a:hover p, .btn__border:active > a, .coulum__contents > a:active > a,
.campaign__content > a:active > a,
.btn__border:active p,
.coulum__contents > a:active p,
.campaign__content > a:active p {
  transition: color 0.4s;
  color: #fff;
}
.btn__border.send, .coulum__contents > a.send,
.campaign__content > a.send {
  font-size: 16px;
  background-color: unset;
  transition: all 0.4s;
  color: #302d2c;
  font-weight: 300;
  position: relative;
}
.btn__border.send:hover, .coulum__contents > a.send:hover,
.campaign__content > a.send:hover {
  background-color: #6db6d8;
  color: #fff;
}
.btn__border.send::after, .coulum__contents > a.send::after,
.campaign__content > a.send::after {
  content: "Confirm entered information　>";
  width: -moz-max-content;
  width: max-content;
  font-size: 12px;
  line-height: 1.6;
  text-align: center;
}
.btn__border.send.fix::after, .coulum__contents > a.send.fix::after,
.campaign__content > a.send.fix::after {
  content: "Submit　>";
}
.btn__border.send.back::after, .coulum__contents > a.send.back::after,
.campaign__content > a.send.back::after {
  content: "Edit entered information　>";
}

.btn__cat:after {
  background-image: none;
  content: ">";
  font-size: 14px;
  color: #fff;
  font-weight: 400;
  list-style: 1;
  top: 8px;
}
@media only screen and (min-width: 769px) {
  .btn__cat:after {
    top: 16px;
  }
}
.btn__cat:nth-child(2n) {
  background-color: #497990;
}

/* ----------------------------------------
	top
---------------------------------------- */
.top__kv {
  display: flex;
  flex-direction: column;
  position: relative;
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .top__kv.front .top__kv__catch {
    top: 98px;
  }
}
@media only screen and (min-width: 769px) {
  .top__kv {
    flex-direction: row;
    justify-content: flex-end;
    margin-bottom: 180px;
  }
}
.top__kv__catch {
  padding-top: 80px;
  margin-bottom: 80px;
  z-index: 10;
}
@media only screen and (min-width: 769px) {
  .top__kv__catch {
    top: 284px;
    left: 69px;
    position: absolute;
    padding: 0;
  }
}
.top__kv__catch > p:nth-child(1) {
  font-size: 26px;
  letter-spacing: 0.1em;
  line-height: 1.84;
  font-weight: 300;
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .top__kv__catch > p:nth-child(1) {
    font-weight: 400;
    font-size: 32px;
    letter-spacing: 0.1em;
    line-height: 2;
    margin-bottom: 40px;
  }
}
.top__kv__slider {
  width: 310px;
  align-self: flex-end;
  height: 480px;
  border-radius: 0 20px 0 20px;
  overflow: hidden;
}
@media only screen and (min-width: 769px) {
  .top__kv__slider {
    width: 1000px;
    height: 650px;
    padding-top: 168px;
  }
}

.scroll__bar {
  position: absolute;
  bottom: 0;
  left: 10px;
  transform: rotate(-90deg);
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .scroll__bar {
    left: 0;
  }
}
.scroll__bar > p {
  box-sizing: border-box;
  font-size: 9px;
  letter-spacing: 0.09em;
  line-height: 1;
  padding-top: 6px;
  font-weight: 400;
  position: relative;
  text-transform: uppercase;
}
.scroll__bar > p::before {
  content: "";
  position: absolute;
  width: 70px;
  height: 1px;
  background-color: #302d2c;
  top: 0;
  right: 0;
  animation-name: scroll-an;
  animation-duration: 2s;
  animation-timing-function: ease;
  animation-delay: 0s;
  animation-iteration-count: infinite;
  animation-direction: normal;
  animation-fill-mode: forwards;
}
@media only screen and (min-width: 769px) {
  .scroll__bar > p::before {
    width: 100px;
  }
}

@keyframes scroll-an {
  0%, 100% {
    transform: translateX(10px);
  }
  50% {
    transform: translateX(-20px);
  }
}
.top__kv.kv_animation02 {
  transition-delay: 1.6s !important;
}
@media only screen and (max-width: 559px) {
  .top__kv.kv_animation02 {
    transition-delay: 1s !important;
  }
}

.beauty__kv {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  justify-content: flex-start;
  margin-top: 80px !important;
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .beauty__kv {
    padding: 0 90px;
    margin: 100px auto 120px;
    flex-direction: row;
    justify-content: space-between;
  }
}
.beauty__kv__img {
  width: 300px;
  margin-bottom: 96px;
  align-self: flex-end;
}
@media only screen and (min-width: 769px) {
  .beauty__kv__img {
    width: 600px;
    height: 390px;
    order: 2;
  }
}
.beauty__kv .bg__circle {
  top: -165px;
  right: -20px;
}
.beauty__kv__title {
  font-size: 24px;
  letter-spacing: 0.01em;
  position: relative;
  line-height: 1.6;
}
@media only screen and (min-width: 769px) {
  .beauty__kv__title {
    font-size: 28px;
    order: 1;
    margin-top: 208px;
  }
}
.beauty__kv__title .chara__edge, .beauty__kv__title .section__while > p {
  position: absolute;
  width: -moz-max-content;
  width: max-content;
  text-transform: uppercase;
  top: -126px;
  left: 0;
  z-index: -1;
}
@media only screen and (min-width: 769px) {
  .beauty__kv__title .chara__edge, .beauty__kv__title .section__while > p {
    top: -142px;
    font-size: 82px;
  }
}

.medical__kv {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-top: 80px;
}
@media only screen and (min-width: 769px) {
  .medical__kv {
    margin-top: 100px;
  }
}
.medical__kv__img {
  width: 300px;
  height: 140px;
  border-radius: 0 20px 0 20px;
  align-self: flex-end;
  margin-bottom: 80px;
  overflow: hidden;
}
@media only screen and (min-width: 769px) {
  .medical__kv__img {
    width: 600px;
    height: 280px;
  }
}
.medical__kv__title {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.1em;
}
@media only screen and (min-width: 769px) {
  .medical__kv__title {
    font-size: 24px;
  }
}
.medical__kv .bg__circle {
  --size: 800px;
  top: -276px;
  left: 0;
}

.under__kv {
  height: 420px;
}
@media only screen and (max-width: 559px) {
  .under__kv {
    padding-top: 85px;
    height: 200px;
  }
}
.under__kv__img {
  height: 100%;
  width: 100%;
  position: absolute;
  z-index: -1;
  top: 0;
}
.under__kv__img > img {
  -o-object-fit: cover;
     object-fit: cover;
}
@media only screen and (max-width: 559px) {
  .under__kv__img {
    top: 85px;
  }
}
.under__kv__title {
  font-weight: 500;
  font-size: 28px;
  color: #fff;
  letter-spacing: 0.1em;
  line-height: 1.6;
}
@media only screen and (max-width: 559px) {
  .under__kv__title {
    font-size: 20px;
  }
}

.under02__kv {
  padding-top: 85px;
  margin-top: 80px;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .under02__kv {
    margin-top: 60px;
    padding-top: 176px;
    flex-direction: row;
    margin-bottom: 150px;
    justify-content: space-between;
    align-items: center;
  }
}
.under02__kv__img {
  align-self: flex-end;
  width: 300px;
  height: 180px;
  margin-bottom: 80px;
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .under02__kv__img {
    margin-bottom: 150px;
    width: 520px;
    height: 312px;
    order: 2;
    margin-bottom: 0;
  }
}
.under02__kv__title {
  font-size: 22px;
  font-weight: 500;
  letter-spacing: 0.1em;
  line-height: 2.0909090909;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .under02__kv__title {
    order: 1;
    font-size: 24px;
    max-width: 515px;
  }
}
.under02__kv .bg__circle {
  --size: 315px;
  left: -20px;
  top: -165px;
  right: unset;
  bottom: unset;
}
.under02__kv .box .under02__kv__title {
  margin-bottom: 25px;
}
.under02__kv .breadcrumd {
  position: absolute;
  top: 116px;
  right: 0;
}
.under03__kv__img {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .under03__kv__img {
    margin-bottom: 30px;
  }
}
.under03__kv__title {
  font-size: 20px;
  letter-spacing: 0.05em;
  list-style: 2;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .under03__kv__title {
    font-size: 22px;
  }
}
.under03__kv .post__date {
  font-size: 14px;
}

.column__pan {
  padding-top: 85px;
  margin-top: 20px;
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .column__pan {
    padding-top: 176px;
    margin-top: 0;
    display: flex;
    justify-content: flex-end;
  }
}

.column__fv {
  margin-bottom: 80px;
}
.column__fv__img {
  width: 100%;
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .column__fv__img {
    margin-bottom: 40px;
  }
}
.column__fv__title {
  font-size: 20px;
  letter-spacing: 0.05em;
  line-height: 2;
  font-weight: 500;
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .column__fv__title {
    font-size: 22px;
  }
}
.column__fv__data {
  font-size: 14px;
  line-height: 1;
  margin-right: 40px;
}
.column__fv .box {
  display: flex;
  align-items: center;
}

.reservation {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 120px;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .reservation {
    margin-bottom: 180px;
    max-width: 1080px;
    margin: 0 auto 120px;
  }
}
.reservation__col01 {
  color: #fff;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .reservation__col01 {
    margin-bottom: 10px;
  }
}
.reservation__col01__inner {
  padding-bottom: 60px;
  padding-top: 60px;
  background-color: #302d2c;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.reservation__col01__inner .title__main, .reservation__col01__inner .normal__medical_content > h2 {
  color: #fff;
  margin-bottom: 40px;
}
.reservation__col01__inner .title__main > span:nth-child(1), .reservation__col01__inner .normal__medical_content > h2 > span:nth-child(1) {
  color: #fff;
  margin-bottom: 19px;
}
@media only screen and (min-width: 769px) {
  .reservation__col01__inner .title__main > span:nth-child(1), .reservation__col01__inner .normal__medical_content > h2 > span:nth-child(1) {
    margin-bottom: 30px;
  }
}
.reservation__col01__inner .title__main .blue, .reservation__col01__inner .normal__medical_content > h2 .blue {
  color: #6db6d8;
  font-size: 18px;
  display: inline;
}
@media only screen and (min-width: 769px) {
  .reservation__col01__inner .title__main .blue, .reservation__col01__inner .normal__medical_content > h2 .blue {
    font-size: 24px;
  }
}
.reservation__col01__inner__privilege {
  color: #ffe67c;
}
.reservation__col01__inner__privilege__title {
  color: #ffe67c;
  font-size: 15px;
  font-weight: 400;
  line-height: 1;
  text-align: center;
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .reservation__col01__inner__privilege__title {
    font-size: 16px;
  }
}
.reservation__col01__inner__privilege__des {
  width: 100%;
  margin-bottom: 60px;
  max-width: 657px;
}
@media only screen and (min-width: 769px) {
  .reservation__col01__inner__privilege__des {
    margin-bottom: 40px;
  }
}
.reservation__col01__inner__privilege__des > ul {
  margin-bottom: 25px;
}
@media only screen and (min-width: 769px) {
  .reservation__col01__inner__privilege__des > ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 0;
  }
}
.reservation__col01__inner__privilege__des > ul > li {
  font-size: 13px;
  line-height: 1;
  font-weight: 300;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 769px) {
  .reservation__col01__inner__privilege__des > ul > li {
    font-size: 14px;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media only screen and (min-width: 769px) {
  .reservation__col01__inner__privilege__des > ul > li:nth-child(2n+1) {
    width: 368px;
  }
}
.reservation__col01__inner__privilege__des > ul > li:not(:nth-last-child(1)) {
  margin-bottom: 25px;
}
@media only screen and (min-width: 769px) {
  .reservation__col01__inner__privilege__des > ul > li:not(:nth-last-child(1)) {
    margin-bottom: 20px;
  }
}
.reservation__col01__inner__privilege__des > ul > li > span {
  margin-right: 8px;
}
.reservation__col01__inner__privilege__des > p {
  color: #ffe67c;
  font-size: 10px;
  font-weight: 300;
  line-height: 1;
}
.reservation__col01__inner .btn__main {
  color: #fff;
}
@media only screen and (min-width: 769px) {
  .reservation__col02 {
    display: flex;
  }
}
.reservation__col02 .btn__border:nth-child(1), .reservation__col02 .coulum__contents > a:nth-child(1),
.reservation__col02 .campaign__content > a:nth-child(1) {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .reservation__col02 .btn__border:nth-child(1), .reservation__col02 .coulum__contents > a:nth-child(1),
  .reservation__col02 .campaign__content > a:nth-child(1) {
    margin-bottom: 0;
  }
}

/* ----------------------------------------
	ページネーション
---------------------------------------- */
.page__nation {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  width: 325px;
  margin: 0 auto;
}
.page__nation__num {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.page__nation__num > a {
  font-size: 16px;
  line-height: 1;
  color: #302d2c;
  position: relative;
}
.page__nation__num > a:not(:nth-last-child(1)) {
  margin-right: 30px;
}
.page__nation__num .current {
  color: #6f6f6f;
  opacity: 0.6;
  pointer-events: none;
}
.page__nation__num .current::after {
  opacity: 1;
  content: "";
  position: absolute;
  width: 4px;
  height: 4px;
  background-color: #6db6d8;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -10px;
}
.page__nation__btn {
  height: 38px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  position: relative;
}
.page__nation__btn::before {
  width: 10px;
  height: 17px;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url("../images/common/arrow_black_left.svg");
}
.page__nation__btn.next::before {
  background-image: url("../images/common/arrow_black_right.svg");
}
.page__nation__btn > a {
  font-size: 10px;
  line-height: 1;
}

.page__btn, .page-numbers .next, .page-numbers .prev {
  height: 38px;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  justify-content: flex-end;
  position: relative;
  font-size: 10px;
  line-height: 1;
  text-transform: capitalize;
  transition: all 0.4s;
}
.page__btn::before, .page-numbers .next::before, .page-numbers .prev::before {
  width: 10px;
  height: 17px;
  top: 0;
  left: 0;
  right: 0;
  margin: 0 auto;
  background-repeat: no-repeat;
  background-size: cover;
  background-image: url("../images/common/arrow_black_left.svg");
}
.page__btn.next::before, .page-numbers .next::before {
  background-image: url("../images/common/arrow_black_right.svg");
}
.page__btn:hover, .page-numbers .next:hover, .page-numbers .prev:hover {
  opacity: 0.6;
}

.page-numbers {
  display: flex;
  width: -moz-fit-content;
  width: fit-content;
  max-width: 325px;
  justify-content: space-between;
  align-items: flex-start;
  margin: 0 auto;
}
.page-numbers > li {
  font-size: 16px;
  line-height: 1;
  color: #302d2c;
  position: relative;
}
.page-numbers > li:not(:nth-last-child(1)) {
  margin-right: 30px;
}
.page-numbers .prev {
  margin-right: 20px;
}
.page-numbers .next {
  margin-left: 20px;
}
.page-numbers .current {
  color: #6f6f6f;
  opacity: 0.6;
  pointer-events: none;
}
.page-numbers .current::after {
  opacity: 1;
  content: "";
  position: absolute;
  width: 4px;
  height: 4px;
  background-color: #6db6d8;
  border-radius: 50%;
  left: 0;
  right: 0;
  margin: 0 auto;
  bottom: -10px;
}

/* ----------------------------------------
	記事ページパーツ
---------------------------------------- */
.coulum__contents,
.campaign__content {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  font-size: 14px;
}
.coulum__contents .beauty__about__box,
.campaign__content .beauty__about__box {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .beauty__about__box,
  .campaign__content .beauty__about__box {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 769px) {
  .coulum__contents .beauty__about__box .box,
  .campaign__content .beauty__about__box .box {
    width: 50%;
  }
}
.coulum__contents .beauty__about__box__title,
.campaign__content .beauty__about__box__title {
  margin-bottom: 40px;
}
.coulum__contents .beauty__about__box__text,
.campaign__content .beauty__about__box__text {
  line-height: 2.1538461538;
  margin-bottom: 40px;
  font-size: 13px;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .beauty__about__box__text,
  .campaign__content .beauty__about__box__text {
    width: 50%;
    width: -moz-fit-content;
    width: fit-content;
    font-size: 14px;
    line-height: 2;
  }
}
.coulum__contents .beauty__about__box__img,
.campaign__content .beauty__about__box__img {
  width: 300px;
  height: 167px;
  align-items: end;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .beauty__about__box__img,
  .campaign__content .beauty__about__box__img {
    width: 45%;
    height: 256px;
  }
}
.coulum__contents > strong,
.campaign__content > strong {
  margin-bottom: 40px;
}
.coulum__contents .mb20,
.campaign__content .mb20 {
  margin-bottom: 20px;
}
.coulum__contents .mb40,
.campaign__content .mb40 {
  margin-bottom: 40px;
}
.coulum__contents .mb60,
.campaign__content .mb60 {
  margin-bottom: 60px;
}
.coulum__contents .mb80,
.campaign__content .mb80 {
  margin-bottom: 80px;
}
.coulum__contents .mb120,
.campaign__content .mb120 {
  margin-bottom: 120px;
}
.coulum__contents > strong,
.campaign__content > strong {
  color: #ffe67c;
}
.coulum__contents .img,
.campaign__content .img {
  width: 100%;
  max-width: 760px;
  margin: 0 auto 40px;
}
.coulum__contents > p,
.campaign__content > p {
  font-size: 13px;
  font-weight: 300;
  line-height: 2;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 60px;
}
@media only screen and (min-width: 769px) {
  .coulum__contents > p,
  .campaign__content > p {
    font-size: 14px;
    line-height: 2;
  }
}
.coulum__contents .center,
.campaign__content .center {
  align-self: center;
}
.coulum__contents .left,
.campaign__content .left {
  align-self: flex-start;
}
.coulum__contents .rigth,
.campaign__content .rigth {
  align-self: flex-end;
}
.coulum__contents > h2,
.campaign__content > h2 {
  font-size: 18px;
  font-weight: 500;
  line-height: 2;
  padding-left: 14px;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 30px;
  margin-top: 40px;
}
@media only screen and (min-width: 769px) {
  .coulum__contents > h2,
  .campaign__content > h2 {
    font-size: 20px;
  }
}
.coulum__contents > h2::after,
.campaign__content > h2::after {
  height: 100%;
  width: 4px;
  top: 0;
  left: 0;
  right: unset;
  bottom: unset;
  background-color: #6db6d8;
}
.coulum__contents > h3,
.campaign__content > h3 {
  font-size: 16px;
  line-height: 2;
  letter-spacing: 0.05em;
  padding-left: 50px;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 30px;
  margin-top: 40px;
}
.coulum__contents > h3::after,
.campaign__content > h3::after {
  height: 2px;
  width: 30px;
  background-color: #6db6d8;
  left: 0;
  right: unset;
  top: 50%;
  transform: translateY(-50%);
}
.coulum__contents > h4,
.campaign__content > h4 {
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 2;
  font-weight: 500;
  padding-left: 27px;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
  margin-bottom: 30px;
  margin-top: 40px;
}
.coulum__contents > h4::after,
.campaign__content > h4::after {
  height: 12px;
  width: 12px;
  background-color: #497990;
  top: 50%;
  left: 0;
  right: unset;
  transform: translateY(-50%);
}
.coulum__contents > a,
.campaign__content > a {
  width: 100%;
  margin-top: 20px;
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .coulum__contents > a,
  .campaign__content > a {
    width: -moz-fit-content;
    width: fit-content;
    min-width: 535px;
    margin-bottom: 80px;
    margin-top: 40px;
  }
}
.coulum__contents > a:hover,
.campaign__content > a:hover {
  color: #fff;
}
.coulum__contents .prof,
.campaign__content .prof {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  box-sizing: border-box;
  background-color: #f7fafa;
  padding: 60px 20px;
  border-radius: 5px;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .prof,
  .campaign__content .prof {
    flex-direction: row;
    padding: 60px;
  }
}
.coulum__contents .prof__img,
.campaign__content .prof__img {
  width: 160px;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 5px;
  margin-bottom: 30px;
  align-self: center;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .prof__img,
  .campaign__content .prof__img {
    margin-right: 40px;
    margin-bottom: 0;
  }
}
.coulum__contents .prof__name,
.campaign__content .prof__name {
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 20px;
  line-height: 1;
}
.coulum__contents .prof__name > span,
.campaign__content .prof__name > span {
  margin-right: 20px;
}
.coulum__contents .prof__text,
.campaign__content .prof__text {
  max-width: 420px;
}
.coulum__contents .prof__text > p,
.campaign__content .prof__text > p {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0;
}
.coulum__contents .img__box,
.campaign__content .img__box {
  width: 100%;
  max-width: 460px;
  height: auto;
  overflow: hidden;
}
.coulum__contents .img__box.small,
.campaign__content .img__box.small {
  max-width: 240px;
}
.coulum__contents .merit__item,
.campaign__content .merit__item {
  padding: 30px 20px;
  box-sizing: border-box;
  background-color: #60abce;
  width: 100%;
  max-width: 535px;
  align-self: center;
}
.coulum__contents .merit__item__title,
.campaign__content .merit__item__title {
  font-size: 13px;
  font-weight: 400;
  padding-bottom: 10px;
  border-bottom: 1px solid #fff;
  margin-bottom: 10px;
  color: #fff;
  text-align: center;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .merit__item__title,
  .campaign__content .merit__item__title {
    font-size: 14px;
  }
}
.coulum__contents .merit__item__list,
.campaign__content .merit__item__list {
  padding-left: 35px;
  counter-reset: merit 0;
}
.coulum__contents .merit__item__list > li,
.campaign__content .merit__item__list > li {
  font-size: 13px;
  font-weight: 400;
  color: #fff;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .merit__item__list > li,
  .campaign__content .merit__item__list > li {
    font-size: 14px;
  }
}
.coulum__contents .merit__item__list > li:not(:nth-last-child(1)),
.campaign__content .merit__item__list > li:not(:nth-last-child(1)) {
  margin-bottom: 1em;
}
.coulum__contents .merit__item__list > li::before,
.campaign__content .merit__item__list > li::before {
  counter-increment: merit 1;
  content: counter(merit) ".";
  margin-right: 4px;
}
.coulum__contents .merit__item.acc,
.campaign__content .merit__item.acc {
  background-color: #497990;
}
.coulum__contents .merit__box,
.campaign__content .merit__box {
  display: flex;
  flex-wrap: wrap;
  gap: 40px;
}
.coulum__contents .merit__box .merit__item,
.campaign__content .merit__box .merit__item {
  max-width: 350px;
}
.coulum__contents .des__box,
.campaign__content .des__box {
  padding: 40px 20px;
  background-color: #f7fafa;
  display: flex;
  flex-direction: column;
  align-items: center;
  border-radius: 3px;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .des__box,
  .campaign__content .des__box {
    padding: 40px;
  }
}
.coulum__contents .des__box__title,
.campaign__content .des__box__title {
  width: 100%;
  height: 40px;
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #6db6d8;
  margin-bottom: 20px;
}
.coulum__contents .des__box__title > p,
.coulum__contents .des__box__title h3,
.coulum__contents .des__box__title h4,
.campaign__content .des__box__title > p,
.campaign__content .des__box__title h3,
.campaign__content .des__box__title h4 {
  font-size: 14px;
  color: #fff;
}
.coulum__contents .des__box__title > p > span,
.coulum__contents .des__box__title h3 > span,
.coulum__contents .des__box__title h4 > span,
.campaign__content .des__box__title > p > span,
.campaign__content .des__box__title h3 > span,
.campaign__content .des__box__title h4 > span {
  line-height: 14px;
  background-color: #fff;
  color: #6db6d8;
  padding: 3px 10px;
  margin-left: 10px;
}
.coulum__contents .des__box__text,
.campaign__content .des__box__text {
  font-size: 13px;
  line-height: 2;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .des__box__text,
  .campaign__content .des__box__text {
    font-size: 14px;
  }
}
.coulum__contents .check__box,
.campaign__content .check__box {
  padding: 40px;
  position: relative;
  background-color: #f7fafa;
}
.coulum__contents .check__box::before,
.campaign__content .check__box::before {
  height: 12px;
  width: 13px;
  background-image: url("../images/common/check_icon.svg");
  top: 10px;
  left: 10px;
}
.coulum__contents .check__box > p,
.campaign__content .check__box > p {
  font-size: 13px;
  line-height: 2;
}
@media only screen and (min-width: 769px) {
  .coulum__contents .check__box > p,
  .campaign__content .check__box > p {
    font-size: 14px;
  }
}
.coulum__contents > table,
.campaign__content > table {
  --border: #c1c1c1;
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
}
.coulum__contents > table > thead,
.campaign__content > table > thead {
  width: 100%;
  display: flex;
}
.coulum__contents > table > thead > tr,
.campaign__content > table > thead > tr {
  align-items: center;
  width: 100%;
  display: flex;
  height: 66px;
  background-color: #f8f8f4;
}
.coulum__contents > table > thead > tr > th,
.campaign__content > table > thead > tr > th {
  width: 33%;
  display: block;
  font-size: 14px;
  font-weight: 400;
  text-align: start;
  padding-left: 20px;
}
.coulum__contents > table > tbody,
.campaign__content > table > tbody {
  width: 100%;
  display: flex;
  flex-direction: column;
}
.coulum__contents > table > tbody > tr,
.campaign__content > table > tbody > tr {
  width: 100%;
  display: flex;
  height: 66px;
  text-align: start;
  align-items: center;
  border-top: 1px solid #c1c1c1;
  border-bottom: 1px solid #c1c1c1;
}
.coulum__contents > table > tbody > tr > td,
.campaign__content > table > tbody > tr > td {
  width: 33%;
  display: block;
  text-align: start;
  font-size: 14px;
  font-weight: 400;
  padding-left: 20px;
}
.coulum__contents > table > tfoot > tr,
.coulum__contents > table > tfoot th,
.campaign__content > table > tfoot > tr,
.campaign__content > table > tfoot th {
  height: 66px;
  width: 100%;
  display: flex;
  text-align: start;
  align-items: center;
  font-size: 14px;
  font-weight: 400;
}

.coulum__price {
  width: 100%;
  padding: 40px 20px;
  background-color: #fafafa;
  box-sizing: border-box;
  border-radius: 3px;
}
@media only screen and (min-width: 769px) {
  .coulum__price {
    max-width: 350px;
  }
}
.coulum__price > p {
  text-align: center;
}
.coulum__price__title {
  padding-bottom: 10px;
  width: 100%;
  line-height: 1.6;
  margin-bottom: 20px;
  position: relative;
  font-size: 16px;
}
.coulum__price__title::after {
  width: 100%;
  height: 2px;
  background-color: #c1c1c1;
  bottom: 0;
  right: 0;
  left: 0;
  top: unset;
}

.flex-box {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 20px;
}
@media only screen and (min-width: 769px) {
  .flex-box {
    flex-direction: row;
    flex-wrap: wrap;
    gap: 40px;
  }
}

.num__box {
  counter-reset: point__single;
  display: flex;
  flex-wrap: wrap;
  gap: 60px 0px;
  justify-content: space-between;
}
@media only screen and (min-width: 769px) {
  .num__box {
    gap: 40px 0;
  }
}

.num__item {
  width: 48%;
  max-width: 237px;
}
.num__item__img {
  height: 119px;
  width: 100%;
  position: relative;
  overflow: hidden;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .num__item__img {
    height: 165px;
  }
}
.num__item__img > span {
  height: 60px;
  width: 60px;
  position: absolute;
  content: "";
  background-color: #6db6d8;
  top: -30px;
  left: -30px;
  border-radius: 50%;
}
.num__item__img > span::before {
  counter-increment: point__single 1;
  content: counter(point__single);
  position: absolute;
  bottom: 9px;
  right: 14px;
  color: #fff;
  font-size: 16px;
}
.num__item__text {
  font-size: 12px;
  line-height: 2;
}

div#toc_container {
  padding: 40px 20px !important;
  box-sizing: border-box;
  background: #fafafa !important;
  border-radius: 6px;
  max-width: 660px;
  width: 100% !important;
  margin: 0 auto 80px;
  margin-top: 65px;
  border: none !important;
}
@media only screen and (min-width: 769px) {
  div#toc_container {
    padding: 40px !important;
  }
}
div#toc_container .toc_title {
  font-size: 14px;
  padding-left: 34px !important;
  line-height: 1;
  padding-bottom: 20px !important;
  position: relative;
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 20px !important;
  text-align: start !important;
  font-weight: 400 !important;
}
@media only screen and (min-width: 769px) {
  div#toc_container .toc_title {
    padding-left: 54px !important;
    padding-bottom: 15px !important;
    margin-bottom: 30px !important;
  }
}
div#toc_container .toc_title::before {
  height: 14px;
  width: 19px;
  background-image: url("../images/common/index_icon.svg");
  background-repeat: no-repeat;
  background-size: contain;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 769px) {
  div#toc_container .toc_title::before {
    transform: translateX(20px);
    top: 2px;
  }
}

.column__index {
  padding: 40px 20px;
  box-sizing: border-box;
  background-color: #fafafa;
  border-radius: 6px;
  max-width: 660px;
  width: 100%;
  margin: 0 auto 80px;
}
@media only screen and (min-width: 769px) {
  .column__index {
    padding: 40px;
  }
}
.column__index__title {
  font-size: 14px;
  padding-left: 34px;
  line-height: 1;
  padding-bottom: 20px;
  position: relative;
  border-bottom: 1px solid #e5e5e5;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .column__index__title {
    padding-left: 54px;
    padding-bottom: 15px;
    margin-bottom: 30px;
  }
}
.column__index__title::before {
  height: 14px;
  width: 19px;
  background-image: url("../images/common/index_icon.svg");
  background-repeat: no-repeat;
  background-size: contain;
  top: 0;
  left: 0;
}
@media only screen and (min-width: 769px) {
  .column__index__title::before {
    transform: translateX(20px);
    top: 2px;
  }
}

.toc_list {
  counter-reset: column 0;
}
@media only screen and (min-width: 769px) {
  .toc_list {
    padding-left: 20px !important;
  }
}
.toc_list > li {
  font-size: 13px !important;
  font-weight: 400;
}
@media only screen and (min-width: 769px) {
  .toc_list > li {
    font-size: 14px;
  }
}
.toc_list > li:not(:nth-last-child(1)) {
  margin-bottom: 20px !important;
}
@media only screen and (min-width: 769px) {
  .toc_list > li:not(:nth-last-child(1)) {
    margin-bottom: 30px !important;
  }
}
.toc_list > li::before {
  counter-increment: column 1;
  content: counter(column) ".";
  margin-right: 10px;
}
.toc_list > li > ul {
  margin-top: 16px !important;
  padding-left: 23px !important;
}
.toc_list > li > ul > li {
  font-size: 12px !important;
  font-weight: 400 !important;
  color: #606060 !important;
  position: relative;
  padding-left: 25px !important;
}
.toc_list > li > ul > li::before {
  width: 14px;
  height: 1px;
  background-color: #302d2c;
  left: 0;
  top: 8px;
  transform: translateY(1px);
}
.toc_list > li > ul > li:not(:nth-last-child(1)) {
  margin-bottom: 16px !important;
}

.index__list {
  counter-reset: column 0;
}
@media only screen and (min-width: 769px) {
  .index__list {
    padding-left: 20px;
  }
}
.index__list__item {
  font-size: 13px;
  font-weight: 400;
}
@media only screen and (min-width: 769px) {
  .index__list__item {
    font-size: 14px;
  }
}
.index__list__item:not(:nth-last-child(1)) {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .index__list__item:not(:nth-last-child(1)) {
    margin-bottom: 30px;
  }
}
.index__list__item::before {
  counter-increment: column 1;
  content: counter(column) ".";
  margin-right: 10px;
}
.index__list__item > ul {
  margin-top: 16px;
  padding-left: 23px;
}
.index__list__item > ul > li {
  font-size: 12px;
  font-weight: 400;
  color: #606060;
  position: relative;
  padding-left: 25px;
}
.index__list__item > ul > li::before {
  width: 14px;
  height: 1px;
  background-color: #302d2c;
  left: 0;
  top: 50%;
  transform: translateY(1px);
}
.index__list__item > ul > li:not(:nth-last-child(1)) {
  margin-bottom: 16px;
}

.column__single__pan {
  margin-bottom: 40px;
  margin-top: 20px;
}
@media only screen and (min-width: 769px) {
  .column__single__pan {
    display: flex;
    justify-content: flex-end;
    margin-top: 0;
    margin-bottom: 47px;
  }
}

/* ----------------------------------------
	top
---------------------------------------- */
.top__medical {
  margin-bottom: 80px;
}
.top__medical .bg__circle {
  left: -20px;
}
@media only screen and (min-width: 769px) {
  .top__medical .bg__circle {
    top: -316px;
    left: -454px;
  }
}
@media only screen and (min-width: 769px) {
  .top__medical {
    padding-left: 90px;
    margin-bottom: 100px;
  }
}
.top__medical .title__main, .top__medical .normal__medical_content > h2 {
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .top__medical .title__main, .top__medical .normal__medical_content > h2 {
    margin-bottom: 100px;
  }
}
.top__medical__main {
  display: flex;
  flex-direction: column;
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .top__medical__main {
    flex-direction: row;
    justify-content: flex-end;
  }
}
.top__medical__main .medlical__item:nth-child(1) {
  margin-bottom: 60px;
}
@media only screen and (min-width: 769px) {
  .top__medical__main .medlical__item:nth-child(1) {
    margin-right: 60px;
  }
}
.top__medical__main .medlical__item:nth-last-child(1) {
  align-self: flex-end;
}
.top__medical__sub {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px 0;
}
@media only screen and (min-width: 769px) {
  .top__medical__sub {
    gap: 30px 11px;
    justify-content: flex-start;
    padding-left: 136px;
  }
}
.top__medical__General {
  margin-top: 80px;
}
.top__medical__General .title__sub {
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .top__medical__General {
    padding-left: 136px;
  }
}
@media only screen and (min-width: 769px) {
  .top__medical__General .top__medical__sub {
    padding-left: 0;
  }
}

.top__seek {
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .top__seek {
    margin-bottom: 195px;
  }
}

.top__greeting {
  margin-bottom: 120px;
  position: relative;
}
.top__greeting .bg__circle {
  --size: 480px;
  left: 70px;
  top: -258px;
}
@media only screen and (min-width: 769px) {
  .top__greeting .bg__circle {
    top: -15px;
    left: -20px;
    opacity: 0.2;
    --size: 630px;
  }
}
.top__greeting__title {
  margin-bottom: 45px;
}
.top__greeting__title .catch__small {
  font-size: 12px;
  margin-bottom: 64px;
  letter-spacing: 0;
}
@media only screen and (min-width: 769px) {
  .top__greeting__title .catch__small {
    position: absolute;
    top: 0;
    left: 90px;
  }
}
.top__greeting__title .title__main, .top__greeting__title .normal__medical_content > h2 {
  position: relative;
  font-size: 16px;
}
@media only screen and (min-width: 769px) {
  .top__greeting__title .title__main, .top__greeting__title .normal__medical_content > h2 {
    font-size: 24px;
    line-height: 1.9166666667;
  }
}
.top__greeting__title .title__main::after, .top__greeting__title .normal__medical_content > h2::after {
  content: "About Us";
}
@media only screen and (min-width: 769px) {
  .top__greeting__title .title__main::after, .top__greeting__title .normal__medical_content > h2::after {
    top: 32px;
  }
}
.top__greeting__text {
  margin-bottom: 80px;
}
.top__greeting__text > p {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 2.3;
  font-weight: 300;
  margin: -4px 0;
}
.top__greeting__img {
  width: 275px;
  height: 376px;
  padding-left: 18px;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .top__greeting__img {
    width: 380px;
    height: 520px;
    padding: 0;
  }
}
.top__greeting__img > img {
  border-radius: 0 25px 0 25px;
  overflow: hidden;
}
.top__greeting__img::after {
  --speed: 9s;
  top: unset;
  left: unset;
  right: -40px;
  bottom: -40px;
  width: 80px;
  height: 80px;
  background-image: url("../images/common/text_circle_sp.png");
  animation: roll__animation var(--speed) linear infinite;
}
@media only screen and (min-width: 769px) {
  .top__greeting__img::after {
    right: -75px;
    bottom: -75px;
    width: 150px;
    height: 148px;
    background-image: url("../images/common/text_circle_pc.png");
  }
}

.top__point {
  margin-bottom: 236px;
}
.top__point .title__main, .top__point .normal__medical_content > h2 {
  margin-bottom: 126px;
}
@media only screen and (min-width: 769px) {
  .top__point .title__main, .top__point .normal__medical_content > h2 {
    margin-bottom: 200px;
  }
}
@media only screen and (max-width: 559px) {
  .top__point__slide {
    padding-left: 10px;
  }
}
@media only screen and (min-width: 769px) {
  .top__point__slide {
    margin: 0 auto;
    box-sizing: border-box;
    padding: 0;
    width: 100%;
    max-width: 1260px;
  }
}

.top__message {
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .top__message {
    margin-bottom: 246px;
  }
}
.top__message .bg__circle {
  top: -50px;
  left: -25px;
  opacity: 0.2;
}
@media only screen and (min-width: 769px) {
  .top__message .bg__circle {
    --size: 500px;
    left: -75px;
    top: -170px;
  }
}
.top__message .title__main, .top__message .normal__medical_content > h2 {
  margin-bottom: 60px;
}
.top__message__img {
  width: 275px;
  height: 376px;
  -o-object-fit: fill;
     object-fit: fill;
  margin: 0 auto 80px;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .top__message__img {
    position: absolute;
    z-index: 1;
    right: 150px;
    top: 245px;
    width: 380px;
    height: 520px;
    margin-bottom: 0;
  }
}
.top__message__img::after {
  content: "Message";
  bottom: -76px;
  top: unset;
  left: -38px;
  right: unset;
}
@media only screen and (min-width: 769px) {
  .top__message__img::after {
    bottom: 180px;
    left: -210px;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto;
  }
}
@media only screen and (min-width: 769px) {
  .top__message__des {
    width: 560px;
  }
}
.top__message__des__prof {
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: 1;
  font-weight: 300;
  margin-bottom: 30px;
}
.top__message__des__text {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 2;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .top__message__des__text {
    min-height: 238px;
    font-size: 14px;
  }
}

.top__clinic {
  background-color: #fafafa;
  padding-top: 80px;
  padding-bottom: 80px;
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .top__clinic {
    max-width: 1260px;
    z-index: -1;
    margin: 0 auto 120px;
    padding-top: 120px;
    padding-bottom: 120px;
  }
}
.top__clinic__box {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .top__clinic__box {
    padding: 0 80px;
  }
}
.top__clinic__box .title__main, .top__clinic__box .normal__medical_content > h2 {
  margin-bottom: 60px;
}
.top__clinic__box .title__main > span, .top__clinic__box .normal__medical_content > h2 > span {
  margin-bottom: 30px;
}
.top__clinic__box__list {
  margin-bottom: 60px;
  gap: 80px 0px;
}
@media only screen and (min-width: 769px) {
  .top__clinic__box__list {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    justify-content: space-between;
    margin-bottom: 80px;
  }
}
@media only screen and (max-width: 559px) {
  .top__clinic__box__list .clinic__item:nth-child(1) {
    margin-bottom: 60px;
  }
}
.top__clinic__box .btn__main {
  margin: 30px auto 0;
    display: block;
    clear: both;
}

.useful__info {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 120px;
}
.useful__info .bg__circle {
  --size:400px;
  opacity: 0.15;
  left: -5px;
  top: 195px;
}
@media only screen and (min-width: 769px) {
  .useful__info .bg__circle {
    --size:630px ;
    top: 200px;
    left: 495px;
  }
}
@media only screen and (min-width: 769px) {
  .useful__info {
    padding-left: 35px;
    padding-right: 35px;
    margin-bottom: 150px;
  }
}
.useful__info .title__main, .useful__info .normal__medical_content > h2 {
  margin-bottom: 60px;
}
.useful__info .title__main > span, .useful__info .normal__medical_content > h2 > span {
  margin-bottom: 30px;
}
.useful__info__items {
  margin-bottom: 60px;
}
@media only screen and (min-width: 769px) {
  .useful__info__items {
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 769px) {
  .useful__info__items .content__item {
    width: 555px;
  }
}
@media only screen and (min-width: 769px) {
  .useful__info__items .content__item__inner__img {
    height: 312px;
  }
}
@media only screen and (min-width: 769px) {
  .useful__info__items .content__item:nth-child(2) {
    align-self: flex-end;
  }
}

.border__inner.useful__under {
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .border__inner.useful__under {
    margin-bottom: 100px;
  }
}

.popular__contents {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .popular__contents {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-bottom: 150px;
  }
}
.popular__contents .title__main, .popular__contents .normal__medical_content > h2 {
  margin-bottom: 60px;
  align-self: flex-start;
}
@media only screen and (min-width: 769px) {
  .popular__contents .title__main, .popular__contents .normal__medical_content > h2 {
    order: 1;
  }
}
.popular__contents__items {
  margin-bottom: 60px;
}
@media only screen and (min-width: 769px) {
  .popular__contents__items {
    margin-bottom: 42px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    order: 3;
  }
  .popular__contents__items .content__item {
    width: 304px;
  }
  .popular__contents__items .content__item__inner__img {
    height: 171px;
  }
}
@media only screen and (min-width: 769px) {
  .popular__contents .btn__main {
    order: 2;
  }
}

.news__section {
  display: flex;
  flex-direction: column;
  align-items: center;
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .news__section {
    margin-bottom: 150px;
  }
}
.news__section .title__main, .news__section .normal__medical_content > h2 {
  margin-bottom: 30px !important;
  align-self: flex-start;
}
.news__section__items {
  margin: 0 auto 60px;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .news__section__items {
    margin-bottom: 80px;
  }
}
.news__section .btn__main {
  align-self: center;
}

/* ----------------------------------------
	beauty
---------------------------------------- */
main.under .title__main > span, main.under .normal__medical_content > h2 > span {
  margin-bottom: 15px;
}
@media only screen and (min-width: 769px) {
  main.under .title__main > span, main.under .normal__medical_content > h2 > span {
    margin-bottom: 20px;
  }
}
main.under > section.beauty__kv {
  margin-bottom: 80px;
}
main.under > section .title__main, main.under > section .normal__medical_content > h2 {
  margin-bottom: 60px;
}
main.under .border {
  margin-bottom: 80px;
}
main.under .border__inner.kv__under {
  background-color: #F8F8F8;
}
@media only screen and (min-width: 769px) {
  main.under .border__inner.kv__under {
    margin-bottom: 100px;
  }
}
@media only screen and (min-width: 769px) {
  main.under .border__inner.kv__under.useful__under {
    margin-bottom: 100px !important;
  }
}
@media only screen and (min-width: 769px) {
  main.under .border.ps90 {
    padding: 0 90px;
  }
}
main.under .section__while {
  margin-bottom: 100px;
}
main.under .section__while > p {
  left: -304px;
}
main.under .section__while.hiro__clinic > p {
  left: -215px;
}
main.under .useful__info {
  margin-bottom: 100px !important;
}
@media only screen and (min-width: 769px) {
  main.under .useful__info {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 769px) {
  main.under .useful__info .title__main, main.under .useful__info .normal__medical_content > h2 {
    order: 1;
    margin-right: 0;
    margin-left: 0;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media only screen and (min-width: 769px) {
  main.under .useful__info .btn__main {
    order: 2;
  }
}
@media only screen and (min-width: 769px) {
  main.under .useful__info {
    padding: 0;
  }
}
main.under .useful__info__items {
  padding: 0;
}
@media only screen and (min-width: 769px) {
  main.under .useful__info__items {
    flex-direction: row;
    justify-content: space-between;
    order: 3;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 769px) {
  main.under .useful__info__items .content__item {
    width: 350px;
  }
  main.under .useful__info__items .content__item:not(:nth-last-child(1)) {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 769px) {
  main.under .useful__info__items .content__item__inner__img {
    height: 196px;
  }
}
main.under .useful__info .section__while.useful {
  display: none;
}
main.under .useful__info .bg__circle {
  display: none;
}
@media only screen and (min-width: 769px) {
  main.under .popular__contents {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 769px) {
  main.under .popular__contents .title__main, main.under .popular__contents .normal__medical_content > h2 {
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 0;
    margin-left: 0;
  }
}
@media only screen and (min-width: 769px) {
  main.under .popular__contents__items {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 769px) {
  main.under .popular__contents .content__item {
    width: 261px;
    margin-bottom: 0;
  }
}

.beauty__campaign {
  display: flex;
  flex-direction: column;
}
.beauty__campaign .chara__edge, .beauty__campaign .section__while > p {
  font-size: 58px;
  margin-bottom: 40px;
}
.beauty__campaign .title__subhead, .beauty__campaign .normal__medical_content > h3 {
  margin-bottom: 80px;
}
.beauty__campaign__slide {
  margin-bottom: 60px;
}
.beauty__campaign .btn__main {
  align-self: center;
}

.beauty__about__box {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .beauty__about__box {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
  }
}
.beauty__about__box__title {
  margin-bottom: 40px;
}
.beauty__about__box__text {
  line-height: 2.1538461538;
  margin-bottom: 40px;
  font-size: 13px;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 769px) {
  .beauty__about__box__text {
    width: 460px;
    font-size: 14px;
    line-height: 2;
  }
}
.beauty__about__box__img {
  width: 300px;
  height: 167px;
}
@media only screen and (min-width: 769px) {
  .beauty__about__box__img {
    width: 460px;
    height: 256px;
  }
}

.beauty__point__box {
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .beauty__point__box {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
}
.beauty__point__box .point__item:not(:nth-last-child(1)) {
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .beauty__point__box .point__item:not(:nth-last-child(1)) {
    margin-bottom: 128px;
  }
}

.point__item {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  padding-bottom: 97px;
}
@media only screen and (min-width: 769px) {
  .point__item {
    padding-bottom: 0;
  }
}
@media only screen and (min-width: 769px) {
  .point__item:nth-child(2n) {
    align-self: flex-start;
  }
}
@media only screen and (min-width: 769px) {
  .point__item:nth-child(2n) .inner {
    padding: 0 220px 0 80px;
  }
}
@media only screen and (min-width: 769px) {
  .point__item:nth-child(2n) .point__item__img {
    left: unset;
    right: -320px;
  }
}
.point__item .inner {
  padding: 60px 24px 110px;
  background-color: #fafafa;
  box-sizing: border-box;
  border-radius: 0 40px 0 40px;
  position: relative;
}
.point__item .inner .title__subhead, .point__item .inner .normal__medical_content > h3 {
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .point__item .inner .title__subhead, .point__item .inner .normal__medical_content > h3 {
    margin-bottom: 60px;
  }
}
@media only screen and (min-width: 769px) {
  .point__item .inner {
    width: 760px;
    height: 440px;
    padding: 0 80px 0 220px;
    display: flex;
    flex-direction: column;
    justify-content: center;
  }
}
.point__item__text {
  font-size: 13px;
  line-height: 2.1538461538;
}
@media only screen and (min-width: 769px) {
  .point__item__text {
    font-size: 14px;
    letter-spacing: 0.05em;
    line-height: 2;
  }
}
.point__item__img {
  width: 300px;
  height: 167px;
  border-radius: 0 8px 0 8px;
  position: absolute;
  right: 0;
  left: 0;
  top: unset;
  bottom: 0;
  margin: 0 auto;
}
@media only screen and (min-width: 769px) {
  .point__item__img {
    margin: 0;
    top: 92px;
    left: -320px;
    width: 460px;
    height: 256px;
  }
}

.beauty__machine .title__main, .beauty__machine .normal__medical_content > h2 {
  margin-bottom: 69px;
}

.beauty__featur {
  position: relative;
  margin-bottom: 60px;
}
.beauty__featur .inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}
@media only screen and (min-width: 769px) {
  .beauty__featur .inner {
    width: 460px;
  }
}
.beauty__featur .inner > p {
  font-size: 13px;
  line-height: 2.1538461538;
}
@media only screen and (min-width: 769px) {
  .beauty__featur .inner > p {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.05em;
  }
}
.beauty__featur > div > p {
  font-size: 13px;
  line-height: 2.1538461538;
}
@media only screen and (min-width: 769px) {
  .beauty__featur > div > p {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.05em;
  }
}
.beauty__featur > div .title__main, .beauty__featur > div .normal__medical_content > h2 {
  padding: 0;
}
.beauty__featur__title {
  align-self: flex-start;
  margin-bottom: 40px;
}
.beauty__featur__img {
  width: 300px;
  height: 167px;
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .beauty__featur__img {
    width: 460px;
    height: 256px;
    position: absolute;
    right: 0;
    top: 0;
  }
}

.beauty__box {
  padding: 60px 0 60px;
  display: flex;
  flex-direction: column;
  align-items: center;
  background-color: #fafafa;
}
.beauty__box:not(:nth-last-child(1)) {
  margin-bottom: 40px;
}
.beauty__box > h3 {
  font-size: 16px;
  list-style: 1.6;
  font-weight: 400;
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .beauty__box > h3 {
    font-size: 18px;
  }
}
.beauty__box > ul {
  align-self: flex-start;
  padding-left: 30px;
}
@media only screen and (min-width: 769px) {
  .beauty__box > ul {
    align-self: center;
  }
}
.beauty__box > ul > li {
  font-size: 13px;
  letter-spacing: 0.05em;
}
@media only screen and (min-width: 769px) {
  .beauty__box > ul > li {
    font-size: 14px;
  }
}
.beauty__box > ul > li:not(:nth-last-child(1)) {
  margin-bottom: 30px;
}
.beauty__box > ul > li > span {
  display: block;
  color: #6db6d8;
  padding-left: 17px;
  margin-bottom: 17px;
  position: relative;
  line-height: 1;
}
@media only screen and (min-width: 769px) {
  .beauty__box > ul > li > span {
    margin-bottom: 0;
    display: inline;
    margin-right: 60px;
  }
}
.beauty__box > ul > li > span::before {
  content: "";
  position: absolute;
  right: unset;
  left: 0;
  top: 3px;
  bottom: unset;
  --size: 7px;
  width: var(--size);
  height: var(--size);
  border-radius: 50%;
  background-color: #6db6d8;
}
@media only screen and (min-width: 769px) {
  .beauty__box > ul > li > span::before {
    top: 7px;
  }
}
.beauty__box__img {
  width: 290px;
  height: 170px;
}

.beauty__dl {
  position: relative;
}
.beauty__dl .bg__circle {
  --size:400px;
  top: -380px;
  right: -150px;
}
@media only screen and (min-width: 769px) {
  .beauty__dl .bg__circle {
    --size: 500px;
    top: -378px;
  }
}

.beauty__caution {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  margin-bottom: 120px;
}
.beauty__caution__box {
  margin-bottom: 60px;
  width: 100%;
}
.beauty__caution .btn__main {
  align-self: center;
}

.beauty__qa {
  background-color: #fafafa;
  padding-top: 80px;
  padding-bottom: 80px;
  margin-bottom: 120px;
  display: flex;
  flex-direction: column;
}
@media only screen and (max-width: 559px) {
  .beauty__qa {
    padding-left: 0;
    padding-right: 0;
  }
}
@media only screen and (min-width: 769px) {
  .beauty__qa {
    padding: 90px 90px 100px;
  }
}
.beauty__qa .inner .title__main, .beauty__qa .inner .normal__medical_content > h2 {
  margin-bottom: 58px;
}
.beauty__qa .inner .beauty__qa__box .list__qa .drop__down .btn__dropDown > p {
  padding-left: 20px;
}
.beauty__qa .inner .beauty__qa__box .list__qa .drop__down .btn__dropDown > p::before {
  content: "Q.";
  position: absolute;
  left: 0;
}
.beauty__qa .inner .beauty__qa__box .list__qa .drop__down .drop__down__text {
  position: relative;
  padding-top: 20px;
}
@media only screen and (min-width: 769px) {
  .beauty__qa .inner .beauty__qa__box .list__qa .drop__down .drop__down__text {
    padding-top: 34px;
  }
}
.beauty__qa .inner .beauty__qa__box .list__qa .drop__down .drop__down__text::before {
  content: "Answer:";
  position: absolute;
  left: 0;
  top: 0;
  right: unset;
  bottom: unset;
  font-size: 12px;
}
@media only screen and (min-width: 769px) {
  .beauty__qa .inner .beauty__qa__box .list__qa .drop__down .drop__down__text::before {
    font-size: 14px;
  }
}
.beauty__qa .btn__main {
  width: -moz-fit-content;
  width: fit-content;
  margin: 60px auto 0;
}

.beauty__flow {
  margin-bottom: 120px;
  position: relative;
}
.beauty__flow .bg__circle {
  top: -80px;
  left: 20px;
  right: unset;
}
@media only screen and (min-width: 769px) {
  .beauty__flow .bg__circle {
    left: 0;
    top: -150px;
    --size: 600px;
  }
}
.beauty__flow .title__main, .beauty__flow .normal__medical_content > h2 {
  margin-bottom: 80px !important;
}
@media only screen and (min-width: 769px) {
  .beauty__flow .box {
    display: flex;
    justify-content: space-between;
  }
}
.beauty__flow__box:nth-child(1) {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .beauty__flow__box:nth-child(1) {
    margin-bottom: 0;
  }
}

.remove__hair__contents {
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .remove__hair__contents {
    margin-bottom: 100px;
  }
}
.remove__hair__contents .box {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media only screen and (min-width: 769px) {
  .remove__hair__contents .box {
    justify-content: flex-start;
  }
}
.remove__hair__contents .content__item__sinple {
  width: 48%;
}
@media only screen and (min-width: 769px) {
  .remove__hair__contents .content__item__sinple {
    width: 250px;
  }
}
.remove__hair__contents .content__item__sinple:not(:nth-last-child(1)) {
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .remove__hair__contents .content__item__sinple:not(:nth-last-child(1)) {
    margin-bottom: 0;
    margin-right: 26px;
  }
}
.remove__hair__contents .content__item__sinple:nth-last-child(2) {
  margin-bottom: 0;
}
.remove__hair__contents .content__item__sinple__img {
  height: 102px;
}
@media only screen and (min-width: 769px) {
  .remove__hair__contents .content__item__sinple__img {
    height: 150px;
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 769px) {
  .remove__hair__contents .content__item__sinple__title {
    font-size: 14px;
  }
}

/* ----------------------------------------
	通常の治療
---------------------------------------- */
main.under02 .useful__info {
  margin-bottom: 100px !important;
}
@media only screen and (min-width: 769px) {
  main.under02 .useful__info {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 769px) {
  main.under02 .useful__info .title__main, main.under02 .useful__info .normal__medical_content > h2 {
    order: 1;
    margin-right: 0;
    margin-left: 0;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media only screen and (min-width: 769px) {
  main.under02 .useful__info .btn__main {
    order: 2;
  }
}
@media only screen and (min-width: 769px) {
  main.under02 .useful__info {
    padding: 0;
  }
}
main.under02 .useful__info__items {
  padding: 0;
}
@media only screen and (min-width: 769px) {
  main.under02 .useful__info__items {
    flex-direction: row;
    justify-content: space-between;
    order: 3;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 769px) {
  main.under02 .useful__info__items .content__item {
    width: 350px;
  }
  main.under02 .useful__info__items .content__item:not(:nth-last-child(1)) {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 769px) {
  main.under02 .useful__info__items .content__item__inner__img {
    height: 196px;
  }
}
main.under02 .useful__info .section__while.useful {
  display: none;
}
main.under02 .useful__info .bg__circle {
  display: none;
}
@media only screen and (min-width: 769px) {
  main.under02 .popular__contents {
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
  }
}
@media only screen and (min-width: 769px) {
  main.under02 .popular__contents .title__main, main.under02 .popular__contents .normal__medical_content > h2 {
    width: -moz-fit-content;
    width: fit-content;
    margin-right: 0;
    margin-left: 0;
  }
}
@media only screen and (min-width: 769px) {
  main.under02 .popular__contents__items {
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 769px) {
  main.under02 .popular__contents .content__item {
    width: 261px;
    margin-bottom: 0;
  }
}
main.under02 .border.kv__under .border__inner {
  background-color: #F8F8F8;
}
main.under02 .title__main > span, main.under02 .normal__medical_content > h2 > span {
  margin-bottom: 15px;
}
@media only screen and (min-width: 769px) {
  main.under02 .title__main > span, main.under02 .normal__medical_content > h2 > span {
    margin-bottom: 20px;
  }
}

.normal__medical_content {
  margin-bottom: 120px;
}
.normal__medical_content > h2 > span {
  margin-bottom: 15px;
}
@media only screen and (min-width: 769px) {
  .normal__medical_content > h2 > span {
    margin-bottom: 20px;
  }
}
.normal__medical_content .img {
  width: 100%;
  max-width: 640px;
  margin: 0 auto 40px;
}
.normal__medical_content .prof {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  box-sizing: border-box;
  background-color: #f7fafa;
  padding: 60px 20px;
  border-radius: 5px;
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .normal__medical_content .prof {
    flex-direction: row;
    padding: 60px;
  }
}
.normal__medical_content .prof__img {
  width: 160px;
  height: -moz-fit-content;
  height: fit-content;
  border-radius: 5px;
  margin-bottom: 30px;
  align-self: center;
}
@media only screen and (min-width: 769px) {
  .normal__medical_content .prof__img {
    margin-right: 40px;
    margin-bottom: 0;
  }
}
.normal__medical_content .prof__name {
  font-size: 16px;
  font-weight: 400;
  margin-bottom: 20px;
  line-height: 1;
}
.normal__medical_content .prof__name > span {
  margin-right: 20px;
}
.normal__medical_content .prof__text > p {
  font-size: 14px;
  line-height: 2;
  letter-spacing: 0;
}
.normal__medical_content > p {
  font-size: 13px;
  line-height: 2.1538461538;
  font-weight: 300;
  max-width: 100%;
}
@media only screen and (min-width: 769px) {
  .normal__medical_content > p {
    font-size: 14px;
    line-height: 2;
    letter-spacing: 0.05em;
  }
}
.box__flex {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media only screen and (min-width: 769px) {
  .box__flex {
    flex-direction: row;
    flex-wrap: wrap;
    margin-bottom: 30px !important;
  }
}
.box__flex .medical__price__box:not(:nth-last-child(1)) {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .box__flex .medical__price__box:not(:nth-last-child(1)) {
    margin-bottom: 0;
  }
}

/* ----------------------------------------
	コースと料金
---------------------------------------- */
main.course {
  padding-top: 100px;
}

.des.course__item {
  width: 100%;
  max-width: 760px;
}
@media only screen and (min-width: 769px) {
  .des.course__item {
    min-width: 760px;
  }
}
.des.course__item__title {
  line-height: 2;
}
@media only screen and (min-width: 769px) {
  .des.course__item .box {
    align-items: flex-end;
    justify-content: center;
  }
}
.des.course__item .box .course__item__img {
  width: 200px;
  height: 218px;
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .des.course__item .box .course__item__img {
    width: 238px;
    height: 260px;
    margin-bottom: 0;
    margin-right: 40px;
  }
}
@media only screen and (max-width: 559px) {
  .des.course__item .box .course__item__des {
    width: 100%;
  }
}
.des.course__item .box .course__item__des .price__box {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .des.course__item .box .course__item__des .price__box {
    margin-bottom: 60px;
  }
}
@media only screen and (min-width: 769px) {
  .des.course__item .box .course__item__des .price__box .course__price {
    font-size: 32px;
  }
}
@media only screen and (min-width: 769px) {
  .des.course__item .box .course__item__des .price__box .course__price > span {
    font-size: 16px;
  }
}
.des.course__item .box .course__item__des .price__box .course__price > span:nth-child(1) {
  margin-right: 10px;
}
.des.course__item .box .course__item__des .price__box .course__price > span:nth-last-child(1) {
  margin-left: 10px;
}
.des.course__item .box .course__item__des__text {
  font-size: 12px;
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .des.course__item .box .course__item__des__text {
    font-size: 14px;
  }
}
.des.course__item .box .course__item__des__text > span {
  font-size: 15px;
}
.des.course__item .box .course__item__des .note {
  align-self: flex-start;
}
@media only screen and (min-width: 769px) {
  .des.course__item .box .course__item__des .note {
    font-size: 12px;
  }
}

.course__reco__box {
  width: 100%;
  margin-top: 80px;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.course__reco__box .course__item:not(:nth-last-child(1)) {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .course__reco__box .course__item:not(:nth-last-child(1)) {
    margin-bottom: 40px;
  }
}
@media only screen and (max-width: 559px) {
  .course__reco__box .beauty__dl {
    padding: 0;
    width: 100%;
    margin: 0 auto;
    margin-bottom: 0 !important;
  }
}
@media only screen and (max-width: 559px) {
  .course__reco__box .beauty__dl .dl__box > dl {
    min-width: 50%;
    width: -moz-fit-content;
    width: fit-content;
  }
}
@media only screen and (max-width: 559px) {
  .course__reco__box .beauty__dl .dl__box > dl > dd {
    padding: 0 10px;
    box-sizing: border-box;
    min-height: 88px;
  }
}
@media only screen and (max-width: 559px) {
  .course__reco__box .beauty__dl .dl__box > dl:nth-last-child(1) {
    border-right: unset;
  }
}
@media only screen and (max-width: 559px) {
  .course__reco__box .list__post__new {
    width: 100%;
  }
}

.course__reco {
  margin-bottom: 120px;
}

.course__content .top__seek {
  margin-bottom: 100px;
}
@media only screen and (min-width: 769px) {
  .course__content .top__seek {
    margin-bottom: 150px;
  }
}
@media only screen and (min-width: 769px) {
  .course__content .top__seek .seek__box__article__item {
    padding-left: 110px;
    padding-right: 110px;
  }
}
@media only screen and (min-width: 769px) {
  .course__content .top__seek .seek__box__article__item--02 {
    padding-left: 110px;
    padding-right: 110px;
  }
}
.course__content .beauty__caution__box {
  margin-bottom: 0;
}

@media only screen and (min-width: 769px) {
  .des.course__content .course__reco {
    margin-bottom: 150px;
  }
}
/* ----------------------------------------
	クリニック一覧ページ、クリニック詳細ページ
---------------------------------------- */
.clinic__box {
  margin-bottom: 120px;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.under02.clinic {
  padding-top: 0;
}
.under02.clinic .title__sub {
  font-size: 14px;
}
@media only screen and (min-width: 769px) {
  .under02.clinic .title__sub {
    font-size: 18px;
  }
}
.under02.clinic .title__sub::before {
  top: 9px;
}
@media only screen and (min-width: 769px) {
  .under02.clinic .title__sub::before {
    top: 13px;
  }
}

.clinic__deatil {
  margin-bottom: 120px;
}
.clinic__deatil .title__sub {
  margin-bottom: 80px;
}

.list__deatil > li {
  padding-bottom: 20px;
  border-bottom: 1px solid #c1c1c1;
  width: 100%;
  padding-left: 10px;
  padding-right: 10px;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .list__deatil > li {
    padding-bottom: 40px;
  }
}
.list__deatil > li:not(:nth-child(1)) {
  padding-top: 20px;
}
.list__deatil > li .clinic__item__text > p {
  line-height: 2;
}
.list__deatil > li .clinic__item__text > span {
  margin-bottom: 15px;
}
.list__deatil > li .clinic__item__text > a::before {
  display: none;
}
@media only screen and (min-width: 769px) {
  .list__deatil .clinic__item__text > p {
    margin-top: -2px;
  }
}
@media only screen and (min-width: 769px) {
  .list__deatil .clinic__item__text {
    display: flex;
  }
}
.list__deatil .clinic__item__text > span {
  display: block;
  height: -moz-fit-content;
  height: fit-content;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .list__deatil .clinic__item__text > span {
    margin-bottom: 0;
    margin-right: 40px;
  }
}

.clinic__item {
  width: 100%;
  max-width: 1080px;
}
.clinic__item:not(:nth-last-child(1)) {
  margin-bottom: 120px;
}
.clinic__item__title {
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .clinic__item .box {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
  }
}
.clinic__item__img {
  width: 100%;
  height: 210px;
  margin-bottom: 60px;
}
@media only screen and (min-width: 769px) {
  .clinic__item__img {
    width: 520px;
    height: 313px;
  }
}
.clinic__item__data {
  margin-bottom: 50px;
}
@media only screen and (min-width: 769px) {
  .clinic__item__data {
    margin-bottom: 70px;
  }
}
.clinic__item .col01 {
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .clinic__item .col01 {
    width: 480px;
  }
}
.clinic__item__link {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}

.clinic__item__text > span {
  display: block;
  line-height: 20px;
  width: 70px;
  text-align: center;
  background-color: #302d2c;
  color: #fff;
  margin-bottom: 11px;
  font-size: 12px;
  letter-spacing: 0.05em;
}
.clinic__item__text > p,
.clinic__item__text a {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1.6153846154;
  max-width: 100%;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text > p,
  .clinic__item__text a {
    font-size: 14px;
    list-style: 1.5;
  }
}
.clinic__item__text > a {
  position: relative;
}
.clinic__item__text > a::before {
  content: "TEL : ";
}
.clinic__item__text > ul {
  display: flex;
  flex-wrap: wrap;
  gap: 15px 15px;
}
.clinic__item__text > ul > li {
  width: -moz-fit-content;
  width: fit-content;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text > ul > li {
    font-size: 14px;
  }
}
.clinic__item__text:not(:nth-last-child(1)) {
  margin-bottom: 26px;
}
.clinic__item__text .box {
  display: flex;
  align-items: flex-end;
  margin-bottom: 20px;
}
.clinic__item__text .box > p {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-right: 15px;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text .box > p {
    font-size: 14px;
    margin-right: 40px;
  }
}
.clinic__item__text .box > a {
  color: #6db6d8;
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text .box > a {
    font-size: 14px;
  }
}
.clinic__item__text .box__02 {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 40px;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text .box__02 {
    flex-direction: row;
    gap: 0;
  }
}
.clinic__item__text .col01 > p {
  font-size: 12px;
  letter-spacing: 0.05em;
  line-height: 2;
  max-width: 290px;
  margin-bottom: 30px;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text .col01 > p {
    max-width: 100%;
  }
}
.clinic__item__text__map {
  width: 290px;
  height: 165px;
  margin-bottom: 20px;
  background-color: #cccccc;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text__map {
    width: 560px;
    height: 320px;
    margin-bottom: 0;
    margin-right: 24px;
  }
}
.clinic__item__text__inst {
  width: 290px;
  height: 498px;
  background-color: #cccccc;
}
@media only screen and (min-width: 769px) {
  .clinic__item__text__inst {
    width: 186px;
    height: 320px;
  }
}

.clinic__way {
  margin-bottom: 120px;
}
.clinic__way .title__sub {
  margin-bottom: 80px;
}
.clinic__way__items {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 20px 0px;
}
@media only screen and (min-width: 769px) {
  .clinic__way__items {
    justify-content: space-between;
    gap: 40px 0;
  }
}

.way__item {
  width: 48.5%;
  position: relative;
}
@media only screen and (min-width: 769px) {
  .way__item {
    width: 230px;
  }
}
.way__item__img {
  width: 100%;
  height: 118px;
  margin-bottom: 15px;
}
@media only screen and (min-width: 769px) {
  .way__item__img {
    height: 160px;
    margin-bottom: 20px;
  }
}
@media only screen and (min-width: 769px) {
  .way__item__text {
    display: flex;
    align-items: center;
  }
}
.way__item__text > span {
  color: #6db6d8;
  font-size: 9px;
  margin-bottom: 10px;
  line-height: 1;
  display: block;
}
@media only screen and (min-width: 769px) {
  .way__item__text > span {
    margin-bottom: 0;
    margin-right: 20px;
    font-size: 12px;
  }
}
.way__item__text > p {
  font-size: 14px;
  line-height: 1.6;
}
.way__item__fin {
  position: absolute;
  width: 100%;
  height: 118px;
  background-color: #302d2c;
  top: 0;
}
@media only screen and (min-width: 769px) {
  .way__item__fin {
    height: 160px;
  }
}
.way__item__fin > p {
  color: #fff;
  font-size: 12px;
  text-align: center;
  line-height: 2;
}
.way__item__fin > p > span {
  color: #ffe67c;
}
.way__item .chara__edge, .way__item .section__while > p {
  position: absolute;
  top: 24px;
  right: 0;
  left: 0;
  margin: 0 auto;
  color: unset;
  line-height: 1;
}
@media only screen and (min-width: 769px) {
  .way__item .chara__edge, .way__item .section__while > p {
    top: 38px;
    font-size: 82px;
  }
}

/* ----------------------------------------
	よくあるご質問ページ
---------------------------------------- */
.qa__anchors {
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .qa__anchors {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
  }
}
.qa__anchors .btn__qa__anc:not(:nth-last-child(1)), .qa__anchors .btn__cat:not(:nth-last-child(1)) {
  margin-bottom: 10px;
}

.qa__detail .beauty__qa:nth-child(2n+1) {
  padding: 0;
  background-color: unset;
}
.qa__detail .beauty__qa:nth-child(2n) {
  max-width: 100%;
}
/* ----------------------------------------
	キャンペーン一覧ページ
---------------------------------------- */
.campaign__list {
  margin-bottom: 120px;
}
.campaign__list .title__main, .campaign__list .normal__medical_content > h2 {
  margin-bottom: 80px;
}
.campaign__list .box {
  margin-bottom: 60px;
}
@media only screen and (min-width: 769px) {
  .campaign__list .box {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-bottom: 80px;
  }
}

@media only screen and (min-width: 769px) {
  .sinple.content__item {
    width: 510px;
  }
}
.sinple.content__item .content__item__inner__text {
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media only screen and (min-width: 769px) {
  .sinple.content__item .content__item__inner__text {
    align-items: center;
  }
}
.sinple.content__item .content__item__inner__text__title {
  font-size: 13px;
  letter-spacing: 0.05em;
  margin: 0;
  margin-right: 0;
  widows: 100%;
}
@media only screen and (min-width: 769px) {
  .sinple.content__item .content__item__inner__text__title {
    font-size: 16px;
  }
}
.sinple.content__item .content__item__inner__text .btn__sinple {
  width: -moz-fit-content;
  width: fit-content;
}
.sinple.content__item .content__item__inner__img {
  margin-bottom: 20px;
}
@media only screen and (min-width: 769px) {
  .sinple.content__item .content__item__inner__img {
    height: 287px;
  }
}
@media only screen and (min-width: 769px) {
  .sinple.content__item:not(:nth-child(2n)) {
    margin-bottom: 80px;
    margin-right: 60px;
  }
}
.sinple.content__item:not(:nth-last-child(1)) {
  margin-bottom: 40px;
}
@media only screen and (min-width: 769px) {
  .sinple.content__item:nth-last-child(1) {
    margin-bottom: 0;
  }
}

.campaign__content {
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .campaign__content {
    margin-bottom: 80px;
  }
}

.campaign__btn__box {
  margin-bottom: 120px;
}
@media only screen and (min-width: 769px) {
  .campaign__btn__box {
    margin-bottom: 100px;
  }
}
.campaign__btn__box .btn__border, .campaign__btn__box .coulum__contents > a,
.campaign__btn__box .campaign__content > a {
  max-width: 535px;
  margin: 0 auto;
}

/* ----------------------------------------
	ニュース
---------------------------------------- */
.news__section .title__main, .news__section .normal__medical_content > h2 {
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .news__section .title__main, .news__section .normal__medical_content > h2 {
    margin-bottom: 60px;
  }
}

.column__content {
  margin-bottom: 80px;
  margin-top: 80px;
}
.column__content > p {
  font-size: 13px;
  line-height: 2;
  font-weight: 300;
}
@media only screen and (min-width: 769px) {
  .column__content > p {
    font-size: 14px;
    line-height: 2;
  }
}

/* ----------------------------------------
	よくあるご質問ページ
---------------------------------------- */
.section__contact .title__main, .section__contact .normal__medical_content > h2 {
  margin-bottom: 80px;
}
.section__contact .btn__border, .section__contact .coulum__contents > a,
.section__contact .campaign__content > a {
  max-width: 535px;
  width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
.section__contact .btn__border.send, .section__contact .coulum__contents > a.send,
.section__contact .campaign__content > a.send {
  margin-bottom: 20px;
}

.title__main.gray, .normal__medical_content > h2.gray {
  display: flex;
  gap: 40px;
  align-items: center;
}
.title__main.gray > span, .normal__medical_content > h2.gray > span {
  font-size: 12px;
  color: #676666;
  margin-bottom: 0 !important;
}

.contact__form__greeting {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 60px;
  position: relative;
}
.contact__form__greeting > span {
  font-size: 12px;
  margin-left: 40px;
  color: #676666;
}
@media only screen and (max-width: 559px) {
  .contact__form__greeting > span {
    display: block;
    margin-left: 0;
    margin-top: 24px;
  }
}
.contact__form .border {
  padding: 0;
}
.contact__form .border__inner {
  margin-bottom: 60px;
}
.contact__form__item {
  position: relative;
}
.contact__form__item .gray__box {
  position: absolute;
  right: unset;
  left: 30%;
  top: 38px;
}
.contact__form__item .gray__box > p {
  font-size: 12px;
  color: #676666;
  margin-bottom: 15px;
}
@media only screen and (max-width: 559px) {
  .contact__form__item .gray__box {
    right: 0;
    left: unset;
  }
}
.contact__form__item__ans::after {
  display: none;
}
.contact__form__item:not(:nth-last-child(1)) {
  margin-bottom: 30px;
}
.contact__form__item > p {
  font-size: 13px;
  letter-spacing: 0.05em;
  margin-bottom: 10px;
  font-weight: 400;
  position: relative;
  width: -moz-fit-content;
  width: fit-content;
}
@media only screen and (min-width: 769px) {
  .contact__form__item > p {
    font-size: 14px;
  }
}
@media only screen and (max-width: 559px) {
  .contact__form__item > p {
    width: 100%;
  }
}
.contact__form__item > p::after {
  font-weight: 400;
  content: "*";
  font-weight: 14px;
  line-height: 1;
  color: #497990;
}
.contact__form__item > p .gray {
  font-size: 12px;
  right: -80px;
  color: #676666;
  position: absolute;
  left: unset;
  transform: translateX(100%);
  font-weight: 300;
}
@media only screen and (max-width: 559px) {
  .contact__form__item > p .gray {
    right: 0;
    transform: translateX(0);
  }
}
.contact__form__item__input {
  width: 100%;
  height: 40px;
  background-color: #f7fafa;
  border-radius: 3px;
  border: none;
  padding-left: 20px;
  color: #302d2c;
  box-sizing: border-box;
}
.contact__form__item__input.lg {
  height: 120px;
  vertical-align: text-top;
  padding-top: 14px;
}
.contact__form__item__input::-moz-placeholder {
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.05em;
  color: #6a6a6a;
  opacity: 0.8;
}
.contact__form__item__input::placeholder {
  font-size: 13px;
  font-weight: 300;
  letter-spacing: 0.05em;
  color: #6a6a6a;
  opacity: 0.8;
}
@media only screen and (min-width: 769px) {
  .contact__form__item__input::-moz-placeholder {
    font-size: 14px;
  }
  .contact__form__item__input::placeholder {
    font-size: 14px;
  }
}
.contact__form__item__input.radio {
  width: 12px;
  height: 12px;
  margin: 0;
}
.contact__form__item.des > p {
  margin-bottom: 24px;
}
.contact__form__item.last {
  margin-bottom: 80px;
}
.contact__form__item > input:focus {
  outline: 1px solid #6db6d8;
}
.contact__form__item > textarea:focus {
  outline: 1px solid #6db6d8;
}
.contact__form__item .box {
  display: flex;
  align-items: center;
}
.contact__form__item .box > label {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-left: 10px;
}
.contact__form__item .box:not(:nth-last-child(1)) {
  margin-bottom: 16px;
}
.contact__form__thanks {
  font-size: 13px;
  letter-spacing: 0.05em;
  list-style: 2;
  margin-bottom: 80px;
}

.mwform-checkbox-field.horizontal-item {
  margin-left: 0 !important;
  margin-bottom: 15px;
  display: block;
}
.mwform-checkbox-field.horizontal-item > label .mwform-checkbox-field-text {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-left: 10px;
  font-weight: 300;
  color: #302d2c;
}

.contact__form__item.des {
  font-size: 13px;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #302d2c;
}

/* ----------------------------------------
	サイトマップページ
---------------------------------------- */
.mb__sitemap, .list__sitemap__box > li:not(:nth-last-child(1)), .section__sitemap .list__sitemap__box:not(:nth-last-child(1)), .section__sitemap .box > a {
  margin-bottom: 30px;
}

.section__sitemap {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.section__sitemap .box {
  width: 244px;
  margin: 0 auto;
}
@media only screen and (min-width: 769px) {
  .section__sitemap .box {
    width: 100%;
    display: flex;
    align-items: flex-start;
  }
}
@media only screen and (min-width: 769px) {
  .section__sitemap .box > a {
    margin-right: 80px;
  }
}
.section__sitemap__a {
  font-size: 14px;
  letter-spacing: 0.05em;
  line-height: 1;
  display: block;
}
@media only screen and (min-width: 769px) {
  .section__sitemap .list__sitemap__box:not(:nth-last-child(1)) {
    margin-bottom: 0;
    margin-right: 80px;
  }
}

.list__sitemap__box > li {
  height: -moz-fit-content;
  height: fit-content;
  width: -moz-max-content;
  width: max-content;
}
/* ----------------------------------------
	404ページ
---------------------------------------- */
.section__404 {
  max-width: 535px;
  width: 100%;
  box-sizing: border-box;
  margin: 0 auto;
}
@media only screen and (max-width: 559px) {
  .section__404 {
    padding: 0 20px;
  }
}
.section__404__text {
  text-align: center;
  font-size: 14px;
  letter-spacing: 0.1em;
  line-height: 2;
  margin-bottom: 80px;
  font-weight: 500;
}
.section__404 .btn__border, .section__404 .coulum__contents > a,
.section__404 .campaign__content > a {
  width: 100%;
}

/* ----------------------------------------
	プライバシーページ
---------------------------------------- */
.section__privacy .title__main, .section__privacy .normal__medical_content > h2 {
  margin-bottom: 80px;
}
.section__privacy__greeting {
  margin-bottom: 60px;
  font-size: 13px;
  font-weight: 300;
}

.privacy_box:not(:nth-last-child(1)) {
  margin-bottom: 60px;
}
.privacy_box > h3 {
  font-size: 13px;
  font-weight: 500;
  margin-bottom: 30px;
}
.privacy_box > p {
  font-size: 13px;
  line-height: 2;
}
.privacy_box > p:not(:nth-last-child(1)) {
  margin-bottom: 30px;
}
.privacy_box > ul:not(:nth-last-child(1)) {
  margin-bottom: 30px;
}
.privacy_box > ul > li {
  padding-left: 15px;
  position: relative;
  font-size: 13px;
}
.privacy_box > ul > li::before {
  content: "・";
  position: absolute;
  top: 0;
  left: -4px;
}
.privacy_box > ul > li:not(:nth-last-child(1)) {
  margin-bottom: 10px;
}
.privacy_box.contact > p {
  margin-bottom: 20px;
}
.privacy_box.contact > p > span {
  margin-right: 5px;
}
.privacy_box.contact > p > span::after {
  content: ":";
}
.privacy_box.contact > a {
  display: block;
  font-size: 13px;
}
.privacy_box.contact > a > span {
  margin-right: 5px;
}
.privacy_box.contact > a > span::after {
  content: ":";
}
.privacy_box.contact > a:not(:nth-last-child(1)) {
  margin-bottom: 20px;
}

/* ----------------------------------------
	お役立ち情報ページ
---------------------------------------- */
.column__box {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 0;
}
@media only screen and (min-width: 769px) {
  .column__box {
    flex-direction: row;
    justify-content: space-between;
    align-items: flex-start;
    margin-bottom: 150px;
  }
}
.column__box__col01 {
  margin: 0;
}
@media only screen and (max-width: 559px) {
  .column__box__col01 {
    margin-bottom: 120px;
  }
}

.section__column__cat .title__main, .section__column__cat .normal__medical_content > h2 {
  margin-bottom: 80px;
  font-weight: 500;
  font-size: 22px;
}
.section__column__cat__box {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}
.section__column__cat__box .btn__cat:nth-last-child(2) {
  margin-bottom: 0;
}
@media only screen and (min-width: 769px) {
  .section__column__cat__box .btn__cat {
    max-width: 365px;
  }
}

.section__column__contents .title__main, .section__column__contents .normal__medical_content > h2 {
  font-size: 22px;
  margin-bottom: 80px;
  font-weight: 500;
}
.section__column__contents .content__item:not(:nth-last-child(1)) {
  margin-bottom: 40px;
}

.column__contents__box {
  margin-bottom: 80px;
}
@media only screen and (min-width: 769px) {
  .column__contents__box {
    display: flex;
    flex-wrap: wrap;
    gap: 60px 40px;
  }
}
.column__contents__box .content__item {
  width: 100%;
}
@media only screen and (min-width: 769px) {
  .column__contents__box .content__item {
    max-width: 350px;
    margin-bottom: 0 !important;
  }
}
.column__contents__box .content__item .content__item__inner__text__title {
  font-size: 16px;
  letter-spacing: 0.05em;
  line-height: 1.625;
}

.side__bar {
  width: 100%;
  padding: 0 20px;
  box-sizing: border-box;
}
@media only screen and (min-width: 769px) {
  .side__bar {
    max-width: 290px;
    padding: 0;
  }
}
.side__bar .popular__contents {
  padding: 0 !important;
}
.side__bar .popular__contents:not(:nth-last-child(1)) {
  margin-bottom: 80px !important;
}
.side__bar .popular__contents__title {
  font-size: 18px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1;
  color: #302d2c;
  box-sizing: border-box;
  margin-bottom: 40px;
}
@media only screen and (max-width: 559px) {
  .side__bar .popular__contents__title {
    text-align: center;
  }
}
.side__bar .popular__contents__title > span {
  font-size: 12px;
  color: #6db6d8;
  letter-spacing: 0;
  font-weight: 300;
  display: block;
  margin-top: 10px;
}
@media only screen and (max-width: 559px) {
  .side__bar .popular__contents__title > span {
    margin-top: 18px;
  }
}
.side__bar .border {
  padding: 0;
}

.side__item {
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
  width: 100%;
  box-sizing: border-box;
}
.side__item:not(:nth-last-child(1)) {
  margin-bottom: 30px;
}
.side__item__img {
  width: 120px;
  height: 120px;
  overflow: hidden;
}
.side__item__img > img {
  transition: all 1s;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
  height: 100%;
}
.side__item__text {
  padding-left: 10px;
}
@media only screen and (min-width: 769px) {
  .side__item__text {
    width: 157px;
  }
}
.side__item__text__data {
  font-size: 12px;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-bottom: 10px;
  color: #808080;
}
.side__item__text__title {
  font-size: 13px;
  font-weight: 500;
  letter-spacing: 0.05em;
  line-height: 1.6;
  margin-bottom: 12px;
}
.side__item:hover .side__item__img > img, .side__item:active .side__item__img > img {
  transform: scale(1.2);
}
.side__item:hover .side__item__img::after, .side__item:active .side__item__img::after {
  opacity: 0.2;
}
/*# sourceMappingURL=main.css.map */

/* マーク */
 .f-copy{
 position: relative;
 &:after{
 position: absolute;	
 content: "";
 display: block; 
 width: 100px; 
 height: 100px; 
 background-image: url('/wp-content/uploads/2024/09/security_action_hitotsuboshi-small_color_0.png'); 
 background-size: cover;
 position: absolute; 
 top: 40px;
 right: 30px;
    }
  }
 }

/* ==========================================
   モバイル専用料金表（提案E）完全版
   ========================================== */

/* 426px以上: モバイル専用料金表を非表示 */
@media screen and (min-width: 426px) {
  .mobile-price-table {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    pointer-events: none !important;
  }
}

/* 425px以下: モバイル版が存在する場合のみPC版を非表示 */
@media screen and (max-width: 425px) {
  
  /* モバイル版が存在する場合のみ、PC版料金表を非表示 */
  body.has-mobile-price-table .beauty__dl.mb__120,
  body.has-mobile-price-table div.beauty__dl.mb__120 {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    pointer-events: none !important;
  }
  
  /* モバイル版が存在する場合のみ、PC版注意書きを非表示 */
  body.has-mobile-price-table #pc-price-note {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    left: -9999px !important;
    pointer-events: none !important;
  }
  
  /* モバイル専用料金表を表示 */
  .mobile-price-table {
    margin-bottom: 60px !important;
    padding: 0 20px !important;
    display: block !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    overflow: visible !important;
    position: relative !important;
    left: 0 !important;
    pointer-events: auto !important;
  }
  
  .mobile-price-table__box {
    display: flex !important;
    flex-direction: column !important;
    width: 100% !important;
    overflow: visible !important;
    max-width: 100% !important;
    gap: 20px !important;
  }
  
  .mobile-price-table__section {
    display: block !important;
    width: 100% !important;
    background: #fff !important;
    border: 2px solid #6db6d8 !important;
    border-radius: 10px !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.08) !important;
    overflow: hidden !important;
  }
  
  .mobile-price-table__header {
    display: block !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #fff !important;
    background: linear-gradient(135deg, #6db6d8 0%, #68C1DE 100%) !important;
    padding: 16px 20px !important;
    text-align: center !important;
    letter-spacing: 0.08em !important;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif !important;
    border-bottom: 2px solid #5aa5c7 !important;
    margin: 0 !important;
  }
  
  .mobile-price-table__item {
    display: block !important;
    padding: 24px 20px !important;
    margin: 0 !important;
    font-size: 16px !important;
    font-weight: 600 !important;
    color: #302d2c !important;
    letter-spacing: 0.05em !important;
    line-height: 2.0 !important;
    text-align: center !important;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif !important;
    background: #f8f8f8 !important;
    border-bottom: 1px solid #e0e0e0 !important;
  }
  
  .mobile-price-table__item:last-child {
    border-bottom: none !important;
  }
  
  /* 1つ目のセクション（眉間/目尻/額/小鼻/口角） */
  .mobile-price-table__section:nth-of-type(1) .mobile-price-table__item {
    background: #fff !important;
    padding-bottom: 16px !important;
  }
  
  .mobile-price-table__section:nth-of-type(1) .mobile-price-table__item::after {
    content: "\Aボツラックス ライト（10単位）\A￥8,800\A\Aアラガン社 ライト（10単位）\A￥14,000" !important;
    white-space: pre-line !important;
    display: block !important;
    margin-top: 20px !important;
    padding-top: 20px !important;
    border-top: 2px dashed #e0e0e0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #302d2c !important;
    line-height: 2.0 !important;
    text-align: center !important;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif !important;
  }
  
  /* 2つ目のセクション（両ワキ/両肩） */
  .mobile-price-table__section:nth-of-type(2) .mobile-price-table__item {
    background: #fff !important;
    padding-bottom: 16px !important;
  }
  
  .mobile-price-table__section:nth-of-type(2) .mobile-price-table__item::after {
    content: "\Aボツラックス ライト（20単位）\A￥13,800\A\Aボツラックス スタンダード（40単位）\A￥24,000\A\Aアラガン社 ライト（20単位）\A￥24,000\A\Aアラガン社 スタンダード（40単位）\A￥40,000" !important;
    white-space: pre-line !important;
    display: block !important;
    margin-top: 20px !important;
    padding-top: 20px !important;
    border-top: 2px dashed #e0e0e0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #302d2c !important;
    line-height: 2.0 !important;
    text-align: center !important;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif !important;
  }
  
  /* 3つ目のセクション（エラ） */
  .mobile-price-table__section:nth-of-type(3) .mobile-price-table__item {
    background: #fff !important;
    padding-bottom: 16px !important;
  }
  
  .mobile-price-table__section:nth-of-type(3) .mobile-price-table__item::after {
    content: "\Aボツラックス ライト（50単位）\A￥14,900\A\Aボツラックス スタンダード（100単位）\A￥24,900\A\Aアラガン社 ライト（50単位）\A￥28,000\A\Aアラガン社 スタンダード（100単位）\A￥54,000" !important;
    white-space: pre-line !important;
    display: block !important;
    margin-top: 20px !important;
    padding-top: 20px !important;
    border-top: 2px dashed #e0e0e0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #302d2c !important;
    line-height: 2.0 !important;
    text-align: center !important;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif !important;
  }
  
  /* 4つ目のセクション（追加料金） */
  .mobile-price-table__section:nth-of-type(4) .mobile-price-table__item {
    background: linear-gradient(135deg, #f0f8fb 0%, #e8f4f8 100%) !important;
    padding-bottom: 16px !important;
  }
  
  .mobile-price-table__section:nth-of-type(4) .mobile-price-table__item::after {
    content: "\Aボツラックス\A1単位あたり ￥500\A\Aアラガン社\A1単位あたり ￥1,000" !important;
    white-space: pre-line !important;
    display: block !important;
    margin-top: 20px !important;
    padding-top: 20px !important;
    border-top: 2px dashed #e0e0e0 !important;
    font-size: 14px !important;
    font-weight: 400 !important;
    color: #302d2c !important;
    line-height: 2.0 !important;
    text-align: center !important;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif !important;
  }
  
  /* 注意書きブロック */
  .mobile-price-table__notes {
    font-size: 13px !important;
    line-height: 2.0 !important;
    margin-top: 32px !important;
    padding: 20px !important;
    background: linear-gradient(135deg, #fff9e6 0%, #fffef5 100%) !important;
    border-left: 4px solid #f0ad4e !important;
    border-radius: 6px !important;
    color: #666 !important;
    letter-spacing: 0.05em !important;
    font-family: "Hiragino Kaku Gothic ProN", "Hiragino Sans", "Meiryo", sans-serif !important;
    box-shadow: 0 2px 8px rgba(0, 0, 0, 0.06) !important;
  }
}

/* 320px以下: 超小型スマホ対応 */
@media screen and (max-width: 320px) {
  .mobile-price-table {
    padding: 0 15px !important;
  }
  
  .mobile-price-table__box {
    gap: 16px !important;
  }
  
  .mobile-price-table__header {
    font-size: 14px !important;
    padding: 14px 16px !important;
  }
  
  .mobile-price-table__item {
    padding: 20px 16px !important;
    font-size: 15px !important;
  }
  
  .mobile-price-table__item::after {
    font-size: 13px !important;
  }
  
  .mobile-price-table__notes {
    font-size: 12px !important;
    padding: 16px !important;
  }
}
