/* mv */
.for-women {
    display: block;
}

.for-women .mv img {
    object-fit: contain;
}

/* read */
.for-women__read {
    padding-top: 4rem;
    padding-bottom: 4rem;
}

@media screen and (min-width: 1025px) {
    .for-women__read {
        padding-top: 6rem;
        padding-bottom: 6rem;
    }
}

.read__inner {}

.for-women__read--text {
    text-align: center;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.8;
}

@media screen and (min-width: 1025px) {
    .for-women__read--text {
        font-size: 20px;
    }
}

.highlight-yellow {
    background-color: #FFFF00;
    font-weight: bold;
}


/* section */
.section {}

.section__label {
    padding-top: 3rem;
    padding-bottom: 5rem;
    background-image: linear-gradient(136deg, rgba(255, 95, 95, 1), rgba(255, 153, 123, 1));
    padding-right: 2rem;
    padding-left: 2rem;
}

@media screen and (min-width: 1025px) {
    .section__label {
        padding-top: 7rem;
        padding-bottom: 7rem;
    }
}

.section__label--inner {
    max-width: 100%;
    margin-inline: auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    position: relative;
}

@media screen and (min-width: 1025px) {
    .section__label--inner {
        flex-direction: row;
        max-width: 1000px;
        margin-inline: auto;
        position: relative;
    }
}

.point {
    position: static;
    border: 1px solid #fff;
    color: #fff;
    border-radius: 50%;
    width: 70px;
    height: 70px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
    margin-inline: auto;
    font-weight: 100;
    font-size: 14px;
    margin-bottom: 20px;
    background-color: #FF7C6D;
    margin-top: -60px;
    font-family: 'Barlow Condensed', sans-serif;

}

@media screen and (min-width: 1025px) {
    .point {
        display: block;
        border: 1px solid #fff;
        color: #fff;
        border-radius: 50%;
        width: 105px;
        height: 105px;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap;
        flex-direction: column;
        margin-inline: auto;
        font-weight: 100;
        font-size: 20px;
        position: absolute;
        left: 0;
        background-color: transparent;
        margin-top: 0;
    }

}

.point em {
    display: block;
    font-weight: 100;
    font-size: 28px;
    font-family: 'Barlow Condensed', sans-serif;
    font-style: normal;
}

@media screen and (min-width: 1025px) {
    .point em {
        font-size: 41px;
    }
}

.section__title {
    text-align: center;
    color: #fff;
    font-size: 20px;
    letter-spacing: 0.05em;
    line-height: 1.8;
    font-weight: 600;
    padding-right: 0;
    padding-left: 0;
}

@media screen and (min-width: 1025px) {
    .section__title {
        font-size: 30px;
        padding-right: 20px;
        padding-left: 20px;
    }
}

.section__title sup {
    vertical-align: super !important;
    font-size: 20px;
    font-weight: 200 !important;
}

.section__inner {
    padding-right: 20px;
    padding-left: 20px;
}

@media screen and (min-width: 1025px) {
    .section__inner {
        max-width: 1280px;
        margin-inline: auto;
        padding-right: 20px;
        padding-left: 20px;
    }
}

/* point-01 */

.for-women__mv {
    padding-top: 40px;
    /* padding-right: 20px; */
    /* padding-left: 20px; */
}

@media screen and (min-width: 1025px) {
    .for-women__mv {
        padding-top: 80px;
    }
}

#women-01 .for-women__contents {
    display: flex;
    align-items: center;
    flex-direction: column;
    gap: 30px;
    /* padding-bottom: 6rem; */
    /* padding-right: 20px; */
    /* padding-left: 20px; */
}

@media screen and (min-width: 1025px) {
    #women-01 .for-women__contents {
        flex-direction: row;
        padding-top: 60px;
        gap: 75px;
    }
}

.for-women__image {
    position: relative;
}

.for-women__image--label {
    position: absolute;
    left: 0;
    bottom: 2rem;
    background-color: #FF5F5F;
    color: #fff;
    font-size: 15px;
    font-weight: 600;
    padding: 8px 10px;
}

.for-women__texts {}

.contents__copy {
    color: #FF5F5F;
    font-size: 18px;
    line-height: 1.8;
    font-weight: 400;
}

@media screen and (min-width: 1025px) {
    .contents__copy {
        font-size: 22px;
    }
}

.contents__text {
    margin-top: 15px;
    font-size: 13px;
    line-height: 2;
}

.women-01.for-women__contents {
    display: flex;
    flex-direction: column;
    padding-bottom: 6rem;
}

.women-01 .for-women__image {
    order: 2;
}

.women-01 .for-women__texts {
    padding-top: 20px;
    order: 1;
}

@media screen and (min-width: 1025px) {
    .for-women__contents {
        flex-direction: row;
        gap: 30px;
        padding-bottom: 0;
    }

    .for-women__image {
        order: 2;
    }

    .for-women__texts {
        order: 1;
        padding-top: 0;
    }

    .contents__text {
        margin-top: 3.5rem;
        font-size: 13px;
        line-height: 2;
    }
}

/* points */
.for-women__points {
    background-color: #F5F5F5;
    padding-top: 64px;
    padding-bottom: 64px;
}

.points__label--title {
    display: block;
}

.points__title {
    font-size: 16px;
    text-align: center;
}

.bak-white {
    background-color: #fff;
    padding: 3px;
    font-weight: 500;
}

.points__title em {
    display: block;
    margin-top: -20px;
    font-size: 26px;
    font-weight: 500;
    font-style: normal;
}

@media screen and (min-width: 1025px) {
    .points__title em {
        display: block;
        margin-top: 0;
        font-size: 26px;
        font-weight: 500;
        font-style: normal;
    }
}

.points__title em strong {
    font-size: 46px;
    font-weight: 500;
    font-family: 'Barlow Condensed', sans-serif;
    font-style: italic;
    padding-right: 6px;
}

.points__title::after {
    content: '';
    display: block;
    border-bottom: 1px solid #FF5F5F;
    width: 67px;
    margin-inline: auto;
    margin-top: 10px;
    margin-bottom: 30px;
}

@media screen and (min-width: 1025px) {
    .points__title::after {
        content: '';
        display: block;
        border-bottom: 1px solid #FF5F5F;
        width: 67px;
        margin-inline: auto;
        margin-top: 30px;
        margin-bottom: 60px;
    }
}


.points__list {
    /* padding-right: 20px;
    padding-left: 20px; */
}

@media (min-width: 480px) {
    .points__list {
        grid-template-columns: repeat(2, 1fr);
        /* 2列レイアウト */
    }
}

@media screen and (min-width: 1025px) {
    .points__list {
        display: flex;
        flex-wrap: wrap;
    }
}

.points__list.top {
    justify-content: space-between;
}


.points__list.bottom {
    padding-top: 20px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;

}

@media screen and (min-width: 1025px) {
    .points__list.bottom {
        flex-direction: row;
    }
}

.points__list.bottom .points__item {
    max-width: 100%;
}

@media screen and (min-width: 1025px) {
    .points__list.bottom .points__item {
        max-width: 320px;
    }
}



.points__item {
    flex: 1;
    /* 高さを統一 */
    display: flex;
    flex-direction: column;
    height: auto;
    border-radius: 10px;
}

.points__item+.points__item {
    padding-top: 20px;
}

@media screen and (min-width: 1025px) {
    .points__item+.points__item {
        padding-top: 0;
        padding-left: 20px;
        box-sizing: content-box;
    }
}

@media screen and (min-width: 1025px) {
    .points__item {
        width: 32%;
    }
}

.points__item--image {
    position: relative;
    display: block;
    border-radius: 10px;
}

.points__item--image img {
    border-radius: 10px 10px 0 0;
}


.points__item--num {
    position: absolute;
    bottom: -10px;
    left: 10px;
    background-image: linear-gradient(136deg, rgba(255, 95, 95, 1), rgba(255, 153, 123, 1));
    font-family: 'Barlow Condensed', sans-serif;
    color: #fff;
    width: 42px;
    height: 42px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    font-size: 28px;
    font-weight: 100;
}

.points__item--image img {
    width: 100%;
    object-fit: cover;
}

.points__item--texts {
    background-color: #fff;
    /* flex-grow: 1; */
    display: flex;
    flex-direction: column;
    padding: 20px 20px;
    border-radius: 0 0 10px 10px;

}

.points__item--title {
    font-size: 16px;
    line-height: 1.8;
    color: #FF5F5F;
    font-weight: 600;
}

.points__item--text {
    padding-top: 10px;
    font-size: 14px;
    line-height: 1.8;
    flex-grow: 1;
}

.showers {
    padding-top: 6rem;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 20px;
    padding-bottom: 6rem;
}

@media screen and (min-width: 1025px) {
    .showers {
        flex-direction: row;
        gap: 70px;

    }
}

.showers .for-women__texts {
    max-width: 468px;
}

.for-women__beauty {
    padding-right: 20px;
    padding-left: 20px;
    padding-bottom: 4rem;
}

@media screen and (min-width: 1025px) {
    .for-women__beauty {
        max-width: 1000px;
        margin-inline: auto;
    }
}


/* point-02 */
#point02 .section__inner {
    background-color: #F5F5F5;
    padding-top: 4rem;
    padding-bottom: 4rem;
    max-width: initial;
    margin-inline: auto;
}

@media screen and (min-width: 1025px) {
    #point02 .section__inner {
        padding-top: 8rem;
        padding-bottom: 8rem;
    }
}

.machine__cards {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

@media screen and (min-width: 1025px) {
    .machine__cards {
        gap: 30px;
        max-width: 1000px;
        margin-inline: auto;
    }
}

.machine__card {
    background-color: #fff;
    padding: 15px;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

@media screen and (min-width: 1025px) {
    .machine__card {
        background-color: #fff;
        padding: 30px;
        flex-direction: row;
        gap: 50px;
    }
}

.machine-card__image {
    max-width: 376px;
}

.machine-card__texts {}

.machine-card__title {
    font-size: 18px;
    color: #FF5F5F;
    padding-bottom: 30px;
    border-bottom: 1px solid #ddd;
}

@media screen and (min-width: 1025px) {
    .machine-card__title {
        font-size: 20px;
        padding-bottom: 3rem;
    }
}

.machine-card__text {
    margin-top: 2rem;
    font-size: 13px;
    line-height: 2;
    margin-bottom: 2rem;
}

@media screen and (min-width: 1025px) {
    .machine-card__text {
        margin-top: 3rem;
    }
}

.machine-card__effect {
    display: block;
    background-color: #FF5F5F;
    padding: 10px;
    color: #fff;
    font-weight: 600;
    text-align: center;
}

.effect__list {
    padding-top: 3rem;
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    flex-wrap: wrap;
    display: flex;
    gap: 10px;
}

@media screen and (min-width: 1025px) {
    .effect__list {
        padding-top: 3rem;
        padding-bottom: 3rem;
        align-items: center;
        flex-wrap: wrap;
        display: flex;
    }
}

.effect__item {
    width: 48%;
    font-size: 13px;
    position: relative;
    padding-left: 2rem;
    margin-top: 1rem;
}

@media screen and (min-width: 1025px) {
    .effect__item {
        width: 32%;
        font-size: 13px;
        position: relative;
        padding-left: 2rem;
        margin-top: 1rem;
    }
}

.effect__item::before {
    content: '';
    position: absolute;
    display: inline-block;
    z-index: 2;
    top: .2em;
    left: .4em;
    width: 7px;
    height: 3px;
    border-left: 1px solid #FF5F5F;
    border-bottom: 1px solid #FF5F5F;
    transform: rotate(-45deg);
}

.effect__item .box {
    position: absolute;
    content: '';
    border: 1px solid #D9D9D9;
    background-color: #fff;
    width: 13px;
    height: 13px;
    left: 0;
}

.effect-caution {
    display: block;
    font-size: 12px;
    font-weight: 200;
    line-height: 1.4;
    margin-left: auto;
    padding-top: 2rem;
    text-align: center;
}

@media screen and (min-width: 1025px) {
    .effect-caution {
        display: block;
        font-size: 10px;
        font-weight: 200;
        line-height: 1.5;
        margin-left: auto;
        padding-bottom: 2rem;
        text-align: left;
    }
}

.treatment-part {
    display: block;
    padding-top: 13px;
    padding-bottom: 13px;
    border-top: 1px solid #ddd;
    border-bottom: 1px solid #ddd;
    font-size: 13px;
    text-align: center;
    margin-top: 20px;
}

@media screen and (min-width: 1025px) {
    .treatment-part {
        display: block;
        padding-top: 13px;
        padding-bottom: 13px;
        border-top: 1px solid #ddd;
        border-bottom: 1px solid #ddd;
        font-size: 15px;
        text-align: center;
    }
}

/* 料金表 */
.salon-price {
    background-color: #F5F5F5;
}

.price-table__titles {
    max-width: 1000px;
    margin-inline: auto;
    border-bottom: 1px solid #BEBEBE;
}

.price-table__titles::after {
    content: '';
    display: block;
    width: 270px;
    margin-inline: auto;
    border-bottom: 2px solid #FF5F5F;
}

.price-table__title {
    text-align: center;
    font-size: 22px;
    color: #FF5F5F;
    line-height: 1.8;
    padding-bottom: 40px;
}

.price-table__title em {
    font-weight: 700;
    font-style: normal;
}

.price-table__wrap {
    width: 100%;
    margin-inline: auto;
    /* position: relative; */
}

.price-table__image {
    width: 742px;
    margin-inline: auto;
}

@media screen and (min-width: 1025px) {
    .price-table__image {
        width: 1000px;
    }
}

/* set */
.set-table_wrap {
    /* padding-top: 80px; */
    max-width: 1000px;
    margin-inline: auto;
    padding-bottom: 80px;
    padding-right: 20px;
    padding-left: 20px;

}

.set-table__titles {
    text-align: center;
    padding-bottom: 30px;

}

.set-table__title--op {
    position: relative;
    padding: 1rem 1.5rem;
    font-size: 16px;
    text-align: center;
    color: #FF5F5F;
}

.set-table__title--op::before,
.set-table__title--op::after {
    position: absolute;
    top: 0.8rem;
    height: 1.8rem;
    content: '';
}

.set-table__title--op::before {
    border-left: solid 1px;
    left: 0;
    transform: rotate(-30deg);
}

.set-table__title--op::after {
    border-right: solid 1px;
    right: 0;
    transform: rotate(30deg);
}

.set-table__title {
    text-align: center;
    font-size: 22px;
    color: #FF5F5F;
    line-height: 1.8;
}

.set-table__title span {
    font-size: 30px;
    font-weight: 600;
    padding: 3px 7px;
    background-color: #fff;
}

@media screen and (min-width: 1025px) {
    .set-table__title span {
        padding: 3px 10px;
    }
}

.set-table__image {}

.lesson-genre {
    padding-bottom: 65px;
}

/* programs */
.programs__title {
    font-size: 22px;
    color: #FF5F5F;
    text-align: center;
    line-height: 1.5;
    position: relative;
    width: max-content;
    margin-inline: auto;
    padding-right: 20px;
    padding-left: 20px;
}

.programs__title::before,
.programs__title::after {
    position: absolute;
    top: 0.8rem;
    height: 6rem;
    content: '';
}

.programs__title::before {
    border-left: solid 2px;
    left: 0;
    transform: rotate(-20deg);
}

.programs__title::after {
    border-right: solid 2px;
    right: 0;
    transform: rotate(20deg);
}

/* プログラムリストのコンテナ */
.program__list {
    max-width: 100%;
    margin-inline: auto;
    padding-top: 40px;
    /* padding-right: 20px; */
    /* padding-left: 20px; */
    display: flex;
    flex-wrap: wrap;
    column-gap: 20px;
    row-gap: 40px;
    justify-content: center;
    /* ★アイテムを中央揃えにする */
}

/* 1025px以上の画面幅でのプログラムリストのスタイル */
@media screen and (min-width: 1025px) {
    .program__list {
        max-width: 1000px;
        margin-inline: auto;
        padding-top: 40px;
        display: flex;
        flex-wrap: wrap;
        column-gap: 20px;
        row-gap: 60px;
    }
}

/* プログラムアイテムのスタイル */
.program__item {
    flex-grow: 0;
    /* アイテムが伸びるのを防ぎます */
    flex-shrink: 0;
    /* アイテムが縮むのを防ぎます */
    /* モバイル（2カラム）の幅を計算 */
    width: calc((100% - 0px) / 1);
    /* (100% - 1 * column-gap) / 2 */

    box-sizing: border-box;
    /* paddingとborderをwidthに含める */
    /* 元々あった装飾を保持 */
    /* flex-grow: 1;  元のflex-grow: 1 は削除し、flex-grow: 0 を使用 */
    /* width: 50%;     元のwidth: 50% は calc() に置き換え */
}

@media screen and (min-width: 1025px) {
    .program__item {
        /* デスクトップ（4カラム）の幅を計算 */
        width: calc((100% - 60px) / 4);
        /* (100% - 3 * column-gap) / 4 */
        /* 元々あった装飾を保持 */
        /* flex-grow: 1;  元のflex-grow: 1 は削除し、flex-grow: 0 を使用 */
        /* width: 20%;     元のwidth: 20% は calc() に置き換え */
    }
}

/* 元々あった装飾を保持 */
.program__label {
    text-align: center;
}

.program__title {
    display: block;
    padding-top: 20px;
    text-align: center;
    font-size: 18px;
    font-weight: 500;
    color: #FF5F5F;
}

.program__text {
    padding-top: 20px;
    font-size: 13px;
    font-weight: 500;
    line-height: 1.8;
    text-align: left;
}


/* point03 */
#point03 {}

.section__read {
    padding-top: 4rem;
    padding-right: 20px;
    padding-left: 20px;
}

@media screen and (min-width: 1025px) {
    .section__read {
        padding-top: 6rem;
    }
}

.section__read {}

.section__read--text {
    font-size: 16px;
    line-height: 1.8;
    text-align: center;
    font-weight: 400;
}

.section__read--caution {
    display: block;
    padding-top: 3rem;
    font-size: 11px;
    font-weight: 200;
    text-align: center;
}

.kids-contents {
    padding-top: 4rem;
    display: flex;
    flex-direction: column;
    gap: 30px;
    padding-bottom: 4.8rem;
}

@media screen and (min-width: 1025px) {
    .kids-contents {
        flex-direction: row;
        padding-top: 7rem;
        gap: 68px;
        padding-bottom: 4.8rem;
    }
}

.kids-contents__image {
    width: 100%;
}

.kids-contents__texts {}

.kids-contents__texts-wrap {
    padding-top: 3rem;
    display: flex;
    gap: 30px;
}

.kids-contents__texts--icon {
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 10px;
    border-radius: 50%;
    background-color: #FF5F5F;
    color: #fff;
    font-weight: 400;
    width: 46px;
    height: 46px;
    flex-shrink: 0;
    letter-spacing: 0.08em;
}

.kids-contents__texts--text {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 0.05em;
}

.kids-table {
    padding-bottom: 80px;
}

.kids-table table {
    width: 100%;
    border: 1px solid #DDDDDD;
}

.kids-table {
    font-size: 12px;
    font-weight: 400;
}

@media screen and (min-width: 1025px) {
    .kids-table {
        font-size: 14px;
    }
}

.kids-table th {
    padding: 18px;
    background-color: #F2F2F2;
}


.kids-table th,
.kids-table td {
    border: 1px solid #DDDDDD;

}

.kids-table.sp th {
    width: 40%;
    line-height: 1.6;
}

.kids-table.sp td {
    width: 60%;
    line-height: 1.6;

}

/* pint04 */
#point04 {
    background-color: #F5F5F5;
    padding-bottom: 60px;
}

@media screen and (min-width: 1025px) {
    #point04 {
        padding-bottom: 120px;
    }
}

#point04 .section__read {
    position: relative;
    padding-top: 4rem;
    padding-bottom: 4rem;
}

@media screen and (min-width: 1025px) {
    #point04 .section__read {
        padding-bottom: 8rem;
    }
}

#point04 .section__read--image {
    position: absolute;
    width: 80px;
    height: 80px;
    right: 0;
    top: -4rem;
}

@media screen and (min-width: 1025px) {
    #point04 .section__read--image {
        width: 145px;
        height: 145px;
        right: 0;
        top: -4rem;
    }
}

.lesson__list {
    display: flex;
    flex-direction: column;
    gap: 30px;
}

@media screen and (min-width: 1025px) {
    .lesson__list {
        flex-direction: row;
        gap: 8px;
    }
}

.lesson__item {}

.lesson__title {
    font-size: 22px;
    padding-bottom: 2rem;
    color: #FF5F5F;
    font-weight: 500;
    text-align: center;
}

.customer {
    padding-top: 4rem;
}

/* customer */
.customer__label {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
}

@media screen and (min-width: 1025px) {
    .customer__label {
        max-width: 1000px;
        margin-inline: auto;
        text-align: center;
        padding-top: 4rem;
        padding-bottom: 6rem;
        border-bottom: 1px solid #ddd;
    }
}

.customer__title {
    position: relative;

}

.customer__title img {
    max-width: 680px;
    margin-inline: auto;
}



@media screen and (min-width: 1025px) {
    .customer__title::before {
        content: "CUSTOMERS' VOICES";
        /* 背景文字 */
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        font-family: 'Barlow Condensed', sans-serif;
        font-size: 45px;
        /* 背景文字を大きく */
        font-style: italic;
        font-weight: 100;
        letter-spacing: 0.08em;
        color: rgba(255, 182, 193, 0.2);
        /* 薄いピンクの背景文字 */
        white-space: nowrap;
        z-index: 0;
        /* 前面の文字より後ろ */
    }
}

@media screen and (min-width: 600px) {
    .customer__title::before {
        font-size: 65px;
    }
}

@media screen and (min-width: 1025px) {
    .customer__title::before {
        font-size: 125px;
    }
}


.customer__inner {
    max-width: 100%;
    padding-right: 2rem;
    padding-left: 2rem;
    margin-inline: auto;
}

@media screen and (min-width: 1025px) {
    .customer__inner {
        max-width: 1000px;
        margin-inline: auto;
    }
}

.customer__list {
    padding-top: 4rem;
    display: flex;
    flex-direction: column;
    gap: 30px;
}

@media screen and (min-width: 1025px) {
    .customer__list {
        padding-top: 6rem;
        display: flex;
        flex-direction: column;
        gap: 64px;
    }
}

.customer__item {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media screen and (min-width: 1025px) {
    .customer__item {
        display: flex;
        flex-direction: row;
        gap: 70px;
    }
}

.customer__item:nth-child(even) {
    flex-direction: column;
}

@media screen and (min-width: 1025px) {
    .customer__item:nth-child(even) {
        flex-direction: row-reverse;
    }
}


.customer__image {
    width: 100%;
    max-width: 200px;
    margin-inline: auto;
    flex-shrink: 0;
}

@media screen and (min-width: 1025px) {
    .customer__image {
        width: 276px;
        flex-shrink: 0;
    }
}


.customer__texts {}

.customer__copy {
    font-size: 18px;
    color: #FF5F5F;
    line-height: 1.8;
    font-weight: 400;
    text-align: center;
}

@media screen and (min-width: 1025px) {
    .customer__copy {
        font-size: 22px;
        text-align: left;
    }
}

.customer__text {
    padding-top: 15px;
    font-size: 13px;
    line-height: 1.8;
}

@media screen and (min-width: 1025px) {
    .customer__text {
        padding-top: 26px;
    }
}

/* footer-banner */
.for-women__banner {
    margin-inline: auto;
}

.for-women__banner-box {
    position: relative;
}

.for-women__banner-image {
    width: 100%;
    z-index: 0;

}

.cta__list {
    width: 100%;
    padding-right: 20px;
    padding-left: 20px;
    position: absolute;
    display: flex;
    flex-direction: column;
    z-index: 2;
    bottom: 46px;
    gap: 10px;
}

@media screen and (min-width: 1025px) {
    .cta__list {
        width: 40%;
        max-width: 315px;
        position: absolute;
        display: flex;
        flex-direction: column;
        z-index: 2;
        right: 36px;
        bottom: 46px;
        gap: 10px;
    }
}

.cta__item {
    width: 100%;
    position: relative;

}

.cta__link {
    display: block;
    text-align: center;
    padding-top: 22px;
    padding-bottom: 22px;
    border-radius: 32px;
    font-size: 18px;
    font-weight: 500;
}

.cta__link .arrow-right {
    display: inline-block;
    position: absolute;
    top: 16px;
    right: 2rem;
    width: 28px;
    height: 28px;
    border-radius: 50%;
    background-color: #FF997B;
    z-index: 1;
}

.cta__link .arrow-right::after {
    content: '';
    position: absolute;
    width: 8px;
    height: 8px;
    border-top: #fff 1px solid;
    border-right: #fff 1px solid;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
    transition: all 0.3s;
    z-index: 2;
    top: 50%;
    left: 47%;
    transform: translate(-50%, -50%) rotate(45deg);
}

.btn-entry a {
    background-color: #fff;
}

.btn-trial a {
    border: 1px solid #fff;
    color: #fff;
}

.btn-trial .arrow-right {
    background-color: #fff;
}

.btn-trial .arrow-right::after {
    border-color: #FF997B;
}

/* 店舗紹介 */
.store.gray-back {
    margin-top: 6rem;
    background: #F5F5F5 !important;
}

.footer-line__area--sub {
    margin-top: 0;
}

/* .price-table__wrap {
    overflow: hidden;
} */

.tableArea img {
    max-width: 75%;
    padding-bottom: 20px;
}


@media screen and (min-width: 1025px) {
    .tableArea img {
        max-width: 100%;
        width: 1080px;
        padding-bottom: 20px;
        object-fit: cover;
    }
}



/* faq */
.women-faq {
    padding-top: 90px;

}

.women-faq__title {}

.women-faq__inner {
    background-color: #EDEDED;
    padding-bottom: 60px;
    padding-right: 20px;
    padding-left: 20px;
}

@media screen and (min-width: 1025px) {
    .women-faq__inner {
        background-color: #EDEDED;
        padding-bottom: 90px;
        padding-right: 20px;
        padding-left: 20px;
    }
}

.women-faq__read {
    padding-top: 40px;
    max-width: 600px;
    margin-inline: auto;
    padding-bottom: 40px;
}

@media screen and (min-width: 1025px) {
    .women-faq__read {
        padding-top: 60px;
        max-width: 600px;
        margin-inline: auto;
        padding-bottom: 60px;
    }
}

.women-faq__read--text {
    font-size: 14px;
    font-weight: 500;
    line-height: 2;
    text-align: center;
}

@media screen and (min-width: 1025px) {
    .women-faq__read--text {
        font-size: 15px;
        font-weight: 500;
        line-height: 2;
        text-align: center;
    }
}

.women-faq__read--mark {
    color: #fff;
    background-color: #FF5F5F;
    font-weight: 500;
}

.women-faq__list {
    width: 100%;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media screen and (min-width: 1025px) {
    .women-faq__list {
        max-width: 1000px;
        margin-inline: auto;
        gap: 40px;
    }
}

.women-faq__item+.women-faq__item {
    padding-top: 10px;
}

.women-faq__item {
    display: flex;
    flex-direction: column;
    gap: 20px;
}

@media screen and (min-width: 1025px) {
    .women-faq__item {
        gap: 30px;
    }
}



@media screen and (min-width: 1025px) {
    .women-faq-q {
        display: flex;
        align-items: flex-end;
        gap: 60px;
    }
}

.women-faq-q__icon {
    width: 100px;
}

@media screen and (min-width: 1025px) {
    .women-faq-q__icon {
        width: 130px;
        height: 155px;
    }
}

.women-faq-q__contents {
    padding: 25px;
    background-color: #fff;
    border-radius: 10px;
    position: relative;
}

@media screen and (min-width: 1025px) {
    .women-faq-q__contents {
        padding: 30px;
    }
}

.women-faq-q__contents::before {
    content: '';
    position: absolute;
    top: -20px;
    left: 35%;
    background: url(../img/faq-white.png) center center no-repeat;
    background-size: cover;
    width: 55px;
    height: 26px;
    transform: rotate(-90deg) scale(-1, 1);

}

@media screen and (min-width: 1025px) {
    .women-faq-q__contents::before {
        content: '';
        position: absolute;
        top: 44px;
        left: -35px;
        background: url(../img/faq-white.png) center center no-repeat;
        background-size: cover;
        width: 55px;
        height: 26px;
        transform: initial;
    }


}

.women-faq-q__contents--text {
    font-size: 18px;
    line-height: 1.6;
    font-weight: 600;
    color: #FE6262;

}

@media screen and (min-width: 1025px) {
    .women-faq-q__contents--text {
        font-size: 20px;
        line-height: 1.8;
    }
}


@media screen and (min-width: 1025px) {
    .women-faq-a {
        display: flex;
        flex-direction: row-reverse;
        flex-wrap: nowrap;
        gap: 30px;
        margin-left: auto;
    }
}

.women-faq-a__icon {
    width: 120px;
    margin-left: auto;
}

@media screen and (min-width: 1025px) {
    .women-faq-a__icon {
        width: 166px;
        margin-left: initial;
    }

}

.women-faq-a__contents {
    width: 100%;
    padding: 30px;
    background-color: #fff;
    border-radius: 10px;
    position: relative;
}

@media screen and (min-width: 1025px) {
    .women-faq-a__contents {
        width: 70%;
    }
}

.women-faq-a__contents::after {
    content: '';
    position: absolute;
    background: url(../img/faq-white.png) center center no-repeat;
    background-size: cover;
    transform: rotate(-270deg);
    width: 55px;
    height: 26px;
    top: -20px;
    left: 45%;
}

@media screen and (min-width: 1025px) {
    .women-faq-a__contents::after {
        content: '';
        position: absolute;
        top: 44px;
        right: -35px;
        left: initial;
        background: url(../img/faq-white.png) center center no-repeat;
        background-size: cover;
        transform: rotate(0deg) scale(-1, 1);
        width: 55px;
        height: 26px;
    }
}


.women-faq-a__contents--heading {
    font-size: 18px;
    line-height: 1.8;
    font-weight: 600;
    background-image: linear-gradient(transparent 70%, #D7F1F0 70%);
    background-repeat: no-repeat;
    background-position: bottom;
}

@media screen and (min-width: 1025px) {
    .women-faq-a__contents--heading {
        font-size: 22px;
    }

}

.women-faq-a__text {
    padding-top: 15px;
    font-size: 13px;
    line-height: 1.8;
}



.faq-checklist {
    padding-top: 15px;
}

@media screen and (min-width: 1025px) {
    .faq-checklist {
        padding-top: 20px;
    }
}

.faq-checkitem {
    position: relative;
    padding-left: 20px;
    font-size: 13px;
    line-height: 1.6;
    font-weight: 500;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    flex-wrap: wrap;
}

@media screen and (min-width: 1025px) {
    .faq-checkitem {
        font-size: 13px;
        align-items: center;

    }
}

.faq-checkitem+.faq-checkitem {
    padding-top: 10px;
}

.faq-checkitem::before {
    content: '';
    position: absolute;
    display: block;
    z-index: 2;
    top: .5em;
    left: .4em;
    width: 7px;
    height: 3px;
    border-left: 2px solid #9AE3DF;
    border-bottom: 2px solid #9AE3DF;
    transform: rotate(-45deg);
}

.faq-checkitem:nth-child(n+2)::before {
    top: 17px;
}

@media screen and (min-width: 1025px) {
    .faq-checkitem::before {
        content: '';
        position: absolute;
        display: block;
        z-index: 2;
        /* top: .5em; */
        left: .4em;
        width: 7px;
        height: 3px;
        border-left: 2px solid #9AE3DF;
        border-bottom: 2px solid #9AE3DF;
        transform: rotate(-45deg);
    }
}


/* personal */

#point03 {
    background-color: #F5F5F5;
    padding-bottom: 60px;
}

@media screen and (min-width: 1025px) {
    #point03 {
        padding-bottom: 80px;
    }
}

#point03 .section__read {
    padding-bottom: 40px;
}

@media screen and (min-width: 1025px) {
    #point03 .section__read {
        padding-bottom: 60px;
    }
}

.for-women__personal .personal__contents {
    display: flex;
    flex-wrap: wrap;
    gap: 50px;
    align-items: center;
    justify-content: space-between;
    padding: 0;
}

@media screen and (min-width: 1025px) {
    .for-women__personal .personal__contents {}
}

.personal__image,
.personal__image--second {
    flex: 1 1 45%;
    text-align: center;
}

.personal__points {
    flex: 1 1 50%;
    position: relative;
}

.personal__catch {
    font-weight: 600;
    color: #f15b6c;
    font-size: 16px;
    line-height: 1.6;
    order: 2;
    margin-bottom: 20px;
}

@media screen and (min-width: 1025px) {
    .personal__catch {
        font-size: 16px;
        order: 1;
    }
}

.personal__two-column {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 10px;
    text-align: center;
}

.personal__two-column img {
    width: 30%;
}

@media screen and (min-width: 1025px) {
    .personal__two-column {
        flex-direction: row;
        justify-content: center;
        align-items: center;
        text-align: left;
        gap: 20px;
    }

    .personal__two-column .personal__catch {
        /*max-width: 50%;*/
    }

    .personal__two-column img {
        max-width: 25%;
        height: auto;
        order: 2;
    }
}


.personal__list {
    list-style: none;
    padding-left: 0;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 15px;
}

.personal__list li {
    width: 100%;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px;
    color: #f15b6c;
    border: 1px solid #f15b6c;
    border-radius: 10px;
    text-align: center;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.6;
}

@media screen and (min-width: 1025px) {
    .personal__list li {
        width: 48%;
    }
}

.personal__list li::before {
    content: "✓";
    position: absolute;
    color: #f15b6c;
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
    font-weight: 600;
    top: -25%;
    left: 5%;
    font-size: 15px;
    display: inline-block;
}

@media screen and (min-width: 1025px) {
    .personal__list li::before {
        top: -15%;
        left: 5%;
    }
}

.personal__trainer {
    position: absolute;
    top: 0;
    right: 0;
}

.personal__trainer img {
    margin-top: 1rem;
    max-width: 100px;
}

.personal__bottom {
    display: flex;
    flex-wrap: wrap;
    gap: 2rem;
    margin-top: 2rem;
    align-items: center;
}

.personal__text {
    flex: 1 1 50%;
    margin-top: 2rem;
    font-size: 13px;
    line-height: 2;
}




/* footer */
.footer-line {
    margin-top: 0;
    padding-top: 0;
}

.footer-line__contents {
    margin-top: 0;
}

.footer-line__wrap {
    padding-top: 20px;
}

@media screen and (min-width: 1025px) {
    .footer-line__wrap {
        padding-top: 60px;
    }
}

.for-women__banner {
    width: 100%;
    margin-inline: auto;
    position: relative;
    padding-right: 20px;
    padding-left: 20px;
}

@media screen and (min-width: 1025px) {
    .for-women__banner {
        width: calc(1080px + 30px* 2);
        max-width: 100%;
        margin-inline: auto;
        position: relative;
        padding-right: 0;
        padding-left: 0;
    }
}

.icon1 {
    position: absolute;
    left: -40px;
    bottom: 0;
    max-width: 330px;
}

.icon2 {
    position: absolute;
    top: -20px;
    right: 0;
}


/* Scroll Hint */
.tableArea {
    max-width: 100%;
    margin: 0 0 6rem 3rem;
    overflow: auto;
    /*枠からはみ出たらスクロールさせる、はみ出なかった場合は何もしない*/
}

@media screen and (min-width: 1025px) {

    .tableArea {
        max-width: 1000px;
        margin: 0 auto 6rem;
    }
}

.scroll-hint.is-right-scrollable {
    background: none !important;
}

.header-sub__list .header-sub__item:first-child::after {
    content: '';
    background: none;
}


.header-sub__list .header-sub__item.women::after {
    content: "";
    background-color: #FF7168;
    width: 14px;
    height: 14px;
    border-radius: 50%;
    left: -18px;
}

.header-sub__list .header-sub__item.beginner::after {
    content: "";
    background: url(../img/icon-beginner.png) no-repeat center;
    background-size: contain;
    width: 15px;
    height: 15px;
    left: -18px;
}

.menu-nav__item--banner a {
    border-bottom: none;
    padding: 0;
}

.menu-nav__item--banner {
    padding-top: 15px;
}

.menu-nav__item:first-child .menu-nav__link:after,
.menu-nav__item:nth-child(2) .menu-nav__link:after {
    content: none;
}