@charset "UTF-8";

/* ========================================
  @media screen and (min-width: 768px),print
======================================== */
@media screen and (min-width: 768px),print {

/* page-hero
-------------------------------------*/
.page-hero {
  width: calc(100% - calc(min(4.65vw, 8rem)));
  position: relative;
  background-color: var(--color-bg-gray);
}
.page-hero::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  width: min(4.65vw, 8rem);
  transform: translateX(100%);
  height: 100%;
  background: url(../images/common/bg-blue-texture.jpg) repeat;
  z-index: 1;
}

.page-hero__inner {
  position: relative;
  width: min(95%, 128rem);
  padding-top: clamp(4.6rem, 12.5vw - 5rem, 12.5rem);
  margin-inline: auto;
  z-index: 1;
  transform: translateX(clamp(0rem, 9.038vw - 12.654rem, 4.7rem)); /* 1400px ~ 1920px */
}

.page-hero__frame {
  position: relative;
  width: min(100%, 128rem);
  margin-inline: auto;
  color: #fff;
  z-index: 1;
}
.page-hero__frame::before {
  content: "";
  position: absolute;
  top: 0;
  width: 100%;
  height: 100%;
  background: url(../images/page-forwoman/hero-bg.png) no-repeat top center / 100% auto;
  aspect-ratio: 1280 / 500;
  z-index: 0;
}
.page-hero__frame::after {
  content: "";
  position: absolute;
  bottom: -2.6rem;
  right: -2.4rem;
  width: clamp(12rem, 25.316vw - 7.443rem, 28rem);
  height: auto;
  aspect-ratio: 280 / 198;
  z-index: 0;
  background: url(../images/page-forwoman/hero-deco.svg) no-repeat center center / 100% auto;
}

.page-hero__contentWrap {
  position: relative;
  width: min(87%, 112rem);
  margin-inline: auto;
  z-index: 1;
}

.page-hero__caption {
  position: relative;
  padding-top: clamp(1rem, 2.532vw - 0.944rem, 2.6rem);
  padding-left: clamp(1rem, 2.532vw - 0.944rem, 2.6rem);
  font-size: clamp(1.2rem, 0.26vw + 1rem, 1.5rem);
}
.page-hero__caption::after {
  content: "";
  position: absolute;
  bottom: clamp(-1.2rem, -0.949vw + 0.129rem, -0.6rem);
  left: clamp(0.8rem, 2.532vw - 1.144rem, 2.4rem);
  width: 4rem;
  height: 1px;
  background-color: #fff;
}

.page-hero__textWrap {
  position: relative;
  margin-top: 0.4rem;
  padding-bottom: 4.6rem;
  text-align: center;
}

.page-hero__title-en {
  position: relative;
  width: clamp(41rem, 72.627vw - 14.777rem, 86.9rem);
}
.page-hero__title-caption {
  margin-top: clamp(-7rem, -2.373vw - 3.677rem, -5.5rem);
  font-size: clamp(1.4rem, 0.949vw + 0.671rem, 2rem);
  font-weight: 400;
  line-height: calc(29 / 16);
  letter-spacing: 0.08em;
}
.page-hero__pageTitle {
  margin-top: 1.5rem;
  font-size: clamp(2rem, 3.165vw - 0.43rem, 4rem);
  font-weight: 600;
  line-height: 1.5;
  letter-spacing: 0;
}
.page-hero__pageTitle span {
  padding-bottom: 0.4rem;
  border-bottom: 1px solid #fff;
}

.page-hero__descBox {
  display: inline-block;
  width: clamp(46rem, 28.481vw + 24.127rem, 64rem);
  margin-top: clamp(1.6rem, 3.797vw - 1.316rem, 4rem);
  margin-inline: auto;
  padding-top: clamp(0.8rem, 1.582vw - 0.415rem, 1.8rem);
  padding-bottom: clamp(1.2rem, 2.215vw - 0.501rem, 2.6rem);
  padding-inline: clamp(2.5rem, 2.848vw + 0.313rem, 4.3rem);
  background-color: rgba(255, 255, 255, 0.8);
  text-align: center;
}
.page-hero__descTitle {
  font-size: min(1.8rem, 1.286vw);
  font-weight: 600;
  line-height: calc(42 / 18);
  color: var(--color-pink);
}
.page-hero__descText {
  font-size: clamp(0.9rem, 0.633vw + 0.414rem, 1.3rem);
  font-weight: 500;
  line-height: calc(25 / 13);
  letter-spacing: 0.1em;
  text-align: left;
  color: var(--color-black);
}


/* con1 profile
-------------------------------------*/
.profile {
  position: relative;
  background-color: var(--color-bg-gray);
}
.profile::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: url(../images/page-forwoman/con1-profile-bg.png) no-repeat;
  background-size: 100% calc(100% - 10rem);
  z-index: 0;
}
@media screen and (max-width: 1400px) {
  .profile::before {
    background: url(../images/page-forwoman/con1-profile-bg-top-sp.jpg) no-repeat;
    background-size: 100% auto;
  }
  .profile::after {
    content: "";
    position: absolute;
    bottom: 0;
    right: 0;
    width: 100%;
    height: auto;
    background: url(../images/page-forwoman/con1-profile-bg-bottom-sp.jpg) no-repeat;
    background-size: 100% auto;
    aspect-ratio: 828 / 519;
    z-index: 0
  }
}

.profile__inner {
  position: relative;
  width: min(95%, 100rem);
  margin-inline: auto;
  padding-top: 10rem;
  padding-bottom: 11.7rem;
  z-index: 1;
}
.profile__title {
  width: clamp(30rem, 32.437vw + 5.089rem, 50.5rem);
  margin-left: -12.2rem;
  margin-top: 1.5rem;
}

.profile__body {
  display: flex;
  align-items: flex-end;
  gap: 2.6rem;
  margin-top: -5rem;
}
.profile__textWrap {
  flex: 1;
  padding-left: 1rem;
}
.profile__position {
  font-size: 1.8rem;
  line-height: 1;
  letter-spacing: 0.1em;
}
.profile__name {
  margin-top: 2rem;
  font-size: 4rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  color: var(--color-pink);
}
.profile__otherPosition {
  width: fit-content;
  margin-top: 2rem;
  padding: 1.1rem 2rem 1rem;
  background-color: rgba(198, 101, 154, 0.1);
}
.profile__otherPositionItem {
  position: relative;
  font-size: var(--pc-font12-14);
  line-height: calc(36 / 14);
  letter-spacing: 0.1em;
  text-indent: 0.5em;
}
.profile__otherPositionItem::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: -0.8rem;
  width: 0.6rem;
  height: 0.6rem;
  background-color: var(--color-pink);
  border-radius: 50%;
}

.profile__detailWrap {
  margin-top: clamp(1.2rem, 5.222vw - 2.81rem, 4.4rem);
}
.profile__detailText {
  margin-top: clamp(0.8rem, 3.481vw - 1.873rem, 3rem);
  font-size: var(--pc-font13-16);
  line-height: calc(30 / 16);
  letter-spacing: 0.1em;
}
.profile__detailText:first-child {
  margin-top: 0;
}
.profile__detailText span {
  font-weight: 700;
}
.profile__imageWrap {
  width: 40.3%;
}

.profile__btmWrap {
  margin-top: 7.5rem;
  text-align: center;
}
.profile__btmCatch {
  display: inline-block;
  margin-inline: auto;
  font-size: 3rem;
  line-height: 1;
  letter-spacing: 0.1em;
  color: var(--color-pink);
  background: linear-gradient(
    to bottom,
    transparent 0%,
    transparent 50%,
    #F5F4D9 50%,
    #F5F4D9 100%
    );
}
.profile__btmText {
  margin-top: 4.6rem;
  font-size: 1.6rem;
  line-height: calc(30 / 16);
  letter-spacing: 0.1em;
}
.profile__btmText span {
  font-weight: 700;
}


/* con2 worry
-------------------------------------*/
.worry {
  position: relative;
  background-color: #EAE7EC;
}
.worry::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/page-forwoman/con2-worry-bg.png) no-repeat;
  background-size: 100% auto;
}
.worry__mediaArea {
  position: relative;
  width: min(95%, 100rem);
  margin-inline: auto;
  padding-block: 10rem 23.9rem;
}

.worry__textWrap {
  transform: translateX(clamp(26rem, 30.063vw + 2.911rem, 45rem));
  width: fit-content;
}
.worry__title,
.worry__subTitle {
  display: inline-block;
  padding-inline: 1rem;
  padding-block: 0.8rem;
  font-size: var(--pc-font16-20);
  font-weight: 400;
  line-height: calc(36 / 20);
  letter-spacing: 0;
  background-color: #fff;
}
.worry__subTitle {
  margin-top: 2rem;
}
.worry__subTitle--2nd {
  margin-top: -1.7rem;
}

.worry__text {
  font-size: var(--pc-font14-16);
  font-weight: 400;
  line-height: 2.15;
  letter-spacing: 0;
  margin-top: 4rem;
}
.worry__text--1st {
  margin-top: 3.9rem;
}
.worry__text--2nd {
  margin-top: 3.7rem;
}
.worry__text.worry__text--2nd span {
  padding-bottom: 0.9rem;
  font-weight: 700;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    transparent 40%,
    #fff 40%,
    #fff 100%
  );
}
.worry__text--3rd {
  margin-top: 3.8rem;
}
.worry__text span {
  font-weight: 700;
}

.worry__speechBubble {
  width: min(96%, 96rem);
  margin-inline: auto;
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translate(-49%, 35%);
  padding-block: 3.2rem 2.9rem;
  text-align: center;
  background-color: #EDCCDE;
}
.worry__speechBubble::after {
  content: "";
  position: absolute;
  bottom: -2.4rem;
  left: 50%;
  transform: translateX(-50%);
  width: 5.7rem;
  height: auto;
  aspect-ratio: 57 / 25;
  background: url(../images/page-forwoman/con2-worry-arrow.svg) no-repeat center / 100% auto;
}
.worry__speechBubbleText {
  font-size: var(--pc-font16-20);
  line-height: 2;
  letter-spacing: 0;
}
.worry__speechBubbleKey {
  margin-top: 2rem;
  font-size: var(--pc-font18-24);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
}

.worry__btm {
  padding-block: 15.9rem 42.8rem;
  background-color: #fff;
}
.worry__btmKey {
  font-size: var(--pc-font26-32);
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  color: var(--color-pink);
}

.worry__btmMedia {
  display: flex;
  gap: 4rem;
  width: min(95%, 100rem);
  margin-top: 6.7rem;
  margin-inline: auto;
}
.worry__btmMediaTextArea {
  flex: 1;
  padding-left: 0.8rem;
}
.worry__btmMediaText {
  margin-top: 3.8rem;
  font-size: var(--pc-font14-16);
  font-weight: 400;
  line-height: calc(36 / 16);
  letter-spacing: 0;
  margin-bottom: 3.6rem;
}
.worry__btmMediaText:first-child {
  margin-top: 0;
}
.worry__btmMediaText--key {
  margin-top: 3.8rem;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: calc(30 / 24);
  letter-spacing: 0;
}
.worry__btmMediaImage {
  width: 40.4%;
  margin-top: 1.2rem;
}


/* con3 point
-------------------------------------*/
#point.point {
  position: relative;
  margin-top: -38.4rem;
  background:
      url(../images/page-forwoman/con3-point-bg.webp) no-repeat,
      linear-gradient(
        to bottom,
        transparent 0%,
        transparent 50%,
        var(--color-bg-gray) 50%,
        var(--color-bg-gray) 100%
      );
background-size: auto 100%;
}
#point .point__inner {
  position: relative;
  padding-top: 24.9rem;
  padding-bottom: clamp(22rem, 18.196vw + 8.025rem, 33.5rem);
  z-index: 1;
}


.point__titleWrap {
  text-align: center;
}
.point__title-en {
  width: 51.2rem;
  margin-inline: auto;
}
.point__title-en img {
  width: 100%;
}
.point__sectionTitle {
  margin-top: -5.6rem;
  color: #fff;
}
#point .point__titleLine {
  display: block;
  font-size: clamp(3rem, 0.316vw + 2.757rem, 3.2rem);
  font-weight: 600;
  line-height: calc(36 / 32);
}
.point__titleRow {
  display: flex !important;
  justify-content: center;
  align-items: center;
  margin-top: 1.6rem;
}
.point__titleWord {
  display: inline-block;
  padding-bottom: 0.8rem;
  font-size: 3.8rem;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0;
  border-bottom: 1px solid var(--color-sub2);
}
.point__titleNum {
  width: 5.8rem;
  margin-left: 1rem;
}
.point__titleNum img {
  width: 100%;
}

#point .point__list {
  width: min(95%, 1600px);
  margin-inline: auto;
  margin-top: 9.4rem;
}

/* point__item */
#point .point__item {
  width: 90.65%;
  display: grid;
  grid-template-columns: 52% 42%;
  column-gap: 3.1%;
  grid-template-rows: min-content 1fr;
  grid-template-areas:
  "img title"
  "img desc";
}
@media screen and (max-width: 1000px) {
  #point .point__item {
    width: 95%;
    grid-template-columns: 45% 52%;
    column-gap: 3%;
  }
}

#point .point__item:nth-child(odd) {
  margin-left: 0;
  margin-right: auto;
}

#point .point__item:nth-child(even) {
  margin-right: 0;
  margin-left: auto;
  padding-left: clamp(0rem, 46.5vw - 55.8rem, 9.3rem); /*1200 ~ 1400 */
  justify-content: end;
  transform: translateX(-5.4rem);
  grid-template-columns: 39.3% 55.4%;
  grid-template-areas:
  "title img"
  "desc img";
}
@media screen and (max-width: 1200px) {
  #point .point__item:nth-child(even) {
    width: 100%;
  }
}


#point .point__imageWrap {
  align-self: start;
  grid-area: img;
}
#point .point__titleWrap {
  padding-left: 1rem;
  align-self: start;
  grid-area: title;
}
#point .point__descWrap  {
  align-self: start;
  grid-area: desc;
}


#point .point__imageWrap img {
  display: block;
  width: 100%;
}
#point .point__pointNum img {
  display: block;
}

#point .point__pointNum {
  width: 8.3rem;
  margin-top: 6.9rem;
}
#point .point__pointNum img {
  width: 100%;
}
#point .point__pointTitle {
  margin-top: 2.5rem;
  font-size: clamp(2.2rem, calc(0.384rem + 2.365vw), 3.6rem);
  font-weight: 600;
  line-height: calc(43 / 36);
  letter-spacing: 0.07em;
  text-align: left;
  color: #fff;
}
#point .point__pointTitle span {
  display: inline-block;
  white-space: nowrap;
}
#point .point__pointTitle span:not(:first-child) {
  margin-top: 1.4rem;
}
#point .point__pointTitle span img {
  margin-right: 1rem;
}
#point .point__desc-text {
  margin-top: clamp(1rem, 4.747vw - 2.646rem, 4rem);
  padding-right: clamp(2rem, 7.12vw - 3.468rem, 6.5rem);
  padding-left: 1rem;
  font-size: clamp(1.4rem, 0.633vw + 0.914rem, 1.8rem);
  line-height: 2.3;
  letter-spacing: 0.1em;
  color: #fff;
}
.point__desc-note {
  margin-top: 2.9rem;
  padding-left: 1rem;
  font-size: clamp(1.2rem, 0.316vw + 0.957rem, 1.4rem);
  letter-spacing: 0.1em;
  color: #fff;
}

/* point__item--1st */
#point .point__item--1st .point__pointTitle img {
  width: 24.3rem;
}

/* point__item--2nd */
#point .point__item--2nd {
  margin-top: clamp(4.2rem, 11.076vw - 4.306rem, 11.2rem);
  gap: 4.2%;
}
#point .point__item--2nd .point__titleWrap,
#point .point__item--2nd .point__descWrap {
  min-width: 32rem;
}
#point .point__item--2nd .point__titleWrap {
  margin-top: 5.2rem;
}

#point .point__item--2nd .point__pointNum {
  width: 9rem;
  margin-top: 1.3rem;
  padding-left: 0.5rem;
}
#point .point__item--2nd .point__pointTitle {
  margin-top: 2.8rem;
}
#point .point__item--2nd .point__desc-text {
  margin-top: 1.9rem;
  padding-right: 0;
}
@media screen and (max-width: 880px) {
  #point .point__item--2nd .point__pointTitle picture {
    transform: translateX(-2rem);
  }
}

/* point__item--3rd */
#point .point__item--3rd {
  margin-top: 11.5rem;
  gap: 3.2%;
}
#point .point__item--3rd .point__titleWrap {
  padding-left: 0;
}
#point .point__item--3rd .point__pointNum {
  width: 9.3rem;
  margin-top: 3rem;
  padding-left: 0.9rem;
}
#point .point__item--3rd .point__pointTitle {
  margin-top: 1.8rem;
  padding-left: 0.8rem;
  line-height: 1.6;
}
#point .point__item--3rd .point__pointTitle img {
  display: block;
  width: 31.8rem;
}
#point .point__item--3rd .point__desc-text {
  margin-top: 0;
}



/* con4 service
-------------------------------------*/
.service{
  position: relative;
  background-color: var(--color-bg-gray);
  z-index: 1;
  aspect-ratio: 1920 / 800;
}
.service__inner {
  position: relative;
  padding-block: 7.2rem 15.5rem;
  z-index: 2;
}
.service__titleWrap {
  position: relative;
  color: var(--color-pink);
}
.service__titleWrap span {
  display: block;
  text-align: center;
  line-height: 1;
}
.service__title-en {
  margin-bottom: 3.6rem;
}
.service__title-en > img {
  height: 1.426rem;
}
.service__title {
  font-size: 3.2rem;
  font-weight: 600;
  line-height: calc(114 / 24);
  padding-bottom: 4.2rem;
}
.service__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 5rem;
  height: 1px;
  background-color: var(--color-pink);
}
.service__lead {
  margin-top: 3.3rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 2;
  text-align: center;
  letter-spacing: 0.1em;
}

.service__flowWrap {
  position: relative;
  width: min(95%, 92rem);
  margin-inline: auto;
  margin-top: 5.3rem;
  padding: 2rem 6rem 5rem 7rem;
  background-color: #fff;
}
.service__flowItem {
  display: flex;
  align-items: center;
  gap: 3rem;
  margin-top: 3rem;
}
.service__flowItem::first-child {
  margin-top: 0;
}
.service__flowImageWrap {
  position: relative;
  width: 5rem;
}
.service__flowItem:not(:last-child) .service__flowImageWrap::before {
  content: "";
  position: absolute;
  bottom: -100%;
  left: 50%;
  transform: translateX(-50%);
  width: 1px;
  height: 130%;
  background-color: var(--color-pink);
}
.service__flowTextWrap {
  flex: 1;
}
.service__flowText {
  font-size: 2rem;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0.1em;
}
.service__flowText span {
  font-size: 1.6rem;
}

.service__flowSideImage {
  position: absolute;
  top: 50%;
  right: clamp(-5rem, -9.494vw + 8.291rem, 1rem);
  transform: translateY(-50%);
  width: clamp(23rem, 11.076vw + 14.494rem, 30rem);
}
.service__flowSideImageItem {
  width: fit-content;
  margin-top: 2rem;
}
.service__flowSideImageItem:first-child {
  margin-top: 0;
}

.service__dataWrap {
  width: min(95%, 92rem);
  margin-inline: auto;
  margin-top: 4rem;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1rem;
}
.service__dataItem {
  display: grid;
  grid-template-columns: 1fr;
  grid-template-rows: auto 1fr;
  align-items: stretch;
}
.service__dataTitle {
  width: 100%;
  padding-block: 2.1rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  color: #fff;
  background-color: #ADADAD;
}
.service__dataValue {
  width: 100%;
  padding-block: 1.6rem 2rem;
  font-size: 1.6rem;
  line-height: 1;
  letter-spacing: 0.1em;
  text-align: center;
  background-color: #fff;
}
.service__dataValue--price {
  display: flex;
  justify-content: center;
  align-items: center;
  height: 100%;
  text-align: center;
}
.service__valueNum {
  padding-block: 1.9rem 2.2rem;
  font-size: 2.7rem;
  font-weight: 700;
  line-height: calc(30 / 16);
  letter-spacing: 0.1em;
}
.service__valuePrice {
  font-size: clamp(2.2rem, 0.791vw + 1.592rem, 2.7rem);
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
}
.service__valueTax {
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1;
  letter-spacing: 0.1em;
}


/* con5 voice
-------------------------------------*/
.voice {
  position: relative;
}
.voice::before {
  content: "";
  position: absolute;
  inset: 0;
  background: var(--color-bg-gray) url(../images/page-forwoman/con5-voice-bg.jpg) no-repeat;
  background-size: 100% 100%;
  z-index: 0;
}
.voice__inner {
  position: relative;
  padding-top: 24rem;
  padding-bottom: 19.6rem;
  z-index: 1;
}

.voice__title-wrap {
  position: relative;
  text-align: center;
}
.voice__title-wrap::before {
  content: "";
  position: absolute;
  top: -8.9rem;
  left: 50%;
  width: clamp(26rem, 14.873vw + 14.577rem, 35.4rem);
  height: 4.2rem;
  transform: translateX(-50%);
  background: url(../images/page-forwoman/con5-voice-title-deco.svg) center/contain no-repeat;
}
.voice__title-image {
  width: clamp(20rem, 13.291vw + 9.792rem, 28.4rem);
}

 .voice__voiceWrap {
  width: min(95%, 1100px);
  margin-top: 9.4rem;
  margin-inline: auto;
  padding-block: 7rem 8.6rem;
  padding-inline: clamp(2.4rem, 12.025vw - 6.835rem, 10rem);
  background: #fff;
}
.voice__panel {
  padding-top: 5rem;
  padding-inline: 5rem;
  padding-bottom: 4.3rem;
  background-color: #EFF0F2;
}
.voice__header {
  display: grid;
  grid-template-columns: 90px 1fr;
  column-gap: 4rem;
}
.voice__item:not(:first-child) {
  margin-top: 4rem;
}
.voice__avatar {
  grid-column: 1;
  grid-row: 1 / 3;
  align-self: center;
}
.voice__meta {
  grid-column: 2;
  grid-row: 1;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1.5rem;
}
.voice__course-name {
  font-weight: 700;
  line-height: calc(19 / 16);
  color: #fff;
  background-color: var(--color-main);
}
.voice__detail {
  margin-top: 1rem;
  font-weight: 500;
  line-height: calc(19 / 16);
  color: var(--color-black);
}
.voice__voice-title {
  grid-column: 2;
  grid-row: 2;
  margin-top: 2rem;
  font-size: clamp(1.8rem, 0.633vw + 1.314rem, 2.2rem);
  font-weight: 400;
  line-height: calc(40 /22);
  letter-spacing: 0.05em;
}
.voice__line {
  width: 100%;
  height: 1px;
  margin-top: 2.8rem;
  background-color: #D5D5D5;
}
.voice__text {
  margin-top: 2.2rem;
  font-weight: 400;
  line-height: calc(32 / 16);
  letter-spacing: 0.05em;
}


/* con6 faq
-------------------------------------*/

.faq__faq-catTitle {
  position: relative;
  margin-bottom: -1.7rem;
  padding-left: 3.2rem;
  padding-bottom: 2.5rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 1.5;
  letter-spacing: 0.1em;
  border-bottom: 1px solid #D3D3D3;
}
.faq__faq-catTitle::after {
  content: "";
  position: absolute;
  top: 0.4rem;
  left: -0.3rem;
  width: 2rem;
  height: 2rem;
  background-color: var(--color-pink);
}

.faq {
  background-color: #F5F5F5;
}
.faq__inner {
  padding-top: 16rem;
}
.faq__content {
  position: relative;
  padding: 8rem 0 7.8rem;
  width: min(95%, 1100px);
  margin-inline: auto;
  border: 1px solid var(--color-pink);
  background-color: #fff;
  z-index: 10;
}
.faq__titleWrap {
  position: relative;
  color: var(--color-dark-pink);
}
.faq__titleWrap span {
  display: block;
  text-align: center;
  line-height: 1;
}
.faq__title-en {
  margin-bottom: 2rem;
}
.faq__title-en > img {
  height: 1.426rem;
}
.faq__title {
  font-size: 2.4rem;
  font-weight: 600;
  line-height: 1;
  padding-bottom: 4.4rem;
  color: var(--color-pink);
}
.faq__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 5rem;
  height: 1px;
  background-color: var(--color-pink);
}

.faq__faq-wrap {
  width: min(95%, 85rem);
  margin-inline: auto;
  padding-top: 4.8rem;
}
.faq__faq-wrap:not(:first-of-type) {
  margin-top: 2.2rem;
}
.faq__faq-group {
  border-bottom: 1px solid #D3D3D3;
}
.faq__question {
  display: flex;
  align-items: flex-start;
  padding-block: 5rem;
  cursor: pointer;
  transition: margin-bottom 0.3s ease, padding-bottom 0.3s ease;
}
.faq__question.is-open {
  padding-bottom: 0;
  margin-bottom: 1.9rem;
}
.faq__faq-group:not(:first-of-type) .faq__question.is-open {
  padding-top: 3rem;
}
.faq__faq-group:not(:first-of-type) .faq__line {
  transform: translate(-5px, 0);
}
.faq__faq-group:not(:first-of-type) .faq__question.is-open .faq__line {
  transform: translate(-5px, 5px);
}
.faq__icon {
  flex-shrink: 0;
}
.faq__icon > img {
  width: 2.28rem;
  height: auto;
  transform: translateY(5px);
}
.faq__text {
  padding-left: 2rem;
  padding-right: 3rem;
  font-size: 1.8rem;
  font-weight: 700;
  line-height: calc(30 / 18);
  letter-spacing: 0.1em;
}
.faq__line {
  position: relative;
  width: 2.4rem;
  height: 2.4rem;
  margin-left: auto;
  align-self: center;
  flex-shrink: 0;
  transform: translate(-5px, -14px);
}
.faq__line::before,
.faq__line::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2.4rem;
  height: 1px;
  background-color: var(--color-pink);
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.faq__line::before {
  transform: translate(-50%, -50%);
}
.faq__line::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.faq__question.is-open .faq__line::after {
  transform: translate(-50%, -50%) rotate(90deg) scale(0);
  opacity: 0;
}
.faq__answer {
  max-height: 0;
  margin-inline: auto;
  padding-inline: 4.6rem 1em;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: calc(30 / 16);
  letter-spacing: 0.1em;
  opacity: 0;
  transition: max-height 0.3s ease, opacity 0.3s ease, padding-top 0.3s ease, padding-bottom 0.3s ease;
  overflow: hidden;
}

.faq__question.is-open + .faq__answer {
  max-height: 500px;
  opacity: 1;
  padding-top: 0;
  padding-bottom: 2.5rem;
  padding-right: 1rem;
}


/* con7 message
-------------------------------------*/
.message {
  position: relative;
  min-height: 100%;
  background-color: var(--color-bg-gray);
}
.message::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0rem;
  background: url(../images/page-forwoman/con7-message-bg.webp) no-repeat;
  background-size: 100% 100%;
  background-position: center top;
  transform: translateY(16.7rem);
  height: calc(100% - 16.7rem);
  z-index: 0;
}
.message__inner {
  position: relative;
  margin-top: 20.6rem;
  padding-bottom: 39rem;
  z-index: 1;
}
.message__contentWrap {
  position: relative;
  width: min(95%, 1280px);
  margin-inline: auto;
  text-align: center;
  background-color: transparent;
}
.message__title_en {
  position: absolute;
  width: clamp(32rem, 45.095vw - 2.633rem, 60.5rem);
  top: -3rem;
  left: -4.06vw;
}
@media screen and (max-width: 1500px) {
  .message__title_en {
    left: 0;
  }
}
.message__titleImage {
  width: 100%;
  margin-inline: auto;
}
.message__sectionCatch {
  display: inline-block;
  transform: translateX(-10.4rem);
}
.message__sectionCatch span {
  position: relative;
  top: -0.8em;
  display: inline-block;
  margin-inline: auto;
  padding: 1.4rem 2rem;
  font-size: clamp(2.6rem, 3.241vw + 0.111rem, 4rem);
  font-weight: 400;
  line-height: 1;
  color: var(--color-pink);
  background-color: #fff;
  letter-spacing: 0;
}
#message .message__sectionCatchText--1st {
  padding-left: 1.4rem;
  padding-right: 2rem;
}
#message .message__sectionCatchText--2nd {
  margin-top: 2.7rem;
  margin-left: 1em;
  padding-left: 2rem;
  padding-right: 2.7rem;
  transform: translateX(4.7em);
}

.message__sectionLead {
  margin-top: 3.8rem;
  font-size: 2.4rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
  color: #fff;
}

.message__media {
  display: flex;
  flex-direction: row-reverse;
  gap: 4rem;
  width: min(95%, 78.4rem);
  margin-top: 4.8rem;
  margin-inline: auto;
}
.message__mediaTextWrap {
  flex: 1;
  margin-top: 1.2rem;
}
.message__mediaText {
  font-size: clamp(1.2rem, 1.389vw + 0.133rem, 1.8rem);
  line-height: 2;
  text-align: left;
  letter-spacing: 0;
  color: #fff;
}
.message__mediaText:not(:first-child) {
  margin-top: 5rem;
}
.message__mediaImage {
  width: 51%;
}

.message__middleText {
  display: inline-block;
  margin-top: 8.2rem;
  padding-bottom: 1.2rem;
  font-size: 3.4rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0;
  text-align: center;
  color: #fff;
  border-bottom: 1px solid #fff;
}

.message__catchText {
  position: relative;
  width: min(95%, 56rem);
  margin-top: 5.3rem;
  margin-inline: auto;
  padding-block: 3rem 3.2rem;
  font-size: 2rem;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
  text-align: center;
  background-color: #E2E2E2;
}
.message__catchText::after {
  content: "";
  position: absolute;
  bottom: -2.4rem;
  left: 50%;
  transform: translateX(-50%);
  width: 5.7rem;
  height: 2.5rem;
  background: url(../images/page-forwoman/con7-message-catch-text-arrow.svg) center / contain no-repeat;
}
.message__catchText span {
  font-weight: 700;
}
.message__bottomText {
  margin-top: 5.6rem;
  font-size: 2.8rem;
  font-weight: 400;
  line-height: calc(64 / 28);
  letter-spacing: 0;
  text-align: center;
  color: #fff;
}
.message__bottomText span {
  padding-bottom: 0.5rem;
  font-size: clamp(2.6rem, 1.582vw + 1.385rem, 3.6rem);
  line-height: calc(64 / 36);
  background: linear-gradient(
    to bottom,
    transparent 0%,
    transparent 75%,
    #C7A903 75%,
    #C7A903 100%
    );
}


/* con8 contact
-------------------------------------*/
.contact {
  position: relative;
  min-height: 100%;
  background-color: var(--color-bg-gray);
  z-index: 10;
}
.contact__form {
  transform: translateY(-30rem);
}

}


/* ========================================
  @media screen and (max-width: 767px)
======================================== */
@media screen and (max-width: 767px) {
  html,
  body {
    overflow-x: hidden;
    max-width: 100vw;
  }


/* page-hero SP
-------------------------------------*/
.page-hero{
  position:relative;
  width:100%;
  padding-top: 11.8vw;
  margin: 0 0 22vw 0;
  background-color:var(--color-bg-gray);
}
.page-hero::after{
  content:"";
  display:none;
}
.page-hero__inner{
  position:relative;
  width:100%;
  min-height:auto;
  padding-top:9.5vw;
  padding-right:0;
  margin-inline:auto;
  z-index:1;
}
.page-hero__inner::before{
  content:"";
  position:absolute;
  top:10vw;
  left:50%;
  transform:translateX(-50%);
  width:100%;
  height:100%;
  background:url(../images/page-forwoman/hero-bg-sp.jpg) no-repeat top center/100% auto;
  z-index:0;
}
.page-hero__inner::after{
  content:"";
  position:absolute;
  bottom: -21vw;
  left: 50%;
  transform: translateX(-46%);
  width: 44.6vw;
  height:auto;
  aspect-ratio:280/198;
  background:url(../images/page-forwoman/hero-deco.svg) no-repeat top center/100% auto;
  z-index: 2;
}
.page-hero__caption{
  position:relative;
  width:100%;
  margin-inline:auto;
  top:0;
  left:0;
  font-size:3vw;
  letter-spacing:0.09em;
  text-align:left;
  color:#fff;
  padding-left:5.3vw;
}
.page-hero__caption::after{
  content:"";
  position:absolute;
  bottom: -2.9vw;
  left: 5.3vw;
  width: 9.8vw;
  height: 1px;
  background-color:#fff;
}
.page-hero__frame{
  position:relative;
  padding-top: 5vw;
  padding-bottom:8vw;
  text-align:center;
  color:#fff;
  z-index:2;
}
.page-hero__title-en{
  width:81vw;
  margin-top:7vw;
  margin-inline:auto;
}
.page-hero__title-caption{
  margin-top:-21.7vw;
  font-size:4.2vw;
  font-weight:400;
  line-height:1.6;
  letter-spacing:0;
}
.page-hero__pageTitle{
  margin-top:7.7vw;
  font-size:7.3vw;
  font-weight:600;
  line-height:1.59;
  letter-spacing:0;
}
.page-hero__pageTitle span{
  padding-bottom:1vw;
  border-bottom:1px solid #fff;
}
.page-hero__descBox{
  display:block;
  width:89vw;
  margin-top:6vw;
  margin-inline:auto;
  padding:5vw 5vw;
  background-color:rgba(255,255,255,0.8);
  text-align:center;
}
.page-hero__descTitle{
  font-size:4.2vw;
  font-weight:600;
  line-height:1.6;
  color:var(--color-pink);
}
.page-hero__descText{
  margin-top:3.3vw;
  font-size:3.3vw;
  font-weight:500;
  line-height:1.8;
  letter-spacing:0.05em;
  text-align:left;
  color:var(--color-black);
}


/* con1 profile SP
-------------------------------------*/
.profile{
  position: relative;
  margin-top: 5.5vw;
  background-color: #fff;
}
.profile::before{
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 414 / 259;
  background: url(../images/page-forwoman/con1-profile-bg-top-sp.jpg) no-repeat top center / 100% auto;
  z-index: 0;
}
.profile::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: auto;
  aspect-ratio: 414 / 259;
  background: url(../images/page-forwoman/con1-profile-bg-bottom-sp.jpg) no-repeat bottom center / 100% auto;
  z-index: 0;
}
.profile__inner{
  position: relative;
  width: 100%;
  margin-inline: auto;
  padding-top: 15.2vw;
  padding-bottom: 28.8vw;
  z-index: 1;
}
.profile__title{
  width: 61.3vw;
  margin-inline: auto;
  margin-bottom: 5vw;
}
.profile__body{
  display: flex;
  flex-direction: column-reverse;
  margin-top: 0;
}
.profile__imageWrap{
  width: 89.3%;
  margin-top: -5.6vw;
  margin-inline: auto;
}
.profile__imageWrap img{
  width: 100%;
  height: auto;
}
.profile__textWrap{
  width: 100%;
  margin-top: 6.9vw;
  padding-inline: 5.6vw;
}
.profile__position{
  font-size: 4vw;
  line-height: 1.4;
  letter-spacing: 0.06em;
  text-align: left;
}
.profile__name{
  margin-top: 1.5vw;
  font-size: 7.5vw;
  font-weight: 400;
  line-height: 1.2;
  letter-spacing: 0;
  color: var(--color-pink);
  text-align: left;
}
.profile__otherPosition{
  margin-top: 4vw;
  margin-right: 3vw;
  padding-block: 2vw 2.9vw;
  background-color: #F8EEF4;
}
.profile__otherPositionItem{
  position: relative;
  font-size: 3.5vw;
  line-height: 1.8;
  letter-spacing: 0.07em;
  text-align: left;
  padding-left: 7.1vw;
  margin-top: 2vw;
}
.profile__otherPositionItem::before{
  content: "";
  position: absolute;
  top: 2.4vw;
  left: 4.4vw;
  width: 1.5vw;
  height: 1.5vw;
  border-radius: 50%;
  background-color: var(--color-pink);
}
.profile__detailWrap{
  margin-top: 8.7vw;
}
.profile__detailText{
  margin-top: 8vw;
  font-size: 3.8vw;
  line-height: 2;
  letter-spacing: 0.12em;
  text-align: left;
}
.profile__detailText span{
  font-weight: 700;
}
.profile__btmWrap{
  margin-top: 5.9vw;
  text-align: center;
  padding-inline: 5vw;
}
.profile__btmCatch {
  display: block;
  font-size: 6.2vw;
  line-height: 1.63;
  letter-spacing: 0.1em;
  text-align: left;
  color: var(--color-pink);
  padding-inline: 2vw;
}
.profile__btmCatch span {
  display: inline-block;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    transparent 70%,
    #F5F4D9 70%,
    #F5F4D9 100%
    );
}
.profile__btmCatch span:first-child{
  margin-left: -4vw;
}
.profile__btmCatch span:last-child{
  margin-left: -4vw;
  padding-left: 8vw;
}
.profile__btmText{
  margin-top: 8.1vw;
  padding-right: 1vw;
  font-size: 3.9vw;
  line-height: 1.9;
  letter-spacing: 0.1em;
  text-align: left;
}
.profile__btmText span{
  font-weight: 700;
}


/* con2 worry SP
-------------------------------------*/
.worry {
  position: relative;
  background-color: #EAE7EC;
}
.worry::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url(../images/page-forwoman/con2-worry-bg-sp.png) no-repeat top center / 100% auto;
  mix-blend-mode: luminosity;
  z-index: 0;
}
.worry__inner {
  position: relative;
  width: 100%;
  margin-inline: auto;
  padding-bottom: 20vw;
  z-index: 1;
}
.worry__mediaArea {
  position: relative;
  width: 100%;
  margin-inline: auto;
  margin-bottom: -52vw;
  padding-top: 86.3vw;
}
.worry__textWrap {
  width: 90vw;
  max-width: 100vw;
  margin-inline: auto;
}
.worry__title {
  display: inline-block;
  padding-inline: 2vw;
  padding-block: 2vw 1vw;
  font-size: 3.9vw;
  font-weight: 400;
  line-height: 1.6;
  background-color: #fff;
}


.worry__subTitle span {
  display: inline-block;
  margin-top: -0.3vw;
  padding-block: 1.6vw 1.5vw;
  padding-inline: 2.1vw 5.4vw;
  background-color: #fff;
}
.worry__subTitle--2nd {
  margin-top: -8.4vw;
}

.worry__subTitle--1st {
  margin-top: 5vw;
}
.worry__subTitle--1st span {
  padding-left: 2vw !important;
}


.worry__subTitle--2nd span:last-of-type {
  margin-top: -2vw !important;
}

.worry__subTitle span:nth-of-type(2) {
  margin-top: 0;
  margin-bottom: -1vw;
  padding-bottom: 2vw;
}
.worry__subTitle span:last-of-type {
  margin-top: 0;
  padding-left: 5.9vw;
  padding-bottom: 1.8vw;
}
.worry__text {
  margin-top: 9.3vw;
  font-size: 3.8vw;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0;
}
.worry__text--1st {
  margin-top: 8.5vw;
  letter-spacing: 0.02em;
  white-space: nowrap;
}
.worry__text.worry__text--2nd span {
  margin-top: 9.4vw;
  padding-right: 0.8vw;
  font-weight: 700;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    transparent 50%,
    #fff 50%,
    #fff 100%
  );
}
.worry__text--3rd {
  margin-top: 10vw;
}
.worry__text span {
  font-weight: 700;

}
.worry__speechBubble {
  width: 90vw;
  max-width: 100vw;
  margin-inline: auto;
  margin-top: 10vw;
  padding-block: 8.3vw 8vw;
  background-color: #EDCCDE;
  text-align: center;
  position: relative;
}
.worry__speechBubble::after {
  content: "";
  position: absolute;
  bottom: -5.6vw;
  left: 50%;
  transform: translateX(-50%);
  width: 15vw;
  height: auto;
  aspect-ratio: 57 / 25;
  background: url(../images/page-forwoman/con2-worry-arrow.svg) no-repeat center / 100% auto;
}
.worry__speechBubbleText {
  font-size: 3.9vw;
  line-height: 1.8;
  letter-spacing: 0;
}
.worry__speechBubbleKey {
  margin-top: 3.4vw;
  padding-inline: 3.5vw;
  font-size: 4.8vw;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
}
.worry__btm {
  padding-block: 66vw 25vw;
  background-color: #fff;
}
.worry__btmKey {
  padding-inline: 5vw;
  font-size: 5.8vw;
  line-height: 1.5;
  letter-spacing: 0;
  text-align: center;
  color: var(--color-pink);
}
.worry__btmMedia {
  display: flex;
  flex-direction: column-reverse;
  gap: 5.9vw;
  width: 90vw;
  max-width: 100vw;
  margin-inline: auto;
  margin-top: 7vw;
}
.worry__btmMediaTextArea {
  width: 100%;
}
.worry__btmMediaText {
  margin-top: 7vw;
  font-size: 3.9vw;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
}
.worry__btmMediaText:first-child {
  margin-top: 0;
}
.worry__btmMediaText--key {
  margin-top: 5.5vw;
  font-size: 5.8vw;
  font-weight: 400;
  line-height: 1.8;
  letter-spacing: 0;
}
.worry__btmMediaImage {
  width: 100%;
}
.worry__btmMediaImage img {
  width: 100%;
  height: auto;
}


/* con3 point SP
-------------------------------------*/
#point.point {
  margin-top: -39.6vw;
  position: relative;
  background: url(../images/page-forwoman/con3-point-bg-sp.png) no-repeat;
  background-size: 100% 100%;
  z-index: 1;
}
#point .point__inner {
  position: relative;
  z-index: 1;
  padding-top: 20.4vw;
  padding-bottom: 27.6vw;
  padding-inline: 4.9vw;
}

.point__titleWrap {
  text-align: center;
}
.point__title-en {
  width: 62vw;
  margin-inline: auto;
}
.point__sectionTitle {
  margin-top: -11.4vw;
  color: #fff;
}
#point .point__titleLine {
  display: block;
  margin-top: 2.8vw;
  font-size: 5.8vw;
  font-weight: 600;
  line-height: 1.4;
}
.point__titleRow {
  display: block;
  margin-top: 1vw;
  justify-content: center;
  align-items: center;
}
.point__titleWord {
  display: inline-block;
  padding-bottom: 1.4vw;
  font-size: 7.4vw;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.1em;
  border-bottom: 1px solid var(--color-sub2);
}
.point__titleNum {
  display: inline-block;
  width: 11.6vw;
  height: auto;
  transform: translateY(2.3vw);
}

#point .point__list {
  margin-top: 14.2vw;
  margin-inline: auto;
}
#point .point__item {
  display: grid;
  grid-template-columns: 1fr;
  column-gap: 3.91%;
  grid-template-rows: auto auto auto;
  grid-template-areas:
    "title"
    "img"
    "desc";
}
#point .point__imageWrap {
  grid-area: img;
  margin-top: 8vw;
}
#point .point__titleWrap {
  grid-area: title;
}
#point .point__descWrap {
  grid-area: desc;
}
#point .point__item:nth-child {
  margin-right: 0;
  margin-left: auto;
  grid-template-columns: 40.36% 56.05%;
  grid-template-areas:
    ". img"
    "title img"
    "desc img"
    ". img";
}
#point .point__item:not(:first-child) {
  margin-top: 10.9vw;
}
#point .point__imageWrap img {
  display: block;
  width: 100%;
}
#point .point__pointNum img {
  display: block;
  width: 14.1vw;
}
#point .point__title {
  margin-top: 7.1vw;
  font-size: 6.2vw;
  font-weight: 600;
  line-height: 1;
  letter-spacing: 0.07em;
  text-align: left;
  color: #fff;
}
#point .point__item picture {
  display: inline-block;
  width: fit-content;
  margin-block: -1vw;
}
#point .point__pointTitle {
  margin-top: 5.4vw;
  font-size: 6.2vw;
  font-weight: 600;
  line-height: calc(43 / 36);
  letter-spacing: 0.07em;
  text-align: left;
  color: #fff
}

#point .point__pointTitle span {
  display: inline-block;
  line-height: 1.3;
}
#point .point__pointTitle span:not(:first-child) {
  margin-top: 2.8vw;
}
#point .point__pointTitle span img {
  height: 8.7vw;
  width: auto;
  margin-right: 2.4vw;
}
#point .point__desc-text {
  margin-top: 3.2vw;
  font-size: 3.9vw;
  line-height: 1.9;
  letter-spacing: 0.1em;
  color: #fff;
}
.point__desc-note {
  margin-top: 3.3vw;
  font-size: 3.6vw;
  line-height: 1.8;
  letter-spacing: 0.04em;
  color: #fff;
}
#point .point__btnWrap {
  width: 100%;
  margin-top: 15.1vw;
  margin-inline: auto;
}
#point .point__btnWrap a img {
  transition: all 0.2s ease;
}
#point .point__btnWrap a img:hover {
  filter: brightness(1.1);
  opacity: 1;
}

#point .point__item--2nd {
  margin-top: 11vw !important;
}
#point .point__item--2nd .point__pointTitle span img {
  width: 85.7vw !important;
  height: auto;
}

#point .point__item--2nd .point__imageWrap {
  margin-top: 5.3vw;
}

#point .point__item--2nd .point__desc-text {
  margin-top: 3.8vw;
}

#point .point__item--3rd .point__imageWrap {
  margin-top: 11.1vw !important;
}


/* con4 service SP
-------------------------------------*/
.service {
  position: relative;
  background-color: var(--color-bg-gray);
  padding-top: 12vw;
  padding-bottom: 27vw;
}
.service__inner {
  position: relative;
  width: 90vw;
  max-width: 100vw;
  margin: 0 auto;
}
.service__titleWrap {
  text-align: center;
  color: var(--color-pink);
}
.service__titleWrap span {
  display: block;
  line-height: 1;
}
.service__title-en {
  margin-bottom: 6.2vw;
}
.service__title-en img {
  width: 14vw;
  height: auto;
}
.service__title {
  font-size: 5.8vw;
  font-weight: 600;
  line-height: 1.4;
  padding-bottom: 6vw;
  position: relative;
}
.service__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 12vw;
  height: 0.3vw;
  background-color: var(--color-pink);
}
.service__lead {
  margin-top: 6vw;
  font-size: 3.9vw;
  font-weight: 500;
  line-height: 2;
  text-align: left;
  letter-spacing: 0.1em;
}

.service__flowWrap {
  margin-top: 6vw;
  background-color: #fff;
  padding: 6vw 5.2vw;
}
.service__flowList {
  margin: 3vw 0 0 0;
  padding: 0;
  list-style: none;
  background-image: url(../images/page-forwoman/flow-line.svg);
  background-position: left 4.6vw top 0px;
  background-repeat: repeat-y;
  background-size: 0.5vw;
}
.service__flowItem {
  display: flex;
  gap: 2.9vw;
  align-items: center;
  margin-top: 6vw;
  position: relative;
  top:-3vw;
}
.service__flowItem:first-child {
  margin-top: 0;
}
.service__flowItem:nth-child(2) {
  margin-top: 4vw;
}
.service__flowItem:nth-child(3) {
  margin-top: 7.6vw;
}
.service__flowItem:nth-child(4) {
  margin-top: 6.9vw;
}
.service__flowItem:nth-child(5) {
  margin-top: 4vw;
}
.service__flowItem:nth-child(6) {
  margin-top: 4vw;
}
.service__flowItem:nth-child(7) {
  margin-top: 6.3vw;
}
.service__flowItem:nth-child(8) {
  margin-top: 3.5vw;
  top: 0;
}

.service__flowImageWrap {
  width: 10vw;
  position: relative;
}
.service__flowImageWrap img {
  width: 100%;
  height: auto;
}
.service__flowTextWrap {
  width: calc(100% - 14vw);
}
.service__flowText {
  font-size: 4.4vw;
  font-weight: 700;
  line-height: 1.8;
  letter-spacing: 0.1em;
}
.service__flowText span {
  font-size: 3.4vw;
}

.service__flowSideImage {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: auto auto;
  /* row-gap: 0.5rem; */
  column-gap: 0.5rem;
  margin-top: 9.2vw;
  list-style: none;
  padding: 0;
}
.service__flowSideImageItem:first-child {
  margin-top: 0;
  grid-row: 1;
  grid-column: 1 / 3;
}
.service__flowSideImageItem:nth-child(2) {
  grid-row: 2;
  grid-column: 1;
}
.service__flowSideImageItem:nth-child(3) {
  grid-row: 2;
  grid-column: 2;
}
.service__flowSideImageItem img {
  width: 100%;
  height: auto;
  display: block;
}

.service__dataWrap {
  margin-top: 8.7vw;
  display: grid;
  grid-template-columns: 1fr;
  gap: 5vw;
}
.service__dataItem {
  background-color: #fff;
}
.service__dataTitle {
  background-color: #ADADAD;
  padding-top: 2.5vw;
  padding-bottom: 2.7vw;
  text-align: center;
  font-size: 4vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  color: #fff;
}
.service__dataValue {
  padding-top: 3.4vw;
  padding-bottom: 2.7vw;
  text-align: center;
  font-size: 4vw;
  letter-spacing: 0.1em;
}
.service__dataValue--price {
  display: flex;
  justify-content: center;
  align-items: center;
}
.service__valueNum {
  font-size: 6.3vw;
  font-weight: 700;
  /* padding-right: 1vw; */
}
.service__valuePrice {
  font-size: 6vw;
  font-weight: 700;
}
.service__valueTax {
  font-size: 3.6vw;
  margin-top: 2vw;
  margin-left: -1vw;
}


/* con5 voice SP
-------------------------------------*/
.voice {
  position: relative;
}
.voice::before {
  content: "";
  position: absolute;
  top: -6vw;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 0;
  background: url(../images/page-forwoman/con5-voice-bg-sp.jpg) no-repeat;
  background-size: 100% auto;
}
.voice__inner {
  position: relative;
  z-index: 1;
  padding-top: 28.5vw;
  padding-bottom: 29.5vw;
}
.voice__title-wrap {
  position: relative;
  text-align: center;
}
.voice__title-wrap::before {
  content: "";
  position: absolute;
  top: 0;
  left: 50%;
  width: 70.57vw;
  aspect-ratio: 292.15/34.62;
  transform: translate(-50%, calc(-100% - 7.6vw));
  background: url(../images/page-forwoman/con5-voice-title-deco.svg) center/contain no-repeat;
}
.voice__title-wrap img {
  width: 35.27vw;
}
.voice__voiceWrap {
  width: 95vw;
  max-width: 100vw;
  margin-top: 9.7vw;
  margin-inline: auto;
  padding: 4.83vw 2.41vw;
  background: #fff;
}
.voice__panel {
  padding: 7.2vw 4.8vw;
  background-color: #EFF0F2;
}
.voice__header {
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 4.8vw;
}
.voice__item:not(:first-child) {
  margin-top: 4.8vw;
}
.voice__avatar {
  grid-column: 1;
  grid-row: 1;
  align-self: center;
  width: 16.9vw;
  height: 16.9vw;
}
.voice__meta {
  grid-column: 2;
  grid-row: 1;
  align-self: center;
  display: flex;
  flex-direction: column;
}
.voice__course-name {
  display: inline-block;
  width: fit-content;
  padding: 1.2vw;
  font-size: 4.3vw;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: 0;
  white-space: nowrap;
  color: #fff;
  background-color: var(--color-main);
}
.voice__detail {
  display: inline-block;
  /* margin-top: 1.4vw; */
  font-size: 3.9vw;
  font-weight: 500;
  line-height: 1.2;
  color: var(--color-black);
}
.voice__voice-title {
  grid-column: 1/-1;
  grid-row: 2;
  margin-top: 5.9vw;
  font-size: 4.9vw;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.05em;
}
.voice__line {
  width: 100%;
  height: 0.2vw;
  margin-top: 2.9vw;
  background-color: #D5D5D5;
}
.voice__text {
  margin-top: 2.9vw;
  padding-left: 1.4vw;
  font-size: 3.6vw;
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0;
}


/* con6 FAQ SP
-------------------------------------*/
.faq {
  background-color: #F5F5F5;
}
.faq__inner {
  padding-top: 8.5vw;
}
.faq__content {
  position: relative;
  margin-inline: auto;
  padding: 12.8vw 0 12.6vw;
  width: 94.5vw;
  max-width: 100vw;
  border: 0.24vw solid var(--color-pink);
  background-color: #fff;
  z-index: 10;
}
.faq__titleWrap {
  position: relative;
  color: var(--color-pink);
}
.faq__titleWrap span {
  display: block;
  text-align: center;
  line-height: 1;
}
.faq__title-en {
  margin-bottom: 4.8vw;
}
.faq__title-en img {
  height: 3.44vw;
}
.faq__title {
  font-size: 6vw;
  font-weight: 600;
  line-height: 1;
  padding-bottom: 7.7vw;
  color: var(--color-pink);
}
.faq__title::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 12vw;
  height: 0.24vw;
  background-color: var(--color-pink);
}
.faq__faq-wrap {
  margin-inline: auto;
  padding-inline: 4vw;
  padding-top: 9.6vw;
  width: 90vw;
  max-width: 100vw;
}
.faq__faq-wrap--1st {
  padding-top: 9.6vw;
}
.faq__faq-catTitle {
  position: relative;
  margin-bottom: 1.5vw;
  padding-left: 8.45vw;
  padding-bottom: 1.9vw;
  font-size: 4.4vw;
  font-weight: 400;
  line-height: 1.7;
  letter-spacing: 0.09em;
  border-bottom: 1px solid #D3D3D3;
}
.faq__faq-catTitle::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4.82vw;
  height: 4.82vw;
  background-color: var(--color-pink);
}
.faq__faq-group {
  border-bottom: 0.24vw solid #D3D3D3;
}
.faq__faq-group:first-child {
  border-top: 0.24vw solid #D3D3D3;
}
.faq__question {
  display: flex;
  align-items: flex-start;
  padding: 5.3vw 2.6vw 5.3vw 1.2vw;
  cursor: pointer;
  transition: margin-bottom 0.3s ease, padding-bottom 0.3s ease;
}
.faq__question.is-open {
  padding-bottom: 0;
  margin-bottom: 3.4vw;
}
.faq__icon {
  flex-shrink: 0;
}
.faq__icon img {
  width: 5.4vw;
  height: auto;
}
.faq__text {
  padding-left: 6.2vw;
  padding-right: 5.5vw;
  font-size: 3.8vw;
  font-weight: 700;
  line-height: 1.875;
  letter-spacing: 0.1em;
  color: var(--color-black);
}
.faq__line {
  position: relative;
  width: 5.8vw;
  height: 5.8vw;
  margin-top: -0.6vw;
  margin-left: auto;
  align-self: flex-start;
  flex-shrink: 0;
}
.faq__line::before,
.faq__line::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 5.8vw;
  height: 0.24vw;
  background-color: var(--color-pink);
  transition: transform 0.3s ease, opacity 0.3s ease;
}
.faq__line::before {
  transform: translate(-50%, -50%);
}
.faq__line::after {
  transform: translate(-50%, -50%) rotate(90deg);
}
.faq__question.is-open .faq__line::after {
  transform: translate(-50%, -50%) rotate(90deg) scale(0);
  opacity: 0;
}
.faq__answer {
  max-height: 0;
  margin-inline: auto;
  padding-inline: 13vw 10.6vw;
  font-size: 3.4vw;
  font-weight: 500;
  line-height: 1.857;
  letter-spacing: 0.1em;
  opacity: 0;
  transition: max-height 0.3s ease, opacity 0.3s ease, padding-top 0.3s ease, padding-bottom 0.3s ease;
  overflow: hidden;
  color: var(--color-black);
}
.faq__question.is-open + .faq__answer {
  max-height: 120vw;
  opacity: 1;
  padding-top: 0;
  padding-bottom: 3.4vw;
}


/* con7 message SP
-------------------------------------*/
.message {
  position: relative;
  background-color: #F2F2F0;
}
.message::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: url(../images/page-forwoman/con7-message-bg-sp.png) no-repeat center top;
  background-size: auto calc(100% - 48vw);
  transform: translateY(48vw);
  z-index: 0;
}

.message__inner {
  position: relative;
  padding-block: 17.5vw;
  z-index: 2;
}

.message__content {
  padding-block: 18.6vw 13.5vw;
  background-color: #fff;
}
.message__contentWrap {
  position: relative;
  margin-inline: var(--sp-guide-2);
  text-align: center;
}
.message__title_en {
  position: relative;
  width: 73vw;
  margin-inline: auto;
}
.message__titleImage {
  margin-top: -12vw;
  margin-inline: auto;
}
.message__sectionCatch {
  position: relative;
  top: -6.8vw; /* -2.8rem */
  width: fit-content;
  margin-inline: auto;
}
.message__sectionCatch span {
  display: inline-block;
  margin-top: 3.9vw;
  padding: 2.2vw 3vw 2.2vw 2vw;
  font-size: 5vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.07em;
  color: var(--color-pink);
  background-color: #fff;
}
.message__sectionCatch span:last-of-type {
  margin-top: 2.4vw;
  padding: 2.2vw 1.8vw 2.5vw 5.9vw;
}
.message__sectionLead {
  margin-top: -1.3vw;
  margin-inline: var(--sp-guide-2);
  font-size: 3.9vw;
  line-height: 2.2;
  letter-spacing: 0.1em;
  color: #fff;
}

.message__media {
  display: flex;
  flex-direction: column-reverse;
  gap: 7.2vw;
  margin-top: 5.5vw;
}
.message__mediaText {
  width: 100%;
  font-size: 3.6vw;
  line-height: 2;
  letter-spacing: -0.02em;
  text-align: left;
  color: #fff;
}
.message__mediaImage {
  width: 100%;
}

.message__middleText {
  margin-top: 9.7vw;
  font-size: 5.2vw;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.03em;
  text-align: center;
  color: #fff;
}
.message__middleText span {
  display: inline-block;
  border-bottom: 1px solid #fff;
  padding-bottom: 1vw;
}
.message__middleText span:last-of-type {
  margin-top: 2.6vw;
}
.message__mediaText:last-of-type {
  margin-top: 7.2vw;
}

.message__catchText {
  position: relative;
  margin-top: 9.3vw;
  padding: 4vw 1vw 4.2vw;
  font-size: 4.4vw;
  line-height: 2;
  letter-spacing: 0;
  text-align: center;
  background-color: #E2E2E2;
  z-index: 1;
}
.message__catchText::after {
  content: "";
  position: absolute;
  bottom: -5.8vw;
  left: 50%;
  transform: translateX(-50%);
  background: url(../images/page-forwoman/con7-message-catch-text-arrow.svg) center / contain no-repeat;
  width: 13.7vw;
  height: 6vw;
}
.message__catchText span {
  font-weight: 700;
}

.message__bottomText {
  margin-top: 12.8vw;
  font-size: 5.2vw;
  font-weight: 400;
  line-height: calc(64 / 28);
  letter-spacing: 0;
  text-align: center;
  color: #fff;
}
.message__bottomText span {
  padding-bottom: 1.2vw;
  font-size: 6.2vw;
  line-height: 1.8;
  background: linear-gradient(
    to bottom,
    transparent 0%,
    transparent 65%,
    #C7A903 65%,
    #C7A903 100%
  );
}
}

/* br.vw1200.sp を1200px以下で表示 */
@media screen and (max-width: 1200px) {
  br.vw1200.sp {
    display: block !important;
  }
}