@charset "UTF-8";

/* ========================================
    main
======================================== */
body {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "Noto Sans JP", "ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
}

p {
    font-size: 28px;
    line-height: 1.7;
}

@media screen and (max-width: 750px) {
    p {
        font-size: 3.37vw;
    }
}

.wrap750 {
    max-width: 750px;
    margin: 0 auto;
}

.wrap690 {
    max-width: 690px;
    margin: 0 auto;
}

.wrap630 {
    max-width: 630px;
    margin: 0 auto;
}

.wrap580 {
    max-width: 580px;
    margin: 0 auto;
}

.wrap500 {
    max-width: 500px;
    margin: 0 auto;
}

.wrap460 {
    max-width: 460px;
    margin: 0 auto;
}

.wrap430 {
    max-width: 430px;
    margin: 0 auto;
}

.mt-10 {
    margin-top: -10px;
}

.mt-60 {
    margin-top: -60px;
}

@media screen and (max-width: 750px) {
    .mt-10 {
        margin-top: -1.33vw;
    }

    .mt-60 {
        margin-top: -8vw;
    }
}

.bg_cream {
    background-color: #f8f8e5;
}

.bg_gray {
    background-color: #f4f4f4;
}

.bg_sky {
    background-color: #eff9ff;
}

@media screen and (max-width: 750px) {
    .pt90 {
        padding-top: 12vw !important;
    }

    .pb90 {
        padding-bottom: 12vw !important;
    }

    .mt90 {
        margin-top: 12vw !important;
    }

    .pt80 {
        padding-top: 10.67vw !important;
    }

    .mb80 {
        margin-bottom: 10.67vw !important;
    }

    .pb80 {
        padding-bottom: 10.67vw !important;
    }

    .pb70 {
        padding-bottom: 9.33vw !important;
    }

    .mb70 {
        margin-bottom: 9.33vw !important;
    }

    .pt60 {
        padding-top: 8vw !important;
    }

    .mt60 {
        margin-top: 8vw !important;
    }

    .pt50 {
        padding-top: 6.67vw !important;
    }

    .pb50 {
        padding-bottom: 6.67vw !important;
    }

    .pt40 {
        padding-top: 5.33vw !important;
    }

    .pb40 {
        padding-bottom: 5.33vw !important;
    }

    .mb40 {
        margin-bottom: 5.33vw !important;
    }

    .pb30 {
        padding-bottom: 4vw !important;
    }
}

/* ========================================
    header
======================================== */
#lp_202204 .lp_header {
    padding: 0;
    position: absolute;
    top: auto;
}

@media screen and (max-width: 750px) {
    #lp_202204 .p-header_logo {
        margin-left: 2.67vw;
    }
}


/* ========================================
    fv
======================================== */

/* ========================================
    coupon
======================================== */
/*クーポン箇所デザイン　始まり*/
.web_coupon {
    background: url(../img/tcb-datsumou_01/bg_coupon02-1.png) no-repeat top center;
    padding: 1220px 0 150px;
}

.change_btn {
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.web_coupon--fv {
    background: url(../img/tcb-datsumou_01/bg_camp_summer.png) no-repeat top center;
    padding: 1000px 0 100px;
}

.web_coupon--fv .limit_btn {
    padding-top: 160px;
}

.web_coupon--fv .box_countdown {
    padding-bottom: 10px;
}

.web_coupon--02 {
    background: url(../img/az_datsumou/bg_coupon02-2.png) no-repeat top center;
    padding-bottom: 160px;
}

.web_coupon--short {
    background: url(../img/tcb-datsumou_01/bg_coupon03.png) no-repeat top center;
    padding: 680px 0 100px;
}

@media screen and (max-width: 750px) {
    .web_coupon {
        background-size: 98% auto;
        padding: 158vw 0 10vw;
    }

    .web_coupon--fv {
        padding: 158vw 0 6vw;
    }

    .web_coupon--fv .limit_btn {
        padding-top: min(20px, calc(calc(20 / 750) * 65vw));
        padding-bottom: min(100px, calc(calc(100 / 750) * 65vw));
    }

    .web_coupon--fv .box_countdown {}

    .web_coupon--02 {
        padding: 143vw 0 14vw;
    }

    .web_coupon--short {
        padding: 83vw 0 4vw;
    }

}

@media screen and (max-width: 640px) {
    .web_coupon {
        z-index: 2 !important;
    }

    .fv_area-inner img {
        height: auto;
    }
}

@media screen and (max-width: 767px) {
    .limit_btn {
        padding: clamp(20px, 4vw, 40px) clamp(15px, 1.5vw, 15px) clamp(35px, 7vw, 70px);
    }
}

/*クーポン箇所デザイン　終わり*/

/*カウントダウンデザイン　始まり*/
.box_countdown {
    font-family: "游ゴシック体", "YuGothic", "游ゴシック", "Yu Gothic", "Noto Sans JP", "ProN W3", "Hiragino Kaku Gothic ProN", sans-serif;
    text-align: center;
    border-radius: 50px;
    display: block;
    align-items: center;
    justify-content: center;
    padding: 10px 15px;
    box-sizing: border-box;
    position: relative;
    z-index: 10;
}

/* 終了まであと～の文言あるとき
.box_countdown p {
  color: #7accff;
}

.box_countdown p {
  font-size: 20px;
  text-align: center;
}
*/
.box_countdown .yycountdown-box {
    margin-left: 10px;
}

.box_countdown .yyc-day,
.box_countdown .yyc-hou,
.box_countdown .yyc-min,
.box_countdown .yyc-sec {
    font-size: 50px;
    font-weight: bold;
    background: none !important;
    color: #ff4e00 !important;
    padding: 1.5px 6px;
}

.box_countdown .yyc-day-text,
.box_countdown .yyc-hou-text,
.box_countdown .yyc-min-text,
.box_countdown .yyc-sec-text {
    color: #ff4e00 !important;
    font-size: 38px;
    font-weight: bold;
    margin: 0 3px;
}

@media screen and (max-width: 767px) {
    .box_countdown {
        max-width: 95%;
        padding: 5px 7px;
    }

    .box_countdown .yycountdown-box {
        margin-left: 5px;
    }

    .box_countdown .yyc-day,
    .box_countdown .yyc-hou,
    .box_countdown .yyc-min,
    .box_countdown .yyc-sec {
        font-size: 25px !important;
        padding: 0 3px;
        border-radius: 3px;
    }

    .box_countdown .yyc-day-text,
    .box_countdown .yyc-hou-text,
    .box_countdown .yyc-min-text,
    .box_countdown .yyc-sec-text {
        font-size: 20px !important;
        margin: 0 2px;
    }
}

/*カウントダウンデザイン　終わり*/


/* ========================================
    price_all 総額表示
======================================== */
.price_all_bg01 {
    background: #f4f4f4 url(../img/tcb-datsumou_01/bg_speech.png) no-repeat top center/cover;
    padding: 70px 0 120px;
}

@media screen and (max-width: 750px) {
    .price_all_bg01 {
        padding: 9.33vw 0 16vw;
    }
}

.price_all_bg02 {
    background-color: #f183a0;
    padding: 70px 0 100px;
}

@media screen and (max-width: 750px) {
    .price_all_bg02 {
        padding: 9.33vw 0 13.33vw;
    }
}

.price_all_bg03 {
    background-color: #fffbe5;
    padding: 90px 0 70px;
    position: relative;
}

@media screen and (max-width: 750px) {
    .price_all_bg03 {
        padding: 12vw 0 9.33vw;
    }
}

.price_all_but_bg {
    background: #f183a0 url(../img/tcb-datsumou_01/bg_but.png) no-repeat top center/contain;
    height: 112px;
    position: relative;
}

@media screen and (max-width: 750px) {
    .price_all_but_bg {
        height: 14.93vw;
    }
}

.price_all_but_img {
    max-width: 290px;
    position: absolute;
    bottom: -120px;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}

@media screen and (max-width: 750px) {
    .price_all_but_img {
        bottom: -16vw;
        width: 38.67vw;
    }
}

.price_all_more_img {
    max-width: 305px;
    position: absolute;
    top: 5px;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}

@media screen and (max-width: 750px) {
    .price_all_more_img {
        width: 40.67vw;
        top: 0.67vw;
    }
}

.price_all_txtBox {
    background-color: #ffffe4;
    padding: 40px 35px;
    margin: 50px 0 20px;
}

@media screen and (max-width: 750px) {
    .price_all_txtBox {
        padding: 5.33vw 4.67vw;
        margin: 6.67vw 0 2.67vw;
    }
}

.price_all_txtBox p {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    letter-spacing: -2.5px;
    line-height: 1.6;
}

@media screen and (max-width: 750px) {
    .price_all_txtBox p {
        font-size: 4.27vw;
    }
}

.price_all_txtBox p span {
    color: #e11526;
    font-size: 41px;
    font-weight: bold;
    letter-spacing: -1px;
}

@media screen and (max-width: 750px) {
    .price_all_txtBox p span {
        font-size: 5.47vw;
    }
}


/* ========================================
    attention こんなクリニックは注意
======================================== */
.attention_list {
    padding-top: 50px;
}

@media screen and (max-width: 750px) {
    .attention_list {
        padding-top: 6.67vw;
    }
}

.attention_list li {
    margin-bottom: 40px;
}

@media screen and (max-width: 750px) {
    .attention_list li {
        margin-bottom: 5.33vw;
    }
}

.attention_acc_head {
    background-color: #2f2f2f;
    padding: 30px;
    min-height: 138px;
    display: flex;
    align-items: center;
    position: relative;
}

@media screen and (max-width: 750px) {
    .attention_acc_head {
        padding: 4vw;
        min-height: auto;
        height: 19.07vw;
    }
}

.attention_acc_head::before {
    content: "";
    width: 1px;
    height: 25px;
    background-color: #fff;
    position: absolute;
    right: 42px;
    top: 42%;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    transition: 0.2s;
}

@media screen and (max-width: 750px) {
    .attention_acc_head::before {
        height: 3.33vw;
        right: 5.6vw;
    }
}

.attention_acc_head::after {
    content: "";
    width: 25px;
    height: 1px;
    background-color: #fff;
    position: absolute;
    right: 30px;
    top: 50%;
}

@media screen and (max-width: 750px) {
    .attention_acc_head::after {
        width: 3.33vw;
        right: 4vw;
    }
}

.attention_acc_head.js--accordion-open::before {
    top: 41%;
    right: 42px;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

@media screen and (max-width: 750px) {
    .attention_acc_head.js--accordion-open::before {
        right: 5.6vw;
    }
}

.attention_acc_head p {
    color: #fff;
    font-size: 32px;
    font-weight: bold;
    line-height: 1.3;
}

@media screen and (max-width: 750px) {
    .attention_acc_head p {
        font-size: 4.27vw;
    }
}

.attention_acc_body {
    background-color: #fff;
    padding: 40px 30px;
    border: 1px solid #2f2f2f;
    border-top: 0;
}

@media screen and (max-width: 750px) {
    .attention_acc_body {
        padding: 5.33vw 4vw;
    }
}

.attention_acc_body p {
    letter-spacing: -1px;
}

.attention_acc_body p span {
    color: #1d75a9;
}

.attention_acc_txtBox {
    background-color: #fffbe5;
    padding: 30px 25px;
    font-weight: bold;
    color: #ff6681;
    font-size: 28px;
    line-height: 1.6;
    letter-spacing: -2px;
    margin-top: 35px;
}

@media screen and (max-width: 750px) {
    .attention_acc_txtBox {
        font-size: 3.37vw;
        padding: 4vw 3.33vw;
        margin-top: 4.67vw;
        letter-spacing: -0.27vw;
    }
}



/* ========================================
    all_70off 今だけ全コース70%OFF
======================================== */
.all_70off_bg {
    background-color: #fffbe5;
}

.all_70off_bg._bgimg {
    background: #fffbe5 url(../img/tcb-datsumou_01/bg_cracker.png) no-repeat top 180px center/contain;
}

@media screen and (max-width: 750px) {
    .all_70off_bg._bgimg {
        background: #fffbe5 url(../img/tcb-datsumou_01/bg_cracker.png) no-repeat top 24vw center/contain;
    }
}

.all_70off_campaign_title p {
    text-align: center;
    font-size: 34px;
    font-weight: bold;
    color: #ff6681;
    padding: 60px 0;
}

@media screen and (max-width: 750px) {
    .all_70off_campaign_title p {
        font-size: 4.53vw;
        padding: 8vw 0;
    }
}

.all_70off_campaign_txt p {
    text-align: center;
    font-size: 34px;
    font-weight: bold;
    line-height: 1.2;
    padding-bottom: 30px;
}

@media screen and (max-width: 750px) {
    .all_70off_campaign_txt p {
        font-size: 4.53vw;
    }
}

.all_70off_campaign_txt p span {
    color: #ff6681;
    font-size: 50px;
    font-weight: bold;
}

@media screen and (max-width: 750px) {
    .all_70off_campaign_txt p span {
        font-size: 6.67vw;
    }
}

.all_70off_campaign_txt p span._black {
    color: #000;
}

.all_70off_txt01 {
    padding: 80px 0 40px;
}

@media screen and (max-width: 750px) {
    .all_70off_txt01 {
        padding: 10.67vw 0 5.33vw;
    }
}

.all_70off_txt01 p {
    text-align: center;
    font-size: 32px;
    font-weight: bold;
    line-height: 1.4;
}

@media screen and (max-width: 750px) {
    .all_70off_txt01 p {
        font-size: 4.27vw;
    }
}

.all_70off_txt01 p span._flame {
    font-size: 42px;
    color: #fff;
    background-color: #b59055;
    padding: 0 5px;
    margin: 0 6px;
}

@media screen and (max-width: 750px) {
    .all_70off_txt01 p span._flame {
        font-size: 5.6vw;
    }
}

.all_70off_txt01 p span._pink {
    color: #ff6681;
    font-size: 36px;
}

@media screen and (max-width: 750px) {
    .all_70off_txt01 p span._pink {
        font-size: 4.8vw;
    }
}

.all_70off_course img {
    margin-bottom: 20px;
}

.all_70off_txt02 p {
    font-size: 26px;
    font-weight: bold;
    line-height: 1.4;
    text-align: center;
    padding: 20px 0 80px;
    letter-spacing: 1px;
}

@media screen and (max-width: 750px) {
    .all_70off_txt02 p {
        font-size: 3.47vw;
        padding: 2.67vw 0 10.67vw;
    }
}

.all_70off_txt02 p span {
    color: #ff6681;
    font-size: 30px;
    display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .all_70off_txt02 p span {
        font-size: 4vw;
    }
}


/* ========================================
    treat 施術箇所
======================================== */
.treat_title {
    background: linear-gradient(to bottom, #bf9417, #d2b12e);
    text-align: center;
    color: #fff;
    font-size: 56px;
    font-weight: bold;
    padding: 20px;
    margin-bottom: 40px;
}

@media only screen and (max-width: 750px) {
    .treat_title {
        font-size: 7.47vw;
        padding: 2.67vw;
    }
}

.treat_title._sub {
    font-size: 43px;
    margin-bottom: 0;
}

@media only screen and (max-width: 750px) {
    .treat_title._sub {
        font-size: 5vw;
    }
}

.treat_title._sub02 {
    font-size: 30px;
    margin-bottom: 0;
}

@media only screen and (max-width: 750px) {
    .treat_title._sub02 {
        font-size: 4vw;
    }
}

.bg_treat {
    background-color: #f8f8e5;
    position: relative;
    margin-top: 85px;
    padding-bottom: 100px;
}

@media only screen and (max-width: 750px) {
    .bg_treat {
        margin-top: 11.33vw;
        padding-bottom: 13.33vw;
    }
}

.treat_title_border {
    width: 100%;
    height: 90px;
    border-radius: 20px;
    border: 4px solid #cba61f;
    background-color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}

@media only screen and (max-width: 750px) {
    .treat_title_border {
        height: 12vw;
        border-radius: 2.67vw;
        border: 0.53vw solid #cba61f;
    }

}

.treat_title_border p {
    font-size: 43px;
    font-weight: bold;
}

@media only screen and (max-width: 750px) {
    .treat_title_border p {
        font-size: 5.73vw;
    }
}

.treat_title_border p span {
    color: #cba61f;
}

.treat_img_txt_wrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding-top: 75px;
}

.treat_img_txt_wrap img {
    width: 28vw;
    max-width: 220px;
}

@media screen and (max-width: 750px) {
    .treat_img_txt_wrap {
        padding-top: 10vw;
    }

    .treat_img_txt_wrap img {
        width: 28vw;
    }
}

.treat_txtBox p {
    font-size: 26px;
    line-height: 1.7;
    letter-spacing: 1.7px;
}

@media screen and (max-width: 750px) {
    .treat_txtBox p {
        font-size: 3.37vw;
        letter-spacing: 0.23vw;
    }
}

.treat_txtBox.type01 {
    width: 385px;
}

.treat_txtBox.type02 p._readtxt {
    text-align: center;
}

.treat_txtBox p._readtxt {
    font-size: 33px;
    font-weight: bold;
    color: #c19818;
    letter-spacing: -1px;
    line-height: 1.4;
    margin-bottom: 15px;
}

@media screen and (max-width: 770px) {
    .treat_txtBox p._readtxt {
        font-size: clamp(12px, 4.5vw, 28px);
    }
}

.treat_img {
    position: relative;
}

.off_speech_img {
    position: absolute;
    right: -10px;
}

@media screen and (max-width: 750px) {
    .off_speech_img {
        width: 23%;
    }
}

.off_speech_img._off01 {
    bottom: 210px;
}

.off_speech_img._off02 {
    bottom: 230px;
}

.off_speech_img._off03 {
    bottom: 220px;
}

@media screen and (max-width: 750px) {
    .off_speech_img._off01 {
        bottom: 27vw;
    }

    .off_speech_img._off02 {
        bottom: 29vw;
    }

    .off_speech_img._off03 {
        bottom: 28vw;
    }
}

.treat_txt_line {
    text-align: center;
    font-size: 48px;
    font-weight: bold;
    display: inline-block;
    position: relative;
    z-index: 0;
    margin-bottom: 10px;
}

@media screen and (max-width: 750px) {
    .treat_txt_line {
        font-size: 6.4vw;
    }
}

.treat_txt_line::after {
    content: "";
    width: 100%;
    height: 30px;
    background-color: #fff100;
    position: absolute;
    bottom: 5px;
    left: 0;
    z-index: -1;
}

@media screen and (max-width: 750px) {
    .treat_txt_line::after {
        height: 4vw;
    }
}

.treat_imgBox {
    display: flex;
    justify-content: space-between;
}

.treat_imgBox_inner {
    width: 47.6%;
}

/* 各種オプションメニューアコーディオン */
#lp_202204 .p-sec03_acc_head {
    padding: 43px 35px;
    background-color: #cba61f;
}

@media screen and (max-width: 750px) {
    #lp_202204 .p-sec03_acc_head {
        padding: 5.73vw 4.67vw;
    }
}

#lp_202204 .p-sec03_acc_head_txt {
    text-align: left;
}


/* ========================================
   point ポイント３つ（オーダーメイド・無料・８つの理由）
======================================== */
.point_title {
    padding: 26px;
    background-color: #bc9a61;
    display: flex;
    justify-content: center;
    align-items: center;
}

@media screen and (max-width: 750px) {
    .point_title {
        padding: 3.47vw;
    }
}

.point_title p {
    text-align: center;
    font-size: 45px;
    font-weight: bold;
    color: #fff;
    line-height: 1.4;
}

@media screen and (max-width: 750px) {
    .point_title p {
        font-size: 6vw;
    }
}

.point_title.type02 p {
    line-height: 1.2;
}

.point_title p span {
    font-size: 48px;
    color: #fff100;
    letter-spacing: -2px;
    display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .point_title p span {
        font-size: 6.4vw;
    }
}

.point_title p span._big {
    font-size: 70px;
}

@media screen and (max-width: 750px) {
    .point_title p span._big {
        font-size: 9.33vw;
    }
}

.point_readtxt p {
    text-align: center;
    font-size: 34px;
    font-weight: bold;
    line-height: 1.4;
    letter-spacing: -2px;
}

@media screen and (max-width: 750px) {
    .point_readtxt p {
        font-size: 4.53vw;
    }
}

.point_readtxt p span {
    text-decoration: underline;
    text-underline-offset: -0.2em;
    text-decoration-thickness: 0.4em;
    text-decoration-color: rgba(255, 241, 0, 0.9);
    text-decoration-skip-ink: none;
}

.point_border_box {
    background-color: #fff;
    border: 1px solid #bc9a61;
    border-radius: 20px;
    padding: 18px;
}

.point_border_box p {
    color: #bc9a61;
    text-align: center;
    font-size: 30px;
    font-weight: bold;
    letter-spacing: 1px;
}

@media screen and (max-width: 750px) {
    .point_border_box p {
        font-size: 4vw
    }
}

.point_border_box p span {
    font-size: 50px;
}

@media screen and (max-width: 750px) {
    .point_border_box p span {
        font-size: 6.67vw;
    }
}

.point_reason_imgBox {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    gap: 30px 0;
}

.point_reason_imgBox img {
    width: 49%;
}


/* ========================================
   reason_price 安くできる理由
======================================== */
.reason_price_sec {
    background: url(../img/tcb-datsumou_01/reason_price_titlebg.png) no-repeat top center/contain;
    padding-top: 423px;
    position: relative;
}

@media screen and (max-width: 750px) {
    .reason_price_sec {
        padding-top: 56.4vw;
    }
}

.reason_price_title {
    position: absolute;
    height: 330px;
    width: 330px;
    right: 0;
    top: 0;
}

@media screen and (max-width: 750px) {
    .reason_price_title {
        width: 44vw;
        height: 44vw;
    }
}

.reason_price_title img {
    width: 330px;
    height: 330px;
    position: absolute;
    right: 50px;
    top: 70px;
}

@media screen and (max-width: 750px) {
    .reason_price_title img {
        width: 44vw;
        height: 44vw;
        right: 6.67vw;
        top: 9.33vw;
    }
}

.reason_price_title02 img {
    max-width: 435px;
}

@media screen and (max-width: 750px) {
    .reason_price_title02 img {
        max-width: 58vw;
    }
}


/* ========================================
   contpa 高コスパを実現
======================================== */
.bg_costpa {
    background-color: #f9f58a;
}

.costpa_title {
    background-color: #f9f58a;
}

/* ========================================
   feature TCB医療脱毛の特徴
======================================== */
.feature_subtitle {
    padding: 32px 0 26px;
    background-color: #b59055;
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}

@media screen and (max-width: 750px) {
    .feature_subtitle {
        padding: 4.27vw 0 3.47vw;
    }
}

.feature_subtitle p {
    text-align: center;
    font-size: 36px;
    font-weight: bold;
    color: #fff;
    line-height: 1.4;
}

@media screen and (max-width: 750px) {
    .feature_subtitle p {
        font-size: 4.8vw;
    }
}

.feature_subtitle p span {
    font-size: 45px;
    color: #fff100;
    letter-spacing: -2px;
    display: inline-block;
    vertical-align: middle;
}

@media screen and (max-width: 750px) {
    .feature_subtitle p span {
        font-size: 6vw;
    }
}

.feature_subtitle_num {
    max-width: 80px;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
    -webkit- transform: translateY(-50%) translateX(-50%);
}

@media screen and (max-width: 750px) {
    .feature_subtitle_num {
        width: 10.67vw;
    }
}

.feature_descBox {
    border: 3px solid #b59055;
    background-color: #fff;
    margin-bottom: 100px;
    padding-bottom: 55px;
}

@media screen and (max-width: 750px) {
    .feature_descBox {
        margin-bottom: 13.33vw;
        padding-bottom: 7.33vw;
    }
}

.feature_descBox p {
    padding: 40px 0;
}

@media screen and (max-width: 750px) {
    .feature_descBox p {
        padding: 5.33vw 0;
    }
}

.feature_descBox p span {
    color: #ff6681;
    font-weight: bold;
}

.feature_descBox p span._line {
    color: #000;
    font-weight: normal;
    text-decoration: underline;
    text-underline-offset: -0.2em;
    text-decoration-thickness: 0.4em;
    text-decoration-color: rgba(255, 241, 0, 0.9);
    text-decoration-skip-ink: none;
}

.feature_descBox p span._pink_line {
    text-decoration: underline;
    text-underline-offset: -0.2em;
    text-decoration-thickness: 0.4em;
    text-decoration-color: rgba(255, 241, 0, 0.9);
    text-decoration-skip-ink: none;
}

.feature_desc_readtxt p {
    text-align: center;
    font-size: 38px;
    font-weight: bold;
    padding: 0;
    line-height: 1.5;
}

@media screen and (max-width: 750px) {
    .feature_desc_readtxt p {
        font-size: 5.07vw;
    }
}

.feature_desc_readtxt p._line {
    text-decoration: underline;
    text-underline-offset: -0.2em;
    text-decoration-thickness: 0.8em;
    text-decoration-color: rgba(255, 241, 0, 0.5);
    text-decoration-skip-ink: none;
}

.feature_desc_readtxt p span._big {
    font-size: 45px;
    color: #000;
}

@media screen and (max-width: 750px) {
    .feature_desc_readtxt p span._big {
        font-size: 5vw;
    }
}

.feature_desc_readtxt p span._pink {
    color: #ff6681;
}

.feature_desc_readtxt p span._big_pink {
    font-size: 45px;
    color: #ff6681;
}

@media screen and (max-width: 750px) {
    .feature_desc_readtxt p span._big_pink {
        font-size: 5vw;
    }
}

/*
@media screen and (max-width: 750px) {
    #lp_202204 .p-sec01_body_movie iframe {
        width: 67vw;
        height: 37.65vw;
    }
}
*/

/* ========================================
   order オーダーメイドでご提案
======================================== */
.bg_order {
    background: radial-gradient(#ffffc0, #f8e986);
}

.order_point_wrap {
    margin-top: -25px;
    position: relative;
    z-index: 1;
}

.order_pointBox {
    background-color: #fff;
    border: 4px solid #836029;
    margin-bottom: 15px;
    padding: 26px 25px;
    display: flex;
    align-items: center;
}

@media screen and (max-width: 750px) {
    .order_pointBox {
        border: 0.53vw solid #836029;
        margin-bottom: 2vw;
        padding: 3.47vw 3.33vw;
    }
}

.order_pointBox img {
    max-width: 46px;
    margin-right: 10px;
}

@media screen and (max-width: 750px) {
    .order_pointBox img {
        width: 6vw;
    }
}

.order_pointBox p {
    font-size: 30px;
    font-weight: bold;
    vertical-align: baseline;
}

@media screen and (max-width: 750px) {
    .order_pointBox p {
        font-size: 4vw;
        letter-spacing: -0.2vw;
    }
}

.order_pointBox p span {
    color: #844604;
}

/* ========================================
   faq よくある質問
======================================== */
.faq_title {
    display: flex;
    justify-content: center;
    align-items: center;
    padding: 30px 0 25px;
}

.faq_title img {
    width: 165px;
    height: 150px;
    margin-right: 15px;
}

@media screen and (max-width: 750px) {
    .faq_title img {
        width: 22vw;
        height: auto;
        margin-right: 2vw;
    }
}

.faq_title p {
    font-size: 65px;
    font-weight: bold;
    letter-spacing: -2px;
}

@media screen and (max-width: 750px) {
    .faq_title p {
        font-size: 8.67vw;
    }
}

.faq_list li {
    margin-bottom: 30px;
}

.faq_acc_head {
    background-color: #b59055;
    display: flex;
    align-items: center;
    padding: 30px;
    position: relative;
}

@media screen and (max-width: 750px) {
    .faq_acc_head {
        padding: 4vw;
    }
}

.faq_acc_head::before {
    content: "";
    width: 2px;
    height: 25px;
    background-color: #fff;
    position: absolute;
    right: 42px;
    top: 43%;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
    transition: 0.2s;
}

@media screen and (max-width: 750px) {
    .faq_acc_head::before {
        width: 0.27vw;
        height: 3.33vw;
        right: 5.6vw;
    }
}

.faq_acc_head::after {
    content: "";
    width: 25px;
    height: 2px;
    background-color: #fff;
    position: absolute;
    right: 30px;
    top: 50%;
}

@media screen and (max-width: 750px) {
    .faq_acc_head::after {
        width: 3.33vw;
        height: 0.27vw;
        right: 4vw;
    }
}

.faq_acc_head.js--accordion-open::before {
    top: 42%;
    right: 41px;
    -webkit-transform: rotate(-90deg);
    transform: rotate(-90deg);
}

@media screen and (max-width: 750px) {
    .faq_acc_head.js--accordion-open::before {
        right: 5.47vw;
    }
}

.faq_acc_head p {
    color: #fff;
    font-size: 34px;
    line-height: 1.3;
}

@media screen and (max-width: 750px) {
    .faq_acc_head p {
        font-size: 4.53vw;
    }
}

.accordion_option {
    display: none;
}

.faq_acc_body {
    background-color: #fff;
    padding: 40px 30px;
    border: 2px solid #b59055;
    border-top: 0;
}

@media screen and (max-width: 750px) {
    .faq_acc_body {
        padding: 5.33vw 4vw;
    }
}

.faq_acc_body_inner {
    display: flex;
}

.faq_acc_body p span {
    text-decoration: underline;
    text-underline-offset: -0.2em;
    text-decoration-thickness: 0.4em;
    text-decoration-color: rgba(255, 241, 0, 0.9);
    text-decoration-skip-ink: none;
}

.faq_acc_head img,
.faq_acc_body img {
    width: 70px;
    height: 70px;
    margin-right: 20px;
}

@media screen and (max-width: 750px) {

    .faq_acc_head img,
    .faq_acc_body img {
        width: 9.33vw;
        height: 9.33vw;
        margin-right: 2.67vw;
    }
}

.faq_anntxt p {
    text-align: center;
    letter-spacing: -1px;
}


/* ========================================
   clinic
======================================== */

/*色変更*/
#lp_202204 .sec07_list_head {
    border: 2px solid #68a4c8;
}

#lp_202204 .sec07_list_head.active {
    background-color: #68a4c8;
}

#lp_202204 .sec07_list_head span {
    color: #68a4c8;
}

#lp_202204 .jsAccMene02::before,
#lp_202204 .jsAccMene02::after {
    background-color: #68a4c8;
}

#lp_202204 .sec07_list_body {
    border-right: 2px solid #68a4c8;
    border-left: 2px solid #68a4c8;
}

#lp_202204 .sec07_list_body_list {
    border-bottom: 2px solid #68a4c8;
}

/* ========================================
   reserve 
======================================== */
.line_lg_txt {
    position: relative;
    font-size: 52px;
    font-weight: bold;
    line-height: 1;
    text-align: center;
}

@media screen and (max-width: 750px) {
    .line_lg_txt {
        font-size: 6.93vw;
    }
}

/* ========================================
   footer
======================================== */

/* ========================================
   modal_list
======================================== */

#clinic h2 img {
    display: none;
}

.new_web-coupon {
    width: 80%;
}

.web_coupon--fv {
    padding: 370px 0 100px;
}

.change_btn2 {
    margin-left: auto;
    margin-right: auto;
    display: block;

}

.cp__txt {
    font-size: clamp(24px, 5vw, 38px);
    color: #ff399b;
    font-weight: bold;
    line-height: 1.4;
}

.subtxt__area {
    display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
}

.subtxt__area::before {
    content: "";
    transform: rotate(65deg);
    width: 5%;
    border-top: 1px solid #ff399b;
}

.subtxt__area::after {
    content: "";
    transform: rotate(115deg);
    width: 5%;
    border-bottom: 1px solid #ff399b;
}

/*PC ONLY 調整*/
@media screen and (min-width: 750px) {

    /*PC FV*/
    .web_coupon--fv {
        height: 1240px;
    }

    .web_coupon--short_02 {
        margin-top: 40px;
        margin-bottom: 150px;
    }

    .change_btn2 {
        padding: 530px 0 10px;
    }

    .new_web-coupon--inner {
        padding: 30px 20px;
    }
}

/*スマホ表示*/
@media screen and (max-width: 750px) {
    .new_web-coupon_01 {
        top: -63px;
    }
}

/*ショートクーポン*/
@media screen and (min-width: 750px) {
    .web_coupon--short_02 {
        margin-top: 40px;
        margin-bottom: 150px;
    }

    .web_coupon--short {
        background: url(../img/tcb-datsumou_01/bg_coupon04.png) no-repeat top center;
        padding: 100px 0 60px;
    }
}

@media screen and (max-width: 750px) {
    .web_coupon--short_02 {
        margin-top: 20px;
    }

    .web_coupon--short {
        background: url(../img/tcb-datsumou_01/bg_coupon04.png) no-repeat top center;
        padding: 100px 0 60px;
        padding: 32.5vw 0 13vw;
        background-size: 98% auto;
        margin-bottom: 3vw;
    }
}

/*クーポン　02 BTN 調整*/
@media screen and (min-width: 750px) {
    .web_coupon2 {
        background: url(../img/az_datsumou/bg_coupon02-2.png) no-repeat top center;
        padding: 120px 0 150px;
    }
}

@media screen and (max-width: 750px) {
    .web_coupon2 {
        background: url(../img/az_datsumou/bg_coupon02-2_sp.png) no-repeat top center;
        padding: 120px 0 150px;
    }

    .web_coupon--02 {
        padding: 34vw 0 14vw;
    }

    .new_web-coupon_02_sec {
        top: -80px;
        width: 76vw;
    }

    .limit_btn_02_sec {
        margin-top: 25px;
    }

    .web_coupon2 {
        background-size: 98% auto;
        padding: 34vw 0 10vw;
    }

    .change_btn2 {
        padding: 32vw 0 6vw;
        margin-top: -3vw;
    }
}

/*03 BTN 調整*/
.web_coupon3 {
    background: url(../img/tcb-datsumou_01/bg_coupon02-1.png) no-repeat top center;
    padding: 120px 0 150px;
}

.change_btn3 {
    padding: 135px 0 10px;
}

/*クーポン　03 04 BTN 調整*/
.change_btn3,
.change_btn4 {
    margin-left: auto;
    margin-right: auto;
    display: block;
    padding: 260px 0 10px;
}

/*04 BTN 調整*/
.change_btn4 {
    margin-left: auto;
    margin-right: auto;
    display: block;
    padding: 550px 0 10px;
    margin-top: 50px;
}

.all_70off_bg._bgimg {
    background: #fffbe5 url(../img/tcb-datsumou_01/bg_cracker.png) no-repeat top center/contain;
}

/*スマホビュー*/
@media screen and (max-width: 750px) {
    .new_web-coupon {
        top: -57px;
        width: 80vw;
    }

    .web_coupon--fv {
        padding: 76vw 0 6vw;
    }


    .web_coupon--short .limit_btn {
        margin-top: -10vw;
    }

    .change_btn3 {
        padding: 0 0 6vw;
    }

    /*スマホビュー BTN 03*/
    .web_coupon3 {
        background-size: 98% auto;
        padding: 38vw 0 10vw;
    }

    /*スマホビュー BTN 04*/
    .change_btn4 {
        padding: 34vw 0 6vw;
    }
}

@media screen and (max-width: 750px) {
    .web_coupon--fv .limit_btn {
        padding-top: min(30px, calc(calc(100 / 750) * 200vw)) !important;
        padding-bottom: min(100px, calc(calc(100 / 750) * 100vw)) !important;
    }

    .new_web-coupon {
        top: -78px;
        width: 78vw;
    }
}

/* 金額修正の時の追記 20241105 */

.bg_treat {
    /* background-color: #fffbe5;
    margin-top: 0 !important; */
}


.p-sec03_acc_body_body_list .ttl {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: min(10px, calc(calc(10/750) * 100vw));
}

.p-sec03_acc_body_body_list .ttl h4 {
    font-size: min(23px, calc(calc(23/750) * 100vw));
    font-weight: 600;
    color: #6f6f6f;
}

.p-sec03_acc_body_body_list .ttl h4 span {
    color: #6f6f6f;
    font-size: min(17px, calc(calc(17/750) * 100vw));
}

.p-sec03_acc_body_body_list .ttl p {
    font-size: min(17px, calc(calc(17/750) * 100vw));
    font-weight: 500;
}

.p-sec03_acc_body_body_list table {
    width: 100%;
}

.p-sec03_acc_body_body_list table tr:first-child {
    border-bottom: min(2px, calc(calc(2/750) * 100vw)) solid #fff;
}

.p-sec03_acc_body_body_list table th {
    background: #E669A3;
    color: #fff;
    font-size: min(24px, calc(calc(24/750) * 100vw));
    font-weight: 600;
    padding: min(10px, calc(calc(10/750) * 100vw)) 0;
    text-align: center;
    width: min(80px, calc(calc(80/750) * 100vw));
}

.p-sec03_acc_body_body_list table td {
    background: #FFF4F9;
    color: #D9388E;
    font-size: min(24px, calc(calc(24/750) * 100vw));
    font-weight: 600;
    padding: min(10px, calc(calc(10/750) * 100vw));
}

.p-sec03_acc_body_body_list table td strong {
    font-size: min(28px, calc(calc(28/750) * 100vw));
    font-weight: 600;
}

.p-sec03_acc_body_body_list table td span {
    font-size: min(19px, calc(calc(19/750) * 100vw));
    font-weight: 400;
}

/* ==================================================
    20251003 TCB_AD-8984 満足度追加_クーポン周り調整
================================================== */

.new_web-coupon_02 {
    /*margin-top: 4vw;
    margin-bottom: 4vw;*/
    padding: 6vw 0;
}

@media screen and(max-width: 750px){
    .new_web-coupon_02{
    top: 0px;
    width: 78vw;
}
}

.new_web-coupon_02 {
    background: linear-gradient(127deg, #ff745b  0%, #f3b05d 100%);
    text-align: center;
    /*margin-top: 30px;
    margin-bottom: 30px;*/
    padding: 30px 0;
    box-sizing: border-box;
    position: relative;
}