@charset "UTF-8";
* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box
}
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, abbr, address, cite, code, del, dfn, em, img, ins, kbd, q, samp, small, strong, sub, sup, var, b, i, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, dialog, figure, footer, header, nav, section, time, mark, audio, video {
  border: 0;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin: 0;
  outline: 0;
  padding: 0
}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section, main {
  display: block
}
html {
  font-size: 62.5%
}
body, table, input, textarea, select, option, h1, h2, h3, h4, h5, h6 {
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale
}
h1, h2, h3, h4, h5, h6 {
  font-weight: 700
}
table, input, textarea, select, option {
  line-height: 1.1
}
ol, ul {
  list-style: none
}
blockquote, q {
  quotes: none
}
:focus {
  outline: 0
}
ins {
  text-decoration: none
}
del {
  text-decoration: line-through
}
img {
  vertical-align: top
}
a {
  color: inherit;
  text-decoration: none;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
a:hover, a:hover img {
  filter: alpha(opacity=80);
  opacity: .8
}
img {
  max-width: 100%
}
.sp-only {
  display: none
}
@media only screen and (max-width: 767px) {
  .pc-only {
    display: none
  }
  .sp-only {
    display: block
  }
}
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.header.header-fix {
  -webkit-transform: translateY(-100px);
  transform: translateY(-100px)
}
@media only screen and (max-width: 1024px) {
  .header.header-fix {
    -webkit-transform: none;
    transform: none
  }
}
.header.is-active .header__toggle {
  background: url(../img/common/icon/ic_toggle-close.svg) no-repeat center/contain
}
.header__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  height: 90px;
  padding: 0 30px;
  background: #fffefc;
  max-height: 90px
}
@media only screen and (max-width: 1599px) {
  .header__wrap {
    height: 6.2539086929vw;
    padding: 0 1.8761726079vw
  }
}
@media only screen and (max-width: 1024px) {
  .header__wrap {
    height: 60px;
    padding: 0 20px
  }
}
.header__top {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  max-width: 220px;
  position: relative;
  z-index: 100
}
@media only screen and (max-width: 1599px) {
  .header__top {
    max-width: 13.7585991245vw
  }
}
@media only screen and (max-width: 1024px) {
  .header__top {
    max-width: 100%
  }
}
.header__logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: auto
}
@media only screen and (max-width: 1024px) {
  .header__logo {
    width: 237px
  }
}
.header__logoImg {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center
}
.header__toggle {
  display: none;
  z-index: 1000
}
@media only screen and (max-width: 1024px) {
  .header__toggle {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    background: url(../img/common/icon/ic_toggle-open.svg) no-repeat center/contain;
    margin-right: -20px;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out
  }
}
.header__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
@media only screen and (max-width: 1024px) {
  .header__nav {
    position: fixed;
    top: 60px;
    left: -100%;
    width: 100%;
    background: #fffdfa;
    height: calc(100vh - 60px);
    z-index: 99;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    opacity: 0;
    display: block;
    overflow: auto
  }
  .header__nav.is-active {
    left: 0;
    opacity: 1;
    visibility: visible
  }
}
@media only screen and (max-width: 767px) {
  .header__nav {
    height: calc(100vh - 125px)
  }
}
@media only screen and (max-width: 1024px) {
  .header__navbar {
    width: 100%;
    overflow: auto
  }
}
.header__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 30px;
  padding: 0 30px
}
@media only screen and (max-width: 1599px) {
  .header__list {
    gap: 1.8761726079vw;
    padding: 0 1.8761726079vw
  }
}
@media only screen and (max-width: 1024px) {
  .header__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start;
    width: 100%;
    gap: 0;
    padding: 20px 20px 60px
  }
}
.header__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 15px 0;
  cursor: pointer
}
.header__item:nth-child(3), .header__item:nth-child(4), .header__item:last-child {
  display: none
}
@media only screen and (max-width: 1599px) {
  .header__item {
    padding: .9380863039vw 0
  }
}
@media only screen and (max-width: 1024px) {
  .header__item {
    position: relative;
    display: block;
    width: 100%;
    border-left: none;
    margin: 0;
    padding: 20px 10px;
    border-bottom: 1px solid #f5eceb
  }
  .header__item:after {
    content: "";
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    right: 10px;
    width: 17px;
    height: 24px;
    border-radius: 50%;
    background: url(../img/common/icon/ic_arrow.svg) no-repeat center/contain;
    -ms-flex-negative: 0;
    flex-shrink: 0
  }
  .header__item.is-sub:after {
    background: url(../img/common/icon/ic_plus.svg) no-repeat center;
    top: 20px;
    -webkit-transform: none;
    transform: none
  }
  .header__item.is-sub.is-active:after {
    background: url(../img/common/icon/ic_minus.svg) no-repeat center
  }
}
@media only screen and (min-width: 1025px) and (min-width: 768px) {
  .header__item:hover .header__link {
    color: #bd4a43
  }
  .header__item:hover .header__link:after {
    width: 100%
  }
}
@media only screen and (min-width: 1025px) {
  .header__item.is-hover .header__sub {
    position: absolute;
    top: 100%;
    left: 0;
    -webkit-transform: translateY(-100%);
    transform: translateY(-100%);
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important;
    width: 100vw;
    background: rgba(255, 253, 250, .97);
    -webkit-box-shadow: 0px 4px 10px rgba(161, 131, 129, .15);
    box-shadow: 0 4px 10px #a1838126;
    -webkit-backdrop-filter: blur(2px);
    backdrop-filter: blur(2px);
    padding: 60px 20px;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    -webkit-transition: all .3s ease-in-out;
    transition: all .3s ease-in-out;
    margin: 0
  }
}
@media only screen and (min-width: 1025px) and (min-width: 768px) {
  .header__item.is-hover:hover > .header__sub {
    opacity: 1;
    visibility: visible;
    pointer-events: initial;
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
.header__link {
  display: block;
  font-family: Shippori Mincho, serif;
  color: #595959;
  font-size: 1.7rem;
  line-height: 1.4117647059;
  letter-spacing: .01em;
  font-weight: 500;
  white-space: nowrap;
  position: relative;
  padding: 18px 0
}
@media only screen and (max-width: 1599px) {
  .header__link {
    font-size: 1.0631644778vw;
    padding: 1.1257035647vw 0
  }
}
.header__link:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translate(-50%);
  width: 0;
  border-bottom: 1px solid #FBA0A7;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
@media only screen and (min-width: 768px) {
  .header__link:hover {
    opacity: 1;
    color: #fba0a7
  }
  .header__link:hover:after {
    width: 100%
  }
}
@media only screen and (max-width: 1599px) {
  .header__link {
    font-size: 1.0631644778vw
  }
}
@media only screen and (max-width: 1024px) {
  .header__link {
    max-width: -webkit-fit-content;
    max-width: -moz-fit-content;
    max-width: fit-content;
    padding: 0;
    font-size: 1.7rem;
    line-height: 1.4;
    color: #807374
  }
}
.header__contact {
  position: relative;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin-right: -30px;
  padding: 0 30px;
  white-space: nowrap;
  line-height: 1
}
@media only screen and (max-width: 1599px) {
  .header__contact {
    margin-right: -1.8761726079vw;
    padding: 0 1.8761726079vw
  }
}
@media only screen and (max-width: 1024px) {
  .header__contact {
    display: none
  }
}
.header__contact:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: 0;
  height: 60px;
  border-left: 1px solid #f2e8e7
}
@media only screen and (max-width: 1599px) {
  .header__contact:after {
    height: 3.7523452158vw
  }
}
.header__contact .number {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-family: "Source Serif 4", serif;
  font-size: 3.3rem;
  line-height: 1;
  text-fill-color: transparent;
  letter-spacing: .03em;
  font-weight: 700;
  background: -webkit-gradient(linear, left top, left bottom, from(#f39c96), to(#f4b3c3));
  background: -webkit-linear-gradient(top, #f39c96 0%, #f4b3c3 100%);
  background: linear-gradient(180deg, #f39c96 0%, #f4b3c3 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text
}
@media only screen and (max-width: 1599px) {
  .header__contact .number {
    font-size: 2.0637898687vw
  }
}
.header__contact .number:before {
  content: "";
  position: relative;
  display: block;
  top: 2px;
  width: 28px;
  height: 24px;
  background: url(../img/common/icon/ic_phone.svg) no-repeat center/contain;
  margin-right: 5px
}
@media only screen and (max-width: 1599px) {
  .header__contact .number:before {
    top: .1250781739vw;
    width: 1.751094434vw;
    height: 1.5009380863vw;
    margin-right: .3126954346vw
  }
}
.header__contact .text {
  font-size: 1.4rem;
  color: #757575;
  margin-top: 5px
}
@media only screen and (max-width: 1599px) {
  .header__contact .text {
    margin-top: .3126954346vw;
    font-size: .875547217vw
  }
}
.header__infoSP {
  display: none
}
@media only screen and (max-width: 1024px) {
  .header__infoSP {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px;
    padding: 40px 20px;
    background: -webkit-linear-gradient(333.43deg, #fcf2ef 16.67%, #fcf5ef 83.33%);
    background: linear-gradient(116.57deg, #fcf2ef 16.67%, #fcf5ef 83.33%)
  }
}
.header__infoSP .btn {
  max-width: 100%;
  padding: 8px
}
.header__infoSP .btn a {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-weight: 700;
  font-size: 2.1rem;
  padding: 20.5px 0
}
.header__infoSP .btn.is-web a:after {
  background: -webkit-linear-gradient(308.05deg, rgba(95, 191, 90, .5) 12.27%, rgba(147, 204, 120, .5) 87.73%);
  background: linear-gradient(141.95deg, rgba(95, 191, 90, .5) 12.27%, rgba(147, 204, 120, .5) 87.73%)
}
.header__infoSP .btn.is-web a span {
  background: -webkit-linear-gradient(308.05deg, #5fbf5a 12.27%, #93cc78 87.73%);
  background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px
}
.header__infoSP .btn.is-web a span:before {
  content: "";
  display: block;
  width: 25px;
  height: 20px;
  background: url(../img/common/icon/ic_calendar.svg) no-repeat center/contain
}
.header__infoSP .btn.is-mail a span {
  background: -webkit-gradient(linear, left top, left bottom, from(#f39c96), to(#f4b3c3));
  background: -webkit-linear-gradient(top, #f39c96 0%, #f4b3c3 100%);
  background: linear-gradient(180deg, #f39c96 0%, #f4b3c3 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px
}
.header__infoSP .btn.is-mail a span:before {
  content: "";
  display: block;
  width: 30px;
  height: 20px;
  background: url(../img/common/icon/ic_mail.svg) no-repeat center/contain
}
.header__phone {
  text-align: center
}
.header__phone .number {
  display: block;
  font-family: "Source Serif 4", serif;
  font-size: 4.5rem;
  line-height: 1;
  letter-spacing: .04em;
  font-weight: 400;
  color: #595959;
  padding: 10px 0
}
.header__phone .number span {
  font-size: 3rem
}
.header__phone .text {
  font-size: 1.5rem;
  font-weight: 300;
  color: #757575;
  letter-spacing: .03em
}
.header__gr {
  padding-right: 60px;
  border-right: 1px solid #f2e8e7;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content
}
@media only screen and (max-width: 1024px) {
  .header__gr {
    display: none
  }
}
.header__gr .btn {
  margin: 30px 0 23px
}
.header__sub {
  display: none;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
@media only screen and (min-width: 1025px) {
  .header__sub:not(.is-hover) {
    display: none !important
  }
}
@media only screen and (max-width: 1024px) {
  .header__sub {
    margin-top: 20px
  }
  .header__sub .container {
    padding: 0
  }
}
.header__subWrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start
}
.header__sub ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 0 30px;
  padding-left: 60px;
  margin-top: -15px
}
@media only screen and (max-width: 1024px) {
  .header__sub ul {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 15px;
    padding-left: 20px;
    margin-top: 0
  }
}
.header__sub ul li {
  width: calc((100% - 60px) / 3)
}
@media only screen and (max-width: 767px) {
  .header__sub ul li {
    width: 100%
  }
}
.header__sub ul li a {
  font-family: Shippori Mincho, serif;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-size: 1.7rem;
  line-height: 1.4;
  letter-spacing: .01em;
  font-weight: 500;
  color: #807374;
  padding: 15px 10px
}
@media only screen and (max-width: 1024px) {
  .header__sub ul li a {
    padding: 0
  }
}
@media only screen and (min-width: 768px) {
  .header__sub ul li a:hover {
    color: #fba0a7;
    opacity: 1
  }
  .header__sub ul li a:hover span:before {
    width: 17px;
    margin-right: 10px
  }
  .header__sub ul li a:hover:after {
    width: 0
  }
}
.header__sub ul li a span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
.header__sub ul li a span:before {
  content: "";
  display: block;
  width: 0;
  height: 24px;
  background: url(../img/common/icon/ic_arrow.svg) no-repeat center/contain;
  -webkit-transition: all .3s cubic-bezier(.18, .06, .23, 1);
  transition: all .3s cubic-bezier(.18, .06, .23, 1);
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media only screen and (max-width: 1024px) {
  .header__sub ul li a span:before {
    display: none
  }
}
.header__sub ul li a:after {
  content: "";
  display: block;
  width: 17px;
  height: 24px;
  background: url(../img/common/icon/ic_arrow.svg) no-repeat center/contain;
  -webkit-transition: all .3s cubic-bezier(.18, .06, .23, 1);
  transition: all .3s cubic-bezier(.18, .06, .23, 1);
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media only screen and (max-width: 1024px) {
  .header__sub ul li a:after {
    display: none
  }
}
.header__textSP {
  display: none
}
@media only screen and (max-width: 1024px) {
  .header__textSP {
    display: inline-block
  }
  .header__textSP span {
    font-size: 1.4rem;
    margin-left: 5px
  }
}
@media only screen and (max-width: 1024px) {
  .header__textPC {
    display: none
  }
}
.footer {
  position: relative;
  background: #fffdfa
}
.footer__nav {
  padding: 90px 0 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 90px
}
@media only screen and (max-width: 1024px) {
  .footer__nav {
    gap: 60px;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
}
@media only screen and (max-width: 767px) {
  .footer__nav {
    padding: 45px 0;
    gap: 30px
  }
}
.footer__list {
  width: 25%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 30px
}
@media only screen and (max-width: 1024px) {
  .footer__list {
    width: calc(50% - 30px)
  }
}
@media only screen and (max-width: 767px) {
  .footer__list {
    width: 100%
  }
}
.footer__list:nth-child(1) .footer__item:last-child {
 /* margin-top: auto*/
}
.footer__list:nth-child(4) .footer__item:nth-child(2) {
  /*margin-top: auto*/
}
.footer__link {
  display: block;
  color: #807374;
  font-size: 1.7rem;
  line-height: 1.3;
  letter-spacing: .06em;
  font-weight: 500;
  padding-bottom: 10px;
  border-bottom: 1px solid #f2e8e7;
  position: relative
}
@media only screen and (min-width: 768px) {
  .footer__link:hover {
    opacity: 1
  }
  .footer__link:hover:after {
    width: 100%
  }
}
.footer__link:after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 1px;
  background: -webkit-linear-gradient(135deg, #f8cebd 0%, #f89ca8 95%);
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.footer__link span {
  font-size: 1.4rem
}
.footer__sub {
  margin-top: 20px
}
.footer__sub li {
  line-height: 1
}
.footer__sub li:not(:last-child) {
  margin-bottom: 15px
}
.footer__sub li a {
  display: block;
  position: relative;
  font-size: 1.4rem;
  line-height: 1.3;
  letter-spacing: .03em;
  color: #807374;
  padding-bottom: 5px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content
}
@media only screen and (min-width: 768px) {
  .footer__sub li a:hover {
    opacity: 1
  }
  .footer__sub li a:hover:after {
    width: 100%
  }
}
.footer__sub li a:after {
  content: "";
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 0;
  height: 1px;
  background: -webkit-linear-gradient(135deg, #f8cebd 0%, #f89ca8 95%);
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.footer__bottom {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 60px 0 45px;
  border-top: 1px solid #f2e8e7
}
@media only screen and (max-width: 767px) {
  .footer__bottom {
    border-top: 0;
    padding: 0 0 45px;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
}
.footer__info {
  width: 210px;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media only screen and (max-width: 767px) {
  .footer__info {
    width: 100%;
    text-align: center
  }
}
.footer__logo {
  width: 100%
}
@media only screen and (max-width: 767px) {
  .footer__logo {
    max-width: 360px;
    margin: 0 auto
  }
}
.footer__logo img {
  width: 294px
}
@media only screen and (max-width: 767px) {
  .footer__gr {
    margin-top: 40px
  }
}
.footer__address {
  font-size: 1.2rem;
  line-height: 1;
  letter-spacing: .01em;
  color: #807374;
  white-space: nowrap;
  margin: 15px 0 0
}
@media only screen and (max-width: 1024px) {
  .footer__address {
    white-space: normal
  }
}
.footer__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: end;
  -ms-flex-pack: end;
  justify-content: flex-end;
  gap: 15px
}
@media only screen and (max-width: 767px) {
  .footer__btn {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}
.footer__booking {
  display: block;
  position: relative;
  border-radius: 3px;
  overflow: hidden
}
@media only screen and (min-width: 768px) {
  .footer__booking:hover img, .footer__booking:hover img.hover {
    opacity: 1
  }
}
.footer__booking img {
  height: 75px
}
@media only screen and (max-width: 1024px) {
  .footer__booking img {
    height: 50px
  }
}
.footer__booking img.hover {
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.footer__copyright {
  font-family: Cormorant Garamond, serif;
  font-size: 1.4rem;
  line-height: 1;
  letter-spacing: .01em;
  color: #807374;
  font-weight: 700;
  text-align: right;
  margin-top: 15px
}
@media only screen and (max-width: 767px) {
  .footer__copyright {
    text-align: center
  }
}
.breadcrumb {
  background: #FFFDFA;
  border-bottom: 1px solid #F2E8E7
}
.breadcrumb ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
  line-height: 1;
  min-height: 45px
}
@media only screen and (max-width: 767px) {
  .breadcrumb ul {
    gap: 10px;
    padding: 10px 0
  }
}
.breadcrumb ul a, .breadcrumb ul span {
  font-family: Shippori Mincho, serif;
  font-size: 1.5rem;
  line-height: 1.4666666667;
  letter-spacing: .01em;
  font-weight: 500;
  color: #807374
}
.breadcrumb ul a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px
}
@media only screen and (max-width: 767px) {
  .breadcrumb ul a {
    gap: 10px
  }
}
.breadcrumb ul a:after {
  content: "/";
  display: block
}
body {
  position: relative;
  font-family: Noto Sans JP, sans-serif;
  overflow-x: hidden;
  font-size: 1.7rem;
  line-height: 2.1;
  color: #303030;
  letter-spacing: .05em;
  background: url(/assets/img/common/bg_main.svg) no-repeat center/cover
}
@media only screen and (max-width: 767px) {
  body {
    min-width: 320px;
    font-size: 1.5rem;
    padding-bottom: 55px
  }
}
main {
  padding-top: 90px;
  background: #FFFDFA
}
@media only screen and (max-width: 1599px) {
  main {
    padding-top: 5.6285178236vw
  }
}
@media only screen and (max-width: 1024px) {
  main {
    padding-top: 60px
  }
}
main main:not(.menstrual-disorders__side) {
  overflow: hidden
}
.container {
  max-width: 1180px;
  padding: 0 20px;
  margin: 0 auto
}

.mv{
    
    overflow-x: hidden;
}


.mv {
  padding-left: 30px;
  position: relative
}
@media only screen and (max-width: 767px) {
  .mv {
    padding: 0 0 20px 20px
  }
}
.mv__content {
  position: absolute;
  bottom: 0;
  left: 0;
  padding: 60px 90px;
  z-index: 1
}
@media only screen and (max-width: 767px) {
  .mv__content {
    left: auto;
    right: 20px;
    padding: 50px 20px;
       bottom: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: end;
    -ms-flex-align: end;
    align-items: flex-end
  }
}
.mv__title {
  font-family: Shippori Mincho, serif;
  font-size: 4.7rem;
  letter-spacing: .09em;
  font-weight: 500;
  color: #fffefc;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px;
  white-space: nowrap
}
@media only screen and (max-width: 1024px) {
  .mv__title {
    font-size: 4.2rem
  }
}
@media only screen and (max-width: 767px) {
  .mv__title {
    font-size: 3.3rem;
    position: relative;
    right: -40px
  }
}
@media only screen and (max-width: 375px) {
  .mv__title {
    /*font-size: 8.8vw;*/
        font-size: 4.8vw;
  }
}
.mv__title span {
  display: block
}
.mv__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 200px;
  gap: 15px;
  margin-bottom: 40px
}
@media only screen and (max-width: 767px) {
  .mv__nav {
    width: 112px;
    margin-bottom: 20px
  }
}
.mv__navCount, .mv__navTotal {
  font-family: "Source Serif 4", serif;
  font-size: 2.4rem;
  line-height: 1;
  letter-spacing: .01em;
  font-weight: 500;
  color: #fffefc;
  font-style: italic
}
@media only screen and (max-width: 767px) {
  .mv__navCount, .mv__navTotal {
    font-size: 1.5rem
  }
}
.mv__navSpace {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
.mv__navSpace:before {
  content: "";
  display: block;
  width: 100%;
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #fffefc), color-stop(75%, rgba(255, 254, 252, .5)), to(rgba(255, 254, 252, 0)));
  background: -webkit-linear-gradient(left, #fffefc 50%, rgba(255, 254, 252, .5) 75%, rgba(255, 254, 252, 0) 100%);
  background: linear-gradient(90deg, #fffefc 50%, rgba(255, 254, 252, .5) 75%, rgba(255, 254, 252, 0) 100%);
  opacity: .6;
  height: 1px
}
.mv__from {
  position: absolute;
  top: 30px;
  left: 60px;
  z-index: 1
}
.mv__from:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -webkit-filter: drop-shadow(0px 5px 10px #fad4d5);
  filter: drop-shadow(0px 5px 10px #fad4d5);
  z-index: -1
}
@media only screen and (max-width: 767px) {
  .mv__from {
    width: 150px;
    height: 150px;
    padding: 0;
    left: 10px;
    top: 10px
  }
}
.mv .kv {
  position: relative;
  height: calc(100vh - 100px);
  overflow: hidden;
  background: #f7f5f2;
  border-radius: 10px 0 0 10px
}
.mv .kv__img {
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  overflow: hidden;
  z-index: 1
}
.mv .kv__img img {
  display: block;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.mv .img-reel {
  position: absolute;
  top: -62.5px;
  z-index: 1;
  width: 100%;
  height: calc(100% + 125px);
  margin: auto;
  padding: 0;
  font-size: 0;
  line-height: 0;
  list-style: none;
  overflow: hidden
}
.mv .img-reel__item {
  position: absolute;
  margin: 0;
  padding: 0;
  font-size: 0;
  line-height: 0;
  top: 0;
  height: 100%;
  width: 100%;
  background-position: 0 center;
  -webkit-animation-duration: 8s;
  animation-duration: 8s;
  -webkit-animation-delay: 0s;
  animation-delay: 0s;
  -webkit-animation-timing-function: ease-out;
  animation-timing-function: ease-out;
  -webkit-animation-fill-mode: forwards;
  animation-fill-mode: forwards;
  -webkit-animation-iteration-count: 1;
  animation-iteration-count: 1;
  opacity: 0;
  z-index: 1
}
.mv .img-reel__item-inner {
  height: 100%;
  width: 100%
}
.mv .img-reel__item-bg.img {
  display: none
}
.mv .img-reel__item.current {
  z-index: 2;
  -webkit-animation-name: showImage;
  animation-name: showImage
}
.mv .img-reel__item.prev {
  z-index: 2;
  -webkit-animation-name: hideImage;
  animation-name: hideImage
}
.mv .img-reel__item-inner {
  position: absolute;
  left: -50px;
  top: 0;
  width: calc(100% + 100px);
  height: 100%;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translateZ(0);
  -webkit-transform-origin: center center;
  transform-origin: center center;
  -webkit-animation: inherit;
  animation: inherit;
  -webkit-animation-timing-function: linear;
  animation-timing-function: linear
}
.mv .current .img-reel__item-inner {
  -webkit-animation-name: showTranslateBG;
  animation-name: showTranslateBG
}
.mv .prev .img-reel__item-inner {
  -webkit-animation-name: hideTranslateBG;
  animation-name: hideTranslateBG
}
.mv .msie .img-reel {
  -webkit-transform: none !important;
  transform: none !important
}
@-webkit-keyframes showImage {
  0% {
    opacity: 0
  }
  20% {
    opacity: 1
  }
  to {
    opacity: 1
  }
}
@keyframes showImage {
  0% {
    opacity: 0
  }
  20% {
    opacity: 1
  }
  to {
    opacity: 1
  }
}
@-webkit-keyframes hideImage {
  0% {
    opacity: 1
  }
  20% {
    opacity: 0
  }
  to {
    opacity: 0
  }
}
@keyframes hideImage {
  0% {
    opacity: 1
  }
  20% {
    opacity: 0
  }
  to {
    opacity: 0
  }
}
@-webkit-keyframes showTranslateBG {
  0% {
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0)
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translateZ(0)
  }
}
@keyframes showTranslateBG {
  0% {
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0)
  }
  to {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translateZ(0)
  }
}
@-webkit-keyframes hideTranslateBG {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translateZ(0)
  }
  to {
    -webkit-transform: translate3d(0, -50px, 0);
    transform: translate3d(0, -50px, 0)
  }
}
@keyframes hideTranslateBG {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translateZ(0)
  }
  to {
    -webkit-transform: translate3d(0, -50px, 0);
    transform: translate3d(0, -50px, 0)
  }
}
a[href^="tel:"] {
  pointer-events: none
}
@media only screen and (max-width: 1024px) {
  a[href^="tel:"] {
    pointer-events: inherit
  }
}
@-webkit-keyframes jstxt {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px)
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
@keyframes jstxt {
  0% {
    -webkit-transform: translateY(50px);
    transform: translateY(50px)
  }
  to {
    -webkit-transform: translateY(0);
    transform: translateY(0)
  }
}
.content {
  padding: 90px 0 120px;
  background: #FFFDFA
}
@media only screen and (max-width: 767px) {
  .content {
    padding: 45px 0 60px
  }
}
.btn {
  background: #faf6f3;
  border: 1px solid #f2e8e7;
  -webkit-box-shadow: -3px -3px 3px rgba(255, 255, 255, .25), 3px 3px 3px rgba(161, 131, 129, .15);
  box-shadow: -3px -3px 3px #ffffff40, 3px 3px 3px #a1838126;
  border-radius: 165px;
  padding: 7px;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
@media only screen and (min-width: 768px) {
  .btn:hover {
    background: -webkit-gradient(linear, left top, left bottom, from(#f39c96), to(#f4b3c3));
    background: -webkit-linear-gradient(top, #f39c96 0%, #f4b3c3 100%);
    background: linear-gradient(180deg, #f39c96 0%, #f4b3c3 100%)
  }
  .btn:hover a {
    opacity: 1;
    color: #fffefc
  }
  .btn:hover a:before {
    background: -webkit-gradient(linear, left top, left bottom, from(#f39c96), to(#f4b3c3));
    background: -webkit-linear-gradient(top, #f39c96 0%, #f4b3c3 100%);
    background: linear-gradient(180deg, #f39c96 0%, #f4b3c3 100%)
  }
  .btn:hover a:after {
    background: rgba(255, 254, 252, .75)
  }
}
.btn a {
  display: block;
  font-family: Shippori Mincho, serif;
  font-size: 1.8rem;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1;
  color: #807374;
  padding: 16px 33px;
  white-space: nowrap;
  border-radius: 200px;
  position: relative;
  z-index: 1
}
.btn a span {
  position: relative;
  z-index: 2;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.btn a:after {
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  border-radius: 200px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(243, 156, 150, .75)), to(rgba(244, 179, 195, .75)));
  background: -webkit-linear-gradient(top, rgba(243, 156, 150, .75) 0%, rgba(244, 179, 195, .75) 100%);
  background: linear-gradient(180deg, rgba(243, 156, 150, .75) 0%, rgba(244, 179, 195, .75) 100%);
  z-index: -1;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.btn a:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  border-radius: 200px;
  background: #faf6f3;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.link {
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content
}
.link a {
  position: relative;
  display: block;
  font-family: Shippori Mincho, serif;
  font-size: 1.8rem;
  line-height: 1.3;
  letter-spacing: .03em;
  color: #4d4d4d;
  padding-right: 35px
}
@media only screen and (min-width: 768px) {
  .link a:hover {
    opacity: 1;
    color: #80737480
  }
  .link a:hover:after {
    opacity: 0
  }
  .link a:hover:before {
    -webkit-transform: translateY(-50%) scale(1.1);
    transform: translateY(-50%) scale(1.1)
  }
}
.link a:before {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon/ic_arrow-circle.svg) no-repeat center/contain;
  -webkit-transition: .3s cubic-bezier(.4, .4, 0, 1);
  transition: .3s cubic-bezier(.4, .4, 0, 1)
}
.link a:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon/ic_arrow-circle-gradient.svg) no-repeat center/contain;
  -webkit-transition: .3s cubic-bezier(.4, .4, 0, 1);
  transition: .3s cubic-bezier(.4, .4, 0, 1)
}
.titleMain {
  line-height: 1
}
.titleMain__jp {
  font-family: Shippori Mincho, serif;
  font-size: 4.2rem;
  line-height: 1.3;
  font-weight: 500;
  letter-spacing: .03em;
  color: #807374
}
.titleMain__en {
  display: block;
  margin-top: 10px;
  font-family: Cormorant Garamond, serif;
  font-size: 1.8rem;
  line-height: 1.3;
  letter-spacing: .01em;
  text-transform: capitalize;
  background: -webkit-linear-gradient(135deg, #f8cebd 0%, #f89ca8 95%);
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: trans
}
.titleMain.is-child {
  margin-bottom: 50px
}
@media only screen and (max-width: 767px) {
  .titleMain.is-child {
    margin-bottom: 20px
  }
}
.titleMain.is-child .titleMain__jp {
  font-size: 3.3rem
}
@media only screen and (max-width: 767px) {
  .titleMain.is-child .titleMain__jp {
    font-size: 2.1rem
  }
}
.titleMain.is-child .titleMain__en {
  font-size: 1.4rem
}
@media only screen and (max-width: 767px) {
  .titleMain.is-child .titleMain__en {
    margin-top: 5px
  }
}
.title01 {
  font-family: Shippori Mincho, serif;
  font-size: 3.9rem;
  line-height: 1.45;
  letter-spacing: .03em;
  font-weight: 400;
  color: #807374;
  padding-bottom: 20px;
  margin-bottom: 60px;
  position: relative
}
@media only screen and (max-width: 767px) {
  .title01 {
    font-size: 2.4rem;
    margin-bottom: 30px;
    padding-bottom: 15px
  }
}
.title01:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 40px;
  height: 1px;
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%)
}
.title01.is-center {
  text-align: center
}
.title01.is-center:after {
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translate(-50%)
}
.title02 {
  font-family: Shippori Mincho, serif;
  font-size: 3.3rem;
  line-height: 1.65;
  letter-spacing: .09em;
  color: #595959;
  margin-bottom: 60px;
  font-weight: 400
}
@media only screen and (max-width: 767px) {
  .title02 {
    font-size: 2.4rem;
    margin-bottom: 30px
  }
}
.title03 {
  font-family: Shippori Mincho, serif;
  font-size: 3rem;
  line-height: 1.45;
  letter-spacing: .03em;
  color: #807374;
  text-align: center;
  margin-bottom: 45px
}
@media only screen and (max-width: 767px) {
  .title03 {
    font-size: 2.6rem
  }
}
.title03 span {
  font-family: Cormorant Garamond, serif;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  font-size: 2.1rem;
  letter-spacing: -.03em;
  background: -webkit-linear-gradient(135deg, #f8cebd 0%, #f89ca8 95%);
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  text-transform: uppercase;
  margin-top: 5px
}
.title03 span:before, .title03 span:after {
  content: "";
  display: block;
  width: 20px;
  height: 23px;
  background: url(../img/common/icon/ic_star.svg) no-repeat center/contain
}
.title04 {
  background: -webkit-linear-gradient(333.43deg, #FCF2EF 16.67%, #FCF5EF 83.33%);
  background: linear-gradient(116.57deg, #FCF2EF 16.67%, #FCF5EF 83.33%);
  padding: 6px 25px;
  font-family: Shippori Mincho, serif;
  font-size: 3rem;
  line-height: 1.6;
  letter-spacing: .03em;
  color: #807374;
  font-weight: 400;
  position: relative;
  margin-bottom: 45px
}
@media only screen and (max-width: 767px) {
  .title04 {
    font-size: 2.4rem;
    margin-bottom: 30px;
    padding: 6px 20px
  }
}
.title04:before {
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2px;
  height: 75%;
  background: -webkit-linear-gradient(136.26deg, #FFD7CF 11.68%, #FAC5C9 63.87%);
  background: linear-gradient(313.74deg, #FFD7CF 11.68%, #FAC5C9 63.87%)
}
@-webkit-keyframes lineAnime {
  0% {
    -webkit-transform: translateX(-101%);
    transform: translate(-101%)
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translate(0)
  }
  to {
    -webkit-transform: translateX(101%);
    transform: translate(101%)
  }
}
@keyframes lineAnime {
  0% {
    -webkit-transform: translateX(-101%);
    transform: translate(-101%)
  }
  50% {
    -webkit-transform: translateX(0);
    transform: translate(0)
  }
  to {
    -webkit-transform: translateX(101%);
    transform: translate(101%)
  }
}
.icon {
  display: block;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.icon:before {
  content: "";
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  background: url(../img/common/icon/ic_arrow-circle-gradient.svg) no-repeat center/contain
}
.icon.w-20 {
  width: 20px;
  height: 20px
}
.form__box {
  -webkit-box-shadow: 0px 3px 15px #F6FBFF;
  box-shadow: 0 3px 15px #f6fbff;
  border-radius: 10px;
  background: #fff;
  padding: 90px 20px
}
@media only screen and (max-width: 767px) {
  .form__box {
    padding: 40px 20px
  }
}
.form__box + .form__box {
  margin-top: 30px
}
.form__wrap {
  max-width: 840px;
  margin: 0 auto
}
.form__title {
  font-size: 2.4rem;
  text-align: center;
  line-height: 1.4;
  letter-spacing: .04em;
  font-weight: 700;
  color: #383838;
  padding-bottom: 20px;
  border-bottom: 1px solid #E9F0F8;
  margin-bottom: 60px
}
@media only screen and (max-width: 767px) {
  .form__title {
    margin-bottom: 30px
  }
}
.form__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start
}
@media only screen and (max-width: 767px) {
  .form__item {
    display: block
  }
}
.form__item + .form__item {
  margin-top: 90px
}
@media only screen and (max-width: 767px) {
  .form__item + .form__item {
    margin-top: 45px
  }
}
.form__item.is-required .form__label:after {
  content: "\5fc5\9808";
  background: #C60010
}
.form__label {
  width: 330px;
  font-size: 1.7rem;
  line-height: 1.9;
  letter-spacing: .015em;
  font-weight: 700;
  padding: 5px 15px 5px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  color: #222
}
@media only screen and (max-width: 767px) {
  .form__label {
    width: 100%;
    margin-bottom: 10px;
    padding: 5px 0;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
}
.form__label:after {
  content: "\4efb\610f";
  display: block;
  width: 50px;
  font-size: 1.6rem;
  line-height: 1.5;
  padding: 2px 0 4px;
  letter-spacing: .04em;
  font-weight: 700;
  color: #fff;
  background: #373737;
  text-align: center;
  border-radius: 5px;
  position: relative;
  top: 1px
}
@media only screen and (max-width: 767px) {
  .form__label:after {
    top: 0
  }
}
.form__content {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
.form input, .form textarea {
  padding: 0 15px;
  background: #fff;
  border: 1px solid #E6E6E6;
  border-radius: 5px;
  font-size: 1.8rem;
  line-height: 1.75;
  letter-spacing: .1em;
  font-weight: 400;
  width: calc(100% - 30px);
  color: #222;
  outline: none;
  font-family: Noto Sans JP, sans-serif
}
.form input::-webkit-input-placeholder, .form textarea::-webkit-input-placeholder {
  color: #888
}
.form input::-moz-placeholder, .form textarea::-moz-placeholder {
  color: #888
}
.form input:-ms-input-placeholder, .form textarea:-ms-input-placeholder {
  color: #888
}
.form input::-ms-input-placeholder, .form textarea::-ms-input-placeholder {
  color: #888
}
.form input::placeholder, .form textarea::placeholder {
  color: #888
}
@media only screen and (max-width: 767px) {
  .form input, .form textarea {
    font-size: 1.6rem
  }
}
.form input {
  min-height: 38px
}
.form textarea {
  min-height: 188px;
  padding: 10px 15px
}
.form__note {
  font-size: 1.7rem;
  line-height: 1.9;
  letter-spacing: .015em;
  font-weight: 400;
  color: #888;
  margin-top: 10px
}
@media only screen and (max-width: 767px) {
  .form__note {
    font-size: 1.5rem
  }
}
.form__policy {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  margin-top: 60px;
  padding-top: 60px;
  border-top: 1px solid #E6E6E6;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content
}
@media only screen and (max-width: 767px) {
  .form__policy {
    display: block;
    margin-top: 30px;
    padding-top: 30px
  }
}
.form__policy:before {
  content: "\5fc5\9808";
  display: block;
  width: 50px;
  font-size: 1.6rem;
  line-height: 1.5;
  padding: 2px 0 4px;
  letter-spacing: .015em;
  font-weight: 700;
  color: #fff;
  background: #C60010;
  border-radius: 5px;
  text-align: center;
  margin-right: 15px;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media only screen and (max-width: 767px) {
  .form__policy:before {
    margin-bottom: 10px
  }
}
.form__policy .form__checkbox {
  display: block;
  position: relative;
  top: 0;
  padding-left: 35px
}
.form__policy .form__checkbox input {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 1
}
.form__policy .form__checkbox a {
  color: #c60010;
  text-decoration: underline;
  text-underline-offset: 3px
}
.form__checkbox {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.8rem;
  line-height: 1.75;
  letter-spacing: .1em;
  font-weight: 400;
  color: #222
}
.form__checkbox input {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  height: 20px;
  width: 20px;
  border: 1px solid #CCCCCC;
  border-radius: 3px;
  min-height: auto;
  margin: 6px 15px 0 0;
  padding: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.form__checkbox input:checked {
  background: url(/assets/img/common/icon/ic_checked.svg) no-repeat center;
  background-size: 20px 20px;
  border-color: #222
}
.form .btn {
  min-width: 210px;
  height: 65px;
  margin: 60px auto 0
}
@media only screen and (max-width: 767px) {
  .form .btn {
    margin-top: 30px
  }
}
.no-post {
  padding: 20px 0
}
.pagenavi {
  margin-top: 90px
}
@media only screen and (max-width: 767px) {
  .pagenavi {
    margin-top: 45px
  }
}
.pagenavi .wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 45px
}
@media only screen and (max-width: 767px) {
  .pagenavi .wp-pagenavi {
    gap: 15px
  }
}
.pagenavi .wp-pagenavi a, .pagenavi .wp-pagenavi span {
  font-family: "Source Serif 4", serif;
  font-size: 2.7rem;
  line-height: 1.1851851852;
  color: #807374;
  font-weight: 300;
  letter-spacing: 0
}
@media only screen and (max-width: 767px) {
  .pagenavi .wp-pagenavi a, .pagenavi .wp-pagenavi span {
    font-size: 1.6rem
  }
}
@media only screen and (min-width: 768px) {
  .pagenavi .wp-pagenavi a:hover {
    opacity: 1
  }
}
.pagenavi .wp-pagenavi span {
  color: #494e67
}
.pagenavi .wp-pagenavi .nextpostslink, .pagenavi .wp-pagenavi .previouspostslink {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  background: url(../img/common/icon/ic_arrow-pagi.svg) no-repeat center/contain;
  margin: 0;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media only screen and (max-width: 767px) {
  .pagenavi .wp-pagenavi .nextpostslink, .pagenavi .wp-pagenavi .previouspostslink {
    width: 30px;
    height: 30px
  }
}
.pagenavi .wp-pagenavi .nextpostslink {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}
.pagenavi .wp-pagenavi .pages {
  width: 90px;
  font-size: 1.8rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: .12em;
  background: url(../img/common/icon/ic_pages-frame.svg) no-repeat center/contain;
  border-radius: 100px;
  padding: 11px 0;
  text-align: center
}
@media only screen and (max-width: 767px) {
  .pagenavi .wp-pagenavi .pages {
    font-size: 1.4rem;
    padding: 7px 0;
    width: 60px
  }
}
.pagenavi .wp-pagenavi .back-to-top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  font-family: Shippori Mincho, serif;
  font-size: 1.8rem;
  line-height: 1.3;
  letter-spacing: .06em;
  font-weight: 500;
  color: #807374;
  position: relative;
  height: auto;
  text-align: center;
  margin: -30px auto 0;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  padding-bottom: 10px;
  border-bottom: 1px solid #F2E8E7
}
@media only screen and (max-width: 767px) {
  .pagenavi .wp-pagenavi .back-to-top {
    margin-top: 0
  }
}
.pagenavi .wp-pagenavi .back-to-top:after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon/ic_arrow-circle-gradient.svg) no-repeat center/contain
}
.imgtext {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  padding: 90px 0
}
@media only screen and (max-width: 767px) {
  .imgtext {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    padding: 40px 0
  }
}
.imgtext:nth-of-type(odd) .imgtext__content {
  margin-right: 90px
}
@media only screen and (max-width: 1024px) {
  .imgtext:nth-of-type(odd) .imgtext__content {
    margin-right: 40px
  }
}
.imgtext:nth-of-type(even) .imgtext__content {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2;
  margin-left: 90px
}
@media only screen and (max-width: 1024px) {
  .imgtext:nth-of-type(even) .imgtext__content {
    margin-left: 40px
  }
}
.imgtext:nth-of-type(even) .imgtext__img {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1
}
.imgtext:nth-of-type(even) .imgtext__img:after {
  background: -webkit-gradient(linear, left top, right top, from(#80E5FF), to(#A6CAE0));
  background: -webkit-linear-gradient(left, #80E5FF 0%, #A6CAE0 100%);
  background: linear-gradient(90deg, #80E5FF 0%, #A6CAE0 100%)
}
.imgtext:after {
  content: "";
  position: absolute;
  top: 0;
  left: calc(-.5*(100vw - 1140px));
  width: 100vw;
  height: 100%;
  z-index: -1
}
@media only screen and (max-width: 1180px) {
  .imgtext:after {
    left: -20px
  }
}
.imgtext__img, .imgtext__content {
  width: 50%
}
@media only screen and (max-width: 767px) {
  .imgtext__img, .imgtext__content {
    width: 100%
  }
}
.imgtext__content {
  max-width: 510px
}
@media only screen and (max-width: 767px) {
  .imgtext__content {
    -webkit-box-ordinal-group: 3 !important;
    -ms-flex-order: 2 !important;
    order: 2 !important;
    margin: 20px 0 0 !important;
    max-width: 100%
  }
}
.imgtext__img {
  position: relative;
  padding: 5px 0 0 5px;
  margin: 11px 0
}
@media only screen and (max-width: 767px) {
  .imgtext__img {
    -webkit-box-ordinal-group: 2 !important;
    -ms-flex-order: 1 !important;
    order: 1 !important
  }
}
.imgtext__img img {
  border-radius: 10px;
  position: relative;
  z-index: 1
}
.imgtext__img:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  height: calc(100% - 5px);
  width: calc(100% - 5px);
  background: -webkit-gradient(linear, left top, right top, from(#24BCE2), to(#4E95C1));
  background: -webkit-linear-gradient(left, #24BCE2 0%, #4E95C1 100%);
  background: linear-gradient(90deg, #24BCE2 0%, #4E95C1 100%);
  border-radius: 10px
}
.imgtext__number {
  display: block;
  font-size: 3.8rem;
  line-height: 1;
  letter-spacing: -.01em;
  background: -webkit-gradient(linear, left top, right top, from(#24BCE2), to(#4E95C1));
  background: -webkit-linear-gradient(left, #24BCE2 0%, #4E95C1 100%);
  background: linear-gradient(90deg, #24BCE2 0%, #4E95C1 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  font-weight: 500;
  font-style: italic;
  margin-bottom: 3px
}
.imgtext__title {
  font-size: 3.2rem;
  line-height: 1.64;
  letter-spacing: -.05em;
  font-weight: 400;
  margin-bottom: 65px
}
@media only screen and (max-width: 1024px) {
  .imgtext__title {
    font-size: 2.6rem;
    margin-bottom: 40px
  }
}
@media only screen and (max-width: 767px) {
  .imgtext__title {
    font-size: 2.4rem;
    margin-bottom: 30px
  }
}
.imgtext .text {
  line-height: 2.14
}
.imgtext .text + .text {
  margin-top: 9px
}
.imgtext__box {
  background: #F1F4F6;
  border-radius: 3px;
  padding: 20px 30px;
  min-height: 75px;
  margin-top: 45px
}
@media only screen and (max-width: 767px) {
  .imgtext__box {
    margin-top: 20px
  }
}
.imgtext__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  margin-bottom: -10px
}
.imgtext__list li {
  font-size: 1.6rem;
  line-height: 2.14;
  letter-spacing: .02em;
  margin-bottom: 10px
}
.imgtext__list li:before {
  content: "\30fb";
  color: #1aaed3;
  margin-right: 4px
}
.imgtext__list li span {
  font-size: 1.2rem
}
.imgtext__position {
  font-size: 2.1rem;
  line-height: 2.14;
  letter-spacing: .02em;
  font-weight: 400;
  margin: 39px 0 -9px
}
@media only screen and (max-width: 767px) {
  .imgtext__position {
    margin: 20px 0 0
  }
}
.imgtext.construction {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 73px 0;
  border-bottom: 1px solid #F1F4F6
}
@media only screen and (max-width: 767px) {
  .imgtext.construction {
    padding: 40px 0
  }
}
.imgtext.construction:nth-of-type(1) {
  padding-top: 0
}
.imgtext.construction:nth-last-of-type(2) {
  padding-bottom: 0;
  border-bottom: 0
}
.imgtext.construction .imgtext__img {
  -webkit-box-ordinal-group: 2 !important;
  -ms-flex-order: 1 !important;
  order: 1 !important;
  padding: 0;
  max-width: 510px;
  margin: 0
}
@media only screen and (max-width: 767px) {
  .imgtext.construction .imgtext__img {
    max-width: 100%
  }
}
.imgtext.construction .imgtext__img:after {
  display: none
}
.imgtext.construction .imgtext__img img {
  border-radius: 5px
}
.imgtext.construction .imgtext__content {
  -webkit-box-ordinal-group: 3 !important;
  -ms-flex-order: 2 !important;
  order: 2 !important;
  padding-left: 60px;
  max-width: 100%;
  margin: -11px 0 0;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
@media only screen and (max-width: 1024px) {
  .imgtext.construction .imgtext__content {
    padding-left: 30px
  }
}
@media only screen and (max-width: 767px) {
  .imgtext.construction .imgtext__content {
    padding-left: 0
  }
}
.imgtext.construction .imgtext__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex
}
.imgtext.construction .imgtext__number {
  letter-spacing: .02em;
  color: #1aaed3;
  background-clip: unset;
  background: none;
  -webkit-text-fill-color: unset;
  margin: 0 31px 0 0;
  position: relative;
  top: 9px
}
.imgtext.construction .imgtext__title {
  font-size: 2.1rem;
  font-weight: 500;
  letter-spacing: .02em;
  color: #1383cb;
  line-height: 2.14;
  margin-bottom: 0
}
.imgtext.construction .imgtext__title span {
  font-size: 1.6rem
}
.imgtext.construction .text {
  margin-top: 49px
}
@media only screen and (max-width: 767px) {
  .imgtext.construction .text {
    margin-top: 20px
  }
}
.imgtext.greeting .imgtext__content {
  margin-right: 0;
  margin-left: 90px;
  max-width: 525px
}
@media only screen and (max-width: 1024px) {
  .imgtext.greeting .imgtext__content {
    margin-left: 40px
  }
}
@media only screen and (max-width: 767px) {
  .imgtext.greeting .imgtext__content {
    max-width: 100%
  }
}
.imgtext.greeting .imgtext__img {
  margin: 0;
  max-width: 525px
}
@media only screen and (max-width: 767px) {
  .imgtext.greeting .imgtext__img {
    max-width: 100%
  }
}
.imgtext.greeting .imgtext__img img {
  border-radius: 5px
}
.imgtext.greeting .imgtext__img:after {
  border-radius: 5px
}
.imgtext.greeting .imgtext__title {
  margin-bottom: 42px
}
@media only screen and (max-width: 767px) {
  .imgtext.greeting .imgtext__title {
    margin-bottom: 20px
  }
}
.imgtext.job {
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  padding: 0
}
.imgtext.job .imgtext__img {
  padding: 0;
  max-width: 540px;
  margin: 0
}
@media only screen and (max-width: 767px) {
  .imgtext.job .imgtext__img {
    max-width: 100%
  }
}
.imgtext.job .imgtext__img:after {
  display: none
}
.imgtext.job .imgtext__img img {
  border-radius: 5px
}
.imgtext.job .imgtext__content {
  margin: -8px 0 0 60px;
  max-width: 540px
}
@media only screen and (max-width: 1024px) {
  .imgtext.job .imgtext__content {
    margin-left: 40px
  }
}
@media only screen and (max-width: 767px) {
  .imgtext.job .imgtext__content {
    max-width: 100%
  }
}
.imgtext.job .imgtext__title {
  font-size: 2.4rem;
  line-height: 1.75;
  letter-spacing: -.02em;
  margin-bottom: 39px
}
@media only screen and (max-width: 767px) {
  .imgtext.job .imgtext__title {
    font-size: 2rem;
    margin-bottom: 20px
  }
}
.imgtext.job .exbox.job .exbox__list {
  margin: 0;
  width: 100%;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap
}
.imgtext.job .exbox.job .exbox__list .text.circle {
  margin: 0 30px 0 0;
  width: auto
}
.imgtext.job .exbox.job .exbox__list .text.circle:last-child {
  margin-right: 0
}
.news__list {
  margin-top: -30px
}
.news__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  line-height: 1;
  padding: 30px 0;
  border-bottom: 1px solid #f2e8e7
}
@media only screen and (max-width: 767px) {
  .news__list li a {
    -ms-flex-wrap: wrap;
    flex-wrap: wrap
  }
}
.news__list li a * {
  color: #4d4d4d;
  letter-spacing: .01em;
  line-height: 1.3
}
@media only screen and (min-width: 768px) {
  .news__list li a:hover {
    opacity: 1
  }
  .news__list li a:hover .news__tit {
    color: #4d4d4d80
  }
  .news__list li a:hover .news__tit:after {
    width: 25px
  }
}
.news__cat {
  font-size: 1.4rem;
  line-height: 1.5 !important;
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%);
  border-radius: 2px;
  padding: 2px 15px;
  width: 100px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  white-space: nowrap;
  text-align: center
}
@media only screen and (max-width: 767px) {
  .news__cat {
    font-size: 1.2rem;
    line-height: 1.6666666667 !important;
    padding: 0 7px;
    width: 75px
  }
}
.news__date {
  font-family: "Source Serif 4", serif;
  font-size: 1.7rem;
  padding: 0 30px;
  margin-right: 30px;
  border-right: 1px solid #f2e8e7
}
@media only screen and (max-width: 767px) {
  .news__date {
    font-size: 1.4rem;
    padding: 0 15px;
    margin-right: 0;
    border-right: none
  }
}
.news__tit {
  font-size: 1.7rem;
  font-weight: 300;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
@media only screen and (max-width: 767px) {
  .news__tit {
    width: 100%;
    -webkit-box-flex: 0;
    -ms-flex: none;
    flex: none;
    margin-top: 10px;
    font-size: 1.5rem
  }
}
.news__tit:after {
  content: "";
  display: block;
  width: 0px;
  height: 25px;
  background: url(../img/common/icon/ic_arrow-circle.svg) no-repeat center/contain;
  -webkit-transition: all .3s cubic-bezier(.18, .06, .23, 1);
  transition: all .3s cubic-bezier(.18, .06, .23, 1)
}
.list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: space-between;
  -ms-flex-pack: space-between;
  justify-content: space-between;
  gap: 60px
}
@media only screen and (max-width: 767px) {
  .list {
    gap: 30px
  }
}
.list .card {
  width: 340px;
  max-width: 50%
}
@media only screen and (max-width: 780px) {
  .list .card {
    width: 334px
  }
}
@media only screen and (max-width: 767px) {
  .list .card {
    width: 100%;
    max-width: 100%
  }
}
.list .card.is-half {
  width: calc(50% - 30px)
}
@media only screen and (max-width: 767px) {
  .list .card.is-half {
    width: 100%
  }
}
.list.is-news {
  gap: 0
}
.list.is-news .list-item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 60px;
  padding: 60px 0;
  border-bottom: 1px solid #F2E8E7
}
@media only screen and (max-width: 1024px) {
  .list.is-news .list-item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
  }
}
@media only screen and (max-width: 767px) {
  .list.is-news .list-item {
    padding: 30px 0
  }
}
.list.is-news .list-item:first-child {
  padding-top: 0
}
.list.is-news .list-img {
  max-width: 300px
}
@media only screen and (max-width: 1024px) {
  .list.is-news .list-img {
    max-width: 100%
  }
}
.list.is-news .list-img img {
  border-radius: 5px
}
.list.is-news .list-content {
  max-width: 390px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
@media only screen and (max-width: 1024px) {
  .list.is-news .list-content {
    max-width: 100%
  }
}
.list.is-news .list-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px
}
.list.is-news .list-cate {
  padding: 5px 15px;
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%);
  border-radius: 2px;
  font-size: 1.4rem;
  font-weight: 400;
  line-height: 1.3;
  letter-spacing: .06em;
  color: #4d4d4d
}
.list.is-news .list-date {
  font-family: "Source Serif 4", serif;
  font-weight: 400;
  font-size: 2rem;
  line-height: 1.3;
  letter-spacing: .01em;
  color: #757575
}
.list.is-news .list-title {
  margin: 20px 0 15px
}
.list.is-news .list-title a {
  display: -ms-flexbox;
  display: flex;
  gap: 10px;
  font-size: 2.1rem;
  font-weight: 400;
  letter-spacing: .04em;
  color: #807374;
  line-height: 1.8;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden
}
.list.is-news .list-title a .icon {
  display: inline-block;
  top: 2px;
  position: relative;
  margin-right: 5px
}
.list.is-news .list-text {
  font-size: 1.7rem;
  line-height: 1.8;
  letter-spacing: .06em;
  color: #595959;
  font-weight: 400;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden
}
.table {
  width: 100%;
  border-collapse: collapse;
  border-radius: 5px;
  min-width: 1140px;
  overflow: hidden
}
.table tr:not(:first-child) td:last-child {
  font-size: 1.5rem
}
.table tr:first-child td {
  text-align: center;
  font-size: 2.1rem;
  line-height: 1.9;
  font-weight: 700;
  letter-spacing: .03em;
  background: #222222;
  color: #fff
}
.table tr:first-child td:after {
  border-color: #383838
}
.table td {
  font-size: 1.6rem;
  line-height: 1.75;
  letter-spacing: .015em;
  font-weight: 400;
  padding: 0 15px;
  border-bottom: 1px solid #E3E3E3;
  height: 90px;
  background: #fff
}
.table td:not(:last-child) {
  position: relative
}
.table td:not(:last-child):after {
  content: "";
  position: absolute;
  top: 50%;
  right: 0;
  height: 60px;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  border-right: 1px solid #E3E3E3
}
.table td:nth-child(1) {
  width: 230px
}
.table td:nth-child(2) {
  width: 340px;
  font-weight: 700
}
.table td:nth-child(3), .table td:nth-child(4) {
  width: 160px
}
.table td span {
  display: block;
  font-size: 1.2rem;
  margin-top: 3px
}
.mv__nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
  margin-bottom: 20px
}
.mv__nav .mv__navCount, .mv__nav .mv__navTotal {
  font-size: 2.4rem;
  color: #fffefc
}
.mv__nav .mv__navSpace {
  margin: 0 5px
}
.mv__nav .mv__navProgress {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  height: 1px;
  position: relative;
  overflow: hidden
}
@media only screen and (max-width: 767px) {
  .mv__nav .mv__navProgress {
    width: 60px
  }
}
.mv__nav .mv__navProgressBar {
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 0;
  background: -webkit-gradient(linear, left top, right top, color-stop(50%, #fffefc), color-stop(75%, rgba(255, 254, 252, .5)), to(rgba(255, 254, 252, 0)));
  background: -webkit-linear-gradient(left, #fffefc 50%, rgba(255, 254, 252, .5) 75%, rgba(255, 254, 252, 0) 100%);
  background: linear-gradient(90deg, #fffefc 50%, rgba(255, 254, 252, .5) 75%, rgba(255, 254, 252, 0) 100%);
  -webkit-transition: width 8s linear;
  transition: width 8s linear
}
.about__list li {
  -webkit-transition: all .3s ease;
  transition: all .3s ease;
  position: relative
}
.about__list li.active a, .about__list li:hover a {
  color: #f39c96;
  font-weight: 500
}
.about__list li:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 0;
  height: 1px;
  background: -webkit-gradient(linear, left top, right top, from(#f39c96), to(#f4b3c3));
  background: -webkit-linear-gradient(left, #f39c96 0%, #f4b3c3 100%);
  background: linear-gradient(90deg, #f39c96 0%, #f4b3c3 100%);
  -webkit-transition: width 1.2s ease;
  transition: width 1.2s ease
}
.about__list li.active:after, .about__list li:hover:after {
  width: 100%
}
.about__images {
  position: relative;
  height: 300px
}
@media only screen and (max-width: 767px) {
  .about__images {
    height: 200px
  }
}
.about__images .about__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  -webkit-transition: opacity 1.5s ease;
  transition: opacity 1.5s ease;
  -webkit-transform: scale(.98);
  transform: scale(.98);
  -webkit-transition-property: opacity, -webkit-transform;
  transition-property: opacity, -webkit-transform;
  transition-property: opacity, transform;
  transition-property: opacity, transform, -webkit-transform
}
.about__images .about__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px
}
.about__images .about__img:first-child {
  opacity: 1;
  -webkit-transform: scale(1);
  transform: scale(1)
}
.about__images .about__img.active, .about__images .about__img[style*="opacity: 1"] {
  -webkit-transform: scale(1);
  transform: scale(1)
}
.about__progress {
  position: absolute;
  bottom: -10px;
  left: 0;
  width: 100%;
  height: 3px;
  background-color: #0000001a;
  border-radius: 3px;
  overflow: hidden;
  z-index: 10
}
.about__progressBar {
  height: 100%;
  width: 0;
  background: -webkit-gradient(linear, left top, right top, from(#f39c96), to(#f4b3c3));
  background: -webkit-linear-gradient(left, #f39c96 0%, #f4b3c3 100%);
  background: linear-gradient(90deg, #f39c96 0%, #f4b3c3 100%);
  -webkit-transition: width 8s linear;
  transition: width 8s linear
}
.about__slide {
  position: relative;
  width: 100%;
  overflow: hidden
}
.about__slide .swiper {
  overflow: visible;
  opacity: 0;
  -webkit-transition: opacity .5s ease;
  transition: opacity .5s ease;
  -webkit-transform: translateZ(0);
  transform: translateZ(0)
}
.about__slide .swiper-wrapper {
  -webkit-transition-timing-function: linear !important;
  transition-timing-function: linear !important;
  will-change: transform;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-perspective: 1000px;
  perspective: 1000px
}
.about__slide .swiper-slide {
  width: auto;
  height: auto;
  opacity: 1;
  -webkit-transition: opacity .8s ease, -webkit-transform .8s ease;
  transition: opacity .8s ease, -webkit-transform .8s ease;
  transition: opacity .8s ease, transform .8s ease;
  transition: opacity .8s ease, transform .8s ease, -webkit-transform .8s ease;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  -webkit-transform: translateZ(0);
  transform: translateZ(0)
}
.about__slide .swiper-slide img {
  height: 380px;
  width: auto;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 5px;
  -webkit-transform: scale(.98) translateZ(0);
  transform: scale(.98) translateZ(0);
  -webkit-transition: -webkit-transform .8s cubic-bezier(.165, .84, .44, 1);
  transition: -webkit-transform .8s cubic-bezier(.165, .84, .44, 1);
  transition: transform .8s cubic-bezier(.165, .84, .44, 1);
  transition: transform .8s cubic-bezier(.165, .84, .44, 1), -webkit-transform .8s cubic-bezier(.165, .84, .44, 1);
  will-change: transform;
  image-rendering: -webkit-optimize-contrast;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden
}
@media only screen and (max-width: 767px) {
  .about__slide .swiper-slide img {
    height: 300px
  }
}
.about__slide .swiper-slide:hover img {
  -webkit-transform: scale(1) translateZ(0);
  transform: scale(1) translateZ(0)
}
.consultation {
  position: relative;
  z-index: 99
}
@media only screen and (max-width: 767px) {
  .consultation {
    position: fixed;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    gap: 5px;
    background: #fffdfa;
    padding: 10px 5px;
    right: auto;
    left: 0;
    width: 100%;
    bottom: 0;
    border-top: 1px solid #f2e8e7
  }
}
.consultation__item {
  position: fixed;
  background: #fffdfa;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  border-radius: 10px 0 0 10px;
  overflow: hidden;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  -webkit-box-shadow: 0px 3px 5px rgba(242, 225, 221, .75);
  box-shadow: 0 3px 5px #f2e1ddbf;
  right: 0;
  bottom: 30px
}
.consultation__item.is-active {
  -webkit-transform: translateX(calc(100% - 75px));
  transform: translate(calc(100% - 75px))
}
.consultation__item:first-child {
  display: none
}
@media only screen and (max-width: 767px) {
  .consultation__item:first-child {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex
  }
}
.consultation__item:nth-child(2) {
  bottom: 337px
}
@media only screen and (max-width: 767px) {
  .consultation__item:nth-child(2) {
    bottom: auto
  }
}
@media only screen and (max-width: 767px) {
  .consultation__item {
    bottom: auto;
    right: auto;
    width: calc((100% - 10px) / 3);
    -webkit-box-shadow: 3px 3px 6px rgba(255, 255, 255, .25), 2px 2px 4px rgba(161, 131, 129, .25);
    box-shadow: 3px 3px 6px #ffffff40, 2px 2px 4px #a1838140;
    padding: 5px;
    border-radius: 5px;
    left: 0 !important;
    -webkit-transform: none !important;
    transform: none !important;
    position: relative
  }
  .consultation__item:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: calc(100% - 8px);
    height: calc(100% - 8px);
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    border-radius: 3px;
    opacity: .5
  }
  .consultation__item:nth-child(1):before {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(243, 156, 150, .5)), to(rgba(244, 179, 195, .5)));
    background: -webkit-linear-gradient(top, rgba(243, 156, 150, .5) 0%, rgba(244, 179, 195, .5) 100%);
    background: linear-gradient(180deg, rgba(243, 156, 150, .5) 0%, rgba(244, 179, 195, .5) 100%)
  }
  .consultation__item:nth-child(2):before {
    background: -webkit-linear-gradient(308.05deg, rgba(95, 191, 90, .5) 12.27%, rgba(147, 204, 120, .5) 87.73%);
    background: linear-gradient(141.95deg, rgba(95, 191, 90, .5) 12.27%, rgba(147, 204, 120, .5) 87.73%)
  }
  .consultation__item:nth-child(3):before {
    background: -webkit-gradient(linear, left top, left bottom, from(rgba(243, 156, 150, .5)), to(rgba(244, 179, 195, .5)));
    background: -webkit-linear-gradient(top, rgba(243, 156, 150, .5) 0%, rgba(244, 179, 195, .5) 100%);
    background: linear-gradient(180deg, rgba(243, 156, 150, .5) 0%, rgba(244, 179, 195, .5) 100%)
  }
}
.consultation__title {
  position: relative;
  width: 75px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  cursor: pointer;
  padding: 25px 0;
  background: #fffdfa
}
@media only screen and (max-width: 767px) {
  .consultation__title {
    width: 100%;
    padding: 10px
  }
}
.consultation__title span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 10px;
  font-family: Shippori Mincho, serif;
  font-size: 1.8rem;
  line-height: 1.1;
  letter-spacing: .03em;
  color: #595959;
  text-align: center
}
@media only screen and (max-width: 767px) {
  .consultation__title span {
    font-size: 1.4rem;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    -webkit-writing-mode: initial !important;
    -ms-writing-mode: initial !important;
    writing-mode: initial !important;
    white-space: nowrap;
    gap: 5px;
    font-weight: 700
  }
  .consultation__title span br {
    display: none !important
  }
}
@media only screen and (max-width: 374px) {
  .consultation__title span {
    font-size: 1rem
  }
}
.consultation__title.is-phone span:before {
  content: "";
  width: 15px;
  height: 13px;
  background: url(../img/common/icon/ic_phone.svg) no-repeat center/contain
}
@media only screen and (max-width: 374px) {
  .consultation__title.is-phone span:before {
    width: 13px;
    height: 11px
  }
}
@media only screen and (max-width: 767px) {
  .consultation__title.is-phone span {
    background: -webkit-gradient(linear, left bottom, left top, from(#fba0a7), to(#fba0a7));
    background: -webkit-linear-gradient(bottom, #fba0a7, #fba0a7);
    background: linear-gradient(0deg, #fba0a7, #fba0a7);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent
  }
}
@media only screen and (min-width: 768px) {
  .consultation__title.is-time:hover {
    background: -webkit-linear-gradient(135deg, #f8cebd 0%, #f89ca8 95%);
    background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%)
  }
  .consultation__title.is-time:hover span {
    color: #fffefc
  }
  .consultation__title.is-time:hover span:before {
    background: url(../img/common/icon/ic_oclock-white.svg) no-repeat center/contain
  }
}
.consultation__title.is-time span {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  -webkit-writing-mode: vertical-lr;
  -ms-writing-mode: tb-lr;
  writing-mode: vertical-lr
}
.consultation__title.is-time span:before {
  content: "";
  width: 20px;
  height: 20px;
  background: url(../img/common/icon/ic_oclock.svg) no-repeat center/contain
}
@media only screen and (max-width: 767px) {
  .consultation__title.is-time span:before {
    width: 15px;
    height: 15px
  }
}
@media only screen and (max-width: 374px) {
  .consultation__title.is-time span:before {
    width: 13px;
    height: 13px
  }
}
.consultation__title.is-time span:after {
  content: "";
  position: absolute;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  top: 50%;
  right: 0;
  border-right: 1px solid #f2e8e7;
  height: calc(100% - 80px)
}
@media only screen and (max-width: 767px) {
  .consultation__title.is-time span {
    background: -webkit-gradient(linear, left bottom, left top, from(#fba0a7), to(#fba0a7));
    background: -webkit-linear-gradient(bottom, #fba0a7, #fba0a7);
    background: linear-gradient(0deg, #fba0a7, #fba0a7);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent
  }
}
.consultation__title.is-web span:before {
  content: "";
  width: 25px;
  height: 20px;
  background: url(../img/common/icon/ic_calendar.svg) no-repeat center/contain
}
@media only screen and (max-width: 767px) {
  .consultation__title.is-web span:before {
    width: 20px;
    height: 15px
  }
}
@media only screen and (max-width: 374px) {
  .consultation__title.is-web span:before {
    width: 18px;
    height: 13px
  }
}
@media only screen and (max-width: 767px) {
  .consultation__title.is-web span {
    background: -webkit-linear-gradient(308.05deg, #5fbf5a 12.27%, #93cc78 87.73%);
    background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent
  }
}
@media only screen and (min-width: 768px) {
  .consultation__title.is-web:hover {
    background: -webkit-linear-gradient(308.05deg, #5fbf5a 12.27%, #93cc78 87.73%);
    background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%)
  }
  .consultation__title.is-web:hover span {
    color: #fffefc
  }
  .consultation__title.is-web:hover span:before {
    background: url(../img/common/icon/ic_calendar-white.svg) no-repeat center/contain
  }
}
.consultation__content {
  padding: 40px 45px;
  -webkit-transition: all .3s;
  transition: all .3s;
  position: relative
}
@media only screen and (max-width: 767px) {
  .consultation__content {
    display: none
  }
}
.consultation__content a {
  position: absolute;
  bottom: 40px;
  right: 45px;
  width: 155px;
  height: 27px;
  border-radius: 50px
}
.tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 20px
}
@media only screen and (max-width: 767px) {
  .tabs {
    display: block
  }
}
.tabs__nav {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  min-width: 150px
}
.tabs__navbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px
}
@media only screen and (max-width: 767px) {
  .tabs__navbar {
    display: none
  }
}
.tabs__navlink {
  font-size: 1.5rem;
  line-height: 1.6;
  letter-spacing: .06em;
  color: #4d4d4d;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  padding: 3px 20px;
  cursor: pointer;
  width: 130px;
  background: #f2e0dc;
  border-radius: 3px
}
.tabs__navlink.is-active {
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%)
}
.tabs__content {
  width: 840px
}
@media only screen and (max-width: 767px) {
  .tabs__content {
    width: auto
  }
}
.main-img {
  background: url(../img/common/mv-child_bg.png) no-repeat center/cover
}
.main-img__content {
  min-height: 330px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
@media only screen and (max-width: 767px) {
  .main-img__content {
    min-height: 165px
  }
}
.main-img__title {
  line-height: 1.3;
  font-weight: 500
}
.main-img__title .jp {
  font-family: Shippori Mincho, serif;
  font-size: 4.2rem;
  letter-spacing: .03em;
  color: #807374;
  display: block
}
@media only screen and (max-width: 767px) {
  .main-img__title .jp {
    font-size: 2.1rem
  }
}
.main-img__title .en {
  font-family: Cormorant Garamond, serif;
  font-size: 1.8rem;
  letter-spacing: .01em;
  background: -webkit-linear-gradient(135deg, #f8cebd 0%, #f89ca8 95%);
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  text-transform: capitalize
}
.card {
  background: #fffefc;
  -webkit-box-shadow: 0px 6px 5px #f2e8e7;
  box-shadow: 0 6px 5px #f2e8e7;
  border-radius: 10px;
  overflow: hidden;
  position: relative
}
.card:after {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(#f5eeec), to(rgba(245, 238, 236, 0)));
  background: -webkit-linear-gradient(top, #f5eeec 0%, rgba(245, 238, 236, 0) 100%);
  background: linear-gradient(180deg, #f5eeec 0%, rgba(245, 238, 236, 0) 100%);
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: -webkit-linear-gradient(#fff 0 0) content-box, -webkit-linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none
}
.card__img img {
  width: 100%
}
.card__content {
  padding: 40px
}
@media only screen and (max-width: 767px) {
  .card__content {
    padding: 20px
  }
}
.card__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  font-size: 1.8rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #807374;
  border-bottom: 1px solid #f2e8e7;
  padding-bottom: 15px;
  margin-bottom: 25px;
  font-weight: 400
}
.card__title:only-child {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: 0
}
.card__text {
  line-height: 1.8;
  letter-spacing: .06em;
  color: #595959
}
.relative {
  padding: 90px 0;
  background: -webkit-linear-gradient(351.54deg, #fdf3f1 .51%, #fbebe8 50%, #fae1e3 99.49%);
  background: linear-gradient(98.46deg, #fdf3f1 .51%, #fbebe8 50%, #fae1e3 99.49%)
}
@media only screen and (max-width: 767px) {
  .relative {
    padding: 45px 0
  }
}
.relative .checkups {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 30px
}
.relative .checkups__item {
  width: calc(33.3333333333% - 20px)
}
@media only screen and (max-width: 1024px) {
  .relative .checkups__item {
    width: calc(50% - 15px)
  }
}
@media only screen and (max-width: 767px) {
  .relative .checkups__item {
    width: 100%
  }
}
.relative .checkups__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px;
  background: #fffdfa;
  -webkit-box-shadow: 0px 6px 5px #f2e8e7;
  box-shadow: 0 6px 5px #f2e8e7;
  padding: 20px;
  border-radius: 5px;
  position: relative
}
.relative .checkups__link:after {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: 5px;
  background: -webkit-gradient(linear, left top, left bottom, color-stop(50%, #fff1eb), to(#fff2f0));
  background: -webkit-linear-gradient(top, #fff1eb 50%, #fff2f0 100%);
  background: linear-gradient(180deg, #fff1eb 50%, #fff2f0 100%);
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: -webkit-linear-gradient(#fff 0 0) content-box, -webkit-linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none
}
.relative .checkups__icon {
  width: 60px;
  height: 60px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative
}
.relative .checkups__icon img {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%)
}
.relative .checkups__icon img.hover {
  opacity: 0
}
.relative .checkups__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  gap: 10px;
  font-size: 1.6rem;
  line-height: 1.3;
  letter-spacing: .06em;
  color: #4d4d4d;
  font-weight: 300;
  border-bottom: 1px solid #f2e8e7;
  padding: 5px 0 10px
}
.relative .checkups__title span span {
  font-size: 1.2rem
}
.relative .checkups__title .icon {
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.relative.various-health {
  background: #fcf9f7;
  border-top: 1px solid #f7f1ef
}
.relative.various-health .checkups__link {
  padding: 27px 30px
}
.relative.various-health .checkups__link:after {
  display: none
}
.relative.various-health .checkups__title {
  padding: 0;
  border-bottom: none
}
.topNews {
  padding: 120px 0 90px;
  background: -webkit-linear-gradient(333.43deg, #fcf2ef 16.67%, #fffefc 83.33%);
  background: linear-gradient(116.57deg, #fcf2ef 16.67%, #fffefc 83.33%);
  border-bottom: 1px solid #fffefc
}
@media only screen and (max-width: 767px) {
  .topNews {
    padding: 30px 0
  }
}
.topNews .news__list {
  display: none
}
.topNews .news__list.is-active {
  display: block
}
.topNews .link {
  margin: 30px 0 0 auto
}
.topAbout {
  background: url(../img/top/about_bg.png) no-repeat center/cover;
  padding: 150px 0
}
@media only screen and (max-width: 767px) {
  .topAbout {
    padding: 75px 0
  }
}
.topAbout .about {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  -webkit-box-align: end;
  -ms-flex-align: end;
  align-items: flex-end;
  gap: 20px
}
@media only screen and (max-width: 767px) {
  .topAbout .about {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    -webkit-box-align: start;
    -ms-flex-align: start;
    align-items: flex-start
  }
}
.topAbout .about__content, .topAbout .about__images {
  width: calc((100% - 120px)/2)
}
@media only screen and (max-width: 1024px) {
  .topAbout .about__content, .topAbout .about__images {
    width: calc((100% - 60px)/2)
  }
}
@media only screen and (max-width: 767px) {
  .topAbout .about__content, .topAbout .about__images {
    width: 100%
  }
}
.topAbout .about__images {
  overflow: hidden;
  border-radius: 500px 500px 5px 5px;
  height: 740px;
  position: relative
}
@media only screen and (max-width: 767px) {
  .topAbout .about__images {
    height: 370px;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }
}
@media only screen and (max-width: 767px) {
  .topAbout .about__content {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
}
.topAbout .about__img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%
}
.topAbout .about__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover
}
.topAbout .about__text {
  font-size: 1.7rem;
  line-height: 1.8;
  letter-spacing: .01em;
  color: #595959
}
.topAbout .about__list {
  margin-top: 20px
}
.topAbout .about__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-family: Shippori Mincho, serif;
  font-size: 1.8rem;
  line-height: 1.3;
  letter-spacing: .03em;
  font-weight: 500;
  padding: 30px 0;
  position: relative
}
.topAbout .about__list li a:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid #f2e8e7
}
.topAbout .about__list li a:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon/ic_arrow-circle-gradient.svg) no-repeat center/contain;
  -webkit-transition: .3s linear;
  transition: .3s linear
}
@media only screen and (min-width: 768px) {
  .topAbout .about__list li a:hover:after {
    background: url(../img/common/icon/ic_arrow-circle.svg) no-repeat center/contain;
    -webkit-transform: translateY(-50%) scale(1.1);
    transform: translateY(-50%) scale(1.1)
  }
}
.topAbout .about__slide {
  margin: 150px 0 0
}
@media only screen and (max-width: 767px) {
  .topAbout .about__slide {
    margin: 75px 0 0
  }
}
.topAbout .about__slide .swiper-slide {
  max-width: 540px
}
@media only screen and (max-width: 767px) {
  .topAbout .about__slide .swiper-slide {
    max-width: 335px
  }
}
.topFeatures {
  padding: 120px 0 160px;
  position: relative;
  z-index: 1
}
@media only screen and (max-width: 767px) {
  .topFeatures {
    padding: 60px 0
  }
}
.topFeatures:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(333.43deg, #fcf2ef 16.67%, #fcf5ef 83.33%);
  background: linear-gradient(116.57deg, #fcf2ef 16.67%, #fcf5ef 83.33%);
  -webkit-filter: blur(1.5px);
  filter: blur(1.5px);
  z-index: -1
}
.topFeatures .features__toolbar {
  display: none
}
@media only screen and (max-width: 767px) {
  .topFeatures .features__toolbar {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end;
    gap: 15px;
    margin-top: -48px
  }
  .topFeatures .features__toolbar .swiper-button-prev, .topFeatures .features__toolbar .swiper-button-next {
    position: relative;
    top: auto;
    left: auto;
    bottom: auto;
    right: auto;
    margin: 0;
    width: 25px;
    height: 25px
  }
  .topFeatures .features__toolbar .swiper-button-prev:after, .topFeatures .features__toolbar .swiper-button-next:after {
    display: none
  }
  .topFeatures .features__toolbar .swiper-button-prev img, .topFeatures .features__toolbar .swiper-button-next img {
    width: 25px;
    height: 25px
  }
  .topFeatures .features__toolbar .swiper-button-prev {
    -webkit-transform: rotate(-180deg);
    transform: rotate(-180deg)
  }
}
.topFeatures .features__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 5px
}
.topFeatures .features__page {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  width: 72px;
  gap: 5px
}
.topFeatures .features__page .count, .topFeatures .features__page .total {
  font-family: "Source Serif 4", serif;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: .01em;
  font-style: italic;
  color: #807374
}
.topFeatures .features__page .progressbar {
  display: block;
  width: 100%;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  border-top: 1px solid transparent;
  position: relative
}
.topFeatures .features__page .progressbar .progressbar-fill {
  position: absolute;
  top: 0;
  left: 0;
  height: 1px;
  opacity: 1;
  background: -webkit-gradient(linear, left top, right top, from(#807374), color-stop(25%, #807374), color-stop(75%, #807374), to(rgba(128, 115, 116, 0)));
  background: -webkit-linear-gradient(left, #807374 0%, #807374 25%, #807374 75%, rgba(128, 115, 116, 0) 100%);
  background: linear-gradient(90deg, #807374 0%, #807374 25%, #807374 75%, rgba(128, 115, 116, 0) 100%);
  width: 0%;
  display: block;
  -webkit-transition: width linear;
  transition: width linear
}
@media only screen and (max-width: 767px) {
  .topFeatures .features__slide {
    margin-right: -20px
  }
}
.topFeatures .features .swiper {
  overflow: visible
}
@media only screen and (max-width: 767px) {
  .topFeatures .features .swiper {
    overflow: hidden
  }
}
.topFeatures .features .swiper-wrapper {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 80px
}
@media only screen and (max-width: 767px) {
  .topFeatures .features .swiper-wrapper {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 0
  }
}
@media only screen and (max-width: 767px) {
  .topFeatures .features .swiper-slide {
    max-width: 280px
  }
}
.topFeatures .features .swiper-slide:nth-child(even) {
  padding-left: 60px
}
@media only screen and (max-width: 767px) {
  .topFeatures .features .swiper-slide:nth-child(even) {
    padding: 0
  }
}
.topFeatures .features .swiper-slide:nth-child(even) .features__img {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2
}
.topFeatures .features .swiper-slide:nth-child(even) .features__content {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1
}
.topFeatures .features .swiper-slide:nth-child(odd) {
  padding-right: 60px
}
@media only screen and (max-width: 767px) {
  .topFeatures .features .swiper-slide:nth-child(odd) {
    padding: 0
  }
}
.topFeatures .features .swiper-slide:nth-child(odd) .features__text:after {
  content: "";
  position: absolute;
  top: 0;
  right: -60px;
  width: 160%;
  height: 100%;
  max-width: 1080px;
  min-height: 220px;
  background: -webkit-gradient(linear, left top, right top, from(rgba(255, 253, 250, 0)), color-stop(50%, rgba(255, 253, 250, .75)), color-stop(95%, rgba(255, 253, 250, .75)), to(rgba(255, 253, 250, 0)));
  background: -webkit-linear-gradient(left, rgba(255, 253, 250, 0) 0%, rgba(255, 253, 250, .75) 50%, rgba(255, 253, 250, .75) 95%, rgba(255, 253, 250, 0) 100%);
  background: linear-gradient(90deg, rgba(255, 253, 250, 0) 0%, rgba(255, 253, 250, .75) 50%, rgba(255, 253, 250, .75) 95%, rgba(255, 253, 250, 0) 100%);
  -webkit-filter: blur(1px);
  filter: blur(1px);
  border-radius: 5px;
  z-index: -1
}
@media only screen and (max-width: 767px) {
  .topFeatures .features .swiper-slide:nth-child(odd) .features__text:after {
    display: none
  }
}
.topFeatures .features .titleMain {
  margin-top: -140px
}
@media only screen and (max-width: 767px) {
  .topFeatures .features .titleMain {
    margin-top: -75px
  }
}
.topFeatures .features__bl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 60px
}
@media only screen and (max-width: 767px) {
  .topFeatures .features__bl {
    display: block
  }
}
.topFeatures .features__img {
  width: 340px;
  height: 225px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  margin-top: 10px
}
@media only screen and (max-width: 767px) {
  .topFeatures .features__img {
    width: 100%;
    height: auto
  }
}
.topFeatures .features__img:after {
  content: "";
  position: absolute;
  bottom: -10px;
  right: -10px;
  width: 100%;
  height: 100%;
  border-radius: 60px 10px 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(250, 229, 225, .9)), to(rgba(250, 225, 227, .5)));
  background: -webkit-linear-gradient(top, rgba(250, 229, 225, .9) 0%, rgba(250, 225, 227, .5) 100%);
  background: linear-gradient(180deg, rgba(250, 229, 225, .9) 0%, rgba(250, 225, 227, .5) 100%);
  -webkit-filter: blur(1.5px);
  filter: blur(1.5px);
  z-index: -1
}
.topFeatures .features__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 60px 10px 10px
}
.topFeatures .features__title {
  font-family: Shippori Mincho, serif;
  font-size: 2.7rem;
  line-height: 1.65;
  font-weight: 500;
  letter-spacing: .06em;
  color: #807374;
  position: relative;
  margin-bottom: 20px
}
@media only screen and (max-width: 767px) {
  .topFeatures .features__title {
    font-size: 2.1rem;
    letter-spacing: .01em;
    margin-top: -30px;
    z-index: 2;
    position: relative;
    margin-bottom: 25px
  }
}
.topFeatures .features__title span {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -15px;
  font-family: "Source Serif 4", serif;
  font-size: 7.5rem;
  line-height: 1;
  font-weight: 400;
  font-style: italic;
  letter-spacing: .01em;
  background: -webkit-linear-gradient(315deg, #ffd5d1 0%, #fee8e5 100%);
  background: linear-gradient(135deg, #ffd5d1 0%, #fee8e5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  z-index: -1
}
@media only screen and (max-width: 767px) {
  .topFeatures .features__title span {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: none;
    transform: none;
    display: block;
    margin-bottom: 10px;
    font-size: 5.4rem
  }
}
.topFeatures .features__text {
  font-size: 1.7rem;
  line-height: 1.95;
  font-weight: 350;
  letter-spacing: .01em;
  color: #595959;
  padding: 25px 0;
  position: relative;
  z-index: 1
}
@media only screen and (max-width: 767px) {
  .topFeatures .features__text {
    font-size: 1.5rem;
    line-height: 2.1;
    padding: 0
  }
}
.topFeatures .features__text span {
  display: block;
  font-size: 1.5rem;
  color: #757575;
  margin-top: 15px;
  line-height: 1.8
}
.topGynecology {
  background: -webkit-gradient(linear, left bottom, left top, from(#f9f7f4), to(#fffdfa));
  background: -webkit-linear-gradient(bottom, #f9f7f4 0%, #fffdfa 100%);
  background: linear-gradient(0deg, #f9f7f4 0%, #fffdfa 100%);
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .topGynecology {
    padding: 60px 0
  }
}
.topGynecology .gynecology__title {
  position: relative;
  text-align: center;
  margin-bottom: 90px
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__title {
    margin-bottom: 45px
  }
}
.topGynecology .gynecology__title .txt {
  font-family: Shippori Mincho, serif;
  font-size: 4.2rem;
  line-height: 1.3;
  letter-spacing: .03em;
  color: #807374;
  font-weight: 500
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__title .txt {
    font-size: 2.8rem
  }
}
.topGynecology .gynecology__title .slogan {
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  left: 50%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 90px;
  white-space: nowrap
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__title .slogan {
    gap: 45px
  }
}
.topGynecology .gynecology__title .slogan span {
  font-family: Cormorant Garamond, serif;
  font-size: 12rem;
  line-height: 1.3;
  letter-spacing: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#fae5e1), to(#fae1e3));
  background: -webkit-linear-gradient(top, #fae5e1 0%, #fae1e3 100%);
  background: linear-gradient(180deg, #fae5e1 0%, #fae1e3 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  opacity: .35;
  font-weight: 400;
  -webkit-animation: loopslider-x 81.28s linear infinite;
  animation: loopslider-x 81.28s linear infinite
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__title .slogan span {
    font-size: 6rem
  }
}
.topGynecology .gynecology .titleMain {
  margin: 0 auto 30px;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  text-align: center
}
.topGynecology .gynecology__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 20px
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.topGynecology .gynecology__item {
  position: relative;
  -webkit-box-shadow: 0px 6px 5px #f2e8e7;
  box-shadow: 0 6px 5px #f2e8e7;
  border-radius: 5px;
  width: calc((100% - 40px) / 3);
  min-width: 365px;
  -webkit-transition: all .3s linear;
  transition: all .3s linear;
  cursor: pointer;
  z-index: 1
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__item {
    width: 100%;
    min-width: auto
  }
}
@media only screen and (min-width: 768px) {
  .topGynecology .gynecology__item:hover:before {
    opacity: 1
  }
  .topGynecology .gynecology__item:hover:after {
    opacity: 0
  }
  .topGynecology .gynecology__item:hover .gynecology__inner:after {
    background: url(../img/common/icon/ic_arrow-corner-white.svg) no-repeat center/contain;
    width: 45px;
    height: 45px;
    bottom: 0;
    right: 0
  }
  .topGynecology .gynecology__item:hover .gynecology__icon:after {
    opacity: 1
  }
  .topGynecology .gynecology__item:hover .gynecology__icon img.hover {
    opacity: 1
  }
}
.topGynecology .gynecology__item:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff7f2), color-stop(50%, #fff0eb), to(#f9b9b5));
  background: -webkit-linear-gradient(top, #fff7f2 0%, #fff0eb 50%, #f9b9b5 100%);
  background: linear-gradient(180deg, #fff7f2 0%, #fff0eb 50%, #f9b9b5 100%);
  z-index: -1;
  opacity: 0;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.topGynecology .gynecology__item:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff7f2), to(#fff0eb));
  background: -webkit-linear-gradient(top, #fff7f2 0%, #fff0eb 100%);
  background: linear-gradient(180deg, #fff7f2 0%, #fff0eb 100%);
  z-index: -1;
  opacity: 1;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.topGynecology .gynecology__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  padding: 40px 45px;
  gap: 25px;
  position: relative;
  height: 100%;
  z-index: 1
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__inner {
    padding: 25px
  }
}
.topGynecology .gynecology__inner:after {
  content: "";
  position: absolute;
  bottom: 5px;
  right: 5px;
  width: 30px;
  height: 30px;
  background: url(../img/common/icon/ic_arrow-corner.svg) no-repeat center/contain;
  -webkit-transition: all .3s linear;
  transition: all .3s linear
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__inner:after {
    display: none
  }
}
.topGynecology .gynecology__top {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__top {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: normal;
    -ms-flex-direction: row;
    flex-direction: row;
    gap: 15px
  }
}
.topGynecology .gynecology__content {
  padding: 30px;
  background: #fffdfa;
  border-radius: 3px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__content {
    padding: 20px 25px
  }
}
.topGynecology .gynecology__gr {
  width: 100%
}
.topGynecology .gynecology__icon {
  margin-bottom: 15px;
  width: 90px;
  height: 90px;
  position: relative;
  border-radius: 50%;
  background: #fffdfa;
  overflow: hidden;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__icon {
    width: 65px;
    height: 65px;
    margin-bottom: 0
  }
}
.topGynecology .gynecology__icon img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1
}
.topGynecology .gynecology__icon img.hover {
  opacity: 0;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  -webkit-filter: drop-shadow(0px 0px 3px #f9bbb7);
  filter: drop-shadow(0px 0px 3px #f9bbb7)
}
.topGynecology .gynecology__icon:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%);
  opacity: 0;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.topGynecology .gynecology__tit {
  font-family: Shippori Mincho, serif;
  font-size: 2.4rem;
  line-height: 1.3;
  letter-spacing: .06em;
  color: #4d4d4d;
  text-align: center;
  font-weight: 500
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__tit {
    text-align: left;
    font-size: 1.8rem;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center
  }
  .topGynecology .gynecology__tit:before {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    width: 20px;
    height: 20px;
    background: url(../img/common/icon/ic_arrow-circle-gradient.svg) no-repeat center/contain;
    -webkit-transition: all .3s linear;
    transition: all .3s linear
  }
}
.topGynecology .gynecology__tit span span {
  display: block;
  font-size: 1.5rem;
  margin-top: 5px
}
.topGynecology .gynecology__tag {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 30px;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  margin-top: 10px;
  padding-top: 10px;
  position: relative
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__tag {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start
  }
}
.topGynecology .gynecology__tag:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background: -webkit-gradient(linear, left top, right top, from(rgba(250, 229, 225, 0)), color-stop(25%, #fae5e1), color-stop(75%, #fae5e1), to(rgba(250, 229, 225, 0)));
  background: -webkit-linear-gradient(left, rgba(250, 229, 225, 0) 0%, #fae5e1 25%, #fae5e1 75%, rgba(250, 229, 225, 0) 100%);
  background: linear-gradient(90deg, rgba(250, 229, 225, 0) 0%, #fae5e1 25%, #fae5e1 75%, rgba(250, 229, 225, 0) 100%);
  mix-blend-mode: multiply
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__tag:before {
    background: -webkit-gradient(linear, left top, right top, color-stop(25%, #fae5e1), color-stop(75%, #fae5e1));
    background: -webkit-linear-gradient(left, #fae5e1 25%, #fae5e1 75%);
    background: linear-gradient(90deg, #fae5e1 25%, #fae5e1 75%)
  }
}
.topGynecology .gynecology__tag span {
  font-size: 1.5rem;
  line-height: 1.3;
  letter-spacing: .06em;
  color: #595959;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 5px
}
@media only screen and (max-width: 767px) {
  .topGynecology .gynecology__tag span {
    font-size: 1.4rem
  }
}
.topGynecology .gynecology__tag span:before {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background: url(../img/common/icon/ic_check.svg) no-repeat center/contain
}
.topGynecology .gynecology__text {
  font-size: 1.7rem;
  line-height: 1.3;
  font-weight: 350;
  letter-spacing: .01em;
  color: #595959;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 20px
}
.topGynecology .gynecology__text > span {
  position: relative;
  display: block;
  padding-left: 15px
}
.topGynecology .gynecology__text > span:before {
  content: "";
  position: absolute;
  top: 11px;
  left: 0;
  width: 5px;
  height: 1px;
  background: -webkit-gradient(linear, left top, left bottom, from(#f39c96), to(#f4b3c3));
  background: -webkit-linear-gradient(top, #f39c96 0%, #f4b3c3 100%);
  background: linear-gradient(180deg, #f39c96 0%, #f4b3c3 100%)
}
.topGynecology .gynecology__text > span > span {
  display: block;
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: 0;
  font-weight: 300;
  color: #595959;
  margin-top: 10px
}
.topCosmetic {
  padding: 90px 0 0;
  position: relative;
  z-index: 1;
  margin: 0 30px 60px
}
@media only screen and (max-width: 767px) {
  .topCosmetic {
    padding: 45px 0 0;
    margin: 0
  }
}
.topCosmetic:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: -webkit-linear-gradient(303.31deg, #fcf2ef 19.83%, #f9f7f4 80.17%);
  background: linear-gradient(146.69deg, #fcf2ef 19.83%, #f9f7f4 80.17%);
  -webkit-filter: blur(1.5px);
  filter: blur(1.5px);
  border-radius: 10px
}
.topCosmetic:after {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translate(-50%);
  width: 100vw;
  height: calc(100% + 60px);
  background: #f9f7f4;
  z-index: -1
}
@media only screen and (max-width: 767px) {
  .topCosmetic:after {
    display: none
  }
}
.topCosmetic .cosmetic__wrap {
  position: relative;
  z-index: 2
}
.topCosmetic .cosmetic .titleMain {
  text-align: center;
  margin-top: -110px
}
@media only screen and (max-width: 767px) {
  .topCosmetic .cosmetic .titleMain {
    margin: 0 0 20px
  }
}
.topCosmetic .cosmetic__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 60px
}
@media only screen and (max-width: 767px) {
  .topCosmetic .cosmetic__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
  }
}
.topCosmetic .cosmetic__item {
  width: calc((100% - 120px) / 3);
  cursor: pointer
}
@media only screen and (max-width: 767px) {
  .topCosmetic .cosmetic__item {
    width: 100%;
    padding: 0 !important
  }
}
.topCosmetic .cosmetic__item:nth-child(2), .topCosmetic .cosmetic__item:nth-child(5) {
  padding-top: 60px
}
.topCosmetic .cosmetic__item:nth-child(3), .topCosmetic .cosmetic__item:nth-child(6) {
  padding-top: 120px
}
@media only screen and (min-width: 768px) {
  .topCosmetic .cosmetic__item:hover .cosmetic__title:after {
    background: url(../img/common/icon/ic_arrow-circle.svg) no-repeat center/contain;
    -webkit-transform: translateY(-50%) scale(1.1);
    transform: translateY(-50%) scale(1.1)
  }
}
.topCosmetic .cosmetic__img {
  position: relative;
  z-index: 1
}
.topCosmetic .cosmetic__img img {
  border-radius: 5px
}
.topCosmetic .cosmetic__img:after {
  content: "";
  position: absolute;
  width: 100%;
  height: 100%;
  bottom: -10px;
  right: -10px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fae5e1), to(#fae1e3));
  background: -webkit-linear-gradient(top, #fae5e1 0%, #fae1e3 100%);
  background: linear-gradient(180deg, #fae5e1 0%, #fae1e3 100%);
  opacity: .6;
  -webkit-filter: blur(1.5px);
  filter: blur(1.5px);
  border-radius: 5px;
  z-index: -1
}
.topCosmetic .cosmetic__content {
  padding: 25px 15px 0
}
.topCosmetic .cosmetic__title {
  font-family: Shippori Mincho, serif;
  font-size: 2.4rem;
  line-height: 1.65;
  letter-spacing: .06em;
  font-weight: 500;
  color: #4d4d4d;
  border-bottom: 1px solid #fae5e1;
  padding: 10px 0;
  margin-bottom: 20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  position: relative
}
.topCosmetic .cosmetic__title:after {
  content: "";
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  right: 0;
  width: 25px;
  height: 25px;
  background: url(../img/common/icon/ic_arrow-circle-gradient.svg) no-repeat center/contain;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out
}
.topCosmetic .slogan {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 90px;
  white-space: nowrap
}
@media only screen and (max-width: 767px) {
  .topCosmetic .slogan {
    gap: 45px;
    margin-top: 45px
  }
}
.topCosmetic .slogan span {
  font-family: Cormorant Garamond, serif;
  font-size: 12rem;
  line-height: 1;
  letter-spacing: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#fae5e1), to(#fae1e3));
  background: -webkit-linear-gradient(top, #fae5e1 0%, #fae1e3 100%);
  background: linear-gradient(180deg, #fae5e1 0%, #fae1e3 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  opacity: .35;
  font-weight: 400;
  -webkit-animation: loopslider-x 81.28s linear infinite;
  animation: loopslider-x 81.28s linear infinite
}
@media only screen and (max-width: 767px) {
  .topCosmetic .slogan span {
    font-size: 6rem
  }
}
.top .topCta {
  background: url(../img/top/cta_bg.png) no-repeat center/cover;
  padding: 90px 0;
  border-radius: 15px 15px 0 0
}
@media only screen and (max-width: 767px) {
  .top .topCta {
    padding: 45px 0
  }
}
.top .topCta .cta .titleMain {
  text-align: center;
  margin-bottom: 30px
}
.top .topCta .cta .titleMain__jp {
  color: #fffdfa
}
.top .topCta .cta .titleMain__en {
  background: -webkit-gradient(linear, left top, left bottom, from(#fffdfa), to(#fffdfa));
  background: -webkit-linear-gradient(top, #fffdfa 0%, #fffdfa 100%);
  background: linear-gradient(180deg, #fffdfa 0%, #fffdfa 100%);
  webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  -webkit-background-clip: text;
  background-clip: text;
  text-fill-color: transparent
}
.top .topCta .cta__box {
  background: rgba(255, 253, 250, .95);
  -webkit-box-shadow: 0px 10px 10px rgba(243, 195, 195, .25);
  box-shadow: 0 10px 10px #f3c3c340;
  -webkit-backdrop-filter: blur(2.5px);
  backdrop-filter: blur(2.5px);
  border-radius: 10px;
  padding: 60px;
    max-width:540px;
    margin:auto;
}
@media only screen and (max-width: 767px) {
  .top .topCta .cta__box {
    padding: 40px 20px
  }
}
.top .topCta .cta__phone {
  text-align: center;
  line-height: 1;
  border-bottom: 1px solid #fae5e1;
  padding-bottom: 30px;
  margin-bottom: 30px
}
.top .topCta .cta__phone .number {
  display: block;
  font-family: "Source Serif 4", serif;
  font-size: 4.8rem;
  line-height: 1;
  letter-spacing: .04em;
  font-weight: 400;
  color: #595959;
  padding: 10px 0
}
@media only screen and (max-width: 767px) {
  .top .topCta .cta__phone .number {
    font-size: 3.2rem
  }
}
.top .topCta .cta__phone .number span {
  font-size: 3.3rem
}
@media only screen and (max-width: 767px) {
  .top .topCta .cta__phone .number span {
    font-size: 2rem
  }
}
.top .topCta .cta__phone .text {
  font-size: 1.5rem;
  font-weight: 300;
  color: #757575;
  letter-spacing: .03em
}
.top .topCta .cta__gr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 45px
}
@media only screen and (max-width: 767px) {
  .top .topCta .cta__gr {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px
  }
}
.top .topCta .cta__gr .btn {
  width: 100%;
  max-width: 100%
}
.top .topCta .cta__gr .btn a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  line-height: 1;
  font-size: 2.1rem;
  padding: 27px 33px
}
@media only screen and (max-width: 767px) {
  .top .topCta .cta__gr .btn a {
    padding: 15px 30px;
    font-size: 1.8rem
  }
}
.top .topCta .cta__gr .btn a span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 15px;
  position: relative;
  font-weight: 700
}
@media only screen and (max-width: 767px) {
  .top .topCta .cta__gr .btn a span {
    gap: 10px
  }
}
@media only screen and (min-width: 768px) {
  .top .topCta .cta__gr .btn.is-web:hover {
    background: -webkit-linear-gradient(308.05deg, #5fbf5a 12.27%, #93cc78 87.73%);
    background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%)
  }
  .top .topCta .cta__gr .btn.is-web:hover a:before {
    background: -webkit-linear-gradient(308.05deg, #5fbf5a 12.27%, #93cc78 87.73%);
    background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%)
  }
  .top .topCta .cta__gr .btn.is-web:hover a span {
    background: -webkit-linear-gradient(308.05deg, #fffefc 12.27%, #fffefc 87.73%);
    background: linear-gradient(141.95deg, #fffefc 12.27%, #fffefc 87.73%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent
  }
  .top .topCta .cta__gr .btn.is-web:hover a span:before {
    background: url(../img/common/icon/ic_calendar-white.svg) no-repeat center/contain
  }
  .top .topCta .cta__gr .btn.is-web:hover a:after {
    background: -webkit-linear-gradient(308.05deg, #fffefc 12.27%, #fffefc 87.73%);
    background: linear-gradient(141.95deg, #fffefc 12.27%, #fffefc 87.73%)
  }
}
@media only screen and (min-width: 768px) {
  .top .topCta .cta__gr .btn.is-web a:hover {
    background: -webkit-linear-gradient(308.05deg, #5fbf5a 12.27%, #93cc78 87.73%);
    background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%)
  }
}
.top .topCta .cta__gr .btn.is-web a:after {
  background: -webkit-linear-gradient(308.05deg, #5fbf5a 12.27%, #93cc78 87.73%);
  background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%)
}
.top .topCta .cta__gr .btn.is-web a span {
  background: -webkit-linear-gradient(308.05deg, #5fbf5a 12.27%, #93cc78 87.73%);
  background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent
}
.top .topCta .cta__gr .btn.is-web a span:before {
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 30px;
  height: 20px;
  background: url(../img/common/icon/ic_calendar.svg) no-repeat center/contain
}
@media only screen and (min-width: 768px) {
  .top .topCta .cta__gr .btn.is-mail:hover a span {
    background: -webkit-linear-gradient(308.05deg, #fffefc 12.27%, #fffefc 87.73%);
    background: linear-gradient(141.95deg, #fffefc 12.27%, #fffefc 87.73%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
    text-fill-color: transparent
  }
  .top .topCta .cta__gr .btn.is-mail:hover a span:before {
    background: url(../img/common/icon/ic_mail-white.svg) no-repeat center/contain
  }
}
.top .topCta .cta__gr .btn.is-mail a span {
  background: -webkit-gradient(linear, left top, left bottom, from(#f39c96), to(#f4b3c3));
  background: -webkit-linear-gradient(top, #f39c96 0%, #f4b3c3 100%);
  background: linear-gradient(180deg, #f39c96 0%, #f4b3c3 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent
}
.top .topCta .cta__gr .btn.is-mail a span:before {
  content: "";
  display: block;
  top: 0;
  left: 0;
  width: 30px;
  height: 20px;
  background: url(../img/common/icon/ic_mail.svg) no-repeat center/contain
}
.topAddress {
  padding: 90px 0;
  background: #fcf6f4
}
@media only screen and (max-width: 767px) {
  .topAddress {
    padding: 45px 0
  }
}
.topAddress .address {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 60px
}
@media only screen and (max-width: 767px) {
  .topAddress .address {
    gap: 30px
  }
}
.topAddress .address__time, .topAddress .address__iframe {
  width: calc(50% - 30px);
  min-width: 540px
}
@media only screen and (max-width: 767px) {
  .topAddress .address__time, .topAddress .address__iframe {
    min-width: auto;
    width: 100%
  }
}
@media only screen and (max-width: 767px) {
  .topAddress .address__time img {
    width: 100%
  }
}
.topAddress .address__iframe iframe {
  width: 100%;
  height: 270px
}
.topAddress .address__text {
  font-size: 1.7rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  color: #595959;
  line-height: 1;
  letter-spacing: .01em;
  padding: 15px 30px;
  gap: 30px
}
@media only screen and (max-width: 767px) {
  .topAddress .address__text {
    padding: 15px 0;
    gap: 15px;
    font-size: 1.5rem;
    line-height: normal;
    -webkit-box-pack: end;
    -ms-flex-pack: end;
    justify-content: flex-end
  }
}
.topAddress .address__text a {
  background: -webkit-gradient(linear, left top, left bottom, from(#f39c96), to(#f4b3c3));
  background: -webkit-linear-gradient(top, #f39c96 0%, #f4b3c3 100%);
  background: linear-gradient(180deg, #f39c96 0%, #f4b3c3 100%);
  border-radius: 50px;
  padding: 2px 10px;
  width: 156px;
  text-align: center;
  font-size: 1.5rem;
  line-height: 1.6;
  font-weight: 700;
  letter-spacing: .03em;
  color: #fffefc;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
@media only screen and (max-width: 767px) {
  .topAddress .address__text a {
    width: 100px;
    font-size: 1.3rem
  }
}
@-webkit-keyframes loopslider-x {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translateZ(0)
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0)
  }
}
@keyframes loopslider-x {
  0% {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translateZ(0)
  }
  to {
    -webkit-transform: translate3d(-100%, 0, 0);
    transform: translate3d(-100%, 0, 0)
  }
}
.message {
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .message {
    padding: 60px 0
  }
}
.message__wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 60px
}
@media only screen and (max-width: 767px) {
  .message__wrap {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.message__img {
  margin-left: calc(-.5*(100vw - 1140px));
  max-width: 31.25vw
}
@media only screen and (max-width: 1180px) {
  .message__img {
    margin-left: -20px
  }
}
@media only screen and (max-width: 1024px) {
  .message__img {
    max-width: 50%
  }
}
@media only screen and (max-width: 767px) {
  .message__img {
    max-width: calc(100% + 40px);
    margin-right: -20px
  }
}
.message__img img {
  min-height: 39.0625vw;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 0 5px 5px 0
}
@media only screen and (max-width: 767px) {
  .message__img img {
    border-radius: 0;
    min-height: auto
  }
}
.message__content {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  max-width: 750px
}
@media only screen and (max-width: 1024px) {
  .message__content {
    max-width: 50%
  }
}
@media only screen and (max-width: 767px) {
  .message__content {
    max-width: 100%
  }
}
.message__text {
  line-height: 2;
  letter-spacing: .06em;
  color: #595959
}
.message__text p + p {
  margin-top: 25px
}
.doctor {
  padding: 120px 0;
  background: #fef8f6
}
@media only screen and (max-width: 767px) {
  .doctor {
    padding: 60px 0
  }
}
.doctor__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 90px
}
@media only screen and (max-width: 767px) {
  .doctor__list {
    gap: 60px
  }
}
.doctor__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
  -ms-flex-align: start;
  align-items: flex-start;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 60px
}
@media only screen and (max-width: 767px) {
  .doctor__item {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 30px
  }
}
.doctor__title {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 30px
}
@media only screen and (max-width: 1140px) {
  .doctor__title {
    width: calc(31.5vw - 20px)
  }
}
@media only screen and (max-width: 1024px) {
  .doctor__title {
    max-width: 50%;
    width: auto
  }
}
@media only screen and (max-width: 767px) {
  .doctor__title {
    width: 100%;
    max-width: 100%
  }
}
.doctor__title .tag {
  width: 60px;
  height: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background: -webkit-linear-gradient(135deg, #f8cebd 0%, #f89ca8 95%);
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  border-radius: 3px;
  font-family: Shippori Mincho, serif;
  font-size: 2.1rem;
  line-height: 1.2;
  letter-spacing: 0;
  color: #fffefc;
  text-shadow: 0px 0px 3px #f37a73;
  font-weight: 700;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.doctor__title .tit {
  font-family: Shippori Mincho, serif;
  font-size: 3rem;
  line-height: 1.45;
  letter-spacing: .03em;
  font-weight: 400;
  color: #807374
}
.doctor__title .tit span {
  display: block;
  font-size: 1.4rem;
  font-weight: 300;
  letter-spacing: .04em;
  color: #757575;
  margin: 3px 0 7px
}
.doctor__content {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1;
  max-width: 750px
}
@media only screen and (max-width: 1024px) {
  .doctor__content {
    max-width: calc(50% - 40px)
  }
}
@media only screen and (max-width: 767px) {
  .doctor__content {
    max-width: 100%;
    width: 100%
  }
}
.doctor__lst {
  border-left: 1px solid #f5d6d6;
  padding-left: 30px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 10px
}
.doctor__lst li {
  font-size: 1.7rem;
  line-height: 2;
  letter-spacing: .06em;
  color: #595959
}
.doctor__box {
  margin-top: 30px;
  background: #fffdfa;
  border-radius: 3px;
  border: 1px solid #fffafa;
  padding: 30px 40px
}
.doctor__box-tit {
  font-family: Shippori Mincho, serif;
  font-size: 2.1rem;
  line-height: 1.45;
  font-weight: 500;
  letter-spacing: .04em;
  color: #807374;
  border-bottom: 1px dashed #f3dddb;
  padding-bottom: 10px;
  margin-bottom: 20px
}
.doctor__box-txt {
  line-height: 2;
  letter-spacing: .06em;
  color: #595959
}
.doctor__box-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 15px
}
.doctor__box-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: .06em;
  width: calc(33.3333333333% - 10px);
  min-width: 210px
}
.doctor__box-list li:before {
  content: "";
  display: block;
  position: relative;
  top: 12px;
  width: 6px;
  height: 6px;
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%);
  border-radius: 50%
}
.doctor__box-list li.flex-1 {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
.summary {
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .summary {
    padding: 60px 0
  }
}
.summary__slide {
  margin: 0 calc(-.5*(100vw - 1140px))
}
@media only screen and (max-width: 1180px) {
  .summary__slide {
    margin: 0 -20px
  }
}
.summary__slide .swiper-slide {
  max-width: 52.5vw;
  margin: 0 2.8125vw
}
@media only screen and (max-width: 767px) {
  .summary__slide .swiper-slide {
    max-width: calc(100% - 80px)
  }
}
.summary__slide .swiper-slide img {
  border-radius: 5px
}
.summary__gr {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-top: 30px;
  gap: 30px
}
.summary__gr .swiper-button-prev, .summary__gr .swiper-button-next, .summary__gr .swiper-pagination {
  position: relative;
  top: auto;
  left: auto;
  bottom: auto;
  right: auto;
  width: auto;
  margin: 0
}
.summary__gr .swiper-button-prev:after, .summary__gr .swiper-button-next:after, .summary__gr .swiper-pagination:after {
  display: none
}
.summary__gr .swiper-button-next {
  -webkit-transform: rotate(180deg);
  transform: rotate(180deg)
}
.summary__gr .swiper-pagination {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 15px;
  line-height: 1
}
.summary__gr .swiper-pagination .swiper-pagination-bullet {
  width: 5px;
  height: 5px;
  margin: 0;
  line-height: 1;
  background: #e5dfdf;
  opacity: 1
}
.summary__gr .swiper-pagination .swiper-pagination-bullet-active {
  background: #b0a8a8
}
.summary .list {
  margin-top: 90px
}
@media only screen and (max-width: 767px) {
  .summary .list {
    margin-top: 45px
  }
}
.about .topFeatures {
  padding: 120px 0 150px;
  background: #fef8f6
}
@media only screen and (max-width: 767px) {
  .about .topFeatures {
    padding: 60px 0 75px
  }
}
.about .topFeatures:after {
  display: none
}
.about .features__bl {
  position: relative;
  z-index: 1
}
.about .features__bl + .features__bl {
  margin-top: 80px
}
@media only screen and (max-width: 767px) {
  .about .features__bl + .features__bl {
    margin-top: 40px
  }
}
.about .features__bl:nth-child(even) {
  padding-right: 60px
}
@media only screen and (max-width: 1180px) {
  .about .features__bl:nth-child(even) {
    padding: 0
  }
}
.about .features__bl:nth-child(odd) {
  padding-left: 60px
}
@media only screen and (max-width: 1180px) {
  .about .features__bl:nth-child(odd) {
    padding: 0
  }
}
.about .features__bl:nth-child(odd) .features__img {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2
}
.about .features__bl:nth-child(odd) .features__content {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1
}
.about .features__bl:nth-child(odd) .features__text:after {
  display: none
}
.access {
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .access {
    padding: 60px 0
  }
}
.access__wrap {
  max-width: 840px;
  margin: 0 auto
}
.access__map iframe {
  width: 100%;
  height: 465px;
  border-radius: 5px
}
@media only screen and (max-width: 767px) {
  .access__map iframe {
    height: 230px
  }
}
.access__content {
  margin-top: 60px
}
@media only screen and (max-width: 767px) {
  .access__content {
    margin-top: 30px
  }
}
.access__table {
  width: 100%;
  border-collapse: collapse;
  margin-top: -25px
}
.access__table tr:last-child td:first-child {
  border-bottom: 1px solid #f2e8e7
}
.access__table td {
  line-height: 1.5;
  letter-spacing: .06em;
  color: #595959;
  padding: 25px 0;
  border-bottom: 1px solid #f2e8e7
}
@media only screen and (max-width: 767px) {
  .access__table td {
    display: block
  }
}
.access__table td:first-child {
  font-weight: 500
}
.access__table td:empty {
  border-bottom: none
}
@media only screen and (max-width: 767px) {
  .access__table td:empty {
    display: none
  }
}
.layout {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  gap: 30px
}
@media only screen and (max-width: 767px) {
  .layout {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.layout-content {
  max-width: 750px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
@media only screen and (max-width: 767px) {
  .layout-content {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
}
.layout-sidebar {
  width: 300px
}
@media only screen and (max-width: 767px) {
  .layout-sidebar {
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1;
    width: 100%
  }
}
.layout-sidebar .sidebar {

  background: #fffefc;
  padding: 30px;
  -webkit-box-shadow: 0px 6px 5px #f2e8e7;
  box-shadow: 0 6px 5px #f2e8e7;
  border-radius: 10px
}
.layout-sidebar .sidebar ul {
  margin: -15px 0
}
.layout-sidebar .sidebar li:not(:last-child) a {
  border-bottom: 1px solid rgba(242, 232, 231, .6)
}
.layout-sidebar .sidebar a {
  display: block;
  font-size: 1.5rem;
  line-height: 1.3;
  letter-spacing: .06em;
  padding: 15px 0;
  color: #807374
}
.news__wrap {
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .news__wrap {
    padding: 60px 0
  }
}
.news-detail .list {
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column
}
.news-detail .list.is-news .list-title {
  font-family: Shippori Mincho, serif;
  font-size: 3rem;
  line-height: 1.45;
  font-weight: 400;
  letter-spacing: .03em;
  color: #807374;
  margin: 15px 0 0
}
@media only screen and (max-width: 767px) {
  .news-detail .list.is-news .list-title {
    font-size: 2.1rem
  }
}
.news-detail .wp-content {
  margin-top: 40px
}
@media only screen and (max-width: 767px) {
  .news-detail .wp-content {
    margin-top: 20px
  }
}
.news-detail .wp-content img {
  border-radius: 10px;
  margin-bottom: 45px
}
@media only screen and (max-width: 767px) {
  .news-detail .wp-content img {
    margin-bottom: 30px
  }
}
.news-detail .wp-content p {
  font-size: 1.7rem;
  line-height: 2;
  font-weight: 400;
  letter-spacing: .06em;
  color: #595959
}
.news-detail .wp-content p + p {
  margin-top: 25px
}
.anchorLink {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 30px
}
.anchorLink li {
  width: calc(33.3333333333% - 20px)
}
@media only screen and (max-width: 1024px) {
  .anchorLink li {
    width: calc(50% - 15px)
  }
}
@media only screen and (max-width: 767px) {
  .anchorLink li {
    width: 100%
  }
}
.anchorLink li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
  font-size: 1.6rem;
  line-height: 1.5625;
  letter-spacing: .06em;
  padding: 25px 30px;
  gap: 15px;
  color: #4d4d4d;
  background: #fffefc;
  -webkit-box-shadow: 0px 6px 5px #f2e8e7;
  box-shadow: 0 6px 5px #f2e8e7;
  border-radius: 5px;
  height: 100%
}
.anchorLink li a:after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon/ic_arrow-circle-gray.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.menu-anchorLink {
  background: #fcf9f7;
  padding: 105px 0 120px
}
@media only screen and (max-width: 767px) {
  .menu-anchorLink {
    padding: 60px 0
  }
}
.menu-section {
  padding: 90px 0 120px
}
.menu-section:nth-of-type(even) {
  background: #FCF6F4
}
@media only screen and (max-width: 767px) {
  .menu-section {
    padding: 45px 0 60px
  }
}
.menu-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 60px
}
@media only screen and (max-width: 767px) {
  .menu-list {
    gap: 30px
  }
}
.menu-note {
  text-align: center;
  font-smooth: 2.1rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #bd7979;
  margin-bottom: 30px
}
.menu-card {
  padding: 25px 40px;
  -webkit-box-shadow: 10px 10px 6px rgba(249, 233, 233, .5);
  box-shadow: 10px 10px 6px #f9e9e980;
  border-radius: 10px;
  width: calc(33.3333333333% - 40px);
  overflow: hidden;
  position: relative;
  background: #FFFEFC
}
@media only screen and (max-width: 1024px) {
  .menu-card {
    width: calc(50% - 30px)
  }
}
@media only screen and (max-width: 767px) {
  .menu-card {
    width: 100%;
    padding: 20px
  }
}
.menu-card:after {
  content: "";
  position: absolute;
  inset: 0;
  padding: 1px;
  border-radius: 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(#F5EEEC), to(rgba(245, 238, 236, 0)));
  background: -webkit-linear-gradient(top, #F5EEEC 0%, rgba(245, 238, 236, 0) 100%);
  background: linear-gradient(180deg, #F5EEEC 0%, rgba(245, 238, 236, 0) 100%);
  -webkit-mask: -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff)) content-box, -webkit-gradient(linear, left top, left bottom, color-stop(0, #fff));
  -webkit-mask: -webkit-linear-gradient(#fff 0 0) content-box, -webkit-linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
  pointer-events: none
}
.menu-card__title {
  font-family: Shippori Mincho, serif;
  font-size: 2.4rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: .04em;
  text-align: center;
  margin-bottom: 20px;
  color: #807374
}


.menu-card__img{
    position:relative;
}

.menu-card__img span{
    
    position:absolute;
    bottom:0;
    right:0;
    font-size:1.4rem;
    font-weight:500;
    display:inline;
    background:#fff;
    border-bottom:1px solid #f2e8e7;
    border-right:1px solid #f2e8e7;
    border-radius:0 0 5px 0;
    padding:0 5px;
}

.menu-card__img img {
  border-radius: 5px;
  width: 100%
}
.menu-card__table {
  width: 100%;
  border-collapse: collapse
}
.menu-card__table td {
  line-height: 1.5;
  letter-spacing: .06em;
  color: #595959;
  border-bottom: 1px solid #f2e8e7;
  padding: 15px 0;
  text-align: right
}
.menu-card__table td:first-child {
  font-weight: 500;
  width: 80px;
  text-align: left
}
.menu-card__table td span {
  font-family: Shippori Mincho, serif;
  font-size: 2.7rem;
  margin-right: 5px
}
.menu-card__table td span.note {
  display: block;
  font-size: 1.4rem;
  color: #757575
}
.menu-card__note {
  font-size: 1.4rem;
  line-height: 1.5;
  letter-spacing: .06em;
  color: #757575;
  text-align: right;
  margin-top: 5px
}
.support-for-people-with-cancer .list .card {
  padding: 50px
}
@media only screen and (max-width: 1024px) {
  .support-for-people-with-cancer .list .card {
    padding: 20px
  }
}
.support-for-people-with-cancer .list .card__content {
  padding: 0 10px;
  margin-top: 45px
}
@media only screen and (max-width: 767px) {
  .support-for-people-with-cancer .list .card__content {
    margin-top: 20px
  }
}
.support-for-people-with-cancer .list .card__img img {
  border-radius: 5px
}
.support-for-people-with-cancer .list .card__title {
  font-size: 2.1rem
}
.gynecology-obstetrics .topGynecology {
  padding: 90px 0 120px
}
@media only screen and (max-width: 767px) {
  .gynecology-obstetrics .topGynecology {
    padding: 45px 0 60px
  }
}
.gynecology-obstetrics .topGynecology .gynecology__text > span:before {
  width: 4px;
  height: 4px;
  border-radius: 50%;
  top: 9px
}
.gynecology-obstetrics .topGynecology .gynecology__inner:after {
  bottom: 0;
  right: 0
}
.gynecology-obstetrics .topGynecology .gynecology__item {
  border-radius: 10px 10px 5px;
  overflow: hidden
}
.motto {
  padding: 120px 0;
  background: #ffffff url(../img/gynecology-obstetrics/checkups.jpg) no-repeat top right
}
.motto.is-surgery {
  background: url(../img/gynecology-obstetrics/surgery.jpg) no-repeat top right/cover
}
@media only screen and (max-width: 767px) {
  .motto.is-surgery {
    padding: 60px 0
  }
}
@media only screen and (max-width: 767px) {
  .motto {
    padding: 53.3333333333vw 0 60px;
    background-size: contain
  }
}
.motto__title {
  font-family: Shippori Mincho, serif;
  font-size: 2.7rem;
  line-height: 1.8;
  letter-spacing: .04em;
  color: #807374;
  font-weight: 400;
  margin-bottom: 60px
}
@media only screen and (max-width: 767px) {
  .motto__title {
    font-size: 2.4rem;
    margin-bottom: 30px
  }
}
@media only screen and (max-width: 374px) {
  .motto__title {
    font-size: 2rem
  }
}
.motto__text {
  line-height: 2.2;
  letter-spacing: .09em
}
.motto__text + .motto__text {
  margin-top: 25px
}
@media only screen and (max-width: 767px) {
  .motto__text + .motto__text {
    margin-top: 10px
  }
}
.checkups-list {
  background: #fcf9f7;
  padding: 105px 0 120px
}
@media only screen and (max-width: 767px) {
  .checkups-list {
    padding: 60px 0
  }
}
.checkups-list .list .card {
  width: calc(50% - 30px)
}
@media only screen and (max-width: 767px) {
  .checkups-list .list .card {
    width: 100%
  }
}
.offer {
  padding: 120px 0;
  background: -webkit-linear-gradient(351.54deg, #fdf3f1 .51%, #fbebe8 50%, #fae1e3 99.49%);
  background: linear-gradient(98.46deg, #fdf3f1 .51%, #fbebe8 50%, #fae1e3 99.49%)
}
@media only screen and (max-width: 767px) {
  .offer {
    padding: 60px 0
  }
}
.offer__wrap {
  background: -webkit-gradient(linear, right top, left top, from(rgba(255, 253, 250, .25)), color-stop(15%, #fffdfa), color-stop(85%, #fffdfa), to(rgba(255, 253, 250, .25)));
  background: -webkit-linear-gradient(right, rgba(255, 253, 250, .25) 0%, #fffdfa 15%, #fffdfa 85%, rgba(255, 253, 250, .25) 100%);
  background: linear-gradient(270deg, rgba(255, 253, 250, .25) 0%, #fffdfa 15%, #fffdfa 85%, rgba(255, 253, 250, .25) 100%);
  -webkit-box-shadow: 0px 0px 5px #f2e8e7;
  box-shadow: 0 0 5px #f2e8e7;
  border-radius: 15px;
  padding: 60px 20px
}
@media only screen and (max-width: 767px) {
  .offer__wrap {
    padding: 20px
  }
}
.offer__inner {
  max-width: 840px;
  margin: 0 auto
}
.offer__title {
  font-weight: 400;
  line-height: 2;
  letter-spacing: .06em;
  color: #807374;
  margin-bottom: 30px
}
.offer__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 30px
}
.offer__item {
  width: calc(33.3333333333% - 20px);
  min-width: 260px;
  border: 1px solid #f4cbcb;
  border-radius: 3px;
  padding: 15px 25px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 20px
}
@media only screen and (max-width: 767px) {
  .offer__item {
    width: 100%;
    min-width: auto
  }
}
.offer__number {
  width: 40px;
  height: 45px;
  border-right: 1px solid #f4cbcb;
  font-family: Shippori Mincho, serif;
  font-size: 1.7rem;
  line-height: 1.5;
  font-weight: 400;
  letter-spacing: .06em;
  color: #f39f9d;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.offer__text {
  line-height: 1.5;
  font-weight: 500;
  color: #807374
}
.offer__txt {
  line-height: 2;
  letter-spacing: .06em;
  color: #807374
}
.offer__txt + .offer__txt {
  margin-top: 30px
}
.offer-box {
  padding: 30px 60px;
  background: #fcf6f4;
  border-radius: 5px;
  margin-top: 45px
}
@media only screen and (max-width: 767px) {
  .offer-box {
    padding: 20px
  }
}
.offer-box__title {
  font-family: Shippori Mincho, serif;
  font-size: 2.1rem;
  font-weight: 500;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #807374;
  padding-bottom: 5px;
  border-bottom: 1px dashed #f5d6d6;
  margin-bottom: 15px
}
.offer-box__text {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: .06em;
  color: #807374
}
.designate {
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .designate {
    padding: 60px 0
  }
}
.designate__wrap {
  max-width: 840px;
  margin: 0 auto
}
.designate__note {
  text-align: center;
  font-size: 2.1rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #bd7979;
  margin-bottom: 30px
}
.designate__text {
  line-height: 2;
  letter-spacing: .06em;
  color: #595959
}
.designate__text + .designate__text {
  margin-top: 30px
}
.designate__text.is-right {
  text-align: right
}
.designate-box {
  border: 1px solid #f3dddb;
  border-radius: 5px;
  padding: 45px 60px
}
@media only screen and (max-width: 767px) {
  .designate-box {
    padding: 20px
  }
}
.designate-box + .designate-box {
  margin-top: 30px
}
.designate-box + .designate__text {
  margin-top: 45px
}
@media only screen and (max-width: 767px) {
  .designate-box + .designate__text {
    margin-top: 30px
  }
}
.designate-box__title {
  font-size: 2.1rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #807374;
  font-weight: 400;
  padding-bottom: 10px;
  border-bottom: 1px dashed #f3dddb;
  margin-bottom: 30px
}
.designate-box__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 17px
}
@media only screen and (max-width: 767px) {
  .designate-box__list {
    gap: 10px
  }
}
.designate-box__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: .06em;
  color: #595959;
  width: calc(20% - 14px)
}
@media only screen and (max-width: 1024px) {
  .designate-box__list li {
    width: calc(25% - 13px)
  }
}
@media only screen and (max-width: 767px) {
  .designate-box__list li {
    width: calc(50% - 5px)
  }
}
.designate-box__list li:before {
  content: "";
  display: block;
  width: 13px;
  height: 13px;
  border-radius: 50%;
  background: #fbe7e5;
  position: relative;
  top: 9px
}
.designate-bl {
  margin-top: 120px
}
@media only screen and (max-width: 767px) {
  .designate-bl {
    margin-top: 60px
  }
}
.designate-bl + .designate-bl {
  margin-top: 75px
}
@media only screen and (max-width: 767px) {
  .designate-bl + .designate-bl {
    margin-top: 30px
  }
}
.designate-bl__title {
  font-family: Shippori Mincho, serif;
  font-size: 2.4rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #807374;
  font-weight: 500;
  padding-bottom: 10px;
  border-bottom: 1px dashed #f3dddb;
  margin-bottom: 20px
}
.designate-bl__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  gap: 15px
}
.designate-bl__list li {
  line-height: 1.7;
  letter-spacing: .06em;
  color: #595959;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px
}
.designate-bl__list li:before {
  content: "";
  display: block;
  position: relative;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%);
  top: 12px;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.designate-bl__list li span span {
  display: block;
  font-size: 1.5rem
}
.designate-bl__list li span span.is-bold {
  display: inline-block;
  font-size: 1.7rem;
  font-weight: 700;
  color: #bd7979
}
.designate-bl__list li.no-before:before {
  display: none
}
.designate-bl__text {
  line-height: 1.8;
  letter-spacing: .06em;
  color: #595959
}
.designate-bl__text + .designate-bl__list {
  margin-top: 30px
}
.cate {
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .cate {
    padding: 60px 0
  }
}
.cate__wrap {
  max-width: 840px;
  margin: 0 auto
}
.cate__row + .cate__row {
  margin-top: 120px
}
@media only screen and (max-width: 767px) {
  .cate__row + .cate__row {
    margin-top: 60px
  }
}
.cate__text {
  line-height: 2;
  color: #595959;
  letter-spacing: .06em
}
.cate__table {
  overflow-x: auto
}
.cate__table table {
  width: 100%;
  border-collapse: collapse;
  min-width: 840px
}
.cate__table table th {
  line-height: 1.5294117647;
  color: #807374;
  letter-spacing: .06em;
  background: #fdf2f1;
  padding: 15px 20px
}
.cate__table table th:nth-child(1), .cate__table table th:nth-child(3), .cate__table table th:nth-child(4) {
  width: 20%
}
.cate__table table td {
  border: 1px solid #f7e3e3;
  padding: 15px 20px;
  font-size: 1.5rem;
  line-height: 2;
  color: #595959;
  letter-spacing: .06em
}
.cate__table table td:first-child:not(:only-child) {
  background: #fdf2f1;
  line-height: 1.5294117647;
  color: #807374;
  border-left: none;
  font-size: 1.7rem
}
.cate__table table td .price {
  font-family: Shippori Mincho, serif;
  font-size: 2.1rem;
  font-weight: 500;
  color: #807374;
  text-align: center;
  line-height: 1.45;
  letter-spacing: .04em;
  display: block
}
.cate .designate-box {
  margin-top: 30px
}
.cate .designate-box__list {
  gap: 15px 30px
}
@media only screen and (max-width: 767px) {
  .cate .designate-box__list {
    gap: 15px
  }
}
.cate .designate-box__list li {
  width: calc(33.3333333333% - 20px);
  gap: 15px
}
@media only screen and (max-width: 767px) {
  .cate .designate-box__list li {
    width: 100%
  }
}
.cate .designate-box__list li:before {
  width: 6px;
  height: 6px;
  top: 12px;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.cate .designate-box__list li.is-half {
  width: calc(50% - 15px)
}
@media only screen and (max-width: 767px) {
  .cate .designate-box__list li.is-half {
    width: 100%
  }
}
.cate .designate-box__list li.is-full {
  width: 100%
}
.cate .designate-box__list li.border-bt {
  padding-bottom: 10px;
  border-bottom: 1px dashed #f3dddb
}
.cate .designate-box__text {
  font-size: 1.5rem;
  line-height: 2;
  letter-spacing: .06em;
  color: #595959;
  margin-top: 30px
}
.cate .designate-box__text.center {
  text-align: center
}
.menstrual-disorders {
  position: relative
}
.menstrual-disorders__side {
  position: sticky;
  background: #fffefc;
  -webkit-box-shadow: 0px 4px 5px #f2e8e7;
  box-shadow: 0 4px 5px #f2e8e7;
  border-radius: 0 10px 10px 0;
  padding: 30px;
  width: 300px;
  top: 120px;
  -webkit-transform: translateX(-100%);
  transform: translate(-100%);
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  z-index: 99;
  margin-top: 120px
}
.menstrual-disorders__side.is-active {
  -webkit-transform: translateX(0);
  transform: translate(0)
}
.menstrual-disorders__side.is-active .menstrual-disorders__btn {
  display: none
}
.menstrual-disorders__btn {
  position: absolute;
  right: -30px;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 30px;
  height: 60px;
  background: #fffefc;
  -webkit-box-shadow: 0px 4px 5px #f2e8e7;
  box-shadow: 0 4px 5px #f2e8e7;
  border-radius: 0 10px 10px 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  cursor: pointer
}
.menstrual-disorders__btn img {
  width: 24px
}
.menstrual-disorders__list li a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  padding: 15px 0;
  border-bottom: 1px dashed #f2e8e7;
  font-size: 1.5rem;
  line-height: 1.45;
  letter-spacing: .06em;
  color: #807374
}
.menstrual-disorders__list li a:before {
  content: "";
  display: block;
  position: relative;
  top: 1px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon/ic_arrow-circle-gray.svg) no-repeat center/contain
}
.menstrual-disorders__section {
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .menstrual-disorders__section {
    padding: 60px 0
  }
}
.menstrual-disorders__section#menstrual-disorders01 {
  margin-top: -360px
}
.menstrual-disorders__section:nth-of-type(odd) {
  background: #fef8f6
}
.menstrual-disorders__section:nth-of-type(odd) .title04 {
  background: -webkit-linear-gradient(333.43deg, #ffeceb 16.67%, #fff0eb 83.33%);
  background: linear-gradient(116.57deg, #ffeceb 16.67%, #fff0eb 83.33%)
}
.menstrual-disorders__section:nth-of-type(odd) .cate .designate-box__list li:before {
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%)
}
.menstrual-disorders__wrap {
  max-width: 840px;
  margin: 0 auto
}
.menstrual-disorders__box {
  background: #fffefc;
  -webkit-box-shadow: 0px 0px 5px #f0e1e0;
  box-shadow: 0 0 5px #f0e1e0;
  border-radius: 5px;
  padding: 45px 60px
}
@media only screen and (max-width: 767px) {
  .menstrual-disorders__box {
    padding: 20px
  }
}
.menstrual-disorders__row {
  margin-top: 120px
}
@media only screen and (max-width: 767px) {
  .menstrual-disorders__row {
    margin-top: 60px
  }
}
.menstrual-disorders .designate-bl {
  margin-top: 60px
}
@media only screen and (max-width: 767px) {
  .menstrual-disorders .designate-bl {
    margin-top: 30px
  }
}
.menstrual-disorders .designate-bl + .designate-bl {
  margin-top: 75px
}
@media only screen and (max-width: 767px) {
  .menstrual-disorders .designate-bl + .designate-bl {
    margin-top: 40px
  }
}
.menstrual-disorders .cate {
  padding: 0
}
.typical {
  background: #fffdfa;
  border-radius: 5px;
  padding: 45px 60px
}
@media only screen and (max-width: 767px) {
  .typical {
    padding: 20px
  }
}
.typical-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 60px
}
@media only screen and (max-width: 767px) {
  .typical-list {
    gap: 30px
  }
}
.typical-list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-family: Shippori Mincho, serif;
  font-size: 2.1rem;
  line-height: 1.45;
  letter-spacing: .04em;
  font-weight: 600;
  color: #807374;
  width: 200px;
  height: 200px;
  background: -webkit-gradient(linear, left bottom, left top, from(#f9f7f4), to(#fffdfa));
  background: -webkit-linear-gradient(bottom, #f9f7f4 0%, #fffdfa 100%);
  background: linear-gradient(0deg, #f9f7f4 0%, #fffdfa 100%);
  -webkit-box-shadow: 0px 6px 5px #f2e8e7;
  box-shadow: 0 6px 5px #f2e8e7;
  border-radius: 353px;
  min-width: 200px
}
.therapy__row {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px;
  margin-top: 30px
}
.therapy__row + .therapy__row {
  margin-top: 60px
}
.therapy__stt {
  width: 30px;
  height: 30px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  background: -webkit-gradient(linear, left top, left bottom, from(#fae5e1), to(#fae1e3));
  background: -webkit-linear-gradient(top, #fae5e1 0%, #fae1e3 100%);
  background: linear-gradient(180deg, #fae5e1 0%, #fae1e3 100%);
  border-radius: 50%;
  font-family: Shippori Mincho, serif;
  font-size: 1.4rem;
  letter-spacing: .04em;
  color: #807374;
  text-align: center
}
.therapy__title {
  font-size: 2.1rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #807374;
  font-weight: 400
}
.therapy-bl {
  margin-top: 30px;
  border-left: 1px solid #f5d6d6;
  padding-left: 30px
}
.therapy-bl__title {
  font-size: 1.8rem;
  line-height: 1.45;
  letter-spacing: .06em;
  color: #807374
}
.therapy__text {
  line-height: 2;
  letter-spacing: .06em;
  color: #595959;
  margin-top: 15px
}
.therapy-box {
  background: #fffdfa;
  -webkit-box-shadow: 0px 0px 5px #faebeb;
  box-shadow: 0 0 5px #faebeb;
  border-radius: 5px;
  padding: 15px 30px;
  margin-top: 30px
}
.fertility-consultation, .menopause-syndrome, .pill-consultation, .contraception, .prenatal-checkup, .menstrual-cycle-adjustment, .sti-testing, .cervical-laser-ablation, .termination-of-pregnancy, .period-support-for-students {
  padding: 120px 0 150px
}
@media only screen and (max-width: 767px) {
  .fertility-consultation, .menopause-syndrome, .pill-consultation, .contraception, .prenatal-checkup, .menstrual-cycle-adjustment, .sti-testing, .cervical-laser-ablation, .termination-of-pregnancy, .period-support-for-students {
    padding: 60px 0
  }
}
.fertility-consultation__wrap, .menopause-syndrome__wrap, .pill-consultation__wrap, .contraception__wrap, .prenatal-checkup__wrap, .menstrual-cycle-adjustment__wrap, .sti-testing__wrap, .cervical-laser-ablation__wrap, .termination-of-pregnancy__wrap, .period-support-for-students__wrap {
  max-width: 840px;
  margin: 0 auto
}
.fertility-consultation__row + .fertility-consultation__row, .fertility-consultation__row + .menopause-syndrome__row, .fertility-consultation__row + .pill-consultation__row, .fertility-consultation__row + .contraception__row, .fertility-consultation__row + .prenatal-checkup__row, .fertility-consultation__row + .menstrual-cycle-adjustment__row, .fertility-consultation__row + .sti-testing__row, .fertility-consultation__row + .cervical-laser-ablation__row, .fertility-consultation__row + .termination-of-pregnancy__row, .fertility-consultation__row + .period-support-for-students__row, .menopause-syndrome__row + .fertility-consultation__row, .menopause-syndrome__row + .menopause-syndrome__row, .menopause-syndrome__row + .pill-consultation__row, .menopause-syndrome__row + .contraception__row, .menopause-syndrome__row + .prenatal-checkup__row, .menopause-syndrome__row + .menstrual-cycle-adjustment__row, .menopause-syndrome__row + .sti-testing__row, .menopause-syndrome__row + .cervical-laser-ablation__row, .menopause-syndrome__row + .termination-of-pregnancy__row, .menopause-syndrome__row + .period-support-for-students__row, .pill-consultation__row + .fertility-consultation__row, .pill-consultation__row + .menopause-syndrome__row, .pill-consultation__row + .pill-consultation__row, .pill-consultation__row + .contraception__row, .pill-consultation__row + .prenatal-checkup__row, .pill-consultation__row + .menstrual-cycle-adjustment__row, .pill-consultation__row + .sti-testing__row, .pill-consultation__row + .cervical-laser-ablation__row, .pill-consultation__row + .termination-of-pregnancy__row, .pill-consultation__row + .period-support-for-students__row, .contraception__row + .fertility-consultation__row, .contraception__row + .menopause-syndrome__row, .contraception__row + .pill-consultation__row, .contraception__row + .contraception__row, .contraception__row + .prenatal-checkup__row, .contraception__row + .menstrual-cycle-adjustment__row, .contraception__row + .sti-testing__row, .contraception__row + .cervical-laser-ablation__row, .contraception__row + .termination-of-pregnancy__row, .contraception__row + .period-support-for-students__row, .prenatal-checkup__row + .fertility-consultation__row, .prenatal-checkup__row + .menopause-syndrome__row, .prenatal-checkup__row + .pill-consultation__row, .prenatal-checkup__row + .contraception__row, .prenatal-checkup__row + .prenatal-checkup__row, .prenatal-checkup__row + .menstrual-cycle-adjustment__row, .prenatal-checkup__row + .sti-testing__row, .prenatal-checkup__row + .cervical-laser-ablation__row, .prenatal-checkup__row + .termination-of-pregnancy__row, .prenatal-checkup__row + .period-support-for-students__row, .menstrual-cycle-adjustment__row + .fertility-consultation__row, .menstrual-cycle-adjustment__row + .menopause-syndrome__row, .menstrual-cycle-adjustment__row + .pill-consultation__row, .menstrual-cycle-adjustment__row + .contraception__row, .menstrual-cycle-adjustment__row + .prenatal-checkup__row, .menstrual-cycle-adjustment__row + .menstrual-cycle-adjustment__row, .menstrual-cycle-adjustment__row + .sti-testing__row, .menstrual-cycle-adjustment__row + .cervical-laser-ablation__row, .menstrual-cycle-adjustment__row + .termination-of-pregnancy__row, .menstrual-cycle-adjustment__row + .period-support-for-students__row, .sti-testing__row + .fertility-consultation__row, .sti-testing__row + .menopause-syndrome__row, .sti-testing__row + .pill-consultation__row, .sti-testing__row + .contraception__row, .sti-testing__row + .prenatal-checkup__row, .sti-testing__row + .menstrual-cycle-adjustment__row, .sti-testing__row + .sti-testing__row, .sti-testing__row + .cervical-laser-ablation__row, .sti-testing__row + .termination-of-pregnancy__row, .sti-testing__row + .period-support-for-students__row, .cervical-laser-ablation__row + .fertility-consultation__row, .cervical-laser-ablation__row + .menopause-syndrome__row, .cervical-laser-ablation__row + .pill-consultation__row, .cervical-laser-ablation__row + .contraception__row, .cervical-laser-ablation__row + .prenatal-checkup__row, .cervical-laser-ablation__row + .menstrual-cycle-adjustment__row, .cervical-laser-ablation__row + .sti-testing__row, .cervical-laser-ablation__row + .cervical-laser-ablation__row, .cervical-laser-ablation__row + .termination-of-pregnancy__row, .cervical-laser-ablation__row + .period-support-for-students__row, .termination-of-pregnancy__row + .fertility-consultation__row, .termination-of-pregnancy__row + .menopause-syndrome__row, .termination-of-pregnancy__row + .pill-consultation__row, .termination-of-pregnancy__row + .contraception__row, .termination-of-pregnancy__row + .prenatal-checkup__row, .termination-of-pregnancy__row + .menstrual-cycle-adjustment__row, .termination-of-pregnancy__row + .sti-testing__row, .termination-of-pregnancy__row + .cervical-laser-ablation__row, .termination-of-pregnancy__row + .termination-of-pregnancy__row, .termination-of-pregnancy__row + .period-support-for-students__row, .period-support-for-students__row + .fertility-consultation__row, .period-support-for-students__row + .menopause-syndrome__row, .period-support-for-students__row + .pill-consultation__row, .period-support-for-students__row + .contraception__row, .period-support-for-students__row + .prenatal-checkup__row, .period-support-for-students__row + .menstrual-cycle-adjustment__row, .period-support-for-students__row + .sti-testing__row, .period-support-for-students__row + .cervical-laser-ablation__row, .period-support-for-students__row + .termination-of-pregnancy__row, .period-support-for-students__row + .period-support-for-students__row {
  margin-top: 120px
}
@media only screen and (max-width: 767px) {
  .fertility-consultation__row + .fertility-consultation__row, .fertility-consultation__row + .menopause-syndrome__row, .fertility-consultation__row + .pill-consultation__row, .fertility-consultation__row + .contraception__row, .fertility-consultation__row + .prenatal-checkup__row, .fertility-consultation__row + .menstrual-cycle-adjustment__row, .fertility-consultation__row + .sti-testing__row, .fertility-consultation__row + .cervical-laser-ablation__row, .fertility-consultation__row + .termination-of-pregnancy__row, .fertility-consultation__row + .period-support-for-students__row, .menopause-syndrome__row + .fertility-consultation__row, .menopause-syndrome__row + .menopause-syndrome__row, .menopause-syndrome__row + .pill-consultation__row, .menopause-syndrome__row + .contraception__row, .menopause-syndrome__row + .prenatal-checkup__row, .menopause-syndrome__row + .menstrual-cycle-adjustment__row, .menopause-syndrome__row + .sti-testing__row, .menopause-syndrome__row + .cervical-laser-ablation__row, .menopause-syndrome__row + .termination-of-pregnancy__row, .menopause-syndrome__row + .period-support-for-students__row, .pill-consultation__row + .fertility-consultation__row, .pill-consultation__row + .menopause-syndrome__row, .pill-consultation__row + .pill-consultation__row, .pill-consultation__row + .contraception__row, .pill-consultation__row + .prenatal-checkup__row, .pill-consultation__row + .menstrual-cycle-adjustment__row, .pill-consultation__row + .sti-testing__row, .pill-consultation__row + .cervical-laser-ablation__row, .pill-consultation__row + .termination-of-pregnancy__row, .pill-consultation__row + .period-support-for-students__row, .contraception__row + .fertility-consultation__row, .contraception__row + .menopause-syndrome__row, .contraception__row + .pill-consultation__row, .contraception__row + .contraception__row, .contraception__row + .prenatal-checkup__row, .contraception__row + .menstrual-cycle-adjustment__row, .contraception__row + .sti-testing__row, .contraception__row + .cervical-laser-ablation__row, .contraception__row + .termination-of-pregnancy__row, .contraception__row + .period-support-for-students__row, .prenatal-checkup__row + .fertility-consultation__row, .prenatal-checkup__row + .menopause-syndrome__row, .prenatal-checkup__row + .pill-consultation__row, .prenatal-checkup__row + .contraception__row, .prenatal-checkup__row + .prenatal-checkup__row, .prenatal-checkup__row + .menstrual-cycle-adjustment__row, .prenatal-checkup__row + .sti-testing__row, .prenatal-checkup__row + .cervical-laser-ablation__row, .prenatal-checkup__row + .termination-of-pregnancy__row, .prenatal-checkup__row + .period-support-for-students__row, .menstrual-cycle-adjustment__row + .fertility-consultation__row, .menstrual-cycle-adjustment__row + .menopause-syndrome__row, .menstrual-cycle-adjustment__row + .pill-consultation__row, .menstrual-cycle-adjustment__row + .contraception__row, .menstrual-cycle-adjustment__row + .prenatal-checkup__row, .menstrual-cycle-adjustment__row + .menstrual-cycle-adjustment__row, .menstrual-cycle-adjustment__row + .sti-testing__row, .menstrual-cycle-adjustment__row + .cervical-laser-ablation__row, .menstrual-cycle-adjustment__row + .termination-of-pregnancy__row, .menstrual-cycle-adjustment__row + .period-support-for-students__row, .sti-testing__row + .fertility-consultation__row, .sti-testing__row + .menopause-syndrome__row, .sti-testing__row + .pill-consultation__row, .sti-testing__row + .contraception__row, .sti-testing__row + .prenatal-checkup__row, .sti-testing__row + .menstrual-cycle-adjustment__row, .sti-testing__row + .sti-testing__row, .sti-testing__row + .cervical-laser-ablation__row, .sti-testing__row + .termination-of-pregnancy__row, .sti-testing__row + .period-support-for-students__row, .cervical-laser-ablation__row + .fertility-consultation__row, .cervical-laser-ablation__row + .menopause-syndrome__row, .cervical-laser-ablation__row + .pill-consultation__row, .cervical-laser-ablation__row + .contraception__row, .cervical-laser-ablation__row + .prenatal-checkup__row, .cervical-laser-ablation__row + .menstrual-cycle-adjustment__row, .cervical-laser-ablation__row + .sti-testing__row, .cervical-laser-ablation__row + .cervical-laser-ablation__row, .cervical-laser-ablation__row + .termination-of-pregnancy__row, .cervical-laser-ablation__row + .period-support-for-students__row, .termination-of-pregnancy__row + .fertility-consultation__row, .termination-of-pregnancy__row + .menopause-syndrome__row, .termination-of-pregnancy__row + .pill-consultation__row, .termination-of-pregnancy__row + .contraception__row, .termination-of-pregnancy__row + .prenatal-checkup__row, .termination-of-pregnancy__row + .menstrual-cycle-adjustment__row, .termination-of-pregnancy__row + .sti-testing__row, .termination-of-pregnancy__row + .cervical-laser-ablation__row, .termination-of-pregnancy__row + .termination-of-pregnancy__row, .termination-of-pregnancy__row + .period-support-for-students__row, .period-support-for-students__row + .fertility-consultation__row, .period-support-for-students__row + .menopause-syndrome__row, .period-support-for-students__row + .pill-consultation__row, .period-support-for-students__row + .contraception__row, .period-support-for-students__row + .prenatal-checkup__row, .period-support-for-students__row + .menstrual-cycle-adjustment__row, .period-support-for-students__row + .sti-testing__row, .period-support-for-students__row + .cervical-laser-ablation__row, .period-support-for-students__row + .termination-of-pregnancy__row, .period-support-for-students__row + .period-support-for-students__row {
    margin-top: 60px
  }
}
.fertility-consultation .designate-bl:first-of-type, .menopause-syndrome .designate-bl:first-of-type, .pill-consultation .designate-bl:first-of-type, .contraception .designate-bl:first-of-type, .prenatal-checkup .designate-bl:first-of-type, .menstrual-cycle-adjustment .designate-bl:first-of-type, .sti-testing .designate-bl:first-of-type, .cervical-laser-ablation .designate-bl:first-of-type, .termination-of-pregnancy .designate-bl:first-of-type, .period-support-for-students .designate-bl:first-of-type {
  margin-top: 0
}
.fertility-consultation .cate, .menopause-syndrome .cate, .pill-consultation .cate, .contraception .cate, .prenatal-checkup .cate, .menstrual-cycle-adjustment .cate, .sti-testing .cate, .cervical-laser-ablation .cate, .termination-of-pregnancy .cate, .period-support-for-students .cate {
  padding: 0
}
.fertility-consultation .cate .designate-box + .cate__text, .menopause-syndrome .cate .designate-box + .cate__text, .pill-consultation .cate .designate-box + .cate__text, .contraception .cate .designate-box + .cate__text, .prenatal-checkup .cate .designate-box + .cate__text, .menstrual-cycle-adjustment .cate .designate-box + .cate__text, .sti-testing .cate .designate-box + .cate__text, .cervical-laser-ablation .cate .designate-box + .cate__text, .termination-of-pregnancy .cate .designate-box + .cate__text, .period-support-for-students .cate .designate-box + .cate__text {
  margin-top: 30px
}
.fertility-consultation .cate__table td:nth-child(1), .fertility-consultation .cate__table td:nth-child(2), .menopause-syndrome .cate__table td:nth-child(1), .menopause-syndrome .cate__table td:nth-child(2), .pill-consultation .cate__table td:nth-child(1), .pill-consultation .cate__table td:nth-child(2), .contraception .cate__table td:nth-child(1), .contraception .cate__table td:nth-child(2), .prenatal-checkup .cate__table td:nth-child(1), .prenatal-checkup .cate__table td:nth-child(2), .menstrual-cycle-adjustment .cate__table td:nth-child(1), .menstrual-cycle-adjustment .cate__table td:nth-child(2), .sti-testing .cate__table td:nth-child(1), .sti-testing .cate__table td:nth-child(2), .cervical-laser-ablation .cate__table td:nth-child(1), .cervical-laser-ablation .cate__table td:nth-child(2), .termination-of-pregnancy .cate__table td:nth-child(1), .termination-of-pregnancy .cate__table td:nth-child(2), .period-support-for-students .cate__table td:nth-child(1), .period-support-for-students .cate__table td:nth-child(2) {
  width: 180px;
  text-align: center
}
.fertility-consultation .cate__table td:nth-child(1), .menopause-syndrome .cate__table td:nth-child(1), .pill-consultation .cate__table td:nth-child(1), .contraception .cate__table td:nth-child(1), .prenatal-checkup .cate__table td:nth-child(1), .menstrual-cycle-adjustment .cate__table td:nth-child(1), .sti-testing .cate__table td:nth-child(1), .cervical-laser-ablation .cate__table td:nth-child(1), .termination-of-pregnancy .cate__table td:nth-child(1), .period-support-for-students .cate__table td:nth-child(1) {
  font-weight: 500
}
.fertility-consultation__section, .menopause-syndrome__section, .pill-consultation__section, .contraception__section, .prenatal-checkup__section, .menstrual-cycle-adjustment__section, .sti-testing__section, .cervical-laser-ablation__section, .termination-of-pregnancy__section, .period-support-for-students__section {
  padding: 120px 0
}
@media only screen and (max-width: 767px) {
  .fertility-consultation__section, .menopause-syndrome__section, .pill-consultation__section, .contraception__section, .prenatal-checkup__section, .menstrual-cycle-adjustment__section, .sti-testing__section, .cervical-laser-ablation__section, .termination-of-pregnancy__section, .period-support-for-students__section {
    padding: 60px 0
  }
}
.fertility-consultation__section:nth-of-type(even), .menopause-syndrome__section:nth-of-type(even), .pill-consultation__section:nth-of-type(even), .contraception__section:nth-of-type(even), .prenatal-checkup__section:nth-of-type(even), .menstrual-cycle-adjustment__section:nth-of-type(even), .sti-testing__section:nth-of-type(even), .cervical-laser-ablation__section:nth-of-type(even), .termination-of-pregnancy__section:nth-of-type(even), .period-support-for-students__section:nth-of-type(even) {
  background: #fef8f6
}
.fertility-consultation__section:nth-of-type(even) .title04, .menopause-syndrome__section:nth-of-type(even) .title04, .pill-consultation__section:nth-of-type(even) .title04, .contraception__section:nth-of-type(even) .title04, .prenatal-checkup__section:nth-of-type(even) .title04, .menstrual-cycle-adjustment__section:nth-of-type(even) .title04, .sti-testing__section:nth-of-type(even) .title04, .cervical-laser-ablation__section:nth-of-type(even) .title04, .termination-of-pregnancy__section:nth-of-type(even) .title04, .period-support-for-students__section:nth-of-type(even) .title04 {
  background: -webkit-linear-gradient(333.43deg, #ffeceb 16.67%, #fff0eb 83.33%);
  background: linear-gradient(116.57deg, #ffeceb 16.67%, #fff0eb 83.33%)
}
.fertility-consultation__section:nth-of-type(even) .cate .designate-box__list li:before, .menopause-syndrome__section:nth-of-type(even) .cate .designate-box__list li:before, .pill-consultation__section:nth-of-type(even) .cate .designate-box__list li:before, .contraception__section:nth-of-type(even) .cate .designate-box__list li:before, .prenatal-checkup__section:nth-of-type(even) .cate .designate-box__list li:before, .menstrual-cycle-adjustment__section:nth-of-type(even) .cate .designate-box__list li:before, .sti-testing__section:nth-of-type(even) .cate .designate-box__list li:before, .cervical-laser-ablation__section:nth-of-type(even) .cate .designate-box__list li:before, .termination-of-pregnancy__section:nth-of-type(even) .cate .designate-box__list li:before, .period-support-for-students__section:nth-of-type(even) .cate .designate-box__list li:before {
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%)
}
.fertility-consultation__bl, .menopause-syndrome__bl, .pill-consultation__bl, .contraception__bl, .prenatal-checkup__bl, .menstrual-cycle-adjustment__bl, .sti-testing__bl, .cervical-laser-ablation__bl, .termination-of-pregnancy__bl, .period-support-for-students__bl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 45px
}
@media only screen and (max-width: 767px) {
  .fertility-consultation__bl, .menopause-syndrome__bl, .pill-consultation__bl, .contraception__bl, .prenatal-checkup__bl, .menstrual-cycle-adjustment__bl, .sti-testing__bl, .cervical-laser-ablation__bl, .termination-of-pregnancy__bl, .period-support-for-students__bl {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
    gap: 20px
  }
}
.fertility-consultation__img, .menopause-syndrome__img, .pill-consultation__img, .contraception__img, .prenatal-checkup__img, .menstrual-cycle-adjustment__img, .sti-testing__img, .cervical-laser-ablation__img, .termination-of-pregnancy__img, .period-support-for-students__img {
  width: 180px;
  border: 1px solid #f7e3e3;
  border-radius: 5px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  overflow: hidden
}
@media only screen and (max-width: 767px) {
  .fertility-consultation__img, .menopause-syndrome__img, .pill-consultation__img, .contraception__img, .prenatal-checkup__img, .menstrual-cycle-adjustment__img, .sti-testing__img, .cervical-laser-ablation__img, .termination-of-pregnancy__img, .period-support-for-students__img, .fertility-consultation__img img, .menopause-syndrome__img img, .pill-consultation__img img, .contraception__img img, .prenatal-checkup__img img, .menstrual-cycle-adjustment__img img, .sti-testing__img img, .cervical-laser-ablation__img img, .termination-of-pregnancy__img img, .period-support-for-students__img img {
    width: 100%
  }
}
.fertility-consultation .offer__list, .menopause-syndrome .offer__list, .pill-consultation .offer__list, .contraception .offer__list, .prenatal-checkup .offer__list, .menstrual-cycle-adjustment .offer__list, .sti-testing .offer__list, .cervical-laser-ablation .offer__list, .termination-of-pregnancy .offer__list, .period-support-for-students .offer__list {
  margin: 30px 0
}
.fertility-consultation .offer__item, .menopause-syndrome .offer__item, .pill-consultation .offer__item, .contraception .offer__item, .prenatal-checkup .offer__item, .menstrual-cycle-adjustment .offer__item, .sti-testing .offer__item, .cervical-laser-ablation .offer__item, .termination-of-pregnancy .offer__item, .period-support-for-students .offer__item {
  width: calc(50% - 15px);
  border-color: #f3dddb
}
@media only screen and (max-width: 767px) {
  .fertility-consultation .offer__item, .menopause-syndrome .offer__item, .pill-consultation .offer__item, .contraception .offer__item, .prenatal-checkup .offer__item, .menstrual-cycle-adjustment .offer__item, .sti-testing .offer__item, .cervical-laser-ablation .offer__item, .termination-of-pregnancy .offer__item, .period-support-for-students .offer__item {
    width: 100%
  }
}
.fertility-consultation .offer__number, .menopause-syndrome .offer__number, .pill-consultation .offer__number, .contraception .offer__number, .prenatal-checkup .offer__number, .menstrual-cycle-adjustment .offer__number, .sti-testing .offer__number, .cervical-laser-ablation .offer__number, .termination-of-pregnancy .offer__number, .period-support-for-students .offer__number {
  border-color: #f3dddb;
  color: #e0b8b4
}
.fertility-consultation .offer__text, .menopause-syndrome .offer__text, .pill-consultation .offer__text, .contraception .offer__text, .prenatal-checkup .offer__text, .menstrual-cycle-adjustment .offer__text, .sti-testing .offer__text, .cervical-laser-ablation .offer__text, .termination-of-pregnancy .offer__text, .period-support-for-students .offer__text {
  color: #595959;
  letter-spacing: .06em;
  font-weight: 400
}
.contraception {
  padding: 0
}
.contraception__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  gap: 15px;
  max-width: -webkit-fit-content;
  max-width: -moz-fit-content;
  max-width: fit-content;
  margin: 30px auto 120px;
  padding-bottom: 10px;
  border-bottom: 1px solid #f5d6d6;
  font-size: 1.7rem;
  line-height: 2;
  letter-spacing: .06em
}
@media only screen and (max-width: 767px) {
  .contraception__link {
    margin: 30px auto 60px
  }
}
.contraception__link:after {
  content: "";
  display: block;
  width: 20px;
  height: 20px;
  background: url(../img/common/icon/ic_arrow-circle-gradient.svg) no-repeat center/contain;
  -ms-flex-negative: 0;
  flex-shrink: 0
}
.menstrual-cycle-adjustment .cate__table {
  margin: 30px 0
}
.menstrual-cycle-adjustment .cate__table td {
  height: 95px
}
.menstrual-cycle-adjustment .cate__table td:nth-child(1) {
  width: 240px;
  font-weight: 400;
  font-size: 2.1rem !important;
  line-height: 1.45 !important;
  letter-spacing: .04em
}
.menstrual-cycle-adjustment .cate__table td:nth-child(2) {
  width: auto;
  text-align: left
}
.sti-testing__content {
  display: none
}
.sti-testing__content.is-active {
  display: block
}
.sti-testing .tabs {
  width: 100%;
  display: block
}
.sti-testing .tabs__nav {
  width: 100%;
  min-width: auto;
      /*background: linear-gradient(98.46deg, #fdf3f1 .51%, #fbebe8 50%, #fae1e3 99.49%);*/
    background: linear-gradient(141.95deg, #5fbf5a 12.27%, #93cc78 87.73%);
    /*background: url(../img/top/cta_bg.png) no-repeat center / cover;*/
      padding:3%;
      border-radius:5px;
}
.sti-testing .tabs__navbar {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
  -ms-flex-direction: row;
  flex-direction: row;
  gap: 15px
}
@media only screen and (max-width: 767px) {
  .sti-testing .tabs__navbar {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.sti-testing .tabs__navlink {
  padding: 15px;
  cursor: pointer;
  width: 50%;
  background: #fffefc;
/*  -webkit-box-shadow: 0px 6px 5px #f2e8e7;
  box-shadow: 0 6px 5px #f2e8e7;*/
  border-radius: 5px
}
@media only screen and (max-width: 767px) {
  .sti-testing .tabs__navlink {
    width: 100%
  }
}
.sti-testing .tabs__navlink span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  min-height: 56px;
  font-size: 2.1rem;
  line-height: 1.45;
  letter-spacing: .04em;
  color: #998f8f;
  padding: 10px 20px;
  text-align: center;
  width: 100%
}
@media only screen and (max-width: 1024px) {
  .sti-testing .tabs__navlink span {
    font-size: 1.8rem;
         padding: 10px;
  }
}
.sti-testing .tabs__navlink.is-active {
  background: #fffefc;
/*  -webkit-box-shadow: -3px -3px 3px #ffffff, inset 3px 3px 4px #f2e8e7;
  box-shadow: -3px -3px 3px #fff, inset 3px 3px 4px #f2e8e7;
  border-radius: 5px*/
}



.sti-testing .tabs__navlink.is-active span {
/*  background: -webkit-linear-gradient(333.43deg, #ffeceb 16.67%, #fff0eb 83.33%);
  background: linear-gradient(116.57deg, #ffeceb 16.67%, #fff0eb 83.33%);*/
    
    
background:#F2FFED;
border:1px solid #D1ECCC;    
  border-radius: 3px;
  color: #807374;
  font-weight: 500
}


.sti-testing .tabs__navlink span{
background: rgba(247, 247, 247, 0.5);
border:1px solid #eee;     
    
}


@media only screen and (max-width: 767px) {
.sti-testing .tabs__navlink.is-active span {
font-size:1.6rem;
}
}


.sti-testing .tabs__content {
  margin-top: 105px
}
@media only screen and (max-width: 767px) {
  .sti-testing .tabs__content {
    margin-top: 60px
  }
}
.termination-of-pregnancy__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 15px
}
@media only screen and (max-width: 767px) {
  .termination-of-pregnancy__list {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
.termination-of-pregnancy__list li {
  font-size: 1.8rem;
  line-height: 1.3333333333;
  letter-spacing: .04em;
  color: #595959;
  background: #fffefc;
  border: 1px solid #f3dddb;
  border-radius: 3px;
  padding: 7px 25px;
  font-family: Shippori Mincho, serif;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center
}
@media only screen and (max-width: 767px) {
  .termination-of-pregnancy__list li {
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center
  }
}
.termination-of-pregnancy__list li:last-child {
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
.termination-of-pregnancy .cate__table {
  margin: 30px 0 15px
}
.termination-of-pregnancy .cate__table td:nth-child(1) {
  text-align: left !important
}
.termination-of-pregnancy .cate__table td:nth-child(1) span {
  display: block;
  font-size: 1.4rem;
  line-height: 1.5;
  margin-top: 10px;
  padding-top: 15px;
  font-weight: 400;
  border-top: 1px dashed #f6d4d3
}
.termination-of-pregnancy .cate__table td:nth-child(2) {
  text-align: right !important
}
.period-support-for-students__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  gap: 30px
}
.period-support-for-students__list li {
  width: calc(33.3333333333% - 20px);
  text-align: center;
  line-height: 1.5;
  letter-spacing: .06em;
  color: #807374;
  background: -webkit-linear-gradient(333.43deg, #fcf5ef 16.67%, #fcf2ef 83.33%);
  background: linear-gradient(116.57deg, #fcf5ef 16.67%, #fcf2ef 83.33%);
  border-radius: 10px;
  padding: 20px 10px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  margin-bottom: 10px
}
@media only screen and (max-width: 767px) {
  .period-support-for-students__list li {
    width: 100% !important;
    background: -webkit-linear-gradient(333.43deg, #fcf5ef 16.67%, #fcf2ef 83.33%) !important;
    background: linear-gradient(116.57deg, #fcf5ef 16.67%, #fcf2ef 83.33%) !important;
    min-height: 90px
  }
  .period-support-for-students__list li:nth-child(even) {
    background: -webkit-linear-gradient(351.54deg, #fcefed .51%, #fbebe8 50%, #fae1e3 99.49%) !important;
    background: linear-gradient(98.46deg, #fcefed .51%, #fbebe8 50%, #fae1e3 99.49%) !important
  }
  .period-support-for-students__list li:nth-child(even):after {
    background: -webkit-linear-gradient(225deg, #fbeae8 40%, #f5d6d6 100%) !important;
    background: linear-gradient(225deg, #fbeae8 40%, #f5d6d6 100%) !important
  }
}
.period-support-for-students__list li:after {
  content: "";
  position: absolute;
  bottom: -7.5px;
  left: 50%;
  -webkit-transform: translateX(-50%);
  transform: translate(-50%);
  width: 15px;
  height: 15px;
  background: -webkit-linear-gradient(225deg, #fcf4f0 40%, #f7dedd 100%);
  background: linear-gradient(225deg, #fcf4f0 40%, #f7dedd 100%);
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg)
}
@media only screen and (max-width: 767px) {
  .period-support-for-students__list li:after {
    background: -webkit-linear-gradient(225deg, #fcf4f0 40%, #f7dedd 100%) !important;
    background: linear-gradient(225deg, #fcf4f0 40%, #f7dedd 100%) !important
  }
}
.period-support-for-students__list li.is-half {
  width: calc(50% - 15px)
}
.period-support-for-students__list li.is-gradient {
  background: -webkit-linear-gradient(351.54deg, #fcefed .51%, #fbebe8 50%, #fae1e3 99.49%);
  background: linear-gradient(98.46deg, #fcefed .51%, #fbebe8 50%, #fae1e3 99.49%)
}
.period-support-for-students__list li.is-gradient:after {
  background: -webkit-linear-gradient(225deg, #fbeae8 40%, #f5d6d6 100%);
  background: linear-gradient(225deg, #fbeae8 40%, #f5d6d6 100%)
}
.period-support-for-students__list + .designate__text {
  margin-top: 45px
}
.period-support-for-students .cate__table td {
  text-align: left !important
}


/* ADD CSS 2025.08.26 */
/*-------------------------------------------------------------
	main > section
-------------------------------------------------------------*/
main > section.hair-removal {
  padding: 90px 0
}
@media only screen and (max-width: 767px) {
  main > section.hair-removal {
    padding: 60px 0
  }
}
main > section.hair-removal > .container{
	max-width: 1140px;
}
@media only screen and (max-width: 767px) {
	main > section.hair-removal > .container{
	max-width: inherit;
}
}
main > section.hair-removal .titleMain.is-child .titleMain__en{
text-transform: uppercase;
} 
main > section.hair-removal .flow__text{
	color: #595959;
font-family: "Noto Sans JP";
font-size: 17px;
font-style: normal;
font-weight: 400;
line-height: 200%; /* 34px */
letter-spacing: 1.02px;
}
main > section.hair-removal [class$="__wrap"] {
    max-width: 960px;
  margin: 0 auto
}
/*-------------------------------------------------------------
	.main-img.hair-remova
-------------------------------------------------------------*/
.main-img.hair-remova{
	background-image: url("../img/cosmetic/medical-hair-removal/view-bg-photo.jpg");
	background-size: cover;
	background-position: right bottom;
}
@media only screen and (max-width: 767px) {
.main-img.hair-remova{
	background-position: 70%;
}	
}
.main-img.hair-remova .container,.main-img.hair-remova .maim-img__wrap,.main-img.hair-remova .main-img__content{
	min-height: 68vh;
}
@media only screen and (max-width: 767px) {
.main-img.hair-remova .container,.main-img.hair-remova .maim-img__wrap,.main-img.hair-remova .main-img__content{
	min-height: 50vh;
}	
}
.main-img.hair-remova .main-img__content{
	position: relative;
}
.main-img.hair-remova .main-img__title {
	position: absolute;
	top:50%;
	left: calc(100% - 1140px);
	transform: translateY(-50%);
}
@media only screen and (max-width: 767px) {
	.main-img.hair-remova .main-img__title {
	left: 2vw;
}
}
.main-img.hair-remova .main-img__title img{
	width: 700px;
	max-width: 60vw;
	height: auto;
}
@media only screen and (max-width: 767px) {
	.main-img.hair-remova .main-img__title img{
	width: auto;
	max-width: 70vw;
}
}
/*-------------------------------------------------------------
	.recommended
-------------------------------------------------------------*/
.recommended .recommended__wrap{
	max-width: 960px !important;
}
.recommended .titleMain.is-child .titleMain__en{
font-size: 90px;
font-style: normal;
font-weight: 300;
line-height: 130%; /* 117px */
letter-spacing: -2.7px;
text-transform: uppercase;
	background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.recommended .titleMain.is-child .titleMain__jp{
	color: #807374;
font-size: 21px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 27.3px */
letter-spacing: 0.63px;
	display: flex;
	align-items: center;
}
.recommended .titleMain.is-child .titleMain__jp::before {
    content: "";
    display: inline-block;
    background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
    width: 25px;
    height: 28px;
    background-size: cover;
    margin-right: 10px;
}
.recommended .designate-box{
	flex-wrap: wrap;
	border-radius: 0;
	border: none;
	border-top: 1px solid #F2E8E7;
	padding: 0;
}
.recommended .designate-box__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 17px;
}
@media only screen and (max-width: 767px) {
  .recommended .designate-box__list {
    gap: 10px;
	  display: inherit;
  }
}
.recommended .designate-box__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
	width: auto;
	border-bottom: 1px solid #F2E8E7;
	padding: 30px 20px;
	min-width: calc(100%/2 - 10px);
	align-items: center;
	color:#4D4D4D;
font-family: "Shippori Mincho";
font-size: 18px;
font-style: normal;
font-weight: 400;
line-height: 145%; /* 26.1px */
letter-spacing: 0.72px;
}
@media only screen and (max-width: 767px) {
  .recommended .designate-box__list li {
    width: auto
  }
}
@media only screen and (max-width: 1024px) {
  .recommended .designate-box__list li {
    width: calc(100% - 13px);
	  
	padding: 20px 0;
  }
}
@media only screen and (max-width: 767px) {
  .recommended .designate-box__list li {
    width: auto
  }
}
.recommended .designate-box__list li:first-child{
	width: 100%;
}
.recommended .designate-box__list li:before {
  content: "";
  display: block;
	background: none;
	background-image: url("../img/cosmetic/medical-hair-removal/check_circle.svg");
	background-size: contain;
	background-repeat: no-repeat;
  width: 24px;
  height: 24px;
	position: static;
	top:auto;
	margin-right: 10px;
}

.recommended .designate-box__list li span {
	width: calc(100% - 34px);
}
@media only screen and (max-width: 767px) {
.recommended .designate-box__list li span {
	font-size: 4vw;
}	
}
/*-------------------------------------------------------------
	.reasons
-------------------------------------------------------------*/
.reasons{
	background: #FCF6F4;
}
.reasons .titleMain.is-child{
	margin-bottom: 90px;
}

.reasons .titleMain.is-child .titleMain__en{
	text-align: center;
font-size: 90px;
font-style: normal;
font-weight: 300;
line-height: 130%; /* 117px */
letter-spacing: -2.7px;
text-transform: uppercase;
	background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.reasons .titleMain.is-child .titleMain__jp{
	color: #807374;
text-align: center;
font-family: "Shippori Mincho";
font-size: 21px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 27.3px */
letter-spacing: 0.63px;
	margin-left: auto;
	margin-right: auto;
	display: table;
	position: relative;
}

.reasons .titleMain.is-child .titleMain__jp::before, .reasons .titleMain.is-child .titleMain__jp::after {
    content: "";
    display: inline-block;
    background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
    width: 25px;
    height: 28px;
    background-size: cover;
	position: absolute;
	top:50%;
transform: translateY(-50%);
}
.reasons .titleMain.is-child .titleMain__jp::before {
   left: -40px;
}
.reasons .titleMain.is-child .titleMain__jp::after {
   right: -40px;
}
.reasons .reasons__bl{
    display: flex;
	align-items: center;
    gap: 90px;
	position: relative;
  z-index: 1
}
@media only screen and (max-width: 767px) {
.reasons .reasons__bl{
    display: inherit;
}	
}
.reasons .reasons__bl + .features__bl {
  margin-top: 80px
}
@media only screen and (max-width: 767px) {
  .reasons .reasons__bl + .features__bl {
    margin-top: 40px
  }
}
.reasons .reasons__bl:nth-child(even) {
  padding-right: 60px
}
@media only screen and (max-width: 1180px) {
  .reasons .reasons__bl:nth-child(even) {
    padding: 0
  }
}
.reasons .reasons__bl:nth-child(odd) {
  padding-left: 60px
}
@media only screen and (max-width: 1180px) {
  .reasons .reasons__bl:nth-child(odd) {
    padding: 0
  }
}
.reasons .reasons__bl:nth-child(odd) .features__img {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2
}
.reasons .reasons__bl:nth-child(odd) .features__content {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1
}
.reasons .reasons__bl:nth-child(odd) .features__text:after {
  display: none
}

.reasons .reasons__img {
  width: 480px;
  height: 320px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  margin-top: 10px
}
@media only screen and (max-width: 767px) {
  .reasons .reasons__img {
    width: 100%;
    height: auto
  }
}
.reasons .reasons__img:after {
  content: "";
  position: absolute;
  bottom: -10px;
  right: -10px;
  width: 100%;
  height: 100%;
  border-radius: 60px 10px 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(250, 229, 225, .9)), to(rgba(250, 225, 227, .5)));
  background: -webkit-linear-gradient(top, rgba(250, 229, 225, .9) 0%, rgba(250, 225, 227, .5) 100%);
  background: linear-gradient(180deg, rgba(250, 229, 225, .9) 0%, rgba(250, 225, 227, .5) 100%);
  -webkit-filter: blur(1.5px);
  filter: blur(1.5px);
  z-index: -1
}
.reasons .reasons__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 60px 10px 10px
}
@media only screen and (max-width: 767px) {
	.reasons .reasons__img img {
  -o-object-fit: none;
  object-fit: none;
		height: auto;
}
}
.reasons .reasons__title {
  font-family: Shippori Mincho, serif;
  font-size: 2.7rem;
  line-height: 1.65;
  font-weight: 500;
  letter-spacing: .06em;
  color: #807374;
  position: relative;
  margin-bottom: 20px
}
@media only screen and (max-width: 767px) {
	.reasons .reasons__title {
  font-size: 5vw;
}
}
.reasons .reasons__bl:nth-child(even) {
    padding-right: 60px;
}
@media only screen and (max-width: 767px) {
.reasons .reasons__bl:nth-child(even) {
    padding-right: 0;
}	
}
.reasons .reasons__title span {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -15px;
  font-family: "Source Serif 4", serif;
  font-size: 7.5rem;
  line-height: 1;
  font-weight: 400;
  font-style: italic;
  letter-spacing: .01em;
  background: -webkit-linear-gradient(315deg, #ffd5d1 0%, #fee8e5 100%);
  background: linear-gradient(135deg, #ffd5d1 0%, #fee8e5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  z-index: -1
}
@media only screen and (max-width: 767px) {
.reasons .reasons__title span {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: none;
    transform: none;
    display: block;
    margin-bottom: 0;
    font-size: 4rem;
	margin-top: 20px;
  }
}
.reasons .reasons__bl:nth-child(odd) {
  padding-left: 60px
}
@media only screen and (max-width: 1180px) {
  .reasons .reasons__bl:nth-child(odd) {
    padding: 0
  }
}
.reasons .reasons__bl:nth-child(odd) .reasons__img {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2
}
.reasons .reasons__bl:nth-child(odd) .reasons__content {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1
}
.reasons .reasons__bl:nth-child(odd) .reasons__text:after {
  display: none
}
.reasons .reasons__bl + .reasons__bl {
  margin-top: 80px
}
@media only screen and (max-width: 767px) {
  .reasons .reasons__bl + .reasons__bl {
    margin-top: 60px
  }
}
.reasons .reasons__text {
  font-size: 1.7rem;
  line-height: 1.95;
  font-weight: 350;
  letter-spacing: .01em;
  color: #595959;
  padding: 25px 0;
  position: relative;
  z-index: 1
}
@media only screen and (max-width: 767px) {
  .reasons .reasons__text {
    font-size: 1.5rem;
    line-height: 2.1;
    padding: 0
  }
}
.reasons .reasons__text span {
  display: block;
  font-size: 1.5rem;
  color: #757575;
  margin-top: 15px;
  line-height: 1.8
}

/*-------------------------------------------------------------
	.overview
-------------------------------------------------------------*/
.overview .overview__bl {
    display: flex;
    gap: 60px;
    position: relative;
    z-index: 1;
	 flex-direction:row-reverse;
}
@media only screen and (max-width: 767px) {
	.overview .overview__bl {
    display: inherit;
}
}
.overview .titleMain.is-child .titleMain__en{
font-size: 90px;
font-style: normal;
font-weight: 300;
line-height: 130%; /* 117px */
letter-spacing: -2.7px;
text-transform: uppercase;
	background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.overview .titleMain.is-child .titleMain__jp{
	color: #807374;
font-size: 21px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 27.3px */
letter-spacing: 0.63px;
	display: flex;
	align-items: center;
}
.overview .titleMain.is-child .titleMain__jp::before{
    content: "";
    display: inline-block;
    background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
    width: 25px;
    height: 28px;
    background-size: cover;
	margin-right: 10px;
}
.overview__content{
	max-width: 570px;
}
.overview__img{
	border-radius: 500px 500px 10px 10px;
background: linear-gradient(180deg, #FAE5E1 0%, #FAE1E3 100%);
	overflow: hidden;
	max-width: 480px;
	height: auto;
}
.overview__img img{
	object-fit: cover;
	width: 100%;
	height: 100%;
}
/*-------------------------------------------------------------
	.features-laser
-------------------------------------------------------------*/
.features-laser{
	background: linear-gradient(180deg, #FCF6F4 0%, #FBEBE8 75%, #FBE6E6 100%);
}
.features-laser .titleMain.is-child .titleMain__en{
font-size: 90px;
font-style: normal;
font-weight: 300;
line-height: 130%; /* 117px */
letter-spacing: -2.7px;
text-transform: uppercase;
	background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.features-laser .titleMain.is-child .titleMain__jp{
	color: #807374;
text-align: center;
font-family: "Shippori Mincho";
font-size: 21px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 27.3px */
letter-spacing: 0.63px;
	display: flex;
	align-items: center;
}
.features-laser .titleMain.is-child .titleMain__jp::before {
    content: "";
    display: inline-block;
    background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
    width: 25px;
    height: 28px;
    background-size: cover;
    margin-right: 10px;
}
.features-laser .designate-box{
	    border: none;
	padding: 0;
	border-radius: 0;
}
.features-laser .designate-box .designate-bl{
	max-width: 840px;
	position: relative;
	border-radius: 5px;
border: 1px solid #F7E3E3;
background: #FFFDFA;
padding: 60px;
gap: 20px;
	z-index: 0;
  color: #333333;
  background-color: #FFFDFA;
  box-shadow: 10px 10px 0px 0px rgba(250, 229, 225, 0.90) ;
}
@media only screen and (max-width: 767px) {
	.features-laser .designate-box .designate-bl{
padding: 20px 30px;
}
}

.features-laser .designate-box .designate-bl:nth-child(2){
	margin-left: auto;
	margin-right: auto;
}
.features-laser .designate-box .designate-bl:last-child{
	margin-left: auto;
	margin-right: 0;
}
.features-laser .titleMain__en{
font-family: "Cormorant Garamond";
font-size: 21px;
font-style: italic;
font-weight: 300;
line-height: 100%; /* 21px */
letter-spacing: 0.21px;
text-transform: capitalize;
	background: linear-gradient(315deg, #FFD7CF 0%, #FAC5C9 100%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.features-laser .titleMain__jp{
	color: #807374;
font-size: 27px;
font-style: normal;
font-weight: 400;
line-height: 145%; /* 39.15px */
letter-spacing: 0.81px;
}
@media only screen and (max-width: 767px) {
	.features-laser .titleMain__jp{
font-size: 5vw;
}
}
/*-------------------------------------------------------------
	.menu-list
-------------------------------------------------------------*/
.menu-list{
	background-image: url("../img/cosmetic/medical-hair-removal/menu-list_bg.jpg");
	background-size: cover;
}
.menu-list .titleMain.is-child .titleMain__en{
	color: #FFFDFA;
text-align: center;
font-size: 75px;
font-style: normal;
font-weight: 300;
line-height: 130%; /* 97.5px */
letter-spacing: -2.25px;
text-transform: uppercase;
	    background-clip: inherit;
	background: none;
	-webkit-text-fill-color:inherit;
}
.menu-list .titleMain.is-child .titleMain__jp{
color: #FFFEFC;
text-align: center;
font-size: 15px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 19.5px */
letter-spacing: 0.45px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.menu-list .titleMain.is-child .titleMain__jp::before, .menu-list .titleMain.is-child .titleMain__jp::after {
    content: "";
    display: inline-block;
    background-image: url(../img/cosmetic/medical-hair-removal/hl_icon-wt.svg);
    width: 25px;
    height: 28px;
    background-size: cover;
}
.menu-list .titleMain.is-child .titleMain__jp::before {
    margin-right: 10px;
}
.menu-list .titleMain.is-child .titleMain__jp::after {
    margin-left: 10px;
}
/*-------------------------------------------------------------
	.payment
-------------------------------------------------------------*/
.payment{
	background: #FCF6F4;
	padding: 120px 0;
}
.payment .titleMain.is-child{
	margin-bottom: 0;
}
.payment .titleMain.is-child .titleMain__en{
font-size: 90px;
font-style: normal;
font-weight: 300;
line-height: 130%; /* 117px */
letter-spacing: -2.7px;
text-transform: uppercase;
	background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.payment .titleMain.is-child .titleMain__jp{
	color: #807374;
text-align: center;
font-family: "Shippori Mincho";
font-size: 21px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 27.3px */
letter-spacing: 0.63px;
	display: flex;
	align-items: center;
}
.payment .titleMain.is-child .titleMain__jp::before {
    margin-right: 10px;
    content: "";
    display: inline-block;
    background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
    width: 25px;
    height: 28px;
    background-size: cover;
}
.payment .payment__content{
	display:flex;
	align-items: center;
	justify-content: space-between;
}
@media only screen and (max-width: 767px) {
	.payment .payment__content{
	display:inherit;
}
}
.payment__text{
	color: #807374;
text-align: center;
font-size: 21px;
font-style: normal;
font-weight: 400;
line-height: 145%; /* 30.45px */
letter-spacing: 0.84px;
}
.payment__text{
	display: flex;
	align-items: center;
	width: 70%;
	white-space:nowrap;
}
@media only screen and (max-width: 767px) {
	.payment__text{
		background-color: #fff;
		padding: 20px;
		border-radius: 10px;
		display: block;
		width: 100%;
		text-align: center;
}
}
.payment__text::before{
	content: "";
	display: inline-block;
	width: 100%;
	height: 1px;
	background-color: #F3DDDB;
	margin-right: 30px;
	margin-left: 30px;
}
@media only screen and (max-width: 767px) {
.payment__text::before{
	content: none;
}	
}

/*-------------------------------------------------------------
	.flow
-------------------------------------------------------------*/
.flow {
  padding: 120px 0;
  position: relative;
  z-index: 1;
}
@media only screen and (max-width: 767px) {
  .flow {
    padding: 60px 0
  }
}
@media only screen and (max-width: 1260px) {
  .flow .container {
    padding: 0 20px 0 50px
  }
}
@media only screen and (max-width: 767px) {
  .flow .container {
    padding: 0 20px
  }
}
.important__wrap{
	max-width: 960px !important;
}
.flow .titleMain.is-child{
	display: table;
	margin: 0 auto 75px;
	
}
.flow .titleMain.is-child .titleMain__en{
	text-align: center;
font-size: 90px;
font-style: normal;
font-weight: 300;
line-height: 130%; /* 117px */
letter-spacing: -2.7px;
text-transform: uppercase;
	background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
}
.flow .titleMain.is-child .titleMain__jp{
	color: #807374;
text-align: center;
font-size: 21px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 27.3px */
letter-spacing: 0.63px;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
}
.flow .titleMain.is-child .titleMain__jp::before,.flow .titleMain.is-child .titleMain__jp::after{
	content: "";
	display: inline-block;
	background-image: url("../img/cosmetic/medical-hair-removal/hl_icon.svg");
	width: 25px;
	height: 28px;
	background-size: cover;
	
}
.flow .titleMain.is-child .titleMain__jp::before{
	margin-right: 10px;
}
.flow .titleMain.is-child .titleMain__jp::after{
	margin-left: 10px;
}
.flow .flow__wrap {
	max-width: 980px !important;
}
.flow__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
  -ms-flex-direction: column;
  flex-direction: column;
  position: relative;
  z-index: 1
}

@media only screen and (max-width: 767px) {
  .flow .flow__wrap:after {
    left: 22.5px
  }
}
.flow__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 60px;
  position: relative;
}
@media only screen and (max-width: 767px) {
  .flow__item {
    gap: 20px
  }
}
.flow__item + .flow__item{
	padding-top: 60px;
}
.flow .flow__item:last-child:after{
	content: none;
}
.flow .flow__item:after {
  content: "";
  position: absolute;
  top: 0;
  left: 45px;
  height: calc(100% + 45px);
  border-left: 1px dashed #F5D6D6;
  z-index: -1
}
@media only screen and (max-width: 767px) {
.flow .flow__item:after {
	left: 23px;
}	
}
.flow__stt {
	background-image: url("../img/cosmetic/medical-hair-removal/flow-no-bg.svg");
	width: 90px;
	height: 90px;
	line-height: 1;
	background-size: cover;
	text-align: center;
	color: #FFFEFC;
font-family: "Cormorant Garamond";
font-size: 54px;
font-style: italic;
font-weight: 300;
	padding-top: 13px;
}
@media only screen and (max-width: 767px) {
  .flow__stt {
    width: 45px;
    height: 45px;
    font-size: 7vw;
	  line-height: 45px;
	  padding: 0;
  }
}
.flow__box {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 60px
}
@media only screen and (max-width: 1024px) {
  .flow__box {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column
  }
}
@media only screen and (max-width: 767px) {
  .flow__box {
    gap: 30px;
	  width: calc(100% - 75px);
  }
}
.flow__img {
  max-width: 40%
}
.flow__img img {
  border-radius: 10px
}
@media only screen and (max-width: 1024px) {
  .flow__img {
    max-width: 100%;
    -webkit-box-ordinal-group: 2;
    -ms-flex-order: 1;
    order: 1
  }
}
.flow__content {
	max-width: 810px;
  -webkit-box-flex: 1;
  -ms-flex: 1;
  flex: 1
}
@media only screen and (max-width: 1024px) {
  .flow__content {
    -webkit-box-ordinal-group: 3;
    -ms-flex-order: 2;
    order: 2
  }
}
.flow__tit {
  color: #807374;
font-family: "Shippori Mincho";
font-size: 27px;
font-style: normal;
font-weight: 400;
line-height: 145%; /* 39.15px */
letter-spacing: 0.81px;
	margin-bottom: 20px;
	border-bottom: 1px solid #F2E8E7;
padding-bottom: 10px;
}
@media only screen and (max-width: 767px) {
	.flow__tit {
font-size: 6vw;
}
}
.flow__text {
  line-height: 1.9
}
.flow__txt__Box{
padding: 45px 60px;
justify-content: center;
align-items: center;
gap: 10px;
align-self: stretch;
	border-radius: 10px;
border: 1px solid #F2E8E7;
	color: #595959;

font-family: "Noto Sans JP";
font-size: 17px;
font-style: normal;
font-weight: 400;
line-height: 200%; /* 34px */
letter-spacing: 1.02px;
	margin-top: 75px;
}
.flow__txt__Box p + p{
	margin-top: 20px;
}
/*-------------------------------------------------------------
	.mechanism
-------------------------------------------------------------*/
.mechanism{
	background: #FCF6F4;
}
.mechanism .titleMain.is-child{
	display: flex;
	align-items: center;
	gap:20px;
	margin-bottom: 20px;
}
@media only screen and (max-width: 767px) {
	.mechanism .titleMain.is-child{
	display: inherit;
}
}
.mechanism .titleMain.is-child .titleMain__en{
font-size: 90px;
font-style: normal;
font-weight: 300;
line-height: 1;
letter-spacing: -2.7px;
text-transform: uppercase;
	background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
background-clip: text;
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
	margin-top: 0;
}
.mechanism .titleMain.is-child .titleMain__jp{
	color: #807374;
text-align: center;
font-family: "Shippori Mincho";
font-size: 21px;
font-style: normal;
font-weight: 500;
line-height: 130%; /* 27.3px */
letter-spacing: 0.63px;
	position: relative;
	display: flex;
	align-items: center;
}
.mechanism .titleMain.is-child .titleMain__jp::before{
	content: "";
	display: inline-block;
	width: 25px;
	height: 25px;
	background-image: url("../img/cosmetic/medical-hair-removal/hl_icon.svg");
	margin-right: 10px;
	background-size: cover;
}
.mechanism .mechanism__wrap{
	max-width: 840px;
    margin: 0 auto;
}
.mechanism .mechanism__txt{
color: #595959;
font-size: 17px;
font-style: normal;
font-weight: 400;
line-height: 200%; /* 34px */
letter-spacing: 1.02px;
}
.mechanism__img{
	border-radius: 10px;
border: 1px solid #F2E8E7;
background: #FFF;
box-shadow: 0 0 5px 0 #FAEBEB;
	overflow: hidden;
	margin-top: 30px;
}
/*-------------------------------------------------------------
	.important
-------------------------------------------------------------*/
.important .is-bold {
    display: inline-block;
    font-size: 1.7rem;
    font-weight: 700;
    color: #bd7979;
	line-height: 1.9;
}
.important .important__row + .important__row {
    margin-top: 120px;
}
.important p + .designate-bl__list{
	margin-top: 30px;
}
@media only screen and (max-width: 767px) {
	
.important .important__row + .important__row {
    margin-top: 60px;
}
}


/*-------------------------------------------------------------
	SP　共通
-------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
	 main > section.hair-removal .titleMain.is-child{
		margin-bottom: 45px;
	}
	    main > section.hair-removal .titleMain.is-child > .titleMain__en{
		font-size: 10vw;
	}
	 main > section.hair-removal .titleMain.is-child > .titleMain__jp{
		font-size: 3.5vw;
	}
	main > section.hair-removal [class$="__txt"],main > section.hair-removal [class$="__text"],main > section.hair-removal .flow__txt__Box{
		font-size: 15px;
	}
	main > section.hair-removal .flow__txt__Box{
		padding: 20px;
	}
}

/*-------------------------
popup
-------------------------*/

@media only screen and (max-width: 767px) {
  .consultation__content.is-visible {
    display: block; /* または display: flex; */
  }
}
#popup-overlay {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.7);
  z-index: 1000;
  display: none; /* 初期状態では非表示 */
}
#popup-container {
  position: fixed;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 1001;
  display: none; /* 初期状態では非表示 */
  width: 90%; /* より大きく表示 */
  max-width:1200px;;
}
#popup-content {
  position: relative;
  background-color: white;
  padding: 10px; /* パディングを減らす */
  border-radius: 10px;
  box-shadow: 0 5px 15px rgba(0, 0, 0, 0.3);
}
#popup-content img {
  width: 100%;
  height: auto;
  display: block;
}
#close-popup {
  position: absolute;
  top: -15px;
  right: -15px;
  background-color: white;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 20px;
  font-weight: bold;
  cursor: pointer;
  box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2);
}

/* ADD CSS 2025.08.28 */
/*-------------------------
.mv
-------------------------*/
.mv__title{
  
  font-weight: 600;
}
.mv__title .title-char{
    padding-bottom: 5px;
}
.mv__title{
        gap: 12px;
}
@media only screen and (max-width: 767px) {
.mv .kv {
  height: 60vh !important;
}
.mv__title {
  font-size: 5vw;
}
.mv__content {
  bottom: 0;
}
}

/*-------------------------
.delayed-shadow
-------------------------*/
.delayed-shadow {
    /* アニメーションの設定 */
    animation-name: add-shadow; /* @keyframesで定義したアニメーション名 */
    animation-duration: .8s;       /* アニメーション自体の長さ（1秒かけて影が付く） */
    animation-delay: 1.4s;      /* ページ読み込み後の遅延時間 */
    animation-fill-mode: forwards;  /* アニメーション終了後、最後の状態を維持する */
    animation-timing-function: ease-out; /* アニメーションの変化の仕方 */

    /* アニメーション開始前の初期状態（影なし） */
    text-shadow: none;
}
@media only screen and (max-width: 767px) {
    .delayed-shadow {
    animation-duration: .3s;       /* アニメーション自体の長さ（1秒かけて影が付く） */
    animation-delay: 0.8s;      /* ページ読み込み後の遅延時間 */
}
}
/* アニメーションの定義 */
@keyframes add-shadow {
    /* 開始時（0%）の状態 */
    from {
        text-shadow: none;
    }
    /* 終了時（100%）の状態 */
    to {
        text-shadow: 2px 2px 3px rgba(55, 55, 55, 0.6);
    }
}


/*-------------------------------------------------------------
	faq
-------------------------------------------------------------*/
@charset "UTF-8";
/* CSS Document */
/*============================================
responsive
============================================*/
.faq__wrap {
  padding: 120px 0; }
  @media screen and (max-width: 897px) {
    .faq__wrap {
      padding: 40px 0; } }
  .faq__wrap .faq__box {
    max-width: 840px;
    margin: auto; }
    .faq__wrap .faq__box__item {
      border-top: 1px solid #F2E8E7;
      padding: 45px 0 40px 0; }
      @media screen and (max-width: 897px) {
        .faq__wrap .faq__box__item {
          padding: 20px 0 15px 0; } }
      .faq__wrap .faq__box__item dl dt {
        display: flex;
        justify-content: flex-start;
        align-items: center; }
        @media screen and (max-width: 897px) {
          .faq__wrap .faq__box__item dl dt {
            align-items: flex-start; } }
        .faq__wrap .faq__box__item dl dt .ico {
          width: 5%;
          font-size: 2.4rem;
          font-family: Cormorant Garamond, serif;
          font-weight: 500;
          background: linear-gradient(90deg, #F39C96, #F4B3C3);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          /* Safari/Chrome用 */
          background-clip: text;
          /* Firefox用（2022以降対応） */ }
          @media screen and (max-width: 897px) {
            .faq__wrap .faq__box__item dl dt .ico {
              width: 10%;
              line-height: 1; } }
        .faq__wrap .faq__box__item dl dt .txt {
          font-size: 2.1rem;
          width: 95%; }
          @media screen and (max-width: 897px) {
            .faq__wrap .faq__box__item dl dt .txt {
              width: 90%;
              font-size: 1.7rem;
              line-height: 1.7;
              margin-top: -3px; } }
      .faq__wrap .faq__box__item dl dd {
        display: flex;
        justify-content: flex-start; }
        .faq__wrap .faq__box__item dl dd .ico {
          width: 5%;
          font-size: 2.4rem;
          font-family: Cormorant Garamond, serif;
          font-weight: 500;
          background: linear-gradient(90deg, #F39C96, #F4B3C3);
          -webkit-background-clip: text;
          -webkit-text-fill-color: transparent;
          /* Safari/Chrome用 */
          background-clip: text;
          /* Firefox用（2022以降対応） */ }
          @media screen and (max-width: 897px) {
            .faq__wrap .faq__box__item dl dd .ico {
              width: 10%; } }
        .faq__wrap .faq__box__item dl dd .txt {
          width: 95%;
          padding: 5px 0 0 0; }
          @media screen and (max-width: 897px) {
            .faq__wrap .faq__box__item dl dd .txt {
              width: 90%;
              padding: 8px 0 0 0; } }
          .faq__wrap .faq__box__item dl dd .txt p:not(:last-of-type) {
            padding: 0; }
          .faq__wrap .faq__box__item dl dd .txt .credit__box {
            border: 1px solid #F5D6D6;
            padding: 30px 60px;
            margin: 20px 0 0 0; }
            @media screen and (max-width: 897px) {
              .faq__wrap .faq__box__item dl dd .txt .credit__box {
                padding: 15px 20px;
                margin: 10px 0 0 0; } }
            .faq__wrap .faq__box__item dl dd .txt .credit__box__ttl {
              font-size: 1.7rem;
              font-weight: normal;
              border-bottom: 1px dotted #F5D6D6;
              padding: 0 0 10px 0;
              margin: 0 0 15px 0; }
              @media screen and (max-width: 897px) {
                .faq__wrap .faq__box__item dl dd .txt .credit__box__ttl {
                  line-height: 1.4; } }

/* ADD CSS 2025.09.16 */
/*-------------------------------------------------------------
	.topAttention
-------------------------------------------------------------*/
.topAttention {
  border: 1px solid #fac5c9;
  border-radius: 10px;
  background-color: #fff;
  padding: 30px;
  margin-bottom: 100px;
}
.topAttention__text {
  text-align: center;
  color: #F73C6A;
  font-weight: 700;
  font-family: Shippori Mincho, serif;
  font-size: clamp(16px, 2rem, 20px);
  line-height: 1.5;
  letter-spacing: .03em;
}
@media screen and (max-width: 897px) {
  .topAttention {
    padding: 20px;
    margin-bottom: 30px;
  }
  .topAttention__text {
    text-align: left;
    font-size: clamp(13px, 1.3rem, 19px);
  }
}
/*-------------------------------------------------------------
	.topAttention
-------------------------------------------------------------*/
.sti-testing .tabs__nav {
  background: -webkit-linear-gradient(135deg, #ffd7cf 0%, #fac5c9 100%);
  background: linear-gradient(315deg, #ffd7cf 0%, #fac5c9 100%);
}
.sti-testing .tabs__navlink.is-active span {
  background: #FCF5EF;
  border-color: #FCF5EF;
}

/* ADD CSS 2025.09.16 */
/*-------------------------------------------------------------
	.topAttention
-------------------------------------------------------------*/

@media screen and (max-width: 897px) {
.table_container {
  overflow-x: auto; /* tableタグのはみ出た要素を隠す */
  white-space: nowrap; /* テキストの折り返しなし */
  width: 100%;
}
.table_container table {
	border-collapse: collapse;
	max-width:150%; /* tableタグの親要素より広く */
	min-width: inherit;
}
	.table_container table .press-enter{
  white-space: pre-wrap;
	}

}

/*-------------------------------------------------------------
	.cate__table
-------------------------------------------------------------*/
@media screen and (max-width: 897px) {
.cate__table.table-simple table{
	min-width: inherit;
}
	.cate__table.table-simple td{
		width: 100% !important;
		height: auto;
		display: block !important;
}
}


/* ADD CSS 2025.09.18 */
/*============================================
 .subpage = 後半分の下層包括CSS 　※subpage.cssより移植
============================================*/
main > div.subpage > section .titleMain.is-child .titleMain__en {
  font-size: 90px;
  font-style: normal;
  font-weight: 300;
  line-height: 130%;
  letter-spacing: -2.7px;
  text-transform: uppercase;
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
main > div.subpage > section .titleMain.is-child .titleMain__jp {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  display: flex;
  align-items: center;
  position: relative;
}
main > div.subpage > section .titleMain.is-child .titleMain__jp::before {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 25px;
  height: 28px;
  background-size: cover;
  margin-right: 10px;
}
main > div.subpage > section .ttl__basic {
  margin-bottom: 25px;
}
main > div.subpage > section .ttl__basic .ttl__basic__jp {
  display: block;
  color: #807374;
  margin-bottom: 10px;
  font-family: "Shippori Mincho";
  font-size: 30px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%;
  letter-spacing: 0.9px;
}
main > div.subpage > section .ttl__basic .ttl__basic__en {
  display: flex;
  align-items: center;
  font-family: "Cormorant Garamond";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  letter-spacing: 0.45px;
  text-transform: uppercase;
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
main > div.subpage > section .ttl__basic .ttl__basic__en::before {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 20px;
  height: 21px;
  background-size: cover;
  margin-right: 10px;
}
main > div.subpage > section .ttl__basic + p {
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
}
main > div.subpage > section:not(:first-child) {
  padding: 90px 0;
}
main > div.subpage > section.bg-box {
  background: var(--bg-, #fcf6f4);
}
main > div.subpage > section p {
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
}
main > div.subpage > section p + .effect__box {
  margin-top: 45px;
}
main > div.subpage > section p span, main > div.subpage > section p b, main > div.subpage > section p strong {
  color: #bd7979;
  font-weight: normal;
}
main > div.subpage .about__bl {
  display: flex;
  gap: 60px;
  position: relative;
  z-index: 1;
  flex-direction: row-reverse;
  align-items: center;
}
main > div.subpage .about__img {
  border-radius: 500px 500px 10px 10px;
  background: linear-gradient(180deg, #fae5e1 0%, #fae1e3 100%);
  overflow: hidden;
  max-width: 480px;
  height: auto;
  box-shadow: 10px 10px 0px 0px rgba(250, 229, 225, 0.9);
}
main > div.subpage .about__img img {
  object-fit: cover;
  width: 100%;
  height: 100%;
}
main > div.subpage .about__content {
  max-width: 570px;
}
main > div.subpage .about__content p {
  color: #4d4d4d;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
}
main > div.subpage .about__tel {
  border-radius: 10px;
  background: var(--bg-, #fcf6f4);
  display: flex;
  padding: 45px 75px;
  flex-direction: column;
  align-items: center;
  gap: 25px;
  align-self: stretch;
  margin-top: 25px;
  text-align: center;
  color: #595959;
  font-family: "Source Serif Pro";
  font-size: 48px;
  font-style: normal;
  font-weight: 300;
  line-height: 100%;
  /* 48px */
  letter-spacing: 1.92px;
}
main > div.subpage .about__tel span {
  color: #595959;
  font-family: "Source Serif Pro";
  font-size: 33px;
  font-style: normal;
  font-weight: 300;
  line-height: 100%;
  /* 33px */
  letter-spacing: 1.32px;
}
main > div.subpage .about__tel p {
  color: #757575;
  text-align: center;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 350;
  line-height: 100%;
  /* 15px */
  letter-spacing: 0.45px;
}
main > div.subpage .about__list {
  display: grid;
  gap: 60px;
}
main > div.subpage .about__list__item {
  display: flex;
  justify-content: space-between;
  gap: 60px;
}
main > div.subpage .about__list__item h3 {
  color: #807374;
  /* title/4 */
  font-family: "Shippori Mincho";
  font-size: 24px;
  font-style: normal;
  font-weight: 500;
  line-height: 145%;
  /* 34.8px */
  letter-spacing: 0.96px;
  width: 340px;
}
main > div.subpage .about__list__item p {
  width: calc(100% - 400px);
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
}
main > div.subpage .about .titleMain.is-child .titleMain__en {
  font-size: 90px;
  font-style: normal;
  font-weight: 300;
  line-height: 130%;
  letter-spacing: -2.7px;
  text-transform: uppercase;
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
main > div.subpage .about .titleMain.is-child .titleMain__jp {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  display: flex;
  align-items: center;
}
main > div.subpage .about .titleMain.is-child .titleMain__jp::before {
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 25px;
  height: 28px;
  background-size: cover;
  margin-right: 10px;
}
main > div.subpage .recommended {
  background: var(--bg-, #fcf6f4);
}
main > div.subpage .recommended .recommended__wrap {
  max-width: 1140px !important;
}
main > div.subpage .recommended .designate-box__list {
  gap: 20px;
}
main > div.subpage .recommended .designate-box__list li {
  padding: 20px 0;
  min-width: inherit;
  width: calc((100% - 40px) / 3);
  box-sizing: border-box;
}
main > div.subpage .cate {
  padding: 90px 0;
}
main > div.subpage .cate-box {
  padding: 45px 60px;
  border-radius: 15px;
  background: var(--bg-, #fffdfa);
}
main > div.subpage .cate-box__list {
  gap: 15px 30px;
  max-width: 840px;
  margin: 0 auto;
}
main > div.subpage .cate-box__list li {
  gap: 15px;
  font-size: 1.7rem;
  line-height: 2;
  letter-spacing: 0.06em;
  color: #595959;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: auto;
}
main > div.subpage .cate-box__list li:before {
  content: "";
  display: block;
  border-radius: 50%;
  background: #fac5c9;
  position: relative;
  width: 6px;
  height: 6px;
  top: 12px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}
main > div.subpage .cate-box h3 {
  max-width: 840px;
  color: #807374;
  text-align: center;
  margin: 0 auto 40px;
  /* title/5 */
  font-family: "Noto Sans JP";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%;
  /* 30.45px */
  letter-spacing: 0.84px;
  border-bottom: 1px dashed var(--line-bg, #f3dddb);
  padding-bottom: 15px;
}
main > div.subpage .effect__box {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 30px;
}
main > div.subpage .effect__box__item {
  width: calc(100% / 2 - 15px);
  display: flex;
  padding: 30px 40px;
  flex-direction: column;
  align-items: flex-start;
  gap: 15px;
  border-radius: 25px 5px 5px 5px;
  background: var(--bg-, #fffdfa);
  box-shadow: 6px 6px 6px 0 rgba(249, 233, 233, 0.5);
}
main > div.subpage .effect__box__item h5 {
  color: #807374;
  font-family: "Shippori Mincho";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%;
  /* 30.45px */
  letter-spacing: 0.84px;
}
main > div.subpage .effect__box__item p {
  color: #595959;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 180%;
  /* 27px */
  letter-spacing: 0.9px;
}
main > div.subpage .effect__box__item p span.no {
  width: 26px;
  float: left;
  display: block;
  height: 100%;
  text-align: center;
  leading-trim: both;
  text-edge: cap;
  font-family: "Shippori Mincho";
  font-size: 15px;
  font-style: normal;
  font-weight: 600;
  line-height: 100%;
  /* 14px */
  letter-spacing: 0.56px;
  background: linear-gradient(180deg, #f39c96 0%, #f4b3c3 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  padding-top: 6px;
  margin-right: 6px;
}
main > div.subpage .effect__box + p {
  margin-top: 45px;
}
main > div.subpage .menu .titleMain.is-child .titleMain__en {
  font-size: 90px;
  font-style: normal;
  font-weight: 300;
  line-height: 130%;
  letter-spacing: -2.7px;
  text-transform: uppercase;
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
main > div.subpage .menu .titleMain.is-child .titleMain__jp {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  display: flex;
  align-items: center;
  position: relative;
}
main > div.subpage .menu .titleMain.is-child .titleMain__jp::before {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 25px;
  height: 28px;
  background-size: cover;
  margin-right: 10px;
}
main > div.subpage .menu .titleMain.is-child .titleMain__jp::after {
  content: "";
  display: inline-block;
  width: calc(100% - 200px);
  position: absolute;
  right: 0;
  bottom: 13px;
  height: 1px;
  background-color: #f2e8e7;
}
main > div.subpage .menu__name, main > div.subpage .menu .headline {
  margin-bottom: 90px;
}
main > div.subpage .menu__name h3, main > div.subpage .menu .headline h3 {
  margin-bottom: 25px;
}
main > div.subpage .menu__name h3 .menu__name__jp, main > div.subpage .menu .headline h3 .menu__name__jp {
  display: block;
  color: #807374;
  margin-bottom: 10px;
  /* title/3 */
  font-family: "Shippori Mincho";
  font-size: 30px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%;
  /* 43.5px */
  letter-spacing: 0.9px;
}
main > div.subpage .menu__name h3 .menu__name__en, main > div.subpage .menu .headline h3 .menu__name__en {
  display: flex;
  align-items: center;
  font-family: "Cormorant Garamond";
  font-size: 15px;
  font-style: normal;
  font-weight: 700;
  line-height: 130%;
  /* 19.5px */
  letter-spacing: 0.45px;
  text-transform: uppercase;
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
main > div.subpage .menu__name h3 .menu__name__en::before, main > div.subpage .menu .headline h3 .menu__name__en::before {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 20px;
  height: 21px;
  background-size: cover;
  margin-right: 10px;
}
main > div.subpage .menu__name p, main > div.subpage .menu .headline p {
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
}
main > div.subpage .menu__name p strong, main > div.subpage .menu .headline p strong {
  color: var(--h4, #bd7979);
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
  display: block;
}
main > div.subpage .menu__list {
  max-width: 840px;
  margin: 0 auto;
  padding-bottom: 90px;
  border-bottom: 1px solid var(--line-bg, #f3dddb);
  margin-bottom: 90px;
}
main > div.subpage .menu__list__item {
  margin-bottom: 90px;
}
main > div.subpage .menu__list h4 {
  background: linear-gradient(90deg, rgba(251, 231, 229, 0) 0%, #fbe7e5 50%, rgba(251, 231, 229, 0) 100%);
  color: #807374;
  text-align: center;
  margin-bottom: 45px;
  /* title/5 */
  font-family: "Noto Sans JP";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%;
  /* 30.45px */
  letter-spacing: 0.84px;
  padding: 10px;
}
main > div.subpage .menu__price h3 {
  color: #807374;
  margin-bottom: 30px;
  /* title/4 */
  font-family: "Shippori Mincho";
  font-size: 24px;
  font-style: normal;
  font-weight: 500;
  line-height: 145%;
  /* 34.8px */
  letter-spacing: 0.96px;
  display: flex;
  align-items: center;
}
main > div.subpage .menu__price h3::before {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 25px;
  height: 28px;
  background-size: cover;
  margin-right: 10px;
}
main > div.subpage .menu__price__table table {
  border-bottom: 1px solid #f7e3e3;
  border-right: 1px solid #f7e3e3;
  width: 100%;
  border-collapse: collapse;
  min-width: 840px;
}
main > div.subpage .menu__price__table table th, main > div.subpage .menu__price__table table td {
  border-top: 1px solid #f7e3e3;
  border-left: 1px solid #f7e3e3;
  padding: 15px 20px;
  font-size: 1.5rem;
  line-height: 2;
  color: #595959;
  letter-spacing: 0.06em;
}
main > div.subpage .menu__price__table table th {
  background: #fbedea;
  line-height: 1.5294117647;
  color: #807374;
  border-left: none;
  font-size: 1.7rem;
}
main > div.subpage .menu__price__table table td {
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
  text-align: center;
}
main > div.subpage .menu__price__table table td:last-child {
  color: #595959;
  text-align: center;
  /* txt/table/値段 */
  font-family: "Shippori Mincho";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%;
  /* 30.45px */
  letter-spacing: 0.84px;
}
main > div.subpage .menu__price__table table tr th:first-child {
  text-align: left;
}
main > div.subpage .menu__price__table table + p {
  margin-top: 25px;
}
main > div.subpage .menu__price .headline {
  display: flex;
  align-items: center;
  margin-bottom: 35px;
}
main > div.subpage .menu__price .headline h3 {
  margin-bottom: 0;
  margin-right: 60px;
}
main > div.subpage .menu__bl {
  margin-bottom: 90px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  align-items: center;
  flex-flow: row-reverse;
  gap: 60px;
  position: relative;
  z-index: 1;
}
main > div.subpage .menu__bl__img {
  width: 340px;
  height: 225px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  margin-top: 10px;
  box-shadow: 10px 10px 0px 0px rgba(250, 229, 225, 0.9);
}
main > div.subpage .menu__bl__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 60px 10px 10px;
  position: relative;
}
main > div.subpage .menu__bl__img img:after {
  content: "";
  position: absolute;
  bottom: -10px;
  right: -10px;
  width: 100%;
  height: 100%;
  border-radius: 60px 10px 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(250, 229, 225, 0.9)), to(rgba(250, 225, 227, 0.5)));
  background: -webkit-linear-gradient(top, rgba(250, 229, 225, 0.9) 0%, rgba(250, 225, 227, 0.5) 100%);
  background: linear-gradient(180deg, rgba(250, 229, 225, 0.9) 0%, rgba(250, 225, 227, 0.5) 100%);
  -webkit-filter: blur(1.5px);
  filter: blur(1.5px);
  z-index: -1;
}
main > div.subpage .menu__bl__text {
  font-size: 1.7rem;
  line-height: 1.95;
  font-weight: 350;
  letter-spacing: 0.01em;
  color: #595959;
  padding: 25px 0;
  position: relative;
  z-index: 1;
}
main > div.subpage .menu__bl h3 {
  font-family: Shippori Mincho, serif;
  font-size: 2.7rem;
  line-height: 1.65;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: #807374;
  position: relative;
  margin-bottom: 20px;
}
main > div.subpage .menu__details__item .effect__box {
  gap: 45px;
  padding-bottom: 106px;
  margin-bottom: 105px;
  border-bottom: 1px solid var(--line-bg-pink, #f5d6d6);
}
main > div.subpage .menu__details__item .effect__box__item {
  box-shadow: 10px 10px 0px 0px rgba(250, 229, 225, 0.9);
}
main > div.subpage .menu__details__item .effect__box__item:first-child, main > div.subpage .menu__details__item .effect__box__item:nth-child(2) {
  width: calc(100% / 2 - 30px);
}
main > div.subpage .menu__details__item .effect__box__item:nth-child(n + 3) {
  width: calc(100% / 3 - 30px);
}
main > div.subpage .menu__overview .headline {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}
main > div.subpage .menu__overview__box {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
  flex-wrap: wrap;
  border-radius: 0;
  border: none;
  border-top: 1px solid #f2e8e7;
  padding: 0;
}
main > div.subpage .menu__overview__box__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  gap: 17px;
}
main > div.subpage .menu__overview__box__list li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 5px;
  width: auto;
  border-bottom: 1px solid #f2e8e7;
  padding: 30px 0;
  min-width: calc(100% / 2 - 10px);
  align-items: center;
  color: #4d4d4d;
  font-family: "Shippori Mincho";
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%;
  letter-spacing: 0.72px;
}
main > div.subpage .menu__overview__box__list li:before {
  content: "";
  display: block;
  background: none;
  background-image: url(../img/cosmetic/medical-hair-removal/check_circle.svg);
  background-size: contain;
  background-repeat: no-repeat;
  width: 24px;
  height: 24px;
  position: static;
  top: auto;
  margin-right: 10px;
}
main > div.subpage .menu__image {
  display: flex;
  justify-content: space-between;
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 90px;
  padding-bottom: 90px;
  border-bottom: 1px solid var(--line-bg-pink, #f5d6d6);
}
main > div.subpage .menu__image__box h4 {
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
  border-radius: 10px 10px 0 0;
  background: linear-gradient(0deg, #fbe7e5 0%, #fbe7e5 100%);
  padding: 5px 30px;
}
main > div.subpage .menu__image__box .img {
  background: var(--bg-, #fffdfa);
  display: flex;
  justify-content: space-between;
  padding: 30px 0;
}
main > div.subpage .menu__image__box .img > div:first-child {
  padding: 0 60px 0 30px;
  border-right: 1px solid #f5d6d6;
}
main > div.subpage .menu__image__box .img > div:last-child {
  padding: 0 30px 0 60px;
  position: relative;
}
main > div.subpage .menu__image__box .img > div:last-child::before {
  content: "";
  display: inline-block;
  border-style: solid;
  border-width: 14px 0 14px 15px;
  border-color: transparent transparent transparent #f5d6d6;
  position: absolute;
  left: 0;
  top: 50%;
}
main > div.subpage .menu__image__box .img > div img {
  max-width: 205px;
  height: auto;
}
main > div.subpage .menu__flow {
  padding-bottom: 105px;
  margin-bottom: 105px;
  border-bottom: 1px solid var(--line-bg-pink, #f5d6d6);
}
main > div.subpage .menu__flow__list {
  display: flex;
  justify-content: space-between;
  gap: 80px;
  flex-wrap: wrap;
}
main > div.subpage .menu__flow__list__item {
  width: calc(100% / 3 - 55px);
}
main > div.subpage .menu__flow__list__item .img {
  position: relative;
  z-index: 0;
}
main > div.subpage .menu__flow__list__item .img b.no {
  leading-trim: both;
  text-edge: cap;
  font-family: "Cormorant Garamond";
  font-size: 60px;
  font-style: italic;
  font-weight: 300;
  line-height: 100%;
  /* 60px */
  letter-spacing: 0.6px;
  position: absolute;
  left: 15px;
  top: -36px;
  background: linear-gradient(315deg, #f8cebd 0%, #f89ca8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  z-index: 1;
}
main > div.subpage .menu__flow__list__item .img img {
  border-radius: 10px;
  overflow: hidden;
  margin-bottom: 30px;
}
main > div.subpage .menu__flow__list__item p {
  padding: 0 15px 0 15px;
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 34px */
  letter-spacing: 1.02px;
}
main > div.subpage .menu__flow__list__item p span {
  margin: 15px auto 0;
  padding: 15px;
  text-align: center;
  display: flex;
  border-radius: 3px;
  background: var(--line-, #f7e3e3);
}
main > div.subpage .menu__flow__list__item p + img {
  margin: 15px auto 0;
}
main > div.subpage .designate-box p {
  margin-top: 20px;
  color: #757575;
  /* txt/list */
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%;
  /* 30px */
  letter-spacing: 0.9px;
}
/*-------------------------------------------------------------
	#femcare 
-------------------------------------------------------------*/
/* .about-02 */
#femcare .about-02 {
  background-image: url("../img/cosmetic/femcare/bg-about-01.png");
  background-size: cover;
}
#femcare .about-02 .titleMain.is-child {
  margin-bottom: 90px;
}
#femcare .about-02 .titleMain.is-child .titleMain__en {
  text-align: center;
  font-size: 90px;
  font-style: normal;
  font-weight: 300;
  line-height: 130%; /* 117px */
  letter-spacing: -2.7px;
  text-transform: uppercase;
  background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}
#femcare .about-02 .titleMain.is-child .titleMain__jp {
  color: #807374;
  text-align: center;
  font-family: "Shippori Mincho";
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%; /* 27.3px */
  letter-spacing: 0.63px;
  margin-left: auto;
  margin-right: auto;
  display: table !important;
  position: relative;
}
#femcare .about-02 .titleMain.is-child .titleMain__jp::before, #femcare .about-02 .titleMain.is-child .titleMain__jp::after {
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 25px;
  height: 28px;
  background-size: cover;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
#femcare .about-02 .titleMain.is-child .titleMain__jp::before {
  left: -40px;
}
#femcare .about-02 .titleMain.is-child .titleMain__jp::after {
  right: -40px;
}
#femcare .about-02 .about-02__content {
  width: calc(100% - 480px);
}
#femcare .about-02 .about-02__bl {
  display: flex;
  align-items: center;
  gap: 90px;
  position: relative;
  z-index: 1;
  flex-direction: row;
}
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__bl {
    display: inherit;
  }
}
#femcare .about-02 .about-02__bl + .features__bl {
  margin-top: 80px
}
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__bl + .features__bl {
    margin-top: 40px
  }
}
@media only screen and (max-width: 1180px) {
  #femcare .about-02 .about-02__bl:nth-child(even) {
    padding: 0
  }
}
#femcare .about-02 .about-02__img {
  width: 480px;
  height: 320px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
  position: relative;
  z-index: 2;
  margin-top: 10px
}
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__img {
    width: 100%;
    height: auto
  }
}
#femcare .about-02 .about-02__img:after {
  content: "";
  position: absolute;
  bottom: -10px;
  right: -10px;
  width: 100%;
  height: 100%;
  border-radius: 60px 10px 10px;
  background: -webkit-gradient(linear, left top, left bottom, from(rgba(250, 229, 225, .9)), to(rgba(250, 225, 227, .5)));
  background: -webkit-linear-gradient(top, rgba(250, 229, 225, .9) 0%, rgba(250, 225, 227, .5) 100%);
  background: linear-gradient(180deg, rgba(250, 229, 225, .9) 0%, rgba(250, 225, 227, .5) 100%);
  -webkit-filter: blur(1.5px);
  filter: blur(1.5px);
  z-index: -1
}
#femcare .about-02 .about-02__img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
  border-radius: 60px 10px 10px
}
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__img img {
    -o-object-fit: none;
    object-fit: none;
    height: auto;
  }
}
#femcare .about-02 .about-02__title {
  font-family: Shippori Mincho, serif;
  font-size: 2.7rem;
  line-height: 1.65;
  font-weight: 500;
  letter-spacing: .06em;
  color: #807374;
  position: relative;
  margin-bottom: 20px
}
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__title {
    font-size: 5vw;
  }
}
#femcare .about-02 .about-02__title span {
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  left: -15px;
  font-family: "Source Serif 4", serif;
  font-size: 7.5rem;
  line-height: 1;
  font-weight: 400;
  font-style: italic;
  letter-spacing: .01em;
  background: -webkit-linear-gradient(315deg, #ffd5d1 0%, #fee8e5 100%);
  background: linear-gradient(135deg, #ffd5d1 0%, #fee8e5 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
  z-index: -1
}
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__title span {
    position: relative;
    top: 0;
    left: 0;
    -webkit-transform: none;
    transform: none;
    display: block;
    margin-bottom: 0;
    font-size: 4rem;
    margin-top: 20px;
  }
}
#femcare .about-02 .about-02__bl:nth-child(odd) .about-02__img {
  -webkit-box-ordinal-group: 3;
  -ms-flex-order: 2;
  order: 2
}
#femcare .about-02 .about-02__bl:nth-child(odd) .about-02__content {
  -webkit-box-ordinal-group: 2;
  -ms-flex-order: 1;
  order: 1
}
#femcare .about-02 .about-02__bl:nth-child(odd) .about-02__text:after {
  display: none
}
#femcare .about-02 .about-02__bl + .about-02__bl {
  margin-top: 80px
}
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__bl + .about-02__bl {
    margin-top: 60px
  }
}
#femcare .about-02 .about-02__text {
  font-size: 1.7rem;
  line-height: 1.95;
  font-weight: 350;
  letter-spacing: .01em;
  color: #595959;
  padding: 25px 0;
  position: relative;
  z-index: 1
}
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__text {
    font-size: 1.5rem;
    line-height: 2.1;
    padding: 0
  }
}
#femcare .about-02 .about-02__text span {
  display: block;
  font-size: 1.5rem;
  color: #757575;
  margin-top: 15px;
  line-height: 1.8
}

/* .change */
#femcare .change .titleMain.is-child {
  margin-bottom: 60px;
}
#femcare .change .point__list {
  gap: 60px;
  display: flex;
  justify-content: space-between;
}
#femcare .change .point__list .point__list__item {
  width: calc(100%/4)
}
#femcare .change .point__list .point__list__item h3 {
  color: #807374;
  margin-bottom: 20px;
  min-height: 90px;
  /* title/4 */
  font-family: "Shippori Mincho";
  font-size: 24px;
  font-style: normal;
  font-weight: 500;
  line-height: 145%; /* 34.8px */
  letter-spacing: 0.96px;
  position: relative;
  z-index: 0;
  border-bottom: 1px solid #F7E3E3;
  display: flex;
  align-items: center;
}
#femcare .change .point__list .point__list__item h3 span.no {
  position: absolute;
  left: -20px;
  top: -50px;
  font-family: "Cormorant Garamond";
  font-size: 90px;
  font-style: italic;
  font-weight: 300;
  line-height: 100%; /* 90px */
  letter-spacing: 0.9px;
  opacity: 0.5;
  background: linear-gradient(135deg, #FFD5D1 0%, #FEE8E5 100%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  z-index: -1;
}

/* .effect */
#femcare .effect .effect__box {
  margin: 0 auto;
  gap: 60px;
}
#femcare .effect .effect__box .effect__box__item {
  width: calc(100% / 2 - 30px);
  position: relative;
  padding: 45px 60px;
  box-shadow: 10px 10px 0px 0px rgba(250, 229, 225, 0.9);
  border: 1px solid var(--line-, #F7E3E3);
  border-radius: 10px;
}
#femcare .effect .effect__box .effect__list__item {
  position: relative;
  margin-bottom: 90px;
  box-shadow: 10px 10px 0px 0px rgba(250, 229, 225, 0.9);
}
#femcare .effect .effect__box h4 {
  background: linear-gradient(90deg, rgba(251, 231, 229, 0) 0%, #fbe7e5 50%, rgba(251, 231, 229, 0) 100%);
  color: #807374;
  text-align: center;
  margin-bottom: 45px;
  /* title/5 */
  font-family: "Noto Sans JP";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%;
  /* 30.45px */
  letter-spacing: 0.84px;
}
#femcare .effect .effect__box h5 {
  color: #807374;
  padding-bottom: 14px;
  border-bottom: 1px solid #F5D6D6;
  width: 100%;
  /* title/4 */
  font-family: "Shippori Mincho";
  font-size: 24px;
  font-style: normal;
  font-weight: 500;
  line-height: 145%; /* 34.8px */
  letter-spacing: 0.96px;
}
#femcare .effect .effect__box p {
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 34px */
  letter-spacing: 1.02px;
}
#femcare .effect .effect__box .effect__box__item .no {
  position: absolute;
  left: 28px;
  top: -45px;
  font-family: "Cormorant Garamond";
  font-size: 72px;
  font-style: italic;
  font-weight: 300;
  line-height: 120%;
  letter-spacing: 0.72px;
  background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* .reason */
#femcare .reason.effect .effect__box {
  gap: 60px;
}
#femcare .reason.effect .effect__box .effect__box__item h5 {
  padding: 10px;
  border-bottom: 1px solid #F5D6D6;
  display: block;
  width: 100%;
}
#femcare .reason.effect .effect__box .effect__box__item {
  border-radius: 10px;
  border: 1px solid var(--line-, #F7E3E3);
  background: var(--bg-, #FFFDFA);
  box-shadow: 10px 10px 0px 0px rgba(250, 229, 225, 0.9);
  position: relative;
  width: calc(100% / 2 - 30px);
}
#femcare .reason.effect .effect__box .effect__box__item .no {
  position: absolute;
  left: 10px;
  top: -45px;
  font-family: "Cormorant Garamond";
  font-size: 72px;
  font-style: italic;
  font-weight: 300;
  line-height: 100%; /* 72px */
  letter-spacing: 0.72px;
  background: linear-gradient(315deg, #F8CEBD 0%, #F89CA8 95%);
  background-clip: text;
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
}

/* .comparison */
main > div.subpage#femcare .comparison p + .menu__list {
  margin-top: 30px;
}
main > div.subpage#femcare .comparison .menu__list {
  max-width: 1140px;
  border-bottom: none;
  padding-bottom: 0;
  margin-bottom: 0;
}
main > div.subpage#femcare .comparison .menu__price__table table {
  table-layout: fixed;
}
main > div.subpage#femcare .comparison .menu__price__table table tr th span {
  white-space: nowrap;
}
main > div.subpage#femcare .comparison .menu__price__table table td, main > div.subpage#femcare .comparison .menu__price__table table td:last-child {
  text-align: left;
  color: #595959;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 34px */
  letter-spacing: 1.02px;
}
main > div.subpage#femcare .comparison .menu__price__table table tr:first-child th:first-child {
  text-align: center;
}
main > div.subpage#femcare .comparison .menu__price__table table tr td {
  text-align: center;
}
main > div.subpage#femcare .comparison .menu__price__table table tr td ul li {
  gap: 10px;
  line-height: 2;
  letter-spacing: 0.06em;
  color: #595959;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  text-align: left;
  width: auto;
}
main > div.subpage .comparison .menu__price__table table tr td ul li:before {
  content: "";
  display: block;
  border-radius: 50%;
  background: #fac5c9;
  position: relative;
  width: 6px;
  height: 6px;
  top: 12px;
  -ms-flex-negative: 0;
  flex-shrink: 0;
}

/* .recommended */
#femcare .recommended {
  background: none;
}
#femcare .recommended.container {
  max-width: 960px;
}
#femcare .recommended .designate-box {
  border-top: none;
}
#femcare .recommended .designate-box__list {
  gap: 30px;
}
#femcare .recommended .designate-box__list li {
  padding-top: 0;
  padding-bottom: 30px;
}
#femcare .recommended .designate-box__list li:first-child, #femcare .recommended .designate-box__list li:nth-child(2) {
  border-top: 1px solid #F2E8E7;
  padding-top: 30px;
}
#femcare .recommended .designate-box__list li {
  width: calc((100% - 40px) / 2);
}

/* .session */
#femcare .session h2 {
  display: table;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
#femcare .session h2.titleMain.is-child .titleMain__jp {
  display: table;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
#femcare .session h2.titleMain.is-child .titleMain__jp::before {
  position: absolute;
  left: -30px;
  top: 50%;
  transform: translateY(-50%);
}
#femcare .session h2.titleMain.is-child .titleMain__jp::after {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 25px;
  height: 28px;
  background-size: cover;
  margin-left: 10px;
  position: absolute;
  right: -30px;
  top: 50%;
  transform: translateY(-50%);
}
#femcare .session p {
  max-width: 840px;
  margin-left: auto;
  margin-right: auto;
}

/* .price */
#femcare .price table tr th span {
  white-space: nowrap;
}
#femcare .price .menu__list {
  max-width: 1140px;
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
#femcare .price .menu__price__table table {
  margin-bottom: 30px;
}
#femcare .price .menu__price__table table + p {
  color: #4D4D4D;
  /* txt/基本 */
  font-family: "Noto Sans JP";
  font-size: 17px;
  font-style: normal;
  font-weight: 400;
  line-height: 200%; /* 34px */
  letter-spacing: 1.02px;
}
#femcare .price .menu__price__table table td {
  color: #595959;
  text-align: center;
  /* txt/table/値段 */
  font-family: "Shippori Mincho";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%; /* 30.45px */
  letter-spacing: 0.84px;
}
#femcare .price .menu__price__table table tr th:first-child {
  text-align: left;
}
#femcare .price .menu__price__table table tr:first-child th:first-child {
  text-align: center;
}
#femcare .price .menu__price__table table td.td_text {
  width: 39%;
  color: #807374;
  font-family: "Noto Sans JP";
  font-size: 15px;
  font-style: normal;
  font-weight: 500;
  line-height: 180%; /* 27px */
  letter-spacing: 0.9px;
  text-align: left;
}

/* .side-effect */
#femcare .side-effect .side-effect__row {
  display: flex;
  justify-content: space-between;
}
#femcare .side-effect .side-effect__row .titleMain.is-child .titleMain__en {
  white-space: nowrap;
}
#femcare .side-effect .side-effect__row p {
  max-width: 540px;
  margin-top: 30px;
}

/* .faq */
#femcare .faq .faq__wrap {
  padding-top: 0;
  padding-bottom: 0;
}
#femcare .faq h2 {
  display: table;
  margin-left: auto;
  margin-right: auto;
  text-align: center;
}
#femcare .faq h2.titleMain.is-child .titleMain__jp {
  display: table;
  margin-left: auto;
  margin-right: auto;
  position: relative;
}
#femcare .faq h2.titleMain.is-child .titleMain__jp::before {
  position: absolute;
  left: -30px;
  top: 50%;
  transform: translateY(-50%);
}
#femcare .faq h2.titleMain.is-child .titleMain__jp::after {
  color: #807374;
  font-size: 21px;
  font-style: normal;
  font-weight: 500;
  line-height: 130%;
  letter-spacing: 0.63px;
  content: "";
  display: inline-block;
  background-image: url(../img/cosmetic/medical-hair-removal/hl_icon.svg);
  width: 25px;
  height: 28px;
  background-size: cover;
  margin-left: 10px;
  position: absolute;
  right: -30px;
  top: 50%;
  transform: translateY(-50%);
}
#femcare .faq h2 + p {
  margin-top: 60px;
  margin-bottom: 60px;
  text-align: center;
}
#femcare .faq .faq__box {
  max-width: 810px;
}
#femcare .faq .faq__wrap .faq__box__item dl dt .txt p {
  color: #595959;
  font-family: "Noto Sans JP";
  font-size: 21px;
  font-style: normal;
  font-weight: 400;
  line-height: 145%; /* 30.45px */
  letter-spacing: 0.84px;
}

/* #femcare SP ALL */
@media only screen and (max-width: 767px) {
  main #femcare section:not(:first-child) {
    padding: 45px 0;
  }
  #femcare .titleMain.is-child {
    margin-bottom: 45px !important;
  }
  #femcare .titleMain.is-child > .titleMain__en {
    font-size: 10vw !important;
  }
  #femcare .titleMain.is-child > .titleMain__jp {
    font-size: 3.5vw !important;
  }
  #femcare [class$="__img"] {
    margin-bottom: 20px;
  }
  #femcare [class$="__img"] img {
    object-fit: cover !important;
  }
}

/* #femcare SP Individual */
@media only screen and (max-width: 767px) {
  #femcare .about-02 .about-02__content {
    width: auto;
  }
  #femcare .change .point__list {
    display: inherit;
  }
  #femcare [class$="__item"] {
    width: auto !important;
    margin-bottom: 30px;
  }
  #femcare [class$="__item"]:last-child {
    margin-bottom: 0;
  }
  #femcare [class$="__box"] {
    gap: 20px !important;
  }
  #femcare p {
    font-size: 15px !important;
  }
  #femcare .change .point__list .point__list__item h3 span.no {
    left: 0;
    top: -20px;
    font-size: 80px;
  }
  #femcare .change .point__list .point__list__item h3 {
    font-size: 5vw;
    min-height: inherit;
    padding: 20px;
  }
  #femcare .effect .effect__box .effect__box__item {
    padding: 30px;
  }
  #femcare .effect .effect__box .effect__box__item h5 {
    font-size: 4.5vw;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
  }
  #femcare .effect .effect__box .effect__box__item .no {
    left: 10px;
  }
  #femcare .comparison .menu__price__table table {
    table-layout: inherit !important;
  }
  #femcare .recommended .designate-box__list li:nth-child(2) {
    border-top: none;
  }
  #femcare .recommended .designate-box__list li {
    width: auto !important;
    padding: 15px 0 !important;
  }
  #femcare .menu__price__table table th, #femcare .menu__price__table table td {
    font-size: 1.6rem;
  }
  #femcare .price .menu__price__table table td.td_text {
    width: 100vw;
    white-space: pre-wrap;
  }
  #femcare .side-effect .side-effect__row {
    display: inherit;
  }
  #femcare .faq h2 + p {
    margin: 30px 0;
  }
  #femcare .faq .faq__wrap .faq__box__item {
    margin-bottom: 0;
  }
  #femcare .faq .faq__wrap .faq__box__item dl dt .txt p {
    font-size: 1.7rem !important;
  }
}

/* ADD CSS 2025.09.18 */
/*-------------------------------------------------------------
	.sti-testing
-------------------------------------------------------------*/
.sti-testing .tabs__navlink span{
	position: relative;
	display: block;
}
.sti-testing .tabs__navlink span b{
	display: inline-block;
	font-family: Shippori Mincho, serif;
    font-size: 3rem;
    line-height: 1.6;
    letter-spacing: .03em;
	font-weight: normal;
}
.sti-testing .tabs__navlink span::after {
    content: "";
    display: block;
    width: 30px;
    height: 30px;
    background: url(../img/common/icon/ic_arrow-circle-gradient.svg) no-repeat center / contain;
	transform: rotate(90deg) translateX(-50%);
	position: absolute;
	right: 20px;
	top:50%;
}
.sti-testing .sti-testing__row table td:first-child:not(:only-child){
	width: 29%;
}
.sti-testing .sti-testing__row table td:nth-child(2),.sti-testing .sti-testing__row table td:nth-child(3),.sti-testing .sti-testing__row table td:nth-child(4){
	white-space :nowrap;
}
@media only screen and (max-width: 767px) {
	.sti-testing__content{
scroll-margin-top:100px
		
	}

	
}

/*-------------------------------------------------------------
	.pill-consultation
-------------------------------------------------------------*/
.pill-consultation .pill-consultation__wrap .cate__table table{
	table-layout: fixed;
}
.pill-consultation .pill-consultation__wrap .cate__table table th,.pill-consultation .pill-consultation__wrap .cate__table table td{
	width: auto;
	border-top: 1px solid rgb(247, 227, 227);
	border-left: 1px solid rgb(247, 227, 227);
}
@media only screen and (max-width: 767px) {
	.pill-consultation .pill-consultation__wrap .cate__table table{
	table-layout: inherit;
		min-width: inherit;
}
	
}

/*-------------------------------------------------------------
	.consultation
-------------------------------------------------------------*/
.consultation .topAttention,.popup-content .topAttention,#popup-content .topAttention {
	margin: 0;
	width: auto;
	border: none;
	padding: 0;
	position:  absolute;
	bottom: 0;
}
#popup-content .topAttention{
	position: static;
	bottom: auto;
}
.consultation .topAttention .topAttention__text,#popup-content .topAttention__text{
	font-size: 14px;
	text-align: left;
	font-family: Noto Sans JP, sans-serif;
	font-weight: normal;
	padding-bottom: 20px;
	max-width: 465px;
}
#popup-content .topAttention__text{
	padding-bottom: 0;
	font-size: 13.5px;
	padding: 10px;
}
.consultation .consultation__content img {
	margin-bottom: 60px;
}

.consultation .consultation__item:nth-child(2) {
    bottom: 420px;
}

#popup-content img {
	margin-bottom: 20px;
}
.consultation__content a{
	bottom: auto;
	top: 224px;
}
@media only screen and (max-width: 767px) {
    .consultation .consultation__item:nth-child(2) {
        bottom: auto;
    }
}

/*-------------------------------------------------------------
	.prenatal-checkup
-------------------------------------------------------------*/
@media only screen and (max-width: 767px) {
.prenatal-checkup .cate__table table td {
    font-size: 15px !important;
	-webkit-text-size-adjust: 100%;
	font-size: 15px;
}
}



.flow__agreement__box{
    background:#FCF6F4;
    width: 100%;
    min-width: auto;
    padding: 2% 4% 3% 4%;
    border-radius: 5px;
    border:1px solid #F5CBCC;
    margin:60px 0 0 0;
}

@media only screen and (max-width: 767px) {
.flow__agreement__box{

    margin:30px 0 0 0;
}
}



.flow__agreement__box h3{
    font-family: Shippori Mincho, serif;
    font-size: 2.4rem;
    line-height: 1.45;
    letter-spacing: .03em;
    font-weight: 700;

text-align:center;
    color:#807374;
    padding:10px 0;
    border-radius:5px;
    margin:0 0 10px 0;
}

@media only screen and (max-width: 767px) {
.flow__agreement__box h3{

    font-size: 2.0rem;
    margin:0;

}
}


.flow__agreement__box ul{
    
    display:flex;
    justify-content: space-between;
}
@media only screen and (max-width: 767px) {
.flow__agreement__box ul{
    
    display:block;

}
}



.flow__agreement__box ul li{
    width:48%;
text-align:center;
}

@media only screen and (max-width: 767px) {
.flow__agreement__box ul li{
width:100%;
}
}
@media only screen and (max-width: 767px) {
.flow__agreement__box ul li:last-of-type{
margin:4% 0 0 0;
}
}


.flow__agreement__box ul li a{
    display:block;
    padding:3%;
background-color: #fff; /* 背景色 */
background-image: url(../img/common/icon/ic_arrow-circle-gradient.svg); /* 背景画像 */
background-repeat: no-repeat;
background-position: center right 4%;
background-size: 20px 20px;
    font-weight:500;
    border-radius:5px;
    color:#595959;
    border:1px solid #E5C1C1;
}
