@charset "UTF-8";
/*====================================================================================

[START TABLE OF CONTENT]

1. FOUNDATION.
   1.1. SETUP CHILD PAGE.
2. LAYOUT.
3. COMPONENT.
   3.1. BOX CHILD PAGE.
   3.2. CARD CHILD PAGE.
   3.3. STEP CHILD PAGE.
   3.4. POST CHILD PAGE.
   3.5. POINT CHILD PAGE.
   3.6. PART CHILD PAGE.
   3.7. BLOCK CHILD PAGE.
   3.8. BANNER CHILD PAGE.
   3.9. GROUP CHILD PAGE.
   3.10. PANEL CHILD PAGE.
   3.11. POPUP CHILD PAGE.
   3.12. SIDEBAR CHILD PAGE.
   3.13. HEADING CHILD PAGE.
   3.14. TITLE CHILD PAGE.
   3.15. TEXT CHILD PAGE.
   3.16. ITEM CHILD PAGE.
   3.17. ANCHOR CHILD PAGE.
   3.18. MAP CHILD PAGE.
   3.19. TABLE CHILD PAGE.
   3.20. BUTTON CHILD PAGE.
   3.21. SHAPE CHILD PAGE.
   3.22. TAG CHILD PAGE.
   3.23. ARROW CHILD PAGE.
   3.24. ICON CHILD PAGE.
   3.25. LINK CHILD PAGE.
   3.26. IMAGE CHILD PAGE.
   3.27. LIBRARY CHILD PAGE.
   3.28. SECTION CHILD PAGE.
   3.29. PAGINATION CHILD PAGE.
   3.30. COMMON CHILD PAGE.
4. PROJECT.
5. SECTION PAGE VISUAL.
6. SECTION BREADCRUMB.

====================================================================================*/
/*====================================================================================
1. FOUNDATION.
====================================================================================*/
/*------------------------------------------------------------------------------------
1.1. SETUP CHILD PAGE.
------------------------------------------------------------------------------------*/
/*====================================================================================
2. LAYOUT.
====================================================================================*/
/*====================================================================================
3. COMPONENT.
====================================================================================*/
/*------------------------------------------------------------------------------------
3.1. BOX CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- BOX SIGN ----------*/
.c-box-sign__name {
  text-align: end;
}
.c-box-sign__name img {
  width: auto;
}
.c-box-sign__body {
  margin-block-start: 1.5rem;
  border-radius: 1rem;
  background-color: var(--theme-color-eighteenth);
}
.c-box-sign__text {
  color: var(--theme-color-quaternary);
  font-size: 1.4rem;
  font-weight: 600;
  text-align: end;
}

@media only screen and (max-width: 767px) {
  .c-box-sign__name img {
    max-height: 1.8rem;
  }
  .c-box-sign__body {
    padding: 1rem 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-box-sign__name img {
    max-height: 2.2rem;
  }
  .c-box-sign__body {
    padding: 1rem 2rem;
  }
}
/*---------- BOX ABOUT ----------*/
.c-box-about {
  padding: 2rem var(--spacing-sp-15-pc-20);
  border-radius: 1rem;
  border: 1px dashed var(--theme-color-twentieth);
  background-color: var(--theme-color-secondary);
}
.c-box-about .c-title-page {
  margin-block-end: 1rem;
  text-align: center;
}

@media only screen and (min-width: 768px) {
  .c-box-about__desc {
    line-height: 1.8;
  }
}
/*---------- BOX POPUP ----------*/
.c-box-popup {
  border-radius: var(--theme-radius-secondary);
  border: 1px dashed var(--theme-color-seventh);
  background-color: var(--theme-color-secondary);
}
.c-box-popup__title {
  padding-block-end: 0.5rem;
  margin-block-end: 1.5rem;
  border-block-end: 1px solid var(--theme-color-twentieth);
  color: var(--theme-color-seventh);
  font-family: var(--theme-font-jp-secondary);
  font-weight: 500;
}
.c-box-popup__desc {
  font-size: 1.4rem;
}

@media only screen and (max-width: 767px) {
  .c-box-popup {
    padding: 2rem 1.5rem;
  }
  .c-box-popup__title {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-box-popup {
    padding: 2rem 5rem;
  }
  .c-box-popup__title {
    font-size: 2rem;
  }
}
/*---------- BOX GUIDE ----------*/
.c-box-guide {
  border-radius: var(--theme-radius-secondary);
  border: 1px dashed var(--theme-color-twentieth);
  background-color: var(--theme-color-secondary);
}
.c-box-guide .c-title-page {
  margin-block-end: var(--spacing-sp-15-pc-20);
  text-align: center;
}
.c-box-guide__item:not(:first-child) {
  margin-block-start: 0.8rem;
}
.c-box-guide__item-title {
  color: var(--theme-color-fifth);
  font-weight: 600;
}
.c-box-guide__item-text {
  margin-block-start: 0.4rem;
  padding-inline-start: 1.2em;
}

@media only screen and (max-width: 767px) {
  .c-box-guide {
    padding: 2rem 1.5rem 2.5rem 1rem;
  }
  .c-box-guide__item-title {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-box-guide {
    padding: 3rem 5rem;
  }
  .c-box-guide__item-title {
    font-size: 1.6rem;
  }
}
/*---------- BOX EXAM ----------*/
.c-box-main {
  padding: 2rem var(--spacing-sp-15-pc-20);
  border-radius: 1rem;
  border: 1px dashed var(--theme-color-twentieth);
  background-color: var(--theme-color-secondary);
}
.c-box-main__title {
  margin-block-end: 1rem;
  color: var(--theme-color-seventh);
  font-size: 1.8rem;
  font-weight: 600;
  text-align: center;
}
.c-box-main .c-title-circle {
  margin-bottom: 0.5rem;
}

/*---------- BOX FEMCARE ----------*/
.c-box-femcare {
  display: flex;
  justify-content: center;
}
.c-box-femcare__outer {
  position: relative;
  padding: 2rem var(--spacing-sp-30-pc-40);
  border-radius: 0 6rem 0 6rem;
  border: 1px solid var(--theme-color-quaternary);
  background-color: var(--theme-color-secondary);
}
.c-box-femcare__quote {
  position: absolute;
  display: flex;
  align-items: center;
  width: 2rem;
  height: 4rem;
  border-color: var(--theme-color-quaternary);
  border-style: solid;
}
.c-box-femcare__quote img {
  position: absolute;
  inset-block: 0;
  margin-block: auto;
}
.c-box-femcare__quote.-quote-1 {
  inset-block-start: 1rem;
  inset-inline-start: -1px;
  border-width: 1px 1px 1px 0;
  border-radius: 0 4rem 4rem 0;
  background-color: var(--theme-color-secondary);
}
.c-box-femcare__quote.-quote-1 img {
  inset-inline-end: 1rem;
}
.c-box-femcare__quote.-quote-2 {
  inset-block-end: 1rem;
  inset-inline-end: -1px;
  border-width: 1px 0 1px 1px;
  border-radius: 4rem 0 0 4rem;
  background-color: var(--theme-color-eighteenth);
}
.c-box-femcare__quote.-quote-2 img {
  inset-inline-start: 1rem;
}
.c-box-femcare__title, .c-box-femcare__desc {
  font-weight: 700;
  font-family: var(--theme-font-jp-secondary);
}
.c-box-femcare__title {
  border-block-end: 1px dashed var(--theme-color-twentieth);
  color: var(--theme-color-quaternary);
}
.c-box-femcare__desc {
  font-size: 1.4rem;
}

@media only screen and (max-width: 767px) {
  .c-box-femcare__title {
    margin-block-end: 0.8rem;
    padding-block-end: 0.8rem;
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-box-femcare__title {
    margin-block-end: 1rem;
    padding-block-end: 1rem;
    font-size: 1.6rem;
  }
}
/*---------- BOX MENOPAUSE TREATMENT ----------*/
.c-box-m-treatment {
  padding: var(--spacing-sp-15-pc-20);
  border-radius: 1rem;
  border: 1px dashed var(--theme-color-twentieth);
}

@media only screen and (min-width: 768px) {
  .c-box-m-treatment {
    font-size: 1.6rem;
  }
}
/*------------------------------------------------------------------------------------
3.2. CARD CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST CARD ABOUT ----------*/
@media only screen and (max-width: 575px) {
  .c-list-card-about .c-card-about:not(:first-child) {
    margin-block-start: 3rem;
  }
}
@media only screen and (min-width: 576px) {
  .c-list-card-about {
    display: flex;
    flex-wrap: wrap;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-list-card-about {
    margin: -1.5rem;
  }
  .c-list-card-about .c-card-about {
    width: calc(50% - 3rem);
    margin: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-card-about {
    margin: -3rem -4rem;
  }
  .c-list-card-about .c-card-about {
    width: calc(50% - 8rem);
    margin: 3rem 4rem;
  }
}
/*---------- CARD ABOUT ----------*/
.c-card-about__figure {
  position: relative;
  margin-block-end: var(--spacing-sp-15-pc-20);
}
.c-card-about__img {
  width: 100%;
  border-radius: 12rem;
  box-shadow: var(--theme-shadow-primary);
}
.c-card-about__number {
  position: absolute;
  display: inline-block;
  inset-block-start: 0;
  inset-inline-start: -1rem;
  color: var(--theme-color-fifth);
  font: 400 6.1rem/1 var(--theme-font-en-primary);
  letter-spacing: 0.05em;
}
.c-card-about__desc {
  padding-inline: var(--spacing-sp-10-pc-20);
}
.c-card-about__desc strong {
  color: var(--theme-color-quaternary);
  font-weight: 600;
}
.c-card-about__btn {
  margin-block-start: var(--spacing-sp-20-pc-30);
  text-align: center;
}

@media only screen and (max-width: 767px) {
  .c-card-about__figure {
    padding-block-start: 2.7rem;
  }
  .c-card-about__desc strong {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-card-about__figure {
    padding-block-start: 1rem;
  }
  .c-card-about__desc {
    font-size: 1.6rem;
  }
  .c-card-about__desc strong {
    font-size: 2rem;
  }
}
/*---------- LIST CARD POPUP ----------*/
.c-list-card-popup {
  display: flex;
  flex-wrap: wrap;
}

@media only screen and (max-width: 575px) {
  .c-list-card-popup .c-card-popup {
    width: calc(50% - 1.4rem);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-list-card-popup .c-card-popup {
    width: calc(33.333% - 1.4rem);
  }
}
@media only screen and (max-width: 767px) {
  .c-list-card-popup {
    margin: -0.8rem -0.7rem;
  }
  .c-list-card-popup .c-card-popup {
    margin: 0.8rem 0.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-card-popup {
    margin: -1.3rem;
  }
  .c-list-card-popup .c-card-popup {
    width: calc(25% - 2.6rem);
    margin: 1.3rem;
  }
}
/*---------- CARD POPUP ----------*/
.c-card-popup__link {
  text-decoration: none;
}
.c-card-popup__img {
  position: relative;
  display: block;
  border-radius: 1rem;
  overflow: hidden;
}
.c-card-popup__img:before {
  position: absolute;
  display: inline-block;
  content: "";
  z-index: 2;
  width: 2rem;
  height: 2rem;
  background: url("./../images/common/lightbox/icon-zoom.png") no-repeat center center/100% auto;
}
.c-card-popup__img img {
  width: 100%;
}
.c-card-popup__title {
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .c-card-popup__img::before {
    inset-inline-end: 1rem;
    inset-block-end: 1rem;
  }
  .c-card-popup__title {
    margin-block-start: 0.7rem;
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-card-popup:hover .c-card-popup__img img {
    transform: scale(1.03);
  }
  .c-card-popup__img::before {
    inset-inline-end: 1.4rem;
    inset-block-end: 1.4rem;
  }
  .c-card-popup__title {
    margin-block-start: 1rem;
    font-size: 2rem;
  }
}
/*---------- LIST CARD GUIDE ----------*/
@media only screen and (max-width: 767px) {
  .c-list-card-guide .c-card-guide {
    margin-block-start: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-card-guide {
    display: flex;
    flex-wrap: wrap;
    margin: -1.1rem;
  }
  .c-list-card-guide .c-card-guide {
    width: calc(33.333% - 2.2rem);
    margin: 1.1rem;
  }
}
/*---------- CARD GUIDE ----------*/
.c-card-guide {
  position: relative;
}
.c-card-guide__header {
  position: absolute;
  inset-block-start: 0;
}
.c-card-guide__text {
  position: absolute;
  font-size: 1.2rem;
}
.c-card-guide__body {
  border-radius: 1.5rem;
  box-shadow: var(--theme-shadow-primary);
}
.c-card-guide__desc {
  margin-inline-end: -0.5rem;
}
.c-card-guide__desc strong {
  color: var(--theme-color-fifth);
  font-weight: 600;
}
.c-card-guide__list {
  margin-block-start: 1.2rem;
  font-weight: 600;
}
.c-card-guide__item:not(:first-child) {
  margin-block-start: 0.4rem;
}
.c-card-guide__btn {
  margin-block-start: var(--spacing-sp-15-pc-20);
  text-align: center;
}
.c-card-guide__btn .c-btn {
  max-width: 100%;
  justify-content: center;
}
.c-card-guide__btn .c-btn .c-circle::before {
  width: 56rem;
  height: 56rem;
}
.c-card-guide__note {
  margin-block-start: 1.2rem;
  font-size: 1.2rem;
}

@media only screen and (max-width: 767px) {
  .c-card-guide {
    padding-block-start: 4.1rem;
  }
  .c-card-guide__header {
    inset-inline: 1.5rem 0;
  }
  .c-card-guide__text {
    inset-inline: 10.5rem 0;
    inset-block-start: 5rem;
  }
  .c-card-guide__body {
    padding: 6.4rem 1.5rem 2.5rem 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-card-guide {
    padding-block-start: 5rem;
  }
  .c-card-guide__header {
    inset-inline: 2rem 0;
  }
  .c-card-guide__text {
    inset-inline: 11rem 0;
    inset-block-start: 5.5rem;
  }
  .c-card-guide__body {
    height: 100%;
    padding: 6.5rem 2rem 2rem 2rem;
  }
}
/*---------- CARD GUIDE COLOR FIFTH ----------*/
.c-card-guide.-c-fifth .c-card-guide__body {
  color: var(--theme-color-secondary);
  background-color: var(--theme-color-fifth);
}

/*---------- CARD GUIDE COLOR THIRTEENTH ----------*/
.c-card-guide.-c-thirteenth .c-card-guide__body {
  background-color: var(--theme-color-thirteenth);
}

/*---------- LIST CARD EXAM ----------*/
@media only screen and (max-width: 767px) {
  .c-list-card-exam .c-card-exam:not(:first-child) {
    margin-block-start: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-card-exam {
    display: flex;
    justify-content: space-between;
  }
  .c-list-card-exam .c-card-exam {
    width: calc(50% - 2rem);
  }
}
/*---------- CARD EXAM ----------*/
.c-card-exam__header {
  position: relative;
  display: flex;
  align-items: flex-end;
  justify-content: center;
  text-align: center;
}
.c-card-exam__deco {
  inset-inline: 0;
  inset-block-end: 0;
  height: 100%;
  text-align: center;
}
.c-card-exam__deco img {
  width: auto;
  height: 100%;
}
.c-card-exam__tag {
  color: var(--theme-color-secondary);
  font-family: var(--theme-font-en-primary);
  line-height: 1;
}
.c-card-exam__body {
  border-radius: 1rem;
  border: 1px solid var(--theme-color-quaternary);
}
.c-card-exam__title {
  margin-block-end: var(--spacing-sp-20-pc-30);
  font-weight: 600;
}
.c-card-exam__row {
  display: flex;
  align-items: center;
}
.c-card-exam__item {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 34%;
  padding: 0.5rem;
  border-radius: 1rem;
  border: 1px dashed var(--theme-color-quaternary);
  background-color: var(--theme-color-thirteenth);
  text-align: center;
}
.c-card-exam__item-text {
  font-weight: 600;
  line-height: 1.3;
}
.c-card-exam__arrow {
  position: relative;
  flex: 1;
  padding: 0 1rem;
  font-size: 1rem;
  text-align: center;
}
.c-card-exam__arrow-text {
  position: absolute;
  inset-inline-start: 50%;
  transform: translateX(-50%);
  margin-inline: auto;
  padding-inline-end: 2rem;
  width: 200%;
}

@media only screen and (max-width: 767px) {
  .c-card-exam__header {
    min-height: 3.8rem;
  }
  .c-card-exam__tag {
    font-size: 2.6rem;
  }
  .c-card-exam__body {
    padding: 2.5rem 1.5rem 4rem 1.5rem;
  }
  .c-card-exam__title {
    font-size: 1.4rem;
  }
  .c-card-exam__item {
    min-height: 5.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-card-exam__header {
    min-height: 4.6rem;
  }
  .c-card-exam__tag {
    font-size: 3rem;
  }
  .c-card-exam__title {
    font-size: 1.6rem;
  }
  .c-card-exam__body {
    padding: 2.5rem 3rem 4rem 3rem;
  }
  .c-card-exam__item {
    min-height: 6rem;
  }
  .c-card-exam__item-text {
    font-size: 1.6rem;
  }
  .c-card-exam__arrow-text {
    inset-block-start: 75%;
  }
}
/*---------- LIST CARD MENOPAUSE TREATMENT ----------*/
.c-list-card-m-treatment .c-card-m-treatment:not(:first-child) {
  margin-block-start: var(--spacing-sp-20-pc-30);
}

/*---------- CARD MENOPAUSE TREATMENT ----------*/
.c-card-m-treatment__header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
}
.c-card-m-treatment__deco {
  inset-inline: 0;
  inset-block-end: 0;
  height: 100%;
  text-align: center;
}
.c-card-m-treatment__title {
  color: var(--theme-color-secondary);
  font-family: var(--theme-font-jp-secondary);
  font-weight: 700;
}
.c-card-m-treatment__body {
  padding: 2rem var(--spacing-sp-15-pc-20);
  border-radius: 1rem;
}
.c-card-m-treatment__item {
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .c-card-m-treatment__header {
    min-height: 3.8rem;
  }
  .c-card-m-treatment__title {
    font-size: 1.7rem;
  }
  .c-card-m-treatment__item:not(:first-child) {
    margin-block-start: 0.2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-card-m-treatment__header {
    min-height: 4.6rem;
  }
  .c-card-m-treatment__title {
    font-size: 2rem;
  }
  .c-card-m-treatment__item {
    font-size: 1.6rem;
  }
}
/*---------- CARD MENOPAUSE TREATMENT FIFTH ----------*/
.c-card-m-treatment.-c-fifth .c-card-m-treatment__body {
  background-color: var(--theme-color-thirteenth);
}

/*---------- CARD MENOPAUSE TREATMENT EIGHTH ----------*/
.c-card-m-treatment.-c-eighth .c-card-m-treatment__body {
  background-color: var(--theme-color-eighteenth);
}

/*---------- LIST CARD GYNECOLOGY ----------*/
@media only screen and (max-width: 767px) {
  .c-list-card-gynecology .c-card-gynecology:not(:first-child) {
    margin-block-start: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-card-gynecology {
    display: flex;
  }
  .c-list-card-gynecology .c-card-gynecology:first-child {
    width: 44.5rem;
  }
  .c-list-card-gynecology .c-card-gynecology:last-child {
    flex: 1;
    margin-inline-start: 5rem;
  }
}
/*---------- CARD GYNECOLOGY ----------*/
.c-card-gynecology__header {
  display: flex;
  justify-content: flex-start;
}
.c-card-gynecology__heading {
  border-radius: 1rem 1rem 0 0;
}
.c-card-gynecology__title {
  color: var(--theme-color-secondary);
  font-weight: 600;
}
.c-card-gynecology__body {
  border-radius: 0 1rem 1rem 1rem;
}
.c-card-gynecology__list {
  display: flex;
  justify-content: center;
  margin: -1rem;
}
.c-card-gynecology__item {
  margin: 1rem;
  text-align: center;
}
.c-card-gynecology__item:last-child .c-card-gynecology__item-img::before {
  content: none;
}
.c-card-gynecology__item-img {
  position: relative;
}
.c-card-gynecology__item-img::before {
  position: absolute;
  content: "";
  inset-block: 0;
  inset-inline-end: -1.5rem;
  margin-block: auto;
  background: url("./../images/common/arrow4-right-green.svg") no-repeat center center/auto 100%;
}
.c-card-gynecology__item-text {
  margin-block-start: 0.5rem;
  line-height: 1.5;
}

@media only screen and (max-width: 575px) {
  .c-card-gynecology__body {
    padding: 1.5rem 1rem;
  }
  .c-card-gynecology__item-img::before {
    width: 1rem;
    height: 1.8rem;
  }
  .c-card-gynecology__item-text {
    margin-inline: -1rem;
    font-size: 2.4vw;
  }
}
@media only screen and (min-width: 576px) {
  .c-card-gynecology__body {
    padding: 2rem;
  }
  .c-card-gynecology__item-img::before {
    width: 1.6rem;
    height: 3rem;
  }
}
@media only screen and (max-width: 767px) {
  .c-card-gynecology__heading {
    padding: 0.7rem 2rem;
  }
  .c-card-gynecology__title {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-card-gynecology__heading {
    padding: 0.7rem 3rem;
  }
  .c-card-gynecology__title {
    font-size: 2rem;
  }
}
/*---------- CARD GYNECOLOGY FIFTH ----------*/
.c-card-gynecology.-c-fifth .c-card-gynecology__heading {
  background-color: var(--theme-color-fifth);
}
.c-card-gynecology.-c-fifth .c-card-gynecology__body {
  border: 1px solid var(--theme-color-fifth);
}

@media only screen and (max-width: 767px) {
  .c-card-gynecology.-c-fifth .c-card-gynecology__item {
    width: calc(33.333% - 1.4rem);
  }
}
@media only screen and (min-width: 768px) {
  .c-card-gynecology.-c-fifth .c-card-gynecology__item {
    width: calc(33.333% - 2rem);
  }
}
/*---------- CARD GYNECOLOGY QUATERNARY ----------*/
.c-card-gynecology.-c-quaternary .c-card-gynecology__heading {
  background-color: var(--theme-color-quaternary);
}
.c-card-gynecology.-c-quaternary .c-card-gynecology__body {
  border: 1px solid var(--theme-color-quaternary);
}

@media only screen and (max-width: 767px) {
  .c-card-gynecology.-c-quaternary .c-card-gynecology__item {
    width: calc(25% - 1.4rem);
  }
}
@media only screen and (min-width: 768px) {
  .c-card-gynecology.-c-quaternary .c-card-gynecology__item {
    width: calc(25% - 2rem);
  }
}
/*------------------------------------------------------------------------------------
3.3. STEP CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST STEP MENOPAUSE TREATMENT ----------*/
@media only screen and (max-width: 575px) {
  .c-list-step-m-treatment .c-step-m-treatment:not(:first-child) {
    margin-block-start: 6.5rem;
  }
}
@media only screen and (min-width: 576px) {
  .c-list-step-m-treatment {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-list-step-m-treatment {
    margin: -3rem -1.5rem;
  }
  .c-list-step-m-treatment .c-step-m-treatment {
    width: calc(50% - 3rem);
    margin: 3rem 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-step-m-treatment {
    margin: -2rem -1.5rem;
  }
  .c-list-step-m-treatment .c-step-m-treatment {
    width: calc(33.333% - 3rem);
    margin: 2rem 1.5rem;
  }
}
/*---------- STEP MENOPAUSE TREATMENT ----------*/
.c-step-m-treatment__figure {
  position: relative;
}
.c-step-m-treatment__img {
  width: 100%;
  border-radius: 1.5rem;
  box-shadow: var(--theme-shadow-primary);
}
.c-step-m-treatment__tag {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0.5rem 0.5rem 0 0;
  border-radius: 50%;
  border: 2px solid var(--theme-color-fifth);
  background-color: var(--theme-color-secondary);
  color: var(--theme-color-fifth);
  font-family: var(--theme-font-en-primary);
  line-height: 1;
}
.c-step-m-treatment__title {
  margin-block-start: 1.5rem;
  font-size: 1.6rem;
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .c-step-m-treatment__tag {
    inset-block-start: -4.6rem;
    inset-inline-start: 1.5rem;
    width: 9.2rem;
    height: 9.2rem;
    font-size: 4.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-step-m-treatment__tag {
    inset-block-start: -5rem;
    inset-inline-start: 2rem;
    width: 10rem;
    height: 10rem;
    font-size: 5rem;
  }
}
/*------------------------------------------------------------------------------------
3.4. POST CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- POST ABOUT ----------*/
.c-post-about__left {
  padding: 2.5rem;
  background: url("./../images/about/s1-post-bg.webp") no-repeat center center/cover;
}
.c-post-about__body {
  box-shadow: var(--theme-shadow-primary);
  background-color: var(--theme-color-secondary);
}

@media only screen and (max-width: 767px) {
  .c-post-about {
    padding-inline: 1.5rem;
  }
  .c-post-about__left {
    text-align: center;
    border-radius: 2rem 2rem 0 0;
  }
  .c-post-about__left img {
    height: 30rem;
    width: auto;
  }
  .c-post-about__body {
    padding: 2.5rem 1.5rem 1.5rem 1.5rem;
    border-radius: 0 0 1.5rem 1.5rem;
  }
  .c-post-about__body .c-box-sign {
    margin-block-start: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-post-about {
    display: flex;
    align-items: flex-end;
  }
  .c-post-about__left {
    width: calc(50% + 9.5rem);
    min-height: 55rem;
    margin-block-end: 12rem;
    padding-inline-end: 25rem;
    border-radius: 0 4rem 4rem 0;
    text-align: right;
  }
  .c-post-about__right {
    flex: 1;
  }
  .c-post-about__body {
    margin-inline-start: -19.5rem;
    padding: 5rem 5rem 3rem 5rem;
    max-width: 64rem;
    border-radius: 1.5rem;
  }
  .c-post-about__body .c-box-sign {
    margin-block-start: 1.5rem;
  }
  .c-post-about__desc {
    font-size: 1.6rem;
  }
}
/*---------- LIST PORT FEMCARE ----------*/
.c-list-post-femcare .c-post-femcare:not(:first-child) {
  margin-block-start: var(--spacing-sp-35-pc-40);
}

/*---------- LIST PORT FEMCARE COLUMN 2 ----------*/
@media only screen and (min-width: 768px) {
  .c-list-post-femcare.-column-2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .c-list-post-femcare.-column-2 .c-post-femcare {
    width: calc(50% - 2.5rem);
  }
  .c-list-post-femcare.-column-2 .c-post-femcare:nth-child(2) {
    margin-block-start: 0;
  }
}
/*---------- PORT FEMCARE ----------*/
.c-post-femcare__left img {
  border-radius: 1rem;
}
.c-post-femcare__subtitle {
  margin-block: 0.5rem 0.2rem;
  font-size: 1.4rem;
  font-weight: 400;
}
.c-post-femcare__subtitle span {
  position: relative;
  display: inline-block;
  padding-inline: 1.1em;
}
.c-post-femcare__subtitle span::before, .c-post-femcare__subtitle span::after {
  position: absolute;
  content: "◇";
  color: var(--theme-color-quaternary);
}
.c-post-femcare__subtitle span::before {
  left: 0;
}
.c-post-femcare__subtitle span::after {
  right: 0;
}
.c-post-femcare__btn {
  margin-block-start: var(--spacing-sp-20-pc-30);
}

@media only screen and (max-width: 575px) {
  .c-post-femcare__left img {
    width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .c-post-femcare__left {
    margin-block-end: 2rem;
  }
  .c-post-femcare__right .c-heading-femcare {
    margin-block-end: 2rem;
  }
  .c-post-femcare__btn {
    text-align: center;
  }
}
@media only screen and (min-width: 768px) {
  .c-post-femcare {
    display: flex;
  }
  .c-post-femcare__left {
    width: 21rem;
  }
  .c-post-femcare__right {
    flex: 1;
    min-width: 1px;
    padding-inline-start: 2rem;
  }
  .c-post-femcare__right .c-heading-femcare {
    margin-block-end: 1rem;
  }
}
/*---------- POST MENOPAUSE TREATMENT ----------*/
.c-post-m-treatment__row:not(:first-child) {
  margin-block-start: var(--spacing-sp-25-pc-50);
}
.c-post-m-treatment__left img {
  width: 100%;
  border-radius: 2rem;
}

@media only screen and (max-width: 767px) {
  .c-post-m-treatment__left {
    margin-block-end: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-post-m-treatment__row {
    display: flex;
    align-items: center;
  }
  .c-post-m-treatment__row.-l-normal {
    flex-direction: row-reverse;
  }
  .c-post-m-treatment__row.-l-normal .c-post-m-treatment__right {
    padding-inline-end: 4.5rem;
  }
  .c-post-m-treatment__row.-l-reverse .c-post-m-treatment__right {
    padding-inline-start: 5rem;
  }
  .c-post-m-treatment__left, .c-post-m-treatment__right {
    width: 50%;
  }
  .c-post-m-treatment__right {
    line-height: 2.1;
  }
}
/*------------------------------------------------------------------------------------
3.5. POINT CHILD PAGE.
------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------
3.6. PART CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST PART MAIN ----------*/
@media only screen and (max-width: 767px) {
  .c-list-part-main .c-part-main:not(:first-child) {
    margin-block-start: 3.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-part-main .c-part-main:not(:first-child) {
    margin-block-start: 6rem;
  }
}
/*---------- PART MAIN ----------*/
.c-part-main__item-desc {
  margin-block-end: var(--spacing-sp-15-pc-25);
}
.c-part-main__item .c-list-item-price + .c-block-main {
  margin-block-start: var(--spacing-sp-20-pc-30);
}
.c-part-main .c-heading {
  margin-block-end: var(--spacing-sp-20-pc-30);
}
.c-part-main__desc {
  margin-block-end: var(--spacing-sp-20-pc-30);
}
.c-part-main__tbl {
  margin-block-start: var(--spacing-sp-35-pc-60);
}
.c-part-main__title, .c-part-main__note {
  text-align: center;
}
.c-part-main__title {
  margin-block-end: 1rem;
  color: var(--theme-color-quaternary);
  font-weight: 600;
}
.c-part-main__note p {
  display: inline-block;
}
.c-part-main .c-tbl-exam {
  margin-block-start: var(--spacing-sp-20-pc-35);
}
.c-part-main .c-heading-main {
  margin-block-end: var(--spacing-sp-25-pc-35);
}
.c-part-main .c-list-card-exam {
  margin-block-start: var(--spacing-sp-25-pc-50);
}

@media only screen and (max-width: 767px) {
  .c-part-main__item:not(:first-child) {
    margin-block-start: 3rem;
  }
  .c-part-main__title {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-part-main__item {
    padding-block-start: 3rem;
  }
  .c-part-main__item:not(:first-child) {
    margin-block-start: 2rem;
  }
  .c-part-main__item-desc {
    font-size: 1.6rem;
  }
  .c-part-main__title {
    font-size: 2.4rem;
  }
  .c-part-main__desc, .c-part-main__note {
    font-size: 1.6rem;
  }
}
/*---------- LIST PART GUIDE ----------*/
.c-list-part-guide .c-part-guide:not(:first-child) {
  margin-block-start: var(--spacing-sp-35-pc-60);
}

/*---------- PART GUIDE ----------*/
.c-part-guide__desc {
  margin-block-start: 1.5rem;
}
.c-part-guide__map {
  margin-block-start: var(--spacing-sp-20-pc-25);
}
.c-part-guide__inner {
  margin-block: var(--spacing-sp-20-pc-25) var(--spacing-sp-30-pc-50);
  padding: var(--spacing-sp-20-pc-25) var(--spacing-sp-15-pc-50);
  border-radius: 1.5rem;
  border: 1px solid var(--theme-color-fifth);
  background-color: var(--theme-color-secondary);
}

@media only screen and (max-width: 767px) {
  .c-part-guide__left {
    margin-block-end: 3rem;
  }
  .c-part-guide__img {
    text-align: center;
  }
}
@media only screen and (min-width: 768px) {
  .c-part-guide__row {
    display: flex;
  }
  .c-part-guide__left {
    flex: 1;
  }
  .c-part-guide__right {
    width: 35.7rem;
    padding-inline-start: 6rem;
  }
}
/*---------- LIST PART FEMCARE ----------*/
.c-list-part-femcare .c-part-femcare:not(:first-child) {
  margin-block-start: var(--spacing-sp-35-pc-50);
}

/*---------- PART FEMCARE ----------*/
.c-part-femcare .c-heading {
  margin-block-end: var(--spacing-sp-20-pc-30);
}

/*---------- LIST PART MENOPAUSE TREATMENT ----------*/
.c-list-part-m-treatment .c-part-m-treatment:not(:first-child) {
  margin-block-start: var(--spacing-sp-35-pc-60);
}

/*---------- PART MENOPAUSE TREATMENT ----------*/
.c-part-m-treatment .c-heading {
  margin-block-end: var(--spacing-sp-20-pc-25);
}
.c-part-m-treatment .c-heading-main {
  margin-block-end: var(--spacing-sp-25-pc-35);
}
.c-part-m-treatment__row {
  display: flex;
}
.c-part-m-treatment__right img {
  border-radius: 2rem;
}
.c-part-m-treatment__note {
  margin-block-start: var(--spacing-sp-20-pc-30);
  margin-inline-end: -1rem;
}
.c-part-m-treatment__item {
  margin-block-start: var(--spacing-sp-20-pc-30);
}
.c-part-m-treatment__item-title {
  margin-block-end: 0.3rem;
  color: var(--theme-color-quaternary);
  font-weight: 600;
}
.c-part-m-treatment .c-list-card-m-treatment {
  margin-block-start: 3rem;
}
.c-part-m-treatment .c-box-m-treatment {
  margin-block-start: var(--spacing-sp-15-pc-20);
}
.c-part-m-treatment .c-tbl-exam {
  margin-block-start: var(--spacing-sp-30-pc-50);
}
.c-part-m-treatment .c-group-m-treatment {
  margin-block-start: var(--spacing-sp-30-pc-50);
}
.c-part-m-treatment__btn {
  margin-block-start: var(--spacing-sp-25-pc-30);
}

@media only screen and (max-width: 767px) {
  .c-part-m-treatment__row {
    flex-direction: column-reverse;
  }
  .c-part-m-treatment__left {
    margin-block-start: 2.5rem;
  }
  .c-part-m-treatment__item-title {
    font-size: 1.4rem;
  }
  .c-part-m-treatment__btn {
    text-align: center;
  }
}
@media only screen and (min-width: 768px) {
  .c-part-m-treatment__left {
    flex: 1;
    padding-inline-end: 5rem;
  }
  .c-part-m-treatment__right {
    width: 51rem;
  }
  .c-part-m-treatment__desc {
    font-size: 1.6rem;
  }
  .c-part-m-treatment__item-title {
    font-size: 1.6rem;
  }
  .c-part-m-treatment__subitem {
    font-size: 1.6rem;
  }
}
/*---------- LIST PART GYNECOLOGY ----------*/
.c-list-part-gynecology .c-part-gynecology:not(:first-child) {
  margin-block-start: var(--spacing-sp-35-pc-60);
}

/*---------- PART GYNECOLOGY ----------*/
.c-part-gynecology .c-heading {
  margin-block-end: var(--spacing-sp-20-pc-25);
}
.c-part-gynecology__row {
  display: flex;
}
.c-part-gynecology__desc strong {
  font-weight: 600;
}
.c-part-gynecology__item {
  margin-block-start: var(--spacing-sp-20-pc-30);
}
.c-part-gynecology__item-title {
  margin-block-end: 0.3rem;
  color: var(--theme-color-quaternary);
  font-weight: 600;
}
.c-part-gynecology__item-desc strong {
  font-weight: 600;
}
.c-part-gynecology__order {
  margin-block-start: var(--spacing-sp-20-pc-30);
}
.c-part-gynecology__btn {
  margin-block-start: var(--spacing-sp-25-pc-30);
}
.c-part-gynecology .c-list-block-main {
  margin-block-start: var(--spacing-sp-20-pc-30);
}
.c-part-gynecology .c-list-group-gynecology {
  margin-block-start: var(--spacing-sp-30-pc-50);
}
.c-part-gynecology .c-list-card-gynecology {
  margin-block-start: var(--spacing-sp-30-pc-50);
}

@media only screen and (max-width: 767px) {
  .c-part-gynecology__row {
    flex-direction: column-reverse;
  }
  .c-part-gynecology__left {
    margin-block-start: 2.5rem;
  }
  .c-part-gynecology__item-title {
    font-size: 1.4rem;
  }
  .c-part-gynecology__btn {
    text-align: center;
  }
}
@media only screen and (min-width: 768px) {
  .c-part-gynecology__left {
    flex: 1;
    padding-inline-end: 5rem;
  }
  .c-part-gynecology__right {
    width: 55.6rem;
  }
  .c-part-gynecology__desc {
    font-size: 1.6rem;
  }
  .c-part-gynecology__item-title {
    font-size: 1.6rem;
  }
  .c-part-gynecology__item-desc {
    font-size: 1.6rem;
  }
  .c-part-gynecology__order {
    font-size: 1.6rem;
  }
}
/*------------------------------------------------------------------------------------
3.7. BLOCK CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST BLOCK GYNECOLOGY ----------*/
.c-list-block-main.-column-2 .c-block-main__desc {
  margin-block-end: var(--spacing-sp-15-pc-20);
}
.c-list-block-main.-column-2 .c-box-main {
  margin-block-start: auto;
}

@media only screen and (max-width: 767px) {
  .c-list-block-main.-column-2 .c-block-main:not(:first-child) {
    margin-block-start: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-block-main.-column-2 {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin: -2rem;
  }
  .c-list-block-main.-column-2 .c-block-main {
    display: flex;
    flex-direction: column;
    width: calc(50% - 4rem);
    margin: 2rem;
  }
}
/*---------- BLOCK MAIN ----------*/
.c-block-main {
  border-radius: 1rem;
  background-color: var(--theme-color-eighteenth);
}
.c-block-main__title {
  margin-block-end: 1rem;
  color: var(--theme-color-quaternary);
  font-weight: 600;
  text-align: center;
}
.c-block-main__list + .c-box-main {
  margin-block-start: 2rem;
}
.c-block-main__item:not(:first-child) {
  margin-block-start: 0.2rem;
}
.c-block-main__item.-t-bold {
  color: var(--theme-color-quaternary);
  font-weight: 600;
}
.c-block-main .c-box-main + .c-block-main__note {
  margin-block-start: 0.5rem;
}

@media only screen and (max-width: 767px) {
  .c-block-main {
    padding: 1.5rem;
  }
  .c-block-main__title {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-block-main {
    padding: 2rem;
  }
  .c-block-main__title {
    font-size: 2rem;
  }
  .c-block-main__list {
    margin-right: -0.5rem;
  }
  .c-block-main__item {
    font-size: 1.6rem;
  }
  .c-block-main__note {
    font-size: 1.6rem;
  }
}
/*---------- LIST BLOCK ABOUT ----------*/
.c-list-block-about .c-block-about:not(:first-child) {
  margin-block-start: var(--spacing-sp-35-pc-50);
}

/*---------- BLOCK ABOUT ----------*/
.c-block-about__left .c-heading {
  margin-block-end: 2rem;
}
.c-block-about__inner {
  margin-block-start: 2rem;
  padding: var(--spacing-sp-15-pc-20);
  border-radius: 1;
  background-color: var(--theme-color-thirteenth);
}
.c-block-about__inner .c-list-dot > li:not(:first-child) {
  margin-block-start: 0.2rem;
}
.c-block-about__inner .c-box-about {
  margin-block-start: 2rem;
}
.c-block-about__img img {
  border-radius: 2rem;
}

@media only screen and (max-width: 767px) {
  .c-block-about__img {
    margin-block-end: 2.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-block-about {
    display: flex;
  }
  .c-block-about__left {
    flex: 1;
    padding-inline-end: 5rem;
  }
  .c-block-about__right {
    width: 50%;
  }
  .c-block-about__desc {
    line-height: 2.15;
  }
}
/*---------- LIST BLOCK GUIDE ----------*/
.c-list-block-guide .c-block-guide:not(:first-child) {
  margin-block-start: var(--spacing-sp-20-pc-35);
}

/*---------- BLOCK GUIDE ----------*/
.c-block-guide__desc {
  margin-block-start: 1rem;
}
.c-block-guide .c-tbl-time {
  margin-block-start: var(--spacing-sp-15-pc-20);
}

/*---------- BLOCK FEMCARE ----------*/
.c-block-femcare {
  text-align: center;
}
.c-block-femcare__desc {
  margin-block-end: var(--spacing-sp-15-pc-25);
}
.c-block-femcare__title {
  margin-block-end: var(--spacing-sp-15-pc-30);
  color: var(--theme-color-quaternary);
  font-family: var(--theme-font-jp-secondary);
  font-weight: 500;
}
.c-block-femcare__list {
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-block-femcare__item {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background: url("./../images/femcare/s1-circle-bg.svg") no-repeat center center/100% 100%;
  color: var(--theme-color-secondary);
  line-height: 1;
  font-weight: 600;
  text-shadow: 0.3rem 0.3rem 1.5rem rgba(0, 0, 0, 0.3);
}

@media only screen and (max-width: 767px) {
  .c-block-femcare__title {
    font-size: 2.2rem;
  }
  .c-block-femcare__desc {
    font-size: 1.6rem;
  }
  .c-block-femcare__item {
    width: 12rem;
    height: 12rem;
    font-size: 2.5rem;
  }
  .c-block-femcare__plus {
    margin-inline: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-block-femcare__title {
    font-size: 2.4rem;
  }
  .c-block-femcare__desc {
    font-size: 1.8rem;
  }
  .c-block-femcare__item {
    width: 15rem;
    height: 15rem;
    font-size: 3rem;
  }
  .c-block-femcare__plus {
    margin-inline: 2.6rem;
  }
}
/*------------------------------------------------------------------------------------
3.8. BANNER CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST BANNER ABOUT ----------*/
.c-list-bnr-about .c-bnr-about:not(:first-child) {
  margin-block-start: var(--spacing-sp-25-pc-30);
}

/*---------- BANNER ABOUT ----------*/
.c-bnr-about {
  padding: 2rem;
  border-radius: 1rem;
  border: 1px solid var(--theme-color-nineteenth);
}
.c-bnr-about__left {
  width: 12rem;
}
.c-bnr-about__title {
  margin-block-end: 1.2rem;
  padding-block-end: 0.7rem;
  border-block-end: 1px solid var(--theme-color-seventh);
  font-size: 1.6rem;
  font-weight: 700;
}
.c-bnr-about__btn {
  margin-block-start: 2rem;
}
.c-bnr-about__btn .c-btn {
  max-width: 21.5rem;
  padding-inline-end: 4rem;
}
.c-bnr-about__btn .c-btn .c-circle::before {
  width: 39rem;
  height: 39rem;
}

@media only screen and (max-width: 575px) {
  .c-bnr-about__left {
    position: relative;
    z-index: 2;
    float: left;
    padding-inline-end: 1rem;
  }
  .c-bnr-about__btn {
    text-align: center;
  }
  .c-bnr-about__title {
    position: relative;
  }
  .c-bnr-about__title::before {
    position: absolute;
    content: "";
    inset-block-end: -2px;
    inset-inline-start: 0;
    width: 12rem;
    height: 3px;
    background-color: var(--theme-color-secondary);
  }
}
@media only screen and (min-width: 576px) {
  .c-bnr-about__row {
    display: flex;
  }
  .c-bnr-about__right {
    flex: 1;
    padding-inline-start: 2rem;
  }
}
/*---------- BANNER FEMCARE ----------*/
.c-bnr-femcare {
  min-height: 33.5rem;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
.c-bnr-femcare__wrap {
  position: relative;
  max-width: 95.5rem;
}
.c-bnr-femcare__wrap::before {
  position: absolute;
  z-index: -1;
  content: "";
  inset: 5.8rem 0 0 0;
  border-radius: 2rem;
  background-color: var(--theme-color-eighteenth);
}
.c-bnr-femcare__row {
  display: flex;
}
.c-bnr-femcare__body {
  padding: 1.5rem var(--spacing-sp-15-pc-30);
  box-shadow: var(--theme-shadow-primary);
  border-radius: var(--theme-radius-secondary);
  background-color: var(--theme-color-secondary);
}

@media only screen and (max-width: 575px) {
  .c-bnr-femcare__wrap {
    padding: 0 1.5rem;
  }
  .c-bnr-femcare__wrap .c-box-femcare {
    padding-inline: 1rem;
  }
  .c-bnr-femcare__row {
    flex-direction: column-reverse;
    margin-block-start: 2rem;
  }
  .c-bnr-femcare__left {
    margin-block-start: 2.5rem;
    text-align: center;
  }
  .c-bnr-femcare__left img {
    width: 18rem;
  }
}
@media only screen and (min-width: 576px) {
  .c-bnr-femcare__wrap .c-box-femcare {
    padding-inline-start: 2.5rem;
  }
  .c-bnr-femcare__row {
    align-items: flex-end;
  }
  .c-bnr-femcare__left {
    position: absolute;
    inset-block-end: 0;
  }
  .c-bnr-femcare__right {
    padding-bottom: 3rem;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-bnr-femcare__row {
    padding: 2rem 1.5rem 0 32%;
  }
  .c-bnr-femcare__left {
    inset-inline-start: 1.5rem;
    width: 27%;
  }
}
@media only screen and (min-width: 768px) {
  .c-bnr-femcare__row {
    padding: 2rem 3rem 0 34rem;
  }
  .c-bnr-femcare__left {
    inset-inline-start: 3rem;
    width: 31rem;
  }
  .c-bnr-femcare__body {
    font-size: 1.6rem;
  }
}
/*---------- BANNER GYNECOLOGY ----------*/
.c-bnr-gynecology__wrap {
  border-radius: 1rem;
  border: 1px dashed var(--theme-color-quaternary);
}
.c-bnr-gynecology__header {
  position: relative;
  text-align: center;
}
.c-bnr-gynecology__header::before, .c-bnr-gynecology__header::after {
  position: absolute;
  content: "";
  inset-block-start: 0;
  width: 1px;
  height: 100%;
  background-color: var(--theme-color-quaternary);
}
.c-bnr-gynecology__header::before {
  transform: rotate(-30deg);
}
.c-bnr-gynecology__header::after {
  transform: rotate(30deg);
}
.c-bnr-gynecology__title {
  font-family: var(--theme-font-jp-secondary);
  font-weight: 600;
}

@media only screen and (max-width: 575px) {
  .c-bnr-gynecology__body {
    display: flex;
    justify-content: center;
  }
  .c-bnr-gynecology__list:not(:first-child) {
    margin-block-start: 1rem;
  }
}
@media only screen and (min-width: 576px) {
  .c-bnr-gynecology__lists {
    display: flex;
    justify-content: space-between;
  }
}
@media only screen and (max-width: 767px) {
  .c-bnr-gynecology__header {
    padding-inline: 3.4rem 3rem;
  }
  .c-bnr-gynecology__header::before {
    inset-inline-start: 0.7rem;
  }
  .c-bnr-gynecology__header::after {
    inset-inline-end: 1rem;
  }
  .c-bnr-gynecology__title {
    font-size: 2rem;
  }
  .c-bnr-gynecology__body {
    padding: 2rem 1.5rem 2.5rem 1.5rem;
  }
  .c-bnr-gynecology__item:not(:first-child) {
    margin-block-start: 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-bnr-gynecology__wrap {
    max-width: 80rem;
    margin-inline: auto;
  }
  .c-bnr-gynecology__header {
    padding: 0 6.5rem;
  }
  .c-bnr-gynecology__header::before {
    inset-inline-start: 3.5rem;
  }
  .c-bnr-gynecology__header::after {
    inset-inline-end: 3.5rem;
  }
  .c-bnr-gynecology__title {
    font-size: 2.4rem;
  }
  .c-bnr-gynecology__body {
    padding: 2.5rem 8rem 4.5rem 8rem;
  }
  .c-bnr-gynecology__item {
    font-size: 1.6rem;
  }
  .c-bnr-gynecology__item:not(:first-child) {
    margin-block-start: 1.5rem;
  }
}
/*------------------------------------------------------------------------------------
3.9. GROUP CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST GROUP ABOUT ----------*/
@media only screen and (max-width: 767px) {
  .c-list-group-about .c-group-about:not(:first-child) {
    margin-block-start: 3.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-group-about {
    display: flex;
    justify-content: space-between;
  }
  .c-list-group-about .c-group-about {
    width: calc(50% - 2rem);
  }
}
/*---------- GROUP ABOUT ----------*/
.c-group-about .c-heading {
  margin-block-end: var(--spacing-sp-20-pc-30);
}
.c-group-about__note {
  margin-block-start: var(--spacing-sp-15-pc-20);
}

/*---------- LIST GROUP GUIDE ----------*/
@media only screen and (max-width: 767px) {
  .c-list-group-guide .c-group-guide:not(:first-child) {
    margin-block-start: 3rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-list-group-guide {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .c-list-group-guide .c-group-guide {
    width: calc(50% - 4rem);
  }
}
/*---------- GROUP GUIDE ----------*/
.c-group-guide .c-heading {
  margin-block-end: var(--spacing-sp-15-pc-20);
}
.c-group-guide__item:not(:first-child) {
  margin-block-start: 1rem;
}
.c-group-guide__sublist {
  margin-block-start: 0.2rem;
}

/*---------- LIST GROUP MAIN ----------*/
.c-list-group-main .c-group-main:not(:first-child) {
  margin-block-start: var(--spacing-sp-35-pc-50);
}

/*---------- GROUP MAIN ----------*/
@media only screen and (max-width: 767px) {
  .c-group-main__right {
    margin-block-start: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-group-main__row {
    display: flex;
  }
  .c-group-main__left {
    width: 55.5rem;
  }
  .c-group-main__right {
    flex: 1;
    padding-inline-start: 3rem;
  }
}
/*---------- GROUP MENOPAUSE TREATMENT ----------*/
.c-group-m-treatment {
  border-radius: 2rem;
  border: 1px dashed var(--theme-color-quaternary);
}
.c-group-m-treatment__header {
  display: flex;
  justify-content: center;
}
.c-group-m-treatment__heading {
  margin-block-start: -1px;
  border-radius: 0 0 var(--theme-radius-secondary) var(--theme-radius-secondary);
  background-color: var(--theme-color-quaternary);
  text-align: center;
}
.c-group-m-treatment__title {
  color: var(--theme-color-secondary);
  font-weight: 600;
}
.c-group-m-treatment__item:not(:first-child) {
  margin-block-start: 1.5rem;
}
.c-group-m-treatment__note {
  margin-block-start: 1.5rem;
  color: var(--theme-color-quaternary);
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .c-group-m-treatment__title {
    padding: 1.2rem 2rem;
    font-size: 1.7rem;
  }
  .c-group-m-treatment__body {
    padding: 2rem 1.5rem 3rem 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-group-m-treatment__heading {
    padding: 1.4rem 1.5rem;
    min-width: 35rem;
  }
  .c-group-m-treatment__title {
    font-size: 2rem;
  }
  .c-group-m-treatment__body {
    padding: 2.5rem 5rem 4.5rem 4.5rem;
    font-size: 1.6rem;
  }
}
/*---------- LIST GROUP GYNECOLOGY ----------*/
.c-list-group-gynecology .c-group-gynecology:not(:first-child) {
  margin-block-start: var(--spacing-sp-25-pc-40);
}

/*---------- GROUP GYNECOLOGY ----------*/
.c-group-gynecology .c-heading-main {
  margin-block-end: var(--spacing-sp-20-pc-30);
}

/*------------------------------------------------------------------------------------
3.10. PANEL CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST PANEL GUIDE ----------*/
.c-list-panel-guide {
  position: relative;
}
.c-list-panel-guide::before {
  position: absolute;
  content: "";
  height: 100%;
}
.c-list-panel-guide .c-panel-guide:not(:first-child) {
  margin-block-start: 3rem;
}

@media only screen and (max-width: 767px) {
  .c-list-panel-guide::before {
    inset-inline-start: 3rem;
    width: 1px;
    border-inline-start: 1px dashed var(--theme-color-primary);
  }
}
@media only screen and (min-width: 768px) {
  .c-list-panel-guide::before {
    inset-inline-start: 8rem;
    width: 2px;
    border-inline-start: 2px dashed var(--theme-color-primary);
  }
}
/*---------- PANEL GUIDE ----------*/
.c-panel-guide__header {
  position: relative;
  display: flex;
  align-items: center;
  border-radius: 1rem;
  background-color: var(--theme-color-fifth);
}
.c-panel-guide__icon {
  position: absolute;
}
.c-panel-guide__title {
  font-family: var(--theme-font-jp-secondary);
  color: var(--theme-color-secondary);
  font-weight: 700;
}
.c-panel-guide__body {
  position: relative;
}
.c-panel-guide__body .c-box-guide {
  margin-block-start: 1.5rem;
}
.c-panel-guide__subtitle {
  color: var(--theme-color-seventh);
  font-weight: 600;
}
.c-panel-guide__note {
  margin-block-start: var(--spacing-sp-10-pc-15);
  font-size: 1.2rem;
}

@media only screen and (max-width: 767px) {
  .c-panel-guide__header {
    padding: 0.5rem 1rem 0.5rem 7rem;
    min-height: 4.6rem;
  }
  .c-panel-guide__icon {
    inset-block-end: -3rem;
    inset-inline-start: 0;
    width: 6rem;
  }
  .c-panel-guide__title {
    font-size: 1.8rem;
  }
  .c-panel-guide__body {
    padding: 1.4rem 0 0 7rem;
    min-height: 5.4rem;
  }
  .c-panel-guide__subtitle {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-panel-guide__header {
    padding: 0.5rem 1rem 0.5rem 15rem;
    min-height: 5rem;
  }
  .c-panel-guide__icon {
    inset-inline-start: 3rem;
    inset-block-end: -6rem;
  }
  .c-panel-guide__title {
    font-size: 2rem;
  }
  .c-panel-guide__body {
    padding: 1.4rem 0 0 15rem;
    min-height: 6rem;
  }
  .c-panel-guide__subtitle {
    font-size: 1.6rem;
  }
}
/*---------- LIST PANEL MAIN ----------*/
.c-list-panel-main .c-panel-main:not(:first-child) {
  margin-block-start: 3rem;
}

/*---------- PANEL MAIN ----------*/
.c-panel-main__header {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-block-end: -1px;
  border-radius: var(--theme-radius-secondary) var(--theme-radius-secondary) 0 0;
  background-color: var(--theme-color-quaternary);
}
.c-panel-main__title {
  color: var(--theme-color-secondary);
  line-height: 1.5;
  font-weight: 600;
}
.c-panel-main__tag {
  flex: 0 0 auto;
}
.c-panel-main__tag-wrap {
  display: inline-block;
  padding: 0.6rem 0.8rem;
  background-color: var(--theme-color-secondary);
  font-size: 1.4rem;
  line-height: 1;
}
.c-panel-main__body .c-block-main {
  margin-block-start: var(--spacing-sp-20-pc-30);
}
.c-panel-main__note {
  margin-block-start: 1rem;
}

@media only screen and (max-width: 575px) {
  .c-panel-main__header {
    flex-wrap: wrap;
    padding: 1rem 1.5rem;
  }
  .c-panel-main__title {
    margin-block: 0.5rem;
  }
  .c-panel-main__tag {
    margin-block: 0.5rem;
    margin-inline-start: auto;
  }
}
@media only screen and (min-width: 576px) {
  .c-panel-main__header {
    padding: 1.5rem 2rem;
  }
  .c-panel-main__title {
    flex: 1;
  }
}
@media only screen and (max-width: 767px) {
  .c-panel-main__title {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-panel-main__title {
    font-size: 2rem;
  }
  .c-panel-main__note {
    font-size: 1.6rem;
  }
}
/*---------- PANEL FEMCARE ----------*/
.c-panel-femcare__wrap {
  border-radius: 2rem;
  border: 1px solid var(--theme-color-twentieth);
}
.c-panel-femcare__header {
  display: flex;
  justify-content: center;
}
.c-panel-femcare__heading {
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  border-radius: 0 0 var(--theme-radius-primary) var(--theme-radius-primary);
  background-color: var(--theme-color-sixth);
}
.c-panel-femcare__title {
  color: var(--theme-color-secondary);
  font-family: var(--theme-font-jp-secondary);
  font-weight: 600;
}
.c-panel-femcare__row {
  display: flex;
  align-items: flex-end;
}
.c-panel-femcare__left {
  flex: 1;
}
.c-panel-femcare__outer {
  display: flex;
  align-items: center;
  background: url("./../images/femcare/s1-panel-bg.webp") no-repeat center bottom/100% 100%;
}
.c-panel-femcare__inner {
  width: 100%;
}
.c-panel-femcare__list {
  display: flex;
  justify-content: center;
}
.c-panel-femcare__list.-list-1 .c-panel-femcare__item {
  width: 100%;
}
.c-panel-femcare__list.-list-2 .c-panel-femcare__item {
  width: 33.333%;
}
.c-panel-femcare__list.-list-3 .c-panel-femcare__item, .c-panel-femcare__list.-list-4 .c-panel-femcare__item {
  width: 50%;
}
.c-panel-femcare__item {
  line-height: 1.5;
  font-weight: 600;
  text-align: center;
}

@media only screen and (max-width: 575px) {
  .c-panel-femcare__right {
    width: 35%;
  }
  .c-panel-femcare__item {
    font-size: 2.8vw;
  }
}
@media only screen and (min-width: 576px) {
  .c-panel-femcare__right {
    width: 23rem;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-panel-femcare__right {
    width: 27%;
  }
  .c-panel-femcare__item {
    font-size: 1.6rem;
  }
}
@media only screen and (max-width: 767px) {
  .c-panel-femcare__wrap {
    padding: 1rem 1rem 1.5rem 1rem;
  }
  .c-panel-femcare__right {
    padding-inline-start: 1rem;
  }
  .c-panel-femcare__outer {
    padding: 6% 0.5rem 16% 0;
  }
  .c-panel-femcare__header {
    margin-block-end: 2rem;
  }
  .c-panel-femcare__heading {
    min-height: 5.5rem;
    padding: 1rem;
  }
  .c-panel-femcare__title {
    font-size: 2rem;
  }
  .c-panel-femcare__list:not(:first-child) {
    margin-block-start: 1.5rem;
  }
  .c-panel-femcare__list.-list-3 {
    padding-inline: 0 9%;
  }
  .c-panel-femcare__list.-list-4 {
    padding-inline-start: 22%;
  }
}
@media only screen and (min-width: 768px) {
  .c-panel-femcare__wrap {
    max-width: 82rem;
    margin-inline: auto;
    padding: 1rem 3rem 3rem 3rem;
  }
  .c-panel-femcare__right {
    padding-inline-start: 1.5rem;
  }
  .c-panel-femcare__outer {
    min-height: 29.5rem;
    padding: 0 2.5rem 4.5rem 0;
  }
  .c-panel-femcare__heading {
    min-height: 6.5rem;
    padding: 1rem 3.5rem;
  }
  .c-panel-femcare__title {
    font-size: 2.4rem;
  }
  .c-panel-femcare__list:not(:first-child) {
    margin-block-start: 2.7rem;
  }
  .c-panel-femcare__list.-list-3 {
    padding-inline: 4rem;
  }
  .c-panel-femcare__list.-list-4 {
    padding-inline-start: 12rem;
  }
  .c-panel-femcare__item {
    font-size: 2rem;
  }
}
/*---------- PANEL GYNECOLOGY ----------*/
.c-panel-gynecology {
  border-radius: 1rem;
  border: 1px dashed var(--theme-color-quaternary);
  background-color: var(--theme-color-thirteenth);
}
.c-panel-gynecology__header {
  display: flex;
  justify-content: center;
  margin-block-start: -1px;
}
.c-panel-gynecology__heading {
  border-radius: 0 0 var(--theme-radius-secondary) var(--theme-radius-secondary);
  background-color: var(--theme-color-quaternary);
  text-align: center;
}
.c-panel-gynecology__title {
  color: var(--theme-color-secondary);
  font-weight: 600;
}
.c-panel-gynecology__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: -0.5rem;
}
.c-panel-gynecology__item {
  margin: 0.5rem;
}

@media only screen and (max-width: 575px) {
  .c-panel-gynecology__item {
    width: calc(50% - 1rem);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-panel-gynecology__item {
    width: calc(33.333% - 1rem);
  }
}
@media only screen and (max-width: 767px) {
  .c-panel-gynecology__heading {
    padding: 0.9rem 2rem;
  }
  .c-panel-gynecology__title {
    font-size: 1.7rem;
  }
  .c-panel-gynecology__body {
    padding: 2rem 1rem 2rem 1rem;
  }
  .c-panel-gynecology__list {
    margin: -0.5rem;
  }
  .c-panel-gynecology__item {
    margin: 0.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-panel-gynecology__heading {
    padding: 0.9rem 1.5rem;
    min-width: 29rem;
  }
  .c-panel-gynecology__title {
    font-size: 2rem;
  }
  .c-panel-gynecology__body {
    padding: 3rem;
  }
}
/*------------------------------------------------------------------------------------
3.11. POPUP CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST POPUP ----------*/
.c-list-popup {
  position: fixed;
  z-index: 9999;
  inset: 0;
  display: none;
  background: rgba(0, 0, 0, 0.8);
}

/*---------- POPUP ----------*/
.c-popup {
  position: absolute;
  display: none;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  transform: translate(-50%, -50%);
  width: 77.5rem;
  max-width: 100%;
}
.c-popup.is-active-slide {
  display: block;
}
.c-popup__wrap .c-box-popup {
  margin-block-start: var(--spacing-sp-20-pc-30);
}
.c-popup__img img {
  border-radius: var(--theme-radius-secondary);
}
.c-popup .c-circle-base {
  top: 50%;
}

@media only screen and (max-width: 575px) {
  .c-popup .c-circle-base.js-prevPopup {
    left: -2.7rem;
  }
  .c-popup .c-circle-base.js-nextPopup {
    right: -2.7rem;
  }
}
@media only screen and (min-width: 576px) {
  .c-popup .c-circle-base {
    top: 50%;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-popup .c-circle-base.js-prevPopup {
    left: 2.5rem;
  }
  .c-popup .c-circle-base.js-nextPopup {
    right: 2.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .c-popup {
    padding-inline-start: 1.5rem;
    width: calc(100% - 6rem);
  }
  .c-popup .scroll-element.scroll-y {
    width: 0.6rem;
  }
  .c-popup__wrap {
    max-height: calc(100dvh - 2rem);
  }
  .c-popup .c-circle-base {
    width: 4rem;
    height: 4rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-popup .scroll-element.scroll-y {
    width: 0.8rem;
  }
  .c-popup__wrap {
    max-height: calc(100dvh - 3rem);
  }
  .c-popup .c-circle-base.js-prevPopup {
    left: calc(50% - 45rem);
  }
  .c-popup .c-circle-base.js-nextPopup {
    right: calc(50% - 43.5rem);
  }
}
/*---------- POPUP ----------*/
.c-popup-close {
  position: fixed;
  cursor: pointer;
  z-index: 10000;
  padding: 0;
  border: 0;
  color: var(--theme-color-secondary);
  line-height: 1;
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  .c-popup-close {
    inset-block-start: 1.2rem;
    inset-inline-end: 1.6rem;
    font-size: 4.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-popup-close {
    inset-block-start: 2.5rem;
    inset-inline-end: 3rem;
    font-size: 5rem;
  }
}
/*------------------------------------------------------------------------------------
3.12. SIDEBAR CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- SIDEBAR ----------*/
.c-sidebar {
  border-radius: 2rem;
  border: 1px solid var(--theme-color-twentieth);
}
.c-sidebar a {
  text-decoration: none;
}
.c-sidebar__heading {
  position: relative;
  border-radius: 1rem;
  background-color: var(--theme-color-quaternary);
}
.c-sidebar__title {
  color: var(--theme-color-secondary);
  font-family: var(--theme-font-jp-secondary);
  font-weight: 500;
}
.c-sidebar__subitem {
  border-block-end: 1px dashed var(--theme-color-twentieth);
}
.c-sidebar__sublink {
  display: block;
  padding: 1rem;
  font-family: var(--theme-font-jp-secondary);
  font-weight: 500;
}
.c-sidebar__sublink:hover {
  color: var(--theme-color-quaternary);
}

@media only screen and (max-width: 767px) {
  .c-sidebar {
    padding: 1rem;
  }
  .c-sidebar__heading {
    padding: 0.9rem 2.5rem 0.9rem 1.5rem;
  }
  .c-sidebar__heading::before {
    position: absolute;
    content: "";
    inset-block: 0;
    inset-inline-end: 1rem;
    width: 1.2rem;
    height: 0.8rem;
    margin-block: auto;
    background: url("./../images/common/arrow-down-white.webp") no-repeat center center/100% auto;
  }
  .c-sidebar__heading.is-active::before {
    transform: rotate(180deg);
  }
  .c-sidebar__title {
    font-size: 1.7rem;
  }
  .c-sidebar__item:not(:first-child) {
    margin-block-start: 1rem;
  }
  .c-sidebar__sublist {
    display: none;
    padding: 0 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-sidebar {
    padding: 1.5rem 0 1.5rem 1.5rem;
  }
  .c-sidebar__heading {
    padding: 1rem 2rem;
  }
  .c-sidebar__title {
    font-size: 2.4rem;
  }
  .c-sidebar__list {
    max-height: calc(100dvh - 15rem);
  }
  .c-sidebar__item:not(:first-child) {
    margin-block-start: 3rem;
  }
  .c-sidebar__sublist {
    padding: 0 2rem;
  }
  .c-sidebar__sublink {
    font-size: 1.6rem;
  }
}
/*---------- SIDEBAR NEWS ----------*/
.c-sidebar-news__item.is-active .c-btn-main__text {
  color: var(--theme-color-secondary);
}

@media only screen and (max-width: 767px) {
  .c-sidebar-news__list {
    display: flex;
    justify-content: center;
    margin: -0.6rem;
  }
  .c-sidebar-news__item {
    width: calc(50% - 1.2rem);
    margin: 0.6rem;
  }
  .c-sidebar-news__item:nth-child(odd) .c-btn-main {
    margin-inline-start: auto;
  }
  .c-sidebar-news__item .c-btn-main {
    background-color: var(--theme-color-secondary);
  }
  .c-sidebar-news__item .c-btn-main__text {
    color: var(--theme-color-fifth);
  }
  .c-sidebar-news__item.is-active .c-btn-main {
    background-color: var(--theme-color-fifth);
  }
}
@media only screen and (min-width: 768px) {
  .c-sidebar-news__item:not(:first-child) {
    margin-block-start: 2rem;
  }
  .c-sidebar-news__item .c-btn-main {
    background-color: var(--theme-color-fifth);
  }
  .c-sidebar-news__item .c-btn-main::before {
    background-color: var(--theme-color-secondary);
  }
  .c-sidebar-news__item .c-btn-main:hover .c-btn-main__text {
    color: var(--theme-color-secondary);
  }
  .c-sidebar-news__item .c-btn-main__text {
    color: var(--theme-color-fifth);
  }
  .c-sidebar-news__item.is-active .c-btn-main::before {
    width: 0;
    height: 0;
  }
}
/*------------------------------------------------------------------------------------
3.13. HEADING CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- HEADING ----------*/
.c-heading {
  position: relative;
}
.c-heading::before, .c-heading::after {
  position: absolute;
  content: "";
  inset-inline-start: 0;
  width: 0.5rem;
  height: 50%;
}
.c-heading::before {
  inset-block-start: 0;
  background-color: var(--theme-color-thirteenth);
}
.c-heading::after {
  inset-block-end: 0;
  background-color: var(--theme-color-fifth);
}
.c-heading__title {
  font-family: var(--theme-font-jp-secondary);
  line-height: 1.5;
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .c-heading {
    padding-inline-start: 1.7rem;
  }
  .c-heading__title {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-heading {
    padding-inline-start: 2rem;
  }
  .c-heading__title {
    font-size: 2.4rem;
  }
}
/*---------- HEADING COLOR SECONDARY ----------*/
.c-heading.-c-secondary::before {
  background-color: var(--theme-color-secondary);
}

/*---------- HEADING MAIN ----------*/
.c-heading-main {
  overflow: hidden;
}
.c-heading-main__wrap {
  position: relative;
  display: inline-block;
  padding-block-end: 1rem;
}
.c-heading-main__wrap::before, .c-heading-main__wrap::after {
  position: absolute;
  content: "";
  inset-block-end: 0;
  border-block-end: 1px;
  border-block-end-style: solid;
}
.c-heading-main__wrap::before {
  z-index: 2;
  width: 100%;
  border-block-end-color: var(--theme-color-quaternary);
}
.c-heading-main__wrap::after {
  z-index: 1;
  width: 100vw;
  border-block-end-color: var(--theme-color-thirteenth);
}
.c-heading-main__title {
  font-family: var(--theme-font-jp-secondary);
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .c-heading-main__title {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-heading-main__title {
    font-size: 2.4rem;
  }
}
/*---------- HEADING MAIN SIZE MEDIUM ----------*/
@media only screen and (max-width: 767px) {
  .c-heading-main.-s-medium .c-heading-main__title {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-heading-main.-s-medium .c-heading-main__wrap {
    padding-block-end: 0.6em;
  }
  .c-heading-main.-s-medium .c-heading-main__title {
    font-size: 2rem;
  }
}
/*---------- HEADING PAGE ----------*/
.c-heading-page {
  padding: 0.6rem 2rem;
  background-color: var(--theme-color-quaternary);
}
.c-heading-page__title {
  color: var(--theme-color-secondary);
  font-weight: 700;
}

@media only screen and (max-width: 767px) {
  .c-heading-page {
    padding: 0.9rem 1.5rem;
  }
  .c-heading-page__title {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-heading-page {
    padding: 1.1rem 2rem;
  }
  .c-heading-page__title {
    font-size: 2.4rem;
  }
}
/*---------- HEADING SECTION ----------*/
.c-heading-section {
  padding-block-end: 0.7rem;
  border-block-end: 1px solid var(--theme-color-twentieth);
}
.c-heading-section__title {
  font-family: var(--theme-font-jp-secondary);
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  .c-heading-section__title {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-heading-section__title {
    font-size: 1.8rem;
  }
}
/*---------- HEADING CHILD ----------*/
.c-heading-child {
  position: relative;
  z-index: 3;
  display: flex;
  align-items: center;
  justify-content: center;
  text-align: center;
  padding: 1rem;
  border-radius: 4rem;
  background-color: var(--theme-color-secondary);
  box-shadow: 0.3rem 0.3rem 1.5rem rgba(0, 0, 0, 0.07);
  overflow: hidden;
}
.c-heading-child__title {
  font-weight: 700;
  font-family: var(--theme-font-jp-secondary);
}
.c-heading-child__deco.-version-1 {
  inset-block-start: 0;
  inset-inline-start: 0;
}
.c-heading-child__deco.-version-2 {
  inset-block-end: 0;
  inset-inline-end: 0;
}

@media only screen and (max-width: 767px) {
  .c-heading-child {
    min-height: 6rem;
  }
  .c-heading-child__deco {
    width: 15rem;
  }
  .c-heading-child__title {
    font-size: 1.9rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-heading-child {
    min-height: 7.5rem;
  }
  .c-heading-child__title {
    font-size: 2.4rem;
  }
}
/*---------- HEADING FEMCARE ----------*/
.c-heading-femcare__title {
  padding-bottom: 0.8rem;
  border-block-end: 1px dashed var(--theme-color-twentieth);
  color: var(--theme-color-quaternary);
  font-family: var(--theme-font-jp-secondary);
  font-size: 1.8rem;
  font-weight: 500;
}
.c-heading-femcare__dl {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-block-start: 1rem;
}
.c-heading-femcare__price {
  line-height: 1;
}
.c-heading-femcare__price strong {
  color: var(--theme-color-seventh);
  font-size: 1.6rem;
  font-weight: 600;
}
.c-heading-femcare__price small {
  font-size: 1.2rem;
}
.c-heading-femcare__body {
  padding: 2rem var(--spacing-sp-15-pc-20);
  border-radius: 1rem;
  background-color: var(--theme-color-eighteenth);
}

/*---------- HEADING FEMCARE FULL ----------*/
@media only screen and (max-width: 767px) {
  .c-heading-femcare.-l-full .c-heading-femcare__left {
    margin-block-end: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-heading-femcare.-l-full {
    display: flex;
    align-items: center;
  }
  .c-heading-femcare.-l-full .c-heading-femcare__left {
    width: 28rem;
  }
  .c-heading-femcare.-l-full .c-heading-femcare__right {
    flex: 1;
    padding-inline-start: 3rem;
  }
}
/*------------------------------------------------------------------------------------
3.14. TITLE CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- TITLE MAIN ----------*/
.c-title-main {
  position: relative;
  font-family: var(--theme-font-jp-secondary);
  font-weight: 500;
  text-align: center;
}
.c-title-main::before {
  position: absolute;
  content: "";
  inset-block-end: 0;
  inset-inline: 0;
  margin-inline: auto;
  height: 2px;
  background-color: var(--theme-color-fifth);
}

@media only screen and (max-width: 767px) {
  .c-title-main {
    padding-block-end: 1.2rem;
    font-size: 2.4rem;
  }
  .c-title-main::before {
    width: 7rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-title-main {
    padding-block-end: 2rem;
    font-size: 4rem;
  }
  .c-title-main::before {
    width: 10rem;
  }
}
/*---------- TITLE MAIN LEFT ----------*/
.c-title-main.-d-left {
  text-align: start;
}
.c-title-main.-d-left::before {
  width: 100%;
}

/*---------- TITLE PAGE ----------*/
.c-title-page {
  font-family: var(--theme-font-jp-secondary);
  font-weight: 700;
}
.c-title-page__text {
  padding: 0 var(--spacing-sp-5-pc-10);
  background: linear-gradient(0deg, rgba(245, 151, 29, 0.2) 30%, transparent 30%);
}

/*---------- TITLE PAGE SIZE MEDIUM ----------*/
@media only screen and (max-width: 767px) {
  .c-title-page.-s-medium {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-title-page.-s-medium {
    font-size: 2rem;
  }
}
/*---------- TITLE PAGE COLOR SEVENTH ----------*/
.c-title-page.-c-seventh {
  color: var(--theme-color-seventh);
}

/*---------- TITLE SQUARE ----------*/
.c-title-square {
  position: relative;
  padding-inline-start: 1.4em;
  font-family: var(--theme-font-jp-secondary);
  font-weight: 700;
}
.c-title-square::before {
  position: absolute;
  content: "■";
  inset-block-start: 0;
  inset-inline-start: 0;
  color: var(--theme-color-fifth);
}

@media only screen and (max-width: 767px) {
  .c-title-square {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-title-square {
    font-size: 2rem;
  }
}
/*---------- TITLE SQUARE SIZE SMALL ----------*/
@media only screen and (max-width: 767px) {
  .c-title-square.-s-small {
    font-size: 1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-title-square.-s-small {
    font-size: 1.6rem;
  }
}
/*---------- TITLE JAPAN ----------*/
.c-title-jp {
  color: var(--theme-color-quaternary);
  font-family: var(--theme-font-jp-secondary);
  font-size: 1.4rem;
  font-weight: 600;
}

/*---------- TITLE CIRCLE ----------*/
.c-title-circle {
  position: relative;
  padding-inline-start: 1.4em;
  font-weight: 600;
}
.c-title-circle::before {
  position: absolute;
  content: "●";
  inset-block-start: 0;
  inset-inline-start: 0;
}

@media only screen and (max-width: 767px) {
  .c-title-circle {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-title-circle {
    font-size: 1.6rem;
  }
}
/*---------- TITLE CIRCLE COLOR SEVENTH ----------*/
.c-title-circle.-c-seventh::before {
  color: var(--theme-color-seventh);
}

/*------------------------------------------------------------------------------------
3.15. TEXT CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- TEXT PAGE ----------*/
@media only screen and (max-width: 767px) {
  .c-text-page {
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-text-page {
    font-size: 1.8rem;
  }
}
/*------------------------------------------------------------------------------------
3.16. ITEM CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- ITEM PRICE ----------*/
.c-item-price {
  border-block-end: 1px dashed var(--theme-color-twentieth);
}
.c-item-price:first-child {
  border-block-start: 1px dashed var(--theme-color-twentieth);
}
.c-item-price__left, .c-item-price__right {
  display: flex;
  align-items: center;
}
.c-item-price__left {
  position: relative;
}
.c-item-price__left::before {
  position: absolute;
  content: "";
  z-index: -1;
  inset: 1rem 0;
  border-radius: 1rem;
  background-color: var(--theme-color-thirteenth);
}
.c-item-price__title {
  line-height: 1.5;
  font-weight: 600;
}
.c-item-price__desc {
  margin-block-start: 0.5rem;
}
.c-item-price__price strong,
.c-item-price__price small {
  font-weight: 600;
  line-height: 1.5;
}
.c-item-price__price strong {
  color: var(--theme-color-seventh);
}
.c-item-price__price span {
  display: block;
}

@media only screen and (max-width: 575px) {
  .c-item-price__left {
    padding: 2.8rem 1.5rem;
  }
  .c-item-price__right {
    padding: 0 0 1.5rem 1.5rem;
  }
}
@media only screen and (min-width: 576px) {
  .c-item-price {
    display: flex;
  }
  .c-item-price__left {
    width: 31rem;
    padding: 3.4rem 2rem;
  }
  .c-item-price__right {
    flex: 1;
    padding: 2rem 0 2rem 3.5rem;
  }
}
@media only screen and (max-width: 767px) {
  .c-item-price__title {
    font-size: 1.6rem;
  }
  .c-item-price__price strong {
    font-size: 2.4rem;
  }
  .c-item-price__price small {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-item-price__title {
    font-size: 1.8rem;
  }
  .c-item-price__price strong {
    font-size: 2.6rem;
  }
  .c-item-price__price small {
    font-size: 1.6rem;
  }
}
/*---------- LIST ITEM NEWS ----------*/
.c-list-item-news .c-item-news:not(:first-child) {
  margin-block-start: var(--spacing-sp-15-pc-20);
}

/*---------- ITEM NEWS ----------*/
.c-item-news__link {
  position: relative;
  border-radius: 1.5rem;
  background-color: var(--theme-color-eighteenth);
  text-decoration: none;
}
.c-item-news__link .c-circle-base {
  inset-block: 0;
  inset-inline-end: 1rem;
  margin-block: auto;
}
.c-item-news__left {
  font: 500 1.4rem var(--theme-font-jp-tertiary);
  letter-spacing: 0.05em;
}

@media only screen and (max-width: 767px) {
  .c-item-news__link {
    display: block;
    padding: 1.5rem 5.5rem 1.5rem 1.5rem;
  }
  .c-item-news__left {
    margin-block-end: 0.2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-item-news__link {
    display: flex;
    align-items: center;
    padding: 1.7rem 8rem 1.7rem 3rem;
  }
  .c-item-news__link:hover {
    color: var(--theme-color-fifth);
  }
  .c-item-news__link:hover .c-circle-base::before {
    width: 0;
    height: 0;
  }
  .c-item-news__link:hover .c-circle-base__arrow::before {
    opacity: 0;
  }
  .c-item-news__link:hover .c-circle-base__arrow::after {
    opacity: 1;
  }
  .c-item-news__left {
    width: 11.5rem;
  }
  .c-item-news__right {
    flex: 1;
    font-size: 1.6rem;
    line-height: 1.7;
  }
}
/*------------------------------------------------------------------------------------
3.17. ANCHOR CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- ANCHOR ----------*/
.c-anchor__list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.c-anchor__item {
  width: 25rem;
}
.c-anchor__item .c-btn {
  height: 100%;
}

@media only screen and (max-width: 575px) {
  .c-anchor__item .c-btn {
    max-width: 100%;
  }
}
@media only screen and (max-width: 767px) {
  .c-anchor__list {
    margin: -0.6rem;
  }
  .c-anchor__item {
    margin: 0.6rem;
    width: calc(50% - 1.2rem);
  }
  .c-anchor__item:nth-child(odd) {
    text-align: right;
  }
}
@media only screen and (min-width: 768px) {
  .c-anchor__list {
    margin: -1rem;
  }
  .c-anchor__list.-column-3 {
    max-width: 81rem;
    margin-inline: auto;
  }
  .c-anchor__item {
    margin: 1rem;
  }
}
/*------------------------------------------------------------------------------------
3.18. MAP CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- MAP GUIDE ----------*/
.c-map-guide {
  padding: var(--spacing-sp-35-pc-50) var(--spacing-sp-15-pc-50);
  text-align: center;
  background-color: var(--theme-color-secondary);
}

/*---------- MAP ----------*/
.c-map iframe {
  width: 100%;
  height: 100%;
}

@media only screen and (max-width: 767px) {
  .c-map {
    height: 70vw;
    max-height: 30rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-map {
    height: 35rem;
  }
}
/*------------------------------------------------------------------------------------
3.19. TABLE CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- TABLE ----------*/
.c-table table {
  table-layout: fixed;
  width: 100%;
}
.c-table th,
.c-table td {
  padding-block: 2rem;
  border-block-start: 1px solid var(--theme-color-nineteenth);
  border-block-end: 1px solid var(--theme-color-nineteenth);
}
.c-table th {
  position: relative;
  z-index: 2;
  color: var(--theme-color-quaternary);
  font-weight: 600;
}
.c-table th::before {
  position: absolute;
  content: "";
  z-index: -1;
  inset: 1rem 0;
  background-color: var(--theme-color-thirteenth);
}
.c-table td {
  padding-inline-start: 1.5rem;
}

@media only screen and (max-width: 767px) {
  .c-table.-about th {
    width: 10rem;
  }
  .c-table th,
  .c-table td {
    font-size: 1.4rem;
  }
  .c-table th::before {
    border-radius: 0.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-table.-about th {
    width: 15rem;
  }
  .c-table th,
  .c-table td {
    font-size: 1.6rem;
  }
  .c-table th::before {
    border-radius: 1rem;
  }
}
/*---------- TABLE EXAM ----------*/
.c-tbl-exam__heading {
  position: relative;
  z-index: 2;
  height: 100%;
}
.c-tbl-exam__heading::before {
  position: absolute;
  content: "";
  z-index: -1;
  inset: 0;
  border-radius: 2rem 2rem 0 0;
  border-block-start: 1px solid var(--theme-color-twentieth);
  border-inline: 1px solid var(--theme-color-twentieth);
}
.c-tbl-exam__heading.-c-quaternary::before {
  background-color: var(--theme-color-quaternary);
}
.c-tbl-exam__heading.-c-seventh::before {
  background-color: var(--theme-color-seventh);
}
.c-tbl-exam__heading:last-child::before {
  inset-inline-start: -1px;
}
.c-tbl-exam__title {
  color: var(--theme-color-secondary);
  line-height: 1.45;
  font-weight: 600;
}
.c-tbl-exam__price strong {
  color: var(--theme-color-seventh) !important;
  font-size: 2.2rem;
  font-weight: 600;
}
.c-tbl-exam table {
  width: 100%;
  table-layout: fixed;
}
.c-tbl-exam thead th {
  border-color: var(--theme-color-secondary);
  border-block-end: 1px solid var(--theme-color-twentieth);
}
.c-tbl-exam thead th:first-child {
  background-color: var(--theme-color-secondary);
}
.c-tbl-exam tbody th,
.c-tbl-exam tbody td {
  position: relative;
  text-align: start;
  vertical-align: middle;
}
.c-tbl-exam tbody th::before,
.c-tbl-exam tbody td::before {
  position: absolute;
  content: "";
  z-index: -1;
  inset: 0;
}
.c-tbl-exam tbody th strong,
.c-tbl-exam tbody td strong {
  color: var(--theme-color-quaternary);
  font-weight: 600;
}
.c-tbl-exam tbody th {
  position: relative;
  line-height: 1.45;
  font-weight: 600;
}
.c-tbl-exam tbody th::before {
  border-inline: 1px solid var(--theme-color-twentieth);
  border-block-end: 1px solid var(--theme-color-twentieth);
  background-color: var(--theme-color-eighteenth);
}
.c-tbl-exam tbody td::before {
  border-block-end: 1px solid var(--theme-color-twentieth);
  border-inline-end: 1px solid var(--theme-color-twentieth);
  background-color: var(--theme-color-secondary);
}

@media only screen and (max-width: 767px) {
  .c-tbl-exam__heading {
    padding: 1rem;
  }
  .c-tbl-exam__title {
    font-size: 1.7rem;
  }
  .c-tbl-exam thead th:first-child {
    position: sticky;
    z-index: 3;
    inset-inline-start: 0;
    width: 13.5rem;
  }
  .c-tbl-exam tbody th,
  .c-tbl-exam tbody td {
    padding: 1.3rem 1rem;
  }
  .c-tbl-exam tbody th {
    position: sticky;
    z-index: 2;
    inset-inline-start: 0;
    font-size: 1.4rem;
  }
  .c-tbl-exam tbody td {
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-tbl-exam__heading {
    padding: 1.5rem 1rem;
  }
  .c-tbl-exam__title {
    font-size: 2rem;
  }
  .c-tbl-exam thead th:first-child {
    width: 25rem;
  }
  .c-tbl-exam tbody th,
  .c-tbl-exam tbody td {
    padding: 1.5rem 2rem;
  }
  .c-tbl-exam tbody th {
    font-size: 1.8rem;
  }
  .c-tbl-exam tbody td {
    font-size: 1.6rem;
  }
}
/*---------- TABLE EXAM COLUMN 3 ----------*/
@media only screen and (max-width: 575px) {
  .c-tbl-exam.-column-3 table {
    width: 65rem;
  }
}
/*------------------------------------------------------------------------------------
3.20. BUTTON CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- BUTTON MAIN ----------*/
.c-btn-main {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  border-radius: 3.5rem;
  overflow: hidden;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
}
.c-btn-main__text {
  position: relative;
  z-index: 2;
  color: var(--theme-color-secondary);
  line-height: 1.5;
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  .c-btn-main {
    max-width: 23.5rem;
    min-height: 5.5rem;
    background-color: var(--theme-color-fifth);
    border: 1px solid var(--theme-color-fifth);
  }
}
@media only screen and (min-width: 768px) {
  .c-btn-main {
    min-height: 6.5rem;
    background-color: var(--theme-color-secondary);
  }
  .c-btn-main::before, .c-btn-main::after {
    position: absolute;
    content: "";
  }
  .c-btn-main:before {
    inset-block-start: 50%;
    inset-inline-start: 50%;
    transform: translate(-50%, -50%);
    width: 25rem;
    height: 25rem;
    border-radius: 50%;
    background-color: var(--theme-color-fifth);
    transition: width 0.4s cubic-bezier(0.55, 0.05, 0.22, 0.99), height 0.4s cubic-bezier(0.55, 0.05, 0.22, 0.99);
  }
  .c-btn-main::after {
    inset-block-start: 0;
    inset-inline-start: 0;
    width: 100%;
    height: 100%;
    border-radius: 3.5rem;
    border: 1px solid var(--theme-color-fifth);
  }
  .c-btn-main:hover::before {
    width: 0;
    height: 0;
  }
  .c-btn-main:hover .c-btn-main__text {
    color: var(--theme-color-fifth);
  }
  .c-btn-main__text {
    font-size: 1.6rem;
    transition: color 0.3s ease;
  }
}
/*---------- BUTTON SQUARE ----------*/
.c-btn-square {
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  vertical-align: middle;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
}
.c-btn-square.-prev, .c-btn-square.-next {
  inset-block: 0;
  width: 2.4rem;
  height: 1.8rem;
  margin-block: auto;
  background-repeat: no-repeat;
  background-position: center center;
  background-size: 100% auto;
}
.c-btn-square.-prev {
  background-image: url("./../images/common/arrow3-left-brown.webp");
}
.c-btn-square.-next {
  background-image: url("./../images/common/arrow3-right-brown.webp");
}
.c-btn-square.-main {
  border-radius: 50%;
}
.c-btn-square__text {
  text-indent: -9999px;
}
.c-btn-square.is-current .c-btn-square__number {
  color: var(--theme-color-secondary);
}
.c-btn-square__number {
  position: relative;
  z-index: 2;
  color: var(--theme-color-fifth);
  line-height: 1;
  font-weight: 600;
  transition: color 0.3s ease;
}

@media only screen and (max-width: 767px) {
  .c-btn-square.-main {
    width: 4.5rem;
    height: 4.5rem;
    border: 1px solid var(--theme-color-fifth);
    background-color: var(--theme-color-secondary);
  }
  .c-btn-square.is-current {
    background-color: var(--theme-color-fifth);
  }
  .c-btn-square.is-current .c-btn-square__number {
    color: var(--theme-color-secondary);
  }
  .c-btn-square__number {
    color: var(--theme-color-fifth);
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-btn-square.-prev:hover {
    background-image: url("./../images/common/arrow3-left-green.webp");
  }
  .c-btn-square.-next:hover {
    background-image: url("./../images/common/arrow3-right-green.webp");
  }
  .c-btn-square.-main {
    width: 5rem;
    height: 5rem;
    background-color: var(--theme-color-fifth);
  }
  .c-btn-square.-main::before, .c-btn-square.-main::after {
    position: absolute;
    content: "";
    width: 100%;
    height: 100%;
    border-radius: 50%;
  }
  .c-btn-square.-main:before {
    inset-block-start: 50%;
    inset-inline-start: 50%;
    transform: translate(-50%, -50%);
    background-color: var(--theme-color-secondary);
    transition: width 0.4s cubic-bezier(0.55, 0.05, 0.22, 0.99), height 0.4s cubic-bezier(0.55, 0.05, 0.22, 0.99);
  }
  .c-btn-square.-main::after {
    border: 1px solid var(--theme-color-fifth);
  }
  .c-btn-square.-main:hover::before {
    width: 0;
    height: 0;
  }
  .c-btn-square.-main:hover .c-btn-square__number {
    color: var(--theme-color-secondary);
  }
  .c-btn-square.is-current::before {
    width: 0;
    height: 0;
  }
  .c-btn-square__number {
    font-size: 2rem;
  }
}
/*---------- BUTTON ANCHOR GYNECOLOGY ----------*/
.c-btn-anchor {
  position: relative;
  display: flex;
  align-items: center;
  border-radius: 3.5rem;
  overflow: hidden;
  text-decoration: none;
  cursor: pointer;
  user-select: none;
  touch-action: manipulation;
}
.c-btn-anchor__text {
  position: relative;
  z-index: 2;
  color: var(--theme-color-secondary);
  line-height: 1.5;
  font-weight: 500;
}
.c-btn-anchor__arrow {
  position: absolute;
  inset-block-start: 50%;
}
.c-btn-anchor__arrow::after {
  position: absolute;
  content: "";
}

@media only screen and (max-width: 575px) {
  .c-btn-anchor__text {
    font-size: 1.1rem;
  }
  .c-btn-anchor__arrow {
    inset-inline-start: 0.8rem;
    margin-block-start: -0.3rem;
    width: 1rem;
    height: 0.8rem;
  }
  .c-btn-anchor__arrow::after {
    border-inline-start: 0.5rem solid transparent;
    border-inline-end: 0.5rem solid transparent;
    border-block-start: 0.8rem solid var(--theme-color-secondary);
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-btn-anchor__arrow {
    inset-inline-start: 0.9rem;
    margin-block-start: -0.4rem;
    width: 1.2rem;
    height: 1rem;
  }
  .c-btn-anchor__arrow::after {
    border-inline-start: 0.6rem solid transparent;
    border-inline-end: 0.6rem solid transparent;
    border-block-start: 1rem solid var(--theme-color-secondary);
  }
}
@media only screen and (max-width: 767px) {
  .c-btn-anchor {
    padding: 1rem 0.5rem 1rem 2.5rem;
    background-color: var(--theme-color-fifth);
  }
}
@media only screen and (min-width: 768px) {
  .c-btn-anchor {
    padding: 1rem 2rem 1rem 4rem;
    min-height: 4.5rem;
    background-color: var(--theme-color-secondary);
  }
  .c-btn-anchor::after {
    position: absolute;
    content: "";
    inset-block-start: 0;
    inset-inline-start: 0;
    width: 100%;
    height: 100%;
    border-radius: 3.5rem;
    border: 1px solid var(--theme-color-fifth);
  }
  .c-btn-anchor:hover .c-btn-anchor__text {
    color: var(--theme-color-fifth);
  }
  .c-btn-anchor:hover .c-btn-anchor__arrow::before {
    width: 0;
    height: 0;
  }
  .c-btn-anchor:hover .c-btn-anchor__arrow:after {
    border-block-start: 1.2rem solid var(--theme-color-fifth);
    transition: border-block-start 0.1s 0.3s ease;
  }
  .c-btn-anchor__text {
    transition: color 0.3s ease;
  }
  .c-btn-anchor__arrow {
    inset-inline-start: 1.5rem;
    margin-block-start: -0.5rem;
    width: 1.4rem;
    height: 1.2rem;
  }
  .c-btn-anchor__arrow::before {
    position: absolute;
    content: "";
    inset-block-start: 50%;
    inset-inline-start: 50%;
    transform: translate(-50%, -50%);
    width: 36rem;
    height: 36rem;
    border-radius: 50%;
    background-color: var(--theme-color-fifth);
    transition: width 0.4s cubic-bezier(0.55, 0.05, 0.22, 0.99), height 0.4s cubic-bezier(0.55, 0.05, 0.22, 0.99);
  }
  .c-btn-anchor__arrow::after {
    border-inline-start: 0.7rem solid transparent;
    border-inline-end: 0.7rem solid transparent;
    border-block-start: 1.2rem solid var(--theme-color-secondary);
  }
}
/*------------------------------------------------------------------------------------
3.21. SHAPE CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST CIRCLE GUIDE ----------*/
.c-circle-guide {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  border: 2px solid var(--theme-color-fifth);
  background-color: var(--theme-color-secondary);
}
.c-circle-guide.-c-fifth {
  color: var(--theme-color-fifth);
}
.c-circle-guide.-c-thirteenth {
  border-color: var(--theme-color-thirteenth);
}
.c-circle-guide__title {
  font-family: var(--theme-font-jp-secondary);
  font-weight: 500;
}

@media only screen and (max-width: 767px) {
  .c-circle-guide {
    width: 9.2rem;
    height: 9.2rem;
  }
  .c-circle-guide__title {
    font-size: 2.2rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-circle-guide {
    width: 10rem;
    height: 10rem;
  }
  .c-circle-guide__title {
    font-size: 2.4rem;
  }
}
/*------------------------------------------------------------------------------------
3.22. TAG CHILD PAGE.
------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------
3.23. ARROW CHILD PAGE.
------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------
3.24. ICON CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- ICON PLUS ----------*/
.c-icon-plus {
  position: absolute;
  top: 50%;
}
.c-icon-plus::before, .c-icon-plus::after {
  position: absolute;
  content: "";
  top: 50%;
  left: 0;
  width: 100%;
  height: 2px;
  margin-block-start: -1px;
  background-color: var(--theme-color-quaternary);
}
.c-icon-plus::before {
  transform: rotate(-90deg);
  transition: transform 0.35s cubic-bezier(0.65, 0.05, 0.36, 1);
}

@media only screen and (max-width: 767px) {
  .c-icon-plus {
    width: 1.4rem;
    height: 1.4rem;
    margin-block-start: -0.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-icon-plus {
    width: 1.6rem;
    height: 1.6rem;
    margin-block-start: -0.8rem;
  }
}
/*------------------------------------------------------------------------------------
3.25. LINK CHILD PAGE.
------------------------------------------------------------------------------------*/
/*------------------------------------------------------------------------------------
3.26. IMAGE CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- GALLERY MENOPAUSE TREATMENT ----------*/
.c-gallery-m-treatment__title {
  margin-block-end: var(--spacing-sp-25-pc-40);
  color: var(--theme-color-quaternary);
  font-weight: 600;
  text-align: center;
}
.c-gallery-m-treatment__item img {
  border-radius: 1.5rem;
}
.c-gallery-m-treatment__btn {
  margin-block-start: var(--spacing-sp-30-pc-50);
  text-align: center;
}

@media only screen and (max-width: 575px) {
  .c-gallery-m-treatment__item:not(:first-child) {
    margin-block-start: 2rem;
  }
}
@media only screen and (min-width: 576px) and (max-width: 767px) {
  .c-gallery-m-treatment__item {
    width: calc(50% - 0.7rem);
  }
}
@media only screen and (min-width: 576px) {
  .c-gallery-m-treatment__list {
    display: flex;
    justify-content: space-between;
  }
  .c-gallery-m-treatment__item:first-child {
    text-align: end;
  }
}
@media only screen and (max-width: 767px) {
  .c-gallery-m-treatment__title {
    font-size: 1.7rem;
  }
  .c-gallery-m-treatment__item img {
    width: 100%;
  }
}
@media only screen and (min-width: 768px) {
  .c-gallery-m-treatment__title {
    font-size: 2rem;
  }
  .c-gallery-m-treatment__item {
    width: calc(50% - 2rem);
  }
}
/*------------------------------------------------------------------------------------
3.27. LIBRARY CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LITY ----------*/
.lity-content::after {
  content: none;
}

@media only screen and (max-width: 767px) {
  .lity-container {
    padding: 1rem 0 1rem 1.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .lity-container {
    padding: 1.5rem 0 1.5rem 1.5rem;
  }
}
/*------------------------------------------------------------------------------------
3.28. SECTION CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- SECTION PINNED ----------*/
@media only screen and (max-width: 767px) {
  .p-pinned__pin {
    margin-block-end: 3.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-pinned__row {
    display: flex;
    align-items: flex-start;
  }
  .p-pinned__scroll {
    flex: 1;
  }
}
/*------------------------------------------------------------------------------------
3.29. PAGINATION CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- PAGINATION ----------*/
.c-pagination {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.c-pagination__list {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.c-pagination__list .c-btn-square.-prev, .c-pagination__list .c-btn-square.-next {
  position: absolute;
}
.c-pagination__list .c-btn-square.-prev {
  left: -0.6rem;
}
.c-pagination__list .c-btn-square.-next {
  right: -0.6rem;
}

@media only screen and (max-width: 767px) {
  .c-pagination__list {
    margin: 0 -0.6rem;
    padding: 0 3rem;
  }
  .c-pagination__list .c-btn-square {
    margin-inline: 0.6rem;
  }
  .c-pagination__list .c-btn-square.-prev {
    margin-inline-end: 1rem;
  }
  .c-pagination__list .c-btn-square.-next {
    margin-inline-start: 1rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-pagination__list {
    margin: 0 -1rem;
    padding: 0 4rem;
  }
  .c-pagination__list .c-btn-square {
    margin-inline: 1rem;
  }
  .c-pagination__list .c-btn-square.-prev {
    margin-inline-end: 1.5rem;
  }
  .c-pagination__list .c-btn-square.-next {
    margin-inline-start: 1.5rem;
  }
}
/*---------- PAGINATION MAIN ----------*/
@media only screen and (max-width: 767px) {
  .c-pagination-main__btn {
    width: 14rem;
  }
  .c-pagination-main__btn.-list {
    margin-block-end: 2rem;
    width: 100%;
    text-align: center;
  }
  .c-pagination-main__btn.-list .c-btn-main {
    margin-inline: auto;
  }
}
@media only screen and (min-width: 768px) {
  .c-pagination-main {
    position: relative;
    height: 6.5rem;
  }
  .c-pagination-main__btn {
    width: 15rem;
  }
  .c-pagination-main__btn.-list {
    position: absolute;
    inset-inline-start: 50%;
    width: 25rem;
    transform: translateX(-50%);
  }
  .c-pagination-main .c-btn.-d-left .c-circle::before, .c-pagination-main .c-btn.-d-right .c-circle::before {
    width: 24rem;
    height: 24rem;
  }
  .c-pagination-main .c-btn.-d-left:hover .c-circle::before, .c-pagination-main .c-btn.-d-right:hover .c-circle::before {
    width: 100%;
    height: 100%;
  }
}
/*------------------------------------------------------------------------------------
3.30. COMMON CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- LIST QA ----------*/
.c-list-qa .c-qa:not(:first-child) {
  margin-block-start: var(--spacing-sp-25-pc-35);
}

/*---------- QA ----------*/
.c-qa__header, .c-qa__inner {
  position: relative;
}
.c-qa__header {
  cursor: pointer;
  border-radius: 10rem;
  background-color: var(--theme-color-thirteenth);
}
.c-qa__header.is-active .c-icon-plus::before {
  transform: rotate(0deg);
}
.c-qa__title {
  font-weight: 600;
}
.c-qa__char {
  position: absolute;
}
.c-qa__char.-q {
  top: 50%;
  transform: translateY(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  background-color: var(--theme-color-quaternary);
  color: var(--theme-color-secondary);
}
.c-qa__char.-a {
  color: var(--theme-color-quaternary);
}
.c-qa__char span {
  font-family: var(--theme-font-en-primary);
  line-height: 1;
}
.c-qa__body {
  display: none;
}

@media only screen and (max-width: 767px) {
  .c-qa__header {
    padding: 1rem 3.7rem 1rem 8rem;
  }
  .c-qa__title {
    font-size: 1.6rem;
  }
  .c-qa__char {
    inset-block-start: -0.5rem;
  }
  .c-qa__char.-q {
    inset-inline-start: 0.7rem;
    width: 6rem;
    height: 6rem;
    font-size: 3.7rem;
  }
  .c-qa__char.-a {
    inset-block-start: -0.3rem;
    inset-inline-start: 3rem;
    font-size: 3.3rem;
  }
  .c-qa__icon {
    inset-inline-end: 1.2rem;
  }
  .c-qa__inner {
    padding: 2rem 1rem 0 8rem;
  }
}
@media only screen and (min-width: 768px) {
  .c-qa {
    padding-block-start: 1.5rem;
  }
  .c-qa__header {
    padding: 1rem 3rem 1rem 13rem;
  }
  .c-qa__title {
    font-size: 2rem;
  }
  .c-qa__char {
    inset-block-start: -1.5rem;
  }
  .c-qa__char.-q {
    inset-inline-start: 3rem;
    width: 8rem;
    height: 8rem;
    font-size: 5rem;
  }
  .c-qa__char.-a {
    inset-block-start: -0.9rem;
    inset-inline-start: 11rem;
    font-size: 4rem;
  }
  .c-qa__icon {
    inset-inline-end: 1.7rem;
  }
  .c-qa__inner {
    padding: 2.5rem 4.5rem 0 17.5rem;
  }
}
/*------------------------------------------------------------------------------------
3.31. WORDPRESS CHILD PAGE.
------------------------------------------------------------------------------------*/
/*---------- WORDPRESS EDITOR ----------*/
.wp-editor-style hr {
  clear: both;
  height: 1px;
  margin-block-end: 18px;
  border: 0;
  background-color: #e7e7e7;
}
.wp-editor-style ul {
  list-style: disc;
}
.wp-editor-style ul li {
  list-style: disc;
}
.wp-editor-style ol {
  list-style: decimal;
}
.wp-editor-style ol li {
  list-style: decimal;
}
.wp-editor-style ol ol {
  list-style: upper-alpha;
}
.wp-editor-style ol ol li {
  list-style: upper-alpha;
}
.wp-editor-style ol ol ol {
  list-style: lower-roman;
}
.wp-editor-style ol ol ol li {
  list-style: lower-roman;
}
.wp-editor-style ol ol ol ol {
  list-style: lower-alpha;
}
.wp-editor-style ol ol ol ol li {
  list-style: lower-alpha;
}
.wp-editor-style ul ul,
.wp-editor-style ol ol,
.wp-editor-style ul ol,
.wp-editor-style ol ul {
  margin-block-end: 0;
}
.wp-editor-style dt {
  font-weight: bold;
}
.wp-editor-style dd {
  margin-block-end: 18px;
}
.wp-editor-style strong {
  font-weight: bold;
}
.wp-editor-style cite,
.wp-editor-style em,
.wp-editor-style i {
  font-style: italic;
}
.wp-editor-style big {
  font-size: 131.25%;
}
.wp-editor-style ins {
  background: #ffc;
  text-decoration: none;
}
.wp-editor-style blockquote {
  font-style: italic;
  padding: 0 3em;
}
.wp-editor-style blockquote cite,
.wp-editor-style blockquote em,
.wp-editor-style blockquote i {
  font-style: normal;
}
.wp-editor-style pre {
  margin-block-end: 1.8rem;
  padding: 1.5em;
  overflow: auto;
  background: #f7f7f7;
  color: #222;
  line-height: 18px;
}
.wp-editor-style abbr,
.wp-editor-style acronym {
  border-bottom: 1px dotted #666;
  cursor: help;
}
.wp-editor-style sup,
.wp-editor-style sub {
  height: 0;
  line-height: 1;
  position: relative;
  vertical-align: baseline;
}
.wp-editor-style sup {
  inset-block-end: 1ex;
}
.wp-editor-style sub {
  inset-block-start: 0.5ex;
}
.wp-editor-style small {
  font-size: smaller;
}
.wp-editor-style h1 {
  padding: 0.6rem 2rem;
  background-color: var(--theme-color-quaternary);
  color: var(--theme-color-secondary);
  font-weight: 600;
}
.wp-editor-style h2 {
  position: relative;
  font-family: var(--theme-font-jp-secondary);
  line-height: 1.5;
  font-weight: 700;
}
.wp-editor-style h2::before, .wp-editor-style h2::after {
  position: absolute;
  content: "";
  inset-inline-start: 0;
  width: 0.5rem;
  height: 50%;
}
.wp-editor-style h2::before {
  inset-block-start: 0;
  background-color: var(--theme-color-thirteenth);
}
.wp-editor-style h2::after {
  inset-block-end: 0;
  background-color: var(--theme-color-fifth);
}
.wp-editor-style h3 {
  overflow: hidden;
  position: relative;
  padding-block-end: 1rem;
  font-family: var(--theme-font-jp-secondary);
  font-weight: 700;
}
.wp-editor-style h3::before, .wp-editor-style h3::after {
  position: absolute;
  content: "";
  inset-block-end: 0;
  border-block-end: 1px;
  border-block-end-style: solid;
}
.wp-editor-style h3::before {
  z-index: 2;
  width: 100%;
  border-block-end-color: var(--theme-color-quaternary);
}
.wp-editor-style h3::after {
  z-index: 1;
  width: 100vw;
  border-block-end-color: var(--theme-color-thirteenth);
}
.wp-editor-style h4 {
  padding-block-end: 0.7rem;
  border-block-end: 1px solid var(--theme-color-twentieth);
  font-family: var(--theme-font-jp-secondary);
  font-weight: 700;
}
.wp-editor-style h5 {
  position: relative;
  padding-inline-start: 1.4em;
  font-family: var(--theme-font-jp-secondary);
  font-weight: 700;
}
.wp-editor-style h5::before {
  position: absolute;
  content: "■";
  inset-block-start: 0;
  inset-inline-start: 0;
  color: var(--theme-color-fifth);
}
.wp-editor-style h6 {
  color: var(--theme-color-quaternary);
  font-family: var(--theme-font-jp-secondary);
  font-size: 1.4rem;
  font-weight: 700;
}
.wp-editor-style iframe {
  width: 100%;
  aspect-ratio: 16/9;
  height: auto;
  border: 0;
  display: block;
}

@media only screen and (max-width: 767px) {
  .wp-editor-style img {
    margin-block-end: 2rem;
    width: 100%;
  }
  .wp-editor-style h1 {
    padding: 0.9rem 1.5rem;
    font-size: 2rem;
  }
  .wp-editor-style h2 {
    padding-inline-start: 1.7rem;
    font-size: 2rem;
  }
  .wp-editor-style h3 {
    font-size: 2rem;
  }
  .wp-editor-style h4 {
    font-size: 1.6rem;
  }
  .wp-editor-style h5 {
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 768px) {
  .wp-editor-style h1 {
    padding: 1.1rem 2rem;
    font-size: 2.4rem;
  }
  .wp-editor-style h2 {
    padding-inline-start: 2rem;
    font-size: 2.4rem;
  }
  .wp-editor-style h3 {
    font-size: 2.4rem;
  }
  .wp-editor-style h4 {
    font-size: 1.8rem;
  }
  .wp-editor-style h5 {
    font-size: 2rem;
  }
}
/*---------- WORDPRESS VIDEO YOUTUBE ----------*/
.wp-video-youtube {
  width: 80rem;
  max-width: 100%;
  margin-inline: auto;
}
.wp-video-youtube__wrap {
  position: relative;
  padding-block-end: 56.25%;
  overflow: hidden;
}
.wp-video-youtube__wrap iframe {
  position: absolute;
  inset-block-start: 0;
  inset-inline-start: 0;
  width: 100%;
  height: 100%;
}

/*---------- WORDPRESS IMAGES ----------*/
img.size-auto,
img.size-full,
img.size-large,
img.size-medium,
.attachment img,
.widget-container img {
  max-width: 100%;
  height: auto;
}

.aligncenter,
img.aligncenter {
  clear: both;
  display: block;
  margin-inline-start: auto;
  margin-inline-end: auto;
}

img.alignleft,
img.alignright,
img.aligncenter {
  margin-block-end: 1.2rem;
}

.wp-caption {
  text-align: center;
  max-width: 100%;
}

.wp-caption-text {
  margin-block-start: 1rem;
}

@media only screen and (min-width: 768px) {
  .alignleft,
  img.alignleft {
    display: inline;
    float: left;
    margin-block-start: 0.4rem;
    margin-inline-end: 2rem;
  }
  .alignright,
  img.alignright {
    display: inline;
    float: right;
    margin-block-start: 0.4rem;
    margin-inline-start: 2rem;
  }
}
/*====================================================================================
4. PROJECT.
====================================================================================*/
/*====================================================================================
5. SECTION PAGE VISUAL.
====================================================================================*/
.p-pv {
  padding: var(--spacing-sp-15-pc-30) 0;
  background: url("./../images/common/pv-bg.webp") no-repeat center center/cover;
}
.p-pv__outer {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1rem;
  border-radius: var(--theme-radius-primary);
  box-shadow: var(--theme-shadow-primary);
  background-color: var(--theme-color-fourteenth);
  overflow: hidden;
}
.p-pv__deco.-version-1 {
  inset-block-start: 0;
  inset-inline-start: 0;
}
.p-pv__deco.-version-2 {
  inset-inline-end: 0;
  inset-block-end: 0;
}
.p-pv__title {
  color: var(--theme-color-quaternary);
  line-height: 1.35;
  font-weight: 600;
  text-align: center;
  letter-spacing: 0.05em;
  font-family: var(--theme-font-jp-secondary);
}

@media only screen and (max-width: 575px) {
  .p-pv__deco.-version-1 {
    width: 35%;
  }
  .p-pv__deco.-version-2 {
    width: 45%;
  }
}
@media only screen and (max-width: 767px) {
  .p-pv__outer {
    height: 40vw;
    max-height: 20rem;
  }
  .p-pv__title {
    font-size: 2.3rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-pv__outer {
    min-height: 20rem;
  }
  .p-pv__title {
    font-size: 5.2rem;
  }
}
/*====================================================================================
6. SECTION BREADCRUMB.
====================================================================================*/
@media only screen and (max-width: 767px) {
  .l-breadcrumb {
    display: none;
  }
}
@media only screen and (min-width: 768px) {
  .l-breadcrumb {
    padding: 1.5rem 0;
  }
  .l-breadcrumb__list {
    display: flex;
    align-items: center;
  }
  .l-breadcrumb__item {
    position: relative;
    flex: 0 0 auto;
    margin-inline-end: 1.3rem;
    padding-inline-end: 2rem;
    font-size: 1.4rem;
    line-height: 1.5;
    font-weight: 400;
  }
  .l-breadcrumb__item:first-child {
    color: var(--theme-color-quaternary);
    font-weight: 700;
    text-transform: uppercase;
  }
  .l-breadcrumb__item:last-child {
    flex: 1;
    margin-inline-end: 0;
    padding-inline-end: 0;
    white-space: nowrap;
    text-overflow: ellipsis;
    overflow: hidden;
  }
  .l-breadcrumb__item:last-child::before {
    content: none;
  }
  .l-breadcrumb__item::before {
    position: absolute;
    content: "";
    inset-block: 0;
    inset-inline-end: 0;
    width: 0.7rem;
    height: 1rem;
    margin-block: auto;
    background: url("./../images/common/arrow-right-green.webp") no-repeat center center/contain;
  }
  .l-breadcrumb__item a {
    text-decoration: none;
  }
  .l-breadcrumb__item a:hover {
    text-decoration: underline;
  }
}
/*====================================================================================
7. ABOUT PAGE.
====================================================================================*/
.p-about.-l-intro {
  padding-block-start: var(--spacing-sp-45-pc-90);
}
.p-about.-l-intro .c-post-about {
  margin-block-end: var(--spacing-sp-30-pc-60);
}
.p-about.-l-feature .c-list-card-about {
  margin-block-start: var(--spacing-sp-10-pc-20);
}
.p-about.-l-course, .p-about.-l-device, .p-about.-l-gallery {
  padding-block: var(--spacing-sp-50-pc-100);
}

@media only screen and (max-width: 767px) {
  .p-about.-l-device {
    background: url("./../images/common/bg-sp.webp") no-repeat center top -2px/100% auto, var(--theme-color-sixteenth);
  }
}
@media only screen and (min-width: 768px) {
  .p-about.-l-device {
    background: url("./../images/about/s4-bg.webp") no-repeat center top/cover;
  }
}
/*====================================================================================
8. GUIDE PAGE.
====================================================================================*/
.p-guide__subtitle {
  color: var(--theme-color-quaternary);
  font-weight: 600;
}

@media only screen and (max-width: 767px) {
  .p-guide__subtitle {
    font-size: 1.7rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-guide__subtitle {
    font-size: 1.8rem;
  }
}
/*---------- SECTION GUIDE ABOUT ----------*/
.p-guide.-l-about {
  padding-block-start: var(--spacing-sp-45-pc-90);
}
.p-guide.-l-about .p-guide__subtitle {
  margin-block-end: 1rem;
}
.p-guide.-l-about .c-list-card-guide {
  margin-block-start: var(--spacing-sp-15-pc-25);
}
.p-guide.-l-about .c-list-group-guide {
  margin-block-start: var(--spacing-sp-35-pc-60);
}

/*---------- SECTION GUIDE TIME ----------*/
.p-guide.-l-time {
  padding-block: var(--spacing-sp-50-pc-100);
}

@media only screen and (max-width: 767px) {
  .p-guide.-l-time .p-guide__left {
    margin-block-end: 2.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-guide.-l-time .p-guide__row {
    display: flex;
  }
  .p-guide.-l-time .p-guide__left {
    width: 50%;
  }
  .p-guide.-l-time .p-guide__right {
    flex: 1;
    padding-inline-start: 5rem;
  }
}
/*---------- SECTION GUIDE ACCESS ----------*/
.p-guide.-l-access {
  padding-block: var(--spacing-sp-50-pc-100);
}

@media only screen and (max-width: 767px) {
  .p-guide.-l-access {
    background: url("./../images/common/bg-sp.webp") no-repeat center top -2px/100% auto, var(--theme-color-sixteenth);
  }
}
@media only screen and (min-width: 768px) {
  .p-guide.-l-access {
    background: url("./../images/guide/s4-bg.webp") no-repeat center top/cover;
  }
}
/*====================================================================================
9. EXAM PAGE.
====================================================================================*/
/*---------- SECTION EXAM ----------*/
.p-exam__lists {
  margin-block-start: var(--spacing-sp-25-pc-50);
}
.p-exam .c-list-part-main {
  margin-block-start: var(--spacing-sp-35-pc-60);
}

@media only screen and (max-width: 767px) {
  .p-exam__lists .c-list-panel-main:not(:first-child) {
    margin-block-start: 3rem;
  }
}
/*---------- SECTION EXAM ABOUT ----------*/
.p-exam.-about {
  padding-block-start: var(--spacing-sp-50-pc-100);
}

@media only screen and (min-width: 768px) {
  .p-exam.-about .p-exam__desc {
    text-align: center;
  }
}
/*---------- SECTION EXAM CHECK, MENU ----------*/
.p-exam.-check,
.p-exam.-menu {
  padding-block-start: var(--spacing-sp-45-pc-90);
}
.p-exam.-check .p-exam__desc,
.p-exam.-menu .p-exam__desc {
  margin-block-end: var(--spacing-sp-20-pc-30);
}

/*---------- SECTION EXAM CHECK ----------*/
.p-exam.-check .c-block-main {
  margin-block-start: var(--spacing-sp-15-pc-30);
}

@media only screen and (min-width: 768px) {
  .p-exam.-check .p-exam__lists {
    display: flex;
    justify-content: space-between;
  }
  .p-exam.-check .p-exam__lists .c-list-panel-main {
    width: calc(50% - 2rem);
  }
}
/*---------- SECTION EXAM VACCINATION ----------*/
.p-exam.-vaccination {
  padding: var(--spacing-sp-45-pc-90) 0 var(--spacing-sp-50-pc-100) 0;
}
.p-exam.-vaccination .p-exam__desc {
  margin-block-end: var(--spacing-sp-20-pc-30);
}

/*====================================================================================
10. PRICE PAGE.
====================================================================================*/
/*---------- SECTION PRICE MAIN ----------*/
.p-price {
  padding-block: var(--spacing-sp-50-pc-60) var(--spacing-sp-50-pc-100);
}
.p-price .p-pinned__row {
  margin-block-start: var(--spacing-sp-25-pc-50);
}

@media only screen and (max-width: 767px) {
  .p-price .c-title-main {
    margin-block-end: 2.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-price .p-pinned__pin {
    width: 35rem;
  }
  .p-price .p-pinned__scroll {
    padding-inline-start: 10rem;
  }
  .p-price .c-list-part-main .c-part-main:not(:first-child) {
    margin-block-start: 3rem;
    padding-block-start: 3rem;
  }
  .p-price .c-part-main.-fix-anchor .c-title-main {
    margin-block-end: var(--spacing-sp-25-pc-45);
  }
  .p-price .c-part-main.-fix-anchor .c-part-main__desc {
    margin-block-end: 0;
  }
  .p-price .c-part-main .c-title-main {
    margin-block-end: 2rem;
  }
}
/*====================================================================================
11. NEWS PAGE.
====================================================================================*/
/*---------- SECTION NEWS LIST ----------*/
.p-news.-l-list {
  padding: var(--spacing-sp-50-pc-60) 0 var(--spacing-sp-50-pc-100) 0;
}
.p-news.-l-list .c-pagination {
  margin-block-start: var(--spacing-sp-35-pc-60);
}

@media only screen and (min-width: 768px) {
  .p-news.-l-list .p-pinned__pin {
    width: 25rem;
  }
  .p-news.-l-list .p-pinned__scroll {
    flex: 1;
    padding-inline-start: 5rem;
  }
}
/*---------- SECTION NEWS DETAIL ----------*/
.p-news.-l-detail {
  padding: var(--spacing-sp-50-pc-60) 0 var(--spacing-sp-50-pc-100) 0;
}
.p-news.-l-detail .p-news__header {
  border-radius: 1.5rem;
  background-color: var(--theme-color-eighteenth);
}
.p-news.-l-detail .p-news__header time {
  font: 500 1.4rem var(--theme-font-jp-tertiary);
  letter-spacing: 0.05em;
}
.p-news.-l-detail .p-news__title {
  color: var(--theme-color-quaternary);
  font-weight: 600;
}
.p-news.-l-detail .p-news__body {
  padding-block-start: var(--spacing-sp-15-pc-25);
}
.p-news.-l-detail .p-news__footer {
  margin-block-start: var(--spacing-sp-25-pc-50);
  border-block-start: 1px solid var(--theme-color-twentieth);
}
.p-news.-l-detail .p-news__footer .c-pagination-main {
  margin-block-start: var(--spacing-sp-35-pc-60);
}

@media only screen and (max-width: 767px) {
  .p-news.-l-detail .p-news__header {
    padding: 2rem;
  }
  .p-news.-l-detail .p-news__title {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-news.-l-detail .p-news__header {
    padding: 2rem 5rem;
  }
  .p-news.-l-detail .p-news__title {
    font-size: 2.4rem;
  }
  .p-news.-l-detail .p-news__body {
    font-size: 1.6rem;
  }
}
/*====================================================================================
12. FEMCARE PAGE.
====================================================================================*/
/*---------- SECTION FEMCARE FEMALE ----------*/
@media only screen and (min-width: 768px) {
  .p-femcare__desc, .p-femcare__text {
    font-size: 1.6rem;
  }
}
/*---------- SECTION FEMCARE FEMALE ----------*/
.p-femcare.-l-female {
  position: relative;
  padding-top: var(--spacing-sp-45-pc-90);
}
.p-femcare.-l-female .p-femcare__row {
  display: flex;
}
.p-femcare.-l-female .p-femcare__left {
  position: relative;
  z-index: 2;
}
.p-femcare.-l-female .p-femcare__left::before {
  position: absolute;
  content: "";
  z-index: -1;
  background-color: var(--theme-color-thirteenth);
}
.p-femcare.-l-female .p-femcare__desc {
  margin-block-start: var(--spacing-sp-20-pc-40);
}

@media only screen and (max-width: 767px) {
  .p-femcare.-l-female {
    padding-inline: 1.5rem;
  }
  .p-femcare.-l-female .p-femcare__row {
    flex-direction: column-reverse;
  }
  .p-femcare.-l-female .p-femcare__left {
    margin-block-start: 2.5rem;
    padding-block-end: 3.5rem;
  }
  .p-femcare.-l-female .p-femcare__left::before {
    inset: 3rem -1.5rem 0 -1.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-femcare.-l-female::before {
    position: absolute;
    content: "";
    z-index: -1;
    inset-block-end: 0;
    inset-inline-start: 0;
    width: 100%;
    height: 50%;
    background-color: var(--theme-color-thirteenth);
  }
  .p-femcare.-l-female .p-femcare__row {
    padding-block-end: 5rem;
  }
  .p-femcare.-l-female .p-femcare__left {
    flex: 1;
  }
  .p-femcare.-l-female .p-femcare__left::before {
    inset: 3.7rem 0 0 0;
  }
  .p-femcare.-l-female .p-femcare__right {
    width: calc(50% - 10.5rem);
  }
  .p-femcare.-l-female .p-femcare__right img {
    border-radius: 3rem 0 0 3rem;
  }
  .p-femcare.-l-female .p-femcare__body {
    max-width: 64.5rem;
    margin-inline-start: auto;
    padding-inline-end: 5rem;
    font-size: 1.6rem;
  }
}
@media only screen and (min-width: 1500px) {
  .p-femcare.-l-female .p-femcare__row {
    align-items: center;
  }
}
/*---------- SECTION FEMCARE FEMALE 2, 3, 4 ----------*/
.p-femcare.-l-female-2,
.p-femcare.-l-female-3 {
  padding-block: var(--spacing-sp-35-pc-50);
}

/*---------- SECTION FEMCARE FEMALE ----------*/
.p-femcare.-l-female-2 .c-block-femcare {
  margin-block-start: var(--spacing-sp-25-pc-50);
}

/*---------- SECTION FEMCARE FEMALE ----------*/
.p-femcare.-l-female-3 {
  background-color: var(--theme-color-thirteenth);
}

/*---------- SECTION FEMCARE FEMALE ----------*/
.p-femcare.-l-female-4 {
  margin-block-start: var(--spacing-sp-35-pc-50);
}
.p-femcare.-l-female-4 .c-bnr-femcare {
  margin-block-end: var(--spacing-sp-30-pc-50);
}

/*---------- SECTION FEMCARE ADD ----------*/
.p-femcare.-l-add .p-femcare__desc {
  margin-block-end: var(--spacing-sp-25-pc-50);
}

/*---------- SECTION FEMCARE SCALP ----------*/
.p-femcare.-l-scalp {
  padding-block: var(--spacing-sp-45-pc-90) var(--spacing-sp-50-pc-100);
}
.p-femcare.-l-scalp .p-femcare__footer {
  margin-block-start: var(--spacing-sp-30-pc-50);
  text-align: center;
}
.p-femcare.-l-scalp .p-femcare__btn {
  margin-block-start: 1.5rem;
}

/*====================================================================================
13. MENOPAUSE TREATMENT PAGE.
====================================================================================*/
/*---------- SECTION MENOPAUSE TREATMENT ABOUT ----------*/
.p-m-treatment.-l-about {
  margin-block-start: var(--spacing-sp-45-pc-90);
}
.p-m-treatment.-l-about .c-list-part-m-treatment {
  margin-block-start: var(--spacing-sp-30-pc-50);
}

@media only screen and (max-width: 767px) {
  .p-m-treatment.-l-about .c-list-step-m-treatment {
    margin-block-start: 5.5rem;
  }
}
@media only screen and (min-width: 768px) {
  .p-m-treatment.-l-about .c-list-step-m-treatment {
    margin-block-start: 6rem;
  }
}
/*---------- SECTION MENOPAUSE TREATMENT MAIN ----------*/
.p-m-treatment.-l-main {
  padding-block: var(--spacing-sp-45-pc-90) var(--spacing-sp-50-pc-100);
}

/*---------- SECTION MENOPAUSE TREATMENT AFTER ----------*/
.p-m-treatment.-l-after {
  padding-block: var(--spacing-sp-45-pc-90) var(--spacing-sp-50-pc-100);
}
.p-m-treatment.-l-after .c-gallery-m-treatment {
  margin-block-start: var(--spacing-sp-35-pc-60);
}

@media only screen and (max-width: 767px) {
  .p-m-treatment.-l-after {
    background: url("./../images/common/bg-sp.webp") no-repeat center top -2px/100% auto, var(--theme-color-sixteenth);
  }
}
@media only screen and (min-width: 768px) {
  .p-m-treatment.-l-after {
    background: url("./../images/about/s4-bg.webp") no-repeat center top/cover;
  }
}
/*====================================================================================
14. GYNECOLOGY PAGE.
====================================================================================*/
/*---------- SECTION GYNECOLOGY INTRODUCTION ----------*/
.p-gynecology.-l-intro {
  padding-block-start: var(--spacing-sp-50-pc-60);
}

/*---------- SECTION GYNECOLOGY DETAIL ----------*/
.p-gynecology.-l-detail {
  padding-block: var(--spacing-sp-45-pc-90) var(--spacing-sp-50-pc-100);
}
.p-gynecology.-l-detail .c-panel-gynecology {
  margin-block-end: var(--spacing-sp-35-pc-60);
}