/* header */
.header{
    padding-left: 25px;
    display: flex;
    gap: 20px;
    justify-content: space-between;
    
}
html header .header_left_wrap {
    transition: all 0.6s ease;
}
html header .header_left_wrap.hide {
    opacity: 0;
}
.header_left_wrap{
    display: flex;
    justify-content: start;
    /* width: calc(100% - 1170px); */
}
.header_left{
    color: #284b79;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding-top: 22px;
    position: fixed;
    left: 20px;
}
.header_logo{
    width: 122px;
    height: 86px;
    margin-bottom: 18px;
}
.header_logo_pc{
    width: 192px;
}
.h_logo_txt{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.logo_txt_one{
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 1px;
}
.logo_txt_two{
    font-size: 22px;
    font-weight: 700;
    letter-spacing: 1px;
}
.logo_txt_three{
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 1px;
}
.header_right{
    width: 1120px;
    display: flex;
    justify-content: end;
    z-index: 100;
    position: fixed;
    right: 0;
}
a.h_right_booking{
    max-width: 274px;
    width: 100%;
    height: 82px;
    color: #fafaf9;
    background-color: #265ba0;
    padding-left: 100px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: start;
}
.h_booking_txt{
    font-size: 20px;
    font-weight: 700;
    letter-spacing: 0.3px;
    line-height: 1.2;
    position: relative;
}
.h_booking_txt::before{
    content: "";
    width: 38px;
    height: 36px;
    position: absolute;
    background: url(../img/h_booking.webp);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    left: -50px;
    bottom: 0;
}
.h_booking_txt_s{
    font-size: 10px;
    font-weight: 400;
    letter-spacing: 0.3px;
    line-height: 1.2;
}
a.h_right_phone{
    max-width: 274px;
    width: 100%;
    height: 82px;
    color: #fafaf9;
    background-color: #284b79;
    padding-left: 55px;
    display: flex;
    justify-content: center;
    flex-direction: column;
    align-items: start;
    margin-right: 1px;
}
.h_phone_txt{
    font-size: 28px;
    font-weight: 700;
    letter-spacing: 0.3px;
    line-height: 1.2;
    position: relative;
}
.h_phone_txt::before{
    content: "";
    width: 19px;
    height: 28px;
    position: absolute;
    background: url(../img/h_phone.webp);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    left: -22px;
    bottom: 0;
}
.h_right_txt{
   display: flex;
   height: 82px;
   justify-content: center;
   align-items: center;
   padding-right: 10px;
}
.h_right_txt > p {
    font-size: 14px;
    font-weight: 600;
    letter-spacing: 0.3px;
    color: #284b79;
}
@media screen and (max-width: 1350px) {
    .header{
        gap: 10px;
        padding-left: 15px;
    }
    .logo_txt_one{
        font-size: 11px;
    }
    .logo_txt_two{
        font-size: 20px;
        letter-spacing: 0px;
    }
    .logo_txt_three{
        font-size: 12px;
    }
    .header_logo_pc{
        width: 170px;
    }
    a.h_right_booking{
        max-width: 210px;
        padding-left: 70px;
        height: 70px;
    }
    .h_booking_txt{
        font-size: 18px;
    }
    .h_booking_txt::before{
        width: 36px;
        height: 34px;
        left: -48px;
    }
    .h_booking_txt_s{
        font-size: 8px;
    }
    a.h_right_phone{
        max-width: 210px;
        padding-left: 35px;
        height: 70px;
    }
    .h_phone_txt{
        font-size: 24px;
    }
    .h_phone_txt::before{
        width: 17px;
        height: 26px;    
        left: -20px;
    }
    .h_right_txt{
        padding-right: 15px;
    }
    .h_right_txt > p{
        font-size: 12px;
    }
}
@media screen and (max-width: 1115px) {
    .header_logo_pc{
        width: 160px;
    }
    a.h_right_booking {
        max-width: 200px;
        padding-left: 65px;
        height: 70px;
    }
    a.h_right_phone {
        max-width: 200px;
        padding-left: 30px;
        height: 70px;
    }
}
@media screen and (max-width: 768px) {
    a.h_right_booking,a.h_right_phone{
        display: none;
    }
    .header_left{
        display: none;
    }
    .header{
        flex-direction: column;
        padding-left: 0;
        gap: 0;
    }
    .header_left_wrap{
        width: 100%;
        background-color: #f3f6f9;
        justify-content: center;
        align-items: center;
        z-index: 100;
    }
    .header_left_sp{
        padding: 9px 0;
    }
    .header_logo{
        width: 175px;
        height: 40px;
        margin-bottom: 0;
    }
    .header_right{
        width: 100%;
        justify-content: center;
        background-color: #284b79;
        position: relative;
    }
    
    .h_right_txt{
        height: auto;
        padding: 9px 15px;
        z-index: 1 !important;
    }
    .h_right_txt > p{
        color: #ffffff;
        font-size: 10px;
    }
}
@media screen and (max-width: 375px) {
    /* .h_right_txt > p {
        font-size: 9px;
    } */
    .h_right_txt{
        padding: 9px 5px;
    }
}
/* header End */

/* mv */
.mv_section{
    background: url(../img/mv_bg.webp);
    background-size: cover;
    background-position: 39% top;
    background-repeat: no-repeat;
}
.mv_area{
    display: flex;
    flex-direction: column;
    align-items: end;
    padding-right: 18px;
    width: 100%;
    margin-top: -47px;
    padding-top: 200px;
}
.mv_white_btn{
    max-width: 670px;
    width: 100%;
    display: flex;
    justify-content: end;
    gap: 10px;
}
.mv_w_btn{
    width: fit-content;
    padding: 13px 25px;
    font-size: 20px;
    font-weight: 600;
    color: #284b79;
    background-color: #ffffff;
    border-radius: 6px;
    margin-bottom: 10px;
}
.mv_b_txt{
    font-size: 85px;
    font-weight: 900;
    letter-spacing: 5px;
    text-align: right;
    color: #284b79;
    line-height: 1.2;
    margin-top: 40px;
    position: relative;
    margin-right: 20px;
}
.mv_b_txt::before{
    content: "";
    width: 100px;
    height: 107px;
    position: absolute;
    background: url(../img/mv_b_txt_blue.webp);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    left: 16%;
    top: 2px;
}
.mv_b_txt::after{
    content: "";
    width: 60px;
    height: 48px;
    position: absolute;
    background: url(../img/mv_b_txt_before.webp);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
/*    left: -28px;*/
    left: 11%;
    top: -36px;
}
.mv_circles{
    display: flex;
    gap: 15px;
    margin-right: 20px;
    margin-top: 15px;
}
.mv_circle{
    width: 180px;
    height: 180px;
    background-color: rgba(40, 75, 121, 0.95);
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
}
.mv_circle_txt{
    font-size: 24px;
    font-weight: 700;
    letter-spacing: 0.4px;
    line-height: 1.4;
    color: #fbeaa3;
    text-align: center;
}
.mv_consult{
    display: flex;
    height: 82px;
    background-color: rgba(40, 75, 121, 0.8);
    margin-top: 60px;
}
.mv_consult_left{
    width: calc(100% - 340px);
    display: flex;
    color: #f8efd1;
    padding-left: 30px;
    gap: 0;
    justify-content: space-evenly;
    align-items: center;
}
.mv_consult_right{
    width: 340px;
    background-color: rgba(40, 75, 121, 0.8);
}
.consult_left_txt_one{
    font-size: 37px;
    font-weight: 500;
    letter-spacing: 0.2px;
    line-height: 1.8;
}
.consult_left_txt_two{
    font-size: 21px;
    font-weight: 500;
    letter-spacing: 0.4px;
    line-height: 1.8;
}
.mv_consult_right{
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative;
}
.mv_consult_right > p {
    font-size: 21px;
    font-weight: 500;
    letter-spacing: 0.2px;
    line-height: 1.8;
    color: #fbeaa3;
}
.mv_consult_right::before{
    content: "";
    width: 28px;
    height: 17px;
    position: absolute;
    background: url(../img/mv_consult_right.webp);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    right: 20px;
    top: 50%;
    transform: translateY(-50%);
}
@media screen and (max-width: 768px) {
    .mv_consult{
        display: none;
    }
    .mv_section{
        background: unset;
    }
    .mv_area{
        padding-right: 0;
        width: 100%;
        background: url(../img/mv_bg_sp.webp);
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat;
        margin-top: unset;
        padding-top: 0;
    }
    .mv_btn_wrap{
        width: 100%;
        display: flex;
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-top: 15px;
    }
    .mv_white_btn{
        max-width: unset;
        justify-content: center;
        gap: 5px;
    }
    .mv_w_btn{
        font-size: 11px;
        padding: 4px 10px;
        margin-bottom: 5px;
    }
    .mv_b_txt{
        font-size: 40px;
        writing-mode: vertical-rl;
        text-align: start;
        letter-spacing: 2.7px;
        margin-right: 35px;
    }
    .mv_b_txt_two{
        letter-spacing: 3px;
    }
    .mv_b_txt::before{
        width: 50px;
        height: 52px;
        right: -7px;
        top: 0;
    }
    .mv_b_txt::after{
        width: 35px;
        height: 28px;
        left: unset;
        top: -22px;
        position: absolute;
        background: url(../img/mv_b_txt_before_sp.webp);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        right: -33px;
    }
    .mv_circles{
        gap: 0;
        margin-right: 0;
        width: 100%;
        margin-top: 18px;
        justify-content: center;
    }
    .mv_circle{
        max-width: 90px;
        width: 100%;
        height: 90px;
    }
    .mv_circle_txt{
        font-size: 13px;
    }
}
@media screen and (max-width: 375px) {
    /* .mv_w_btn{
        font-size: 9px;
    } */
    .mv_white_btn{
        padding: 0 10px;
    }
    .mv_circle{
        max-width: 85px;
        width: 100%;
        height: 85px;
    }
    /* .mv_circle_txt{
        font-size: 11px;
    } */
}
/* mv End */

/* pain free */
.s_pain{
    background: url(../img/pain_free.webp);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: left;
    color: #284b79;
    padding-top: 100px;
    padding-bottom: 65px;
}
.pain_div{
    display: flex;
    flex-direction: column;
    align-items: end;
}
.pain_ttl{
    font-size: 36px;
    font-weight: 700;
    padding-right: 30px;
    position: relative;
}
.pain_ttl::before{
    content: "";
    width: 208px;
    height: 114px;
    background: url(../img/pain_ttl_before.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -66px;
    left: -210px;
}
.pain_ttl > span{
    font-size: 48px;
    position: relative;
    z-index: 2;
    padding: 0 4px;
}
.pain_ttl > span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.pain_txt{
    font-size: 36px;
    font-weight: 700;
    text-align: start;
    padding-top: 10px;
    padding-right: 21px;
}
.pain_btn_div{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    gap: 20px;
    margin-top: 30px;
}
.pain_btn{
    width: 293px;
    height: 104px;
    background-color: #ffffff;
    display: flex;
    justify-content: center;
    align-items: center;
}
.pain_btn_txt{
    font-size: 21px;
    font-weight: 600;
    text-align: center;
    line-height: 1.5;
}
.pain_btn_txt > span{
    font-weight: 800;
    position: relative;
    z-index: 2;
    padding: 0 4px;
}
.pain_btn_txt > span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
@media screen and (max-width: 768px) {
    .s_pain{
        margin-top: -31px;
        background: url(../img/pain_free_sp.webp);
        background-size: 100%;
        background-repeat: no-repeat;
        background-position: top;
        color: #284b79;
        padding-top: 55%;
        padding-bottom: 0;
    }
    .pain_div{
        align-items: center;
        padding-bottom: 20px;
    }
    .s_pain_bg{
        background-color: #f5f1f0;
    }
    .pain_ttl{
        font-size: 23px;
        text-align: center;
        padding-right: 0;
    }
    .pain_ttl::before{
        content: "";
        width: 139px;
        height: 71px;
        background: url(../img/pain_ttl_before_sp.webp);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
        top: -66px;
        left: -30px;
    }
    .pain_ttl > span{
        font-size: 33px;
    }
    .pain_ttl > span::before{

    }
    .pain_txt{
        font-size: 23px;
        padding-right: 0;
        text-align: center;
    }
    .pain_btn_div{
        grid-template-columns: repeat(2,1fr);
        gap: 5px;
        margin-top: 10px;
    }
    .pain_btn{
        width: 165px;
        height: 65px;
    }
    .pain_btn_txt{
        font-size: 15px;
    }
    .pain_btn_txt > span{
        padding: 0;
    }
    .pain_btn_txt > span::before{
    }
}
@media screen and (max-width: 355px) {
    .pain_btn{
        width: 155px;
        height: 60px;
    }
    .pain_ttl::before{
        left: -17px;
    }
    .pain_ttl > span{
        font-size: 31px;
    }
}
/* pain free End */

/* sedation */
.s_sedation{
    background-color: #ffffff;
    color: #284b79;
    position: relative;
    z-index: 2;
}
.s_sedation::before{
    content: "";
    width: 130px;
    height: 55px;
    position: absolute;
    background: url(../img/sedation_section_before.webp);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center;
    left: 50%;
    transform: translateX(-50%);
    top: 0;
}
.s_sedation::after{
    content: "";
    width: 100%;
    height: 400px;
    background: url(../img/sedation_section_after.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}

.sedation_wrap{
    padding-top: 142px;
    text-align: center;
    padding-bottom: 189px;
    position: relative;
}
.sedation_wrap::before{
    content: "";
    width: 220px;
    height: 220px;
    background: url(../img/doc-circle.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 35px;
    left: 40px;
}
.sedation_ttl{
    text-align: center;
    display: inline-block;
}
.sedation_ttl_one{
    font-size: 32px;
    font-weight: 600;
    display: inline-block;
    position: relative;
}
.sedation_ttl_one::before{
    content: "";
    width: 70px;
    height: 65px;
    background: url(../img/sedation_ttl_left.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -19px;
    left: -83px;
}
.sedation_ttl_one::after{
    content: "";
    width: 70px;
    height: 65px;
    background: url(../img/sedation_ttl_right.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -15px;
    right: -83px;
}
.sedation_ttl_two{
    font-size: 12px;
    font-weight: 600;
    letter-spacing: 20.9px;
    padding-left: 20px;
    padding-top: 10px;
}
.sedation_ttl_three{
    font-size: 78px;
    font-weight: 700;
    position: relative;
    z-index: 2;
    display: inline-block;
    margin-top: -10px;
}
.sedation_ttl_three span{
    position: relative;
}
.sedation_ttl_three span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}

.sedation_ttl_four{
    font-size: 36px;
    font-weight: 700;
}
.sedation_card_wrap{
    display: flex;
    gap: 35px;
    padding-top: 125px;
}
.sedation_card{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.sedation_card_one,.sedation_card_two,.sedation_card_three{
    position: relative;
}
.sedation_card_one::before{
    content: "";
    width: 192px;
    height: 123px;
    background: url(../img/sedation_card_b_one.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: -65px;
    left: 0;
}
.sedation_card_two::before{
    content: "";
    width: 192px;
    height: 123px;
    background: url(../img/sedation_card_b_two.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: -65px;
    left: 0;
}
.sedation_card_three::before{
    content: "";
    width: 192px;
    height: 123px;
    background: url(../img/sedation_card_b_three.png);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: -65px;
    left: 0;
}
.sedation_card_three::before{
    content: "";
    position: absolute;
}
.sedation_card_img{
    width: 117px;
    height: 117px;
}
.sedation_card_img > img{
    width: 100%;
    height: 100%;
}
.sedation_card{
    width: 100%;
    background-color: #f3f6f9;
    padding: 30px 24px;
    gap: 25px;
    justify-content: start;
}
.sedation_card_ttl{
    font-size: 25px;
    font-weight: 700;
}
.sedation_card_ttl > span{
    position: relative;
    z-index: 2;
    padding: 0 4px;
}
.sedation_card_ttl > span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.sedation_card_txt{
    font-size: 16px;
    font-weight: 600;
    text-align: start;
    width: 293px;
    letter-spacing: 0.2px;
    line-height: 1.8;
}

@media screen and (max-width: 768px) {
    .s_sedation{
        height: auto;
        padding-top: 0;
    }
    .sedation_wrap::before{
        display: none;
    }
    .sedation_ttl{
        text-align: center;
    }
    .sedation_ttl_one{
        font-size: 16px;
        font-weight: 600;
    }
    .sedation_ttl_two{
        font-size: 8px;
        font-weight: 600;
        letter-spacing: 9.2px;
        padding-left: 8px;
        padding-top: 7px;
    }
    .sedation_ttl_three{
        font-size: 39px;
        font-weight: 700;
        position: relative;
        display: inline-block;
        z-index: 2;
        margin-top: -6px;
        padding: 0 5px;
    }
    .sedation_ttl_three::before{
        content: "";
        width: 60%;
        height: 15%;
        background-color: #fbeaa3;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;

    }
    .sedation_ttl_four{
        font-weight: 700;
        font-size: 18px;
        padding-top: 8px;
    }
    .sedation_card_wrap{
        flex-direction: column;
        padding-top: 67px;
        gap: 63px;
    }
    .sedation_card{
        width: 100%;
        background-color: #f3f6f9;
        padding: 30px 20px;
        gap: 20px;
    }
    .sedation_card_img{
        width: 92px;
        height: 92px;
    }
    .sedation_card_img > img{
        width: 100%;
        height: 100%;
    }
    .sedation_card_ttl{
        font-size: 20px;
        font-weight: 700;
        line-height: 1.5;
        text-align: center;
    }
    .sedation_card_ttl > span{
        position: relative;
        z-index: 2;
        padding: 0 4px;
    }
    .sedation_card_ttl > span::before{
        content: "";
        width: 100%;
        height: 25%;
        background-color: #fbeaa3;
        position: absolute;
        bottom: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: -1;
    }
    .sedation_card_txt{
        width: 290px;
        font-size: 15px;
        font-weight: 600;
        letter-spacing: 0.2px;
        line-height: 1.8;
    }
    .sedation_ttl_one::before{
        content: "";
        width: 31px;
        height: 28px;
        background: url(../img/sedation_ttl_left.webp);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
        top: -4px;
        left: -33px;
    }
    .sedation_ttl_one::after{
        content: "";
        width: 31px;
        height: 28px;
        background: url(../img/sedation_ttl_right.webp);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
        top: -3px;
        right: -33px;
    }
    .sedation_card_one::before{
        width: 153px;
        height: 98px;
        background: url(../img/sedation_card_b_one.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: -40px;
        left: -3px;
    }
    .sedation_card_two::before{
        width: 153px;
        height: 98px;
        background: url(../img/sedation_card_b_two.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: -40px;
        left: -3px;
    }
    .sedation_card_three::before{
        width: 153px;
        height: 98px;
        background: url(../img/sedation_card_b_three.png);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: -40px;
        left: -3px;
    }
    .sedation_wrap{
        padding-bottom: 95px;
        padding-top: 75px;
    }
    .s_sedation::after{
        content: "";
        width: 100%;
        height: 220px;
        background: url(../img/sedation_section_after_sp.webp);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
        bottom: 0;
        left: 0;
        z-index: -1;
    }
    .s_sedation::before{
        content: "";
        width: 104px;
        height: 44px;
        position: absolute;
        background: url(../img/sedation_section_before.webp);
        background-repeat: no-repeat;
        background-size: contain;
        background-position: center;
        left: 50%;
        transform: translateX(-50%);
        top: 0;
    }
}
/* sedation End */

/* New section */
.s_new_add{
    background-color: #f3f6f9;
    width: 100%;
    padding: 78px 0;
    position: relative;
}
.s_new_add::before{
    content: "";
    width: 130px;
    height: 55px;
    background: url(../img/new_add_before.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: -55px;
}
.new_add_wrap{
    display: flex;
    gap: 55px;
    justify-content: center;
    align-items: center;
}
.new_add_left_txt{
    font-size: 28px;
    font-weight: 700;
    color: #284b79;
    position: relative;
}
.new_add_left_txt::before{
    content: "";
    width: 148px;
    height: 79px;
    background: url(../img/new_add_txt_before.webp);
    background-repeat: no-repeat;
    background-position: center;
    background-size: contain;
    position: absolute;
    left: -62px;
    top: -96px;
    z-index: 2;
}
.new_add_left_txt span{
    background-color: #fbeaa3;
}
@media screen and (max-width: 768px) {
    .s_new_add{
        padding-top: 25px;
        padding-bottom: 34px;
    }
    .s_new_add::before{
        display: none;
    }
    .new_add_wrap{
        flex-direction: column;
        gap: 30px;
    }
    .new_add_wrap > .tech_blue_img{
        height: auto;
    }
    .new_add_left_txt{
        text-align: center;
        font-size: 20px;
    }
    .new_add_left_txt::before{
        width: 100px;
        height: 53px;
        top: -50px;
        left: 43%;
        transform: translateX(-50%);
    }
}
/* New section End */

/* technology */
.tech_wrap{
    display: flex;
    flex-direction: column;
    position: relative;
    padding-top: 130px;
}
.tech_wrap.tech_two::before{
    display: none;
}
.s_tech{
    color: #284b79;
    padding-bottom: 160px;
}
.tech_right-txt{

    color: #333333 ;
    line-height: 1.8;
    letter-spacing: 0.2px;
}
.tech_one .tech_left{
    position: relative;
    width: 600px;
    grid-area: tech-left;
}
.tech_one .tech_right{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
    grid-area: tech-right;
    max-width: 415px;
    width: 100%;
}
.tech_one .tech_left::before{
    content: "";
    width: 265px;
    height: 584px;
    background: url(../img/tech_one_before_pc.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: -144px;
    left: -80px;
}
.tech_two .tech_left::before{
    content: "";
    width: 188px;
    height: 250px;
    background: url(../img/tech_two_before.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: -105px;
    right: -80px;
    left: unset;
}
.tech_two .tech_right{
    justify-content: start;
}
.tech_two .tech_right .tech_right_ttl{
    font-size: 31px;
    font-weight: 700;
}
.tech_blue_div{
    display: flex;
    background-color: #f3f6f9;
    padding: 47px 60px;
    justify-content: space-between;
    align-items: center;
    margin: 80px 0;
    gap: 65px;
}
.tech_right_ttl{
    font-size: 25px;
    font-weight: 700;
    margin-bottom: 22px;
    line-height: 1.5;
    letter-spacing: 1.4px;
}
.tech_right-txt{
    font-size: 17px;
    font-weight: 600;
}
.tech_blue_img{
    width: 350px;
    height: 90px;
}
.tech_blue_ttl{
    width: calc(100% - 430px);
    text-align: center;
    font-size: 28px;
    font-weight: 700;
}
.tech_blue_ttl > span{
    position: relative;
    z-index: 2;
}
.tech_blue_ttl > span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: -1;
}
/* .tech_two .tech_section_ttl_wrap{
    padding-left: 80px;
} */
.tech_two .tech_left{
    position: relative;
}
.tech_right_ttl > span{
    position: relative;
}
.tech_right_ttl > span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    z-index: -1;
    position: absolute;
    bottom: 0;
    left: 0;
}
.tech_one_wrap{
    display: grid;
    grid-template-areas: 
    "tech-left tech-right"
    "tech-txt tech-txt";
    padding-top: 74px;
    column-gap: 55px;
    row-gap: 47px;
}
.tech_one_txt_box{
    grid-area: tech-txt;
}
.tech_one_txt_box p{
    font-size: 17px;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0.2px;
}
.tech_two_wrap{
    display: flex;
    flex-direction: row-reverse;
    padding-top: 74px;
    gap: 63px;
    margin-bottom: 100px;
    position: relative;
    justify-content: start;
}
.tech_two_wrap::before{
    content: "";
    width: 220px;
    height: 220px;
    background: url(../img/doc-circle.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 0;
    left: -44px;
    z-index: -1;
}
.tech_section_ttl {
    width: fit-content;
    font-size: 26px;
    font-weight: 600;
    position: relative;
    display: inline;
    z-index: 2;
}
.tech_section_ttl::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    z-index: -1;
    position: absolute;
    bottom: 0;
    left: 0;
}
@media screen and (max-width: 768px) {
    .tech_two_wrap {
        margin-bottom: 40px;
        flex-direction: column;
        justify-content: center;
        align-items: center;
    }
    .s_tech{
        padding-top: 0;
        padding-bottom: 115px;
    }
    .tech_wrap{
        flex-direction: column;
        padding-top: 50px;
    }
    .tech_section_ttl{
        font-size: 20px;
        font-weight: 600;
    }
    .tech_section_ttl > span{
        position: relative;
        display: inline-block;
        z-index: 2;
    }
    .tech_section_ttl > span::before{
        content: "";
        width: 100%;
        height: 25%;
        background-color: #fbeaa3;
        z-index: -1;
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .tech_section_ttl::before{
        display: none;
    }
    .tech_one .tech_left{
        max-width: 375px;
        width: 100%;
        display: flex;
        justify-content: end;
        padding-left: 40px;
    }
    .tech_two .tech_left{
        max-width: 375px;
        width: 100%;
        display: flex;
        justify-content: start;
        padding-right: 40px;
        padding-left: 0;
    }
    .tech_one .tech_right{
        width: 100%;
    }
    .tech_right_ttl{
        font-size: 20px;
        font-weight: 700;
        line-height: 1.8;
        padding-top: 0;
        margin-bottom: 10px;
    }
    .tech_two .tech_right{
        max-width: 375px;
        width: 100%;
    }
    .tech_two .tech_right .tech_right_ttl{
        font-size: 20px;
        font-weight: 700;
        line-height: 1.5;
    }
    .tech_right-txt{
        font-size: 15px;
        font-weight: 600;
        line-height: 1.9;
        letter-spacing: 0.2px;
        padding-top: 0;
    }
    .tech_one .tech_left::before{
        content: "";
        width: 170px;
        height: 360px;
        background: url(../img/tech_one_before_sp.webp);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: -90px;
        left: 10px;
    }
    .tech_one_txt_box{
     
    }
    .tech_one_txt_box p{
        font-size: 15px;
        padding-bottom: 40px;
        padding-top: 20px;
        border-bottom: 2px dotted #0f294c;
    }
    .tech_blue_div{
        flex-direction: column;
        justify-content: center;
        align-items: center;
        margin-top: 40px;
        margin-bottom: 60px;
        padding: 24px 20px;
        gap: 24px;
    }
    .tech_blue_img{
        width: 100%;
        height: 75px;
    }
    .tech_blue_ttl{
        width: 100%;
        font-size: 20px;
        font-weight: 700;
        text-align: center;
        line-height: 1.4;
    }
    .tech_two .tech_section_ttl{
        text-align: right;
    }
    .tech_two .tech_left::before{
        content: "";
        width: 120px;
        height: 152px;
        background: url(../img/tech_two_before.webp);
        background-size: contain;
        background-repeat: no-repeat;
        background-position: center;
        position: absolute;
        top: -22px;
        right: 19px;
        left: unset;
    }
    .tech_one_wrap{
        grid-template-areas: 
        "tech-left"
        "tech-txt"
        "tech-right";
        padding-top: 52px;
        gap: 35px;
        place-items: center;
    }
    .tech_two .tech_section_ttl_wrap{
        text-align: right;
    }
    .tech_two_wrap::before{
        width: 140px;
        height: 140px;
        bottom: unset;
        top: 244px;
        left: unset;
        right: -37px;
        z-index: -1;
    }
}
@media screen and (max-width: 350px) {
    .tech_section_ttl{
        font-size: 18px;
    }
    .tech_right_ttl {
        font-size: 18px;
    }
}
.tech_p_ttl{
    font-size: 28px;
    font-weight: 700;
    position: relative;
    display: inline-block;
}
.tech_p_ttl::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    z-index: -1;
    position: absolute;
    bottom: 0;
    left: 0;
}
.tech_p_comment{
    width: 100%;
    /* height: 310px; */
    margin-top: 30px;
    display: flex;
    gap: 30px;
}
.tech_p_comment > .left, .tech_p_comment > .right{
    max-width: 520px;
    width: 100%;
    height: auto;
    background-color: #fff7dc;
    padding: 30px;
    padding-left: 170px;
    position: relative;
    flex: 1;
}
.tech_p_comment > .left{
    margin-top: 30px;
    margin-bottom: 43px;
}
.tech_p_comment > .right{
    margin-bottom: 73px;
}
.tech_p_comment > .left::before{
    content: "";
    width: 110px;
    height: 110px;
    background: url(../img/tech_p_comment_left.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 30px;
    left: 30px;
}
.tech_p_comment > .left::after{
    content: "";
    width: 68px;
    height: 43px;
    background: url(../img/tech_p_comment_left_after.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    bottom: -43px;
    left: 110px;
}
.tech_p_comment > .right::before{
    content: "";
    width: 110px;
    height: 110px;
    background: url(../img/tech_p_comment_right.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    top: 30px;
    left: 30px;
}
.tech_p_comment > .right::after{
    content: "";
    width: 68px;
    height: 43px;
    background: url(../img/tech_p_comment_right_after.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    position: absolute;
    bottom: -43px;
    right: 110px;
}
.tech_p_comment_ttl{
    font-size: 18px;
    font-weight: 600;
}
.tech_p_comment_txt{
    font-size: 15px;
    font-weight: 600;
    line-height: 1.8;
    margin-top: 15px;
}

@media screen and (max-width: 768px) {
    .tech_p{
        text-align: center;
    }
    .tech_p_ttl{
        font-size: 20px;
    }
    .tech_p_comment{
        flex-direction: column;
        gap: 38px;
        margin-top: 0;
    }
    .tech_p_comment > .left, .tech_p_comment > .right{
        padding: 20px;
        padding-top: 95px;
        margin-bottom: 0;
    }
    .tech_p_comment > .right::after , .tech_p_comment > .left::after{
        display: none;
    }
    .tech_p_comment > .left::before , .tech_p_comment > .right::before{
        width: 90px;
        height: 90px;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        top: -18px;
    }
    .tech_p_comment_txt{
        font-size: 14px;
        text-align: left;
        letter-spacing: 0.2px;
        margin-top: 15px;
    }
    .tech_p_comment_ttl{
        font-size: 16px;
    }
}
/* tech aed */
.tech_aed{
    margin-top: 50px;
    position: relative;
    z-index: 2;
}
.tech_aed::before{
    content: "";
    width: 190px;
    height: 190px;
    background: url(../img/yellow_square.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -80px;
    right: -30px;
    z-index: -1;
}
.aed_wrap{
    width: 100%;
    height: 100%;
    background-color: #f3f6f9;
    padding: 50px;
    display: flex;
    gap: 40px;
}
.aed_left{
    width: 295px;
    height: auto;
}
.aed_right{
    width: calc(100% - 335px);
    height: auto;
}
.aed_right_ttl{
    font-size: 28px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.6px;
    margin-bottom: 18px;
}
.aed_right_ttl > span{
    position: relative;
    display: inline-block;
    z-index: 2;
}
.aed_right_ttl > span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    z-index: -1;
    position: absolute;
    bottom: -3px;
    left: 0;
}
.aed_right_subttl{
    font-size: 15px;
    font-weight: 500;
    line-height: 1.2;
    letter-spacing: 0.6px;
    padding-left: 10px;
    margin-bottom: 18px;
}
.aed_right_txt{
    font-size: 16px;
    font-weight: 600;
    line-height: 1.8;
    letter-spacing: 0.2px;
    padding-top: 15px;
    color: #333333;
}
.dotted_aed{
    display: block;
    width: 98%;
    height: 2px;
    border-top: 1px dotted #284b79;
}
@media screen and (max-width: 768px) {
    .tech_aed{
        margin-top: 40px;
    }
    .tech_aed::before{
        width: 75px;
        height: 75px;
        right: -20px;
        bottom: -20px;
    }
    .aed_right_ttl{
        font-size: 20px;
        margin-bottom: 8px;
        text-align: center;
    }
    .aed_right_subttl{
        font-size: 12px;
        padding-left: 0;
        text-align: center;
    }
    .aed_right_txt{
        font-size: 14px;
    }
    .aed_wrap{
        flex-direction: column;
        padding: 20px;
        padding-bottom: 33px;
        gap: 20px;
    }
    .aed_left{
        width: 100%;
        height: auto;
    }
    .aed_right{
        width: 100%;
        height: auto;
    }
}
@media screen and (max-width: 355px) {
    .aed_right_ttl{
        font-size: 18px;
    }
    .aed_right_subttl{
        font-size: 10px;
    }
    .aed_right_txt{
        font-size: 14px;
    }
}
/* technology End*/

/* contact */
/* contact End*/

/* treatment Slider */
.s_treat_slide{
    padding-top: 125px;
    padding-bottom: 130px;
    background-color: #f7fbff;
    margin-top: 110px;
}
.treat_slide_ttl_div{
    text-align: center;
    margin-bottom: 118px;
}
.treat_slide_ttl{
    color: #284b79;
}
.treat_slide_ttl .sedation_ttl_three {
    margin-top: 10px;
}
.treat_slider_wrap.sp{
    display: none;
}
.treat_slider_wrap{

}
.treat_slider_card{
    width: 830px;
    height: 980px;
    margin-left: 50px;
    display: flex;
}
.treat_slider_wrap.slick-initialized .slick-slide{
    display: flex;
}
.treat_slide_left{
    width: 120px;
    background-color: #e5eff9;
    display: flex;
    flex-direction: column;
    justify-content: start;
    align-items: center;
    gap: 25px;
}
.t_slide_l_one{
    width: 120px;
    height: 120px;
    background-color: #284b79;
    display: flex;
    justify-content: center;
    align-items: center;
}
.t_slide_l_one_img{
    width: 80px;
    height: 80px;
}
.t_slide_l_one_img > img{
    width: 100%;
    height: 100%;
    object-fit: contain;
}
.t_slide_l_two{
    font-size: 31px;
    font-weight: 700;
    line-height: 1.3;
    writing-mode: vertical-lr;
    color: #284b79;
}
.treat_slide_right{
    width: 710px;
    height: 100%;
    background-color: #ffffff;
    padding: 55px ;
    color: #284b79;
}
.t_slide_r_ttl{
    font-size: 31px;
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: 1.4px;
    padding-bottom: 10px;
}
.t_slide_r_list{
    font-size: 17px;
    font-weight: 600;
    letter-spacing: 0.2px;
    line-height: 1.5;
    padding-left: 43px;
    position: relative;
    margin-top: 15px;
}
.t_slide_r_list::before{
    content: "";
    width: 30px;
    height: 30px;
    background: url(../img/right_tick.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}
.t_slide_r_example_box{
    padding-top: 50px;
}
.treat_example_ttl{
    font-size: 25px;
    font-weight: 700;
    letter-spacing: 1.4px;
    line-height: 1.5;
}
.treat_eg_img_box{
    display: flex;
    gap: 30px;
    padding-top: 25px;
}
.treat_eg_img_box.sp{
    display: none;
}
.treat_eg_img{
    width: 285px;
    height: 170px;
}
.treat_eg_img img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.treat_eg_img_b{
    position: relative;
}
.treat_eg_img_b::before{
    content: "Before";
    width: 78px;
    height: 28px;
    /* background: url(../img/treat_example_before.webp); */
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    font-style: italic;
    font-weight: 800;
    background-color:  #284b79;;
    color: #fbeaa3;
    letter-spacing: 2.5px;
    font-size: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.treat_eg_img_b::after{
    content: "";
    width: 14px;
    height: 28px;
    background: url(../img/treat_example_before_arrow.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: -22px;
}
.treat_eg_img_a{
    position: relative;
}
.treat_eg_img_a::before{
    content: "After";
    width: 78px;
    height: 28px;
    /* background: url(../img/treat_example_after.webp); */
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    left: 0;
    text-align: center;
    font-style: italic;
    font-weight: 800;
    background-color:  #284b79;;
    color: #fbeaa3;
    letter-spacing: 2.5px;
    font-size: 14px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.t_cost_example{
    width: 100%;
    height: 100px;
    background-color: #f3f6f9;
    margin-top: 40px;
    padding: 20px 28px 20px 24px;
    display: flex;
    gap: 30px;
}
.t_cost_left{
    width: 93px;
    height: 100%;
    display: flex;
    justify-content: start;
    align-items: center;
    border-right: 1px solid #284b79;
}
.t_cost_left >  p{
    font-size: 18px;
    font-weight: 700;

}
.t_cost_right > p > span.sp_color{
    color: #4c93f0;
    letter-spacing: 0.8px;
    font-size: 14px;
    line-height: 1.9;
}
.t_cost_right{
    width: calc(100% - 120px);
    font-size: 17px;
    font-weight: 500;
    line-height: 1;
    display: flex;
    justify-content: center;
    align-items: start;
    flex-direction: column;
}
.t_cost_right_fz{
    font-size: 25px;
}
/* t_cost_about */
.t_cost_about{
    padding-top: 40px;
}
.t_cost_about_li{
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 40px;
    padding: 15px 0;
    border-bottom: 1px solid #284b79;
}
.t_cost_about_li:first-child{
    border-top: 1px solid #284b79;
}
.t_cost_about_left{
    width: 120px;
    text-align: center;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.2px;
}
.t_cost_about_right{
    width: calc(100% - 160px);
    color: #333333;
    font-size: 15px;
    font-weight: 600;
    letter-spacing: 0.2px;
}
/* slick slide  */
.treat_slider_wrap > .slick-dots{
    bottom: -40px;
}
.treat_slider_wrap > .slick-dots li button:before{
    top: 13px;
    color: #ced8e4 !important;
    left: 50%;
    transform: translateX(-50%);
    opacity: 1;
    font-size: 10px;
}
.treat_slider_wrap > .slick-dots li.slick-active button:before{
    width: 30px;
    height: 10px;
    background-color: #284b79;
    border-radius: 10px;
    opacity: 1;
    color: #284b79;
    font-size: 0;
    top: 17px;
}
@media screen and (max-width: 768px) {
    .s_treat_slide{
        padding-top: 40px;
        padding-bottom: 20px;
        margin-top: 0;
    }
    .treat_slide_ttl_one::before{
        top: 8px;
        left: -38px;
    }
    .treat_slide_ttl_one::after{
        top: 8px;
        right: -38px;
    }
    .treat_slide_ttl_div{
        margin-bottom: 60px;
    }
    .treat_slide_ttl .sedation_ttl_three {
        margin-top: 3px;
    }
    .treat_slider_wrap.pc{
        display: none;
    }
    .treat_slider_wrap.sp{
        display: block;
    }
    .treat_slider_card{
        width: 100%;
        height: auto;
        flex-direction: column;
        margin-left: 0;
        margin-top: 30px;
    }
    .treat_slide_left{
        width: 100%;
        flex-direction: row;
        background-color: #ffffff;
        gap: 14px;
    }
    .t_slide_l_one{
        width: 75px;
        height: 75px;
    }
    .t_slide_l_one_img{
        width: 50px;
        height: 50px;
    }
    .t_slide_l_two{
        writing-mode: horizontal-tb;
        font-size: 21px;
    }
    .treat_slide_right{
        width: 100%;
        padding: 0;
        padding-bottom: 35px;
    }
    .t_slide_r_ttl{
        display: none;
    }
    .t_slide_r_list{
        font-size: 15px;
        padding-left: 28px;
        margin-top: 12px;
    }
    .t_slide_r_list::before{
        width: 20px;
        height: 20px;
    }
    .t_slide_r_example_box{
        padding: 25px;
        padding-top: 30px;
        padding-bottom: 0;
    }
    .treat_example_ttl{
        font-size: 21px;
        text-align: center;
    }
    .treat_eg_img_box.pc{
        display: none;
    }
    .treat_eg_img_box.sp{
        display: block;
        position: relative;
        padding-top: 17px;
        border-left: 3px solid white;
        border-right: 3px solid white;
    }
    /* example image slider */
    .treat_eg_img_box > .slick-next:before{
        content: "";
        width: 9px;
        height: 18px;
        background: url(../img/treat_example_img_before.webp);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
        top: 107%;
        transform: translateY(-50%);
        right: 10px;
    }
    .treat_eg_img_box > .slick-prev:before{
        content: "";
        width: 9px;
        height: 18px;
        background: url(../img/treat_example_img_after.webp);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
        top: 107%;
        transform: translateY(-50%);
        left: 10px;
    }
     /* example image slider  End*/
    .t_cost_example{
        flex-direction: column;
        height: auto;
        padding: 10px 15px 12px 15px;
        gap: 12px;
    }
    .t_cost_left{
        width: 100%;
        justify-content: center;
        border-right: unset;
        border-bottom: 1px dotted #45638b;
        padding-bottom: 10px;
    }
    .t_cost_right{
        width: 100%;
        font-size: 15px;
        text-align: center;
        align-items: center;
        gap: 10px;
    }
    .t_cost_right_fz{
        font-size: 21px;
    }
    .t_cost_right > p > span.sp_color{
        line-height: 1.2;
    }
    .t_cost_right > p > span.sp_color > .sp_bold{
        font-weight: 700;
    }
    /* t_cost_about */
    .t_cost_about{
        padding-top: 25px;
    }
    .t_cost_about_li{
        justify-content: start;
        gap: 20px;
        padding: 10px 0;
    }
    .t_cost_about_li:first-child{

    }
    .t_cost_about_left{
        width: 90px;
        font-size: 12px;
        text-align: start;
    }
    .t_cost_about_right{
        width: calc(100% - 110px);
        font-size: 12px;
    }
}
/* treatment Slider End*/

/* option */
.sec_option{
    background: linear-gradient(to bottom, #ffffff 0px, #ffffff 460px, #f3f6f9 460px, #f3f6f9 100%);
    text-align: center;
    padding-top: 150px;
    padding-bottom: 100px;
}
.option_ttl{
    display: inline;
    text-align: center;
    position: relative;
}
.option_ttl_one{
    font-size: 32px;
    font-weight: 500;
    color: #284b79;
    position: relative;
    display: inline;
}
.option_ttl_one::before{
    content: "";
    width: 70px;
    height: 65px;
    background: url(../img/sedation_ttl_left.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -15px;
    left: -90px;
}
.option_ttl_one::after{
    content: "";
    width: 70px;
    height: 65px;
    background: url(../img/sedation_ttl_right.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -15px;
    right: -90px;
}
.option_ttl-two{
    font-size: 75px;
    font-weight: 700;
    color: #284b79;
    position: relative;
    max-width: 850px;
    width: 100%;
    margin: 0 auto;
    z-index: 1;
}
.option_ttl-two::before{
    content: "";
    width: 138px;
    height: 76px;
    background: url(../img/option_mess.png);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -70px;
    left: -50px;
}
.option_ttl-two span{
    position: relative;
}
.option_ttl-two span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1; 
}
.option_card_blk{
    padding-top: 97px;
}
.first_option_card{
    display: flex;
    gap: 60px;
}
.first_option_card+.first_option_card{
    padding-top: 60px;
}
.option_card_blk .option_card{
    max-width: 590px;
    width: 100%;
    background-color: #284b79;
    padding: 50px;
    display: flex;
    gap: 30px;
    font-size: 16px;
    color: #ffffff;
    font-weight: 500;
    text-align: left;
    padding-right: 50px;
    padding-left: 50px;
    letter-spacing: 1px;
    line-height: 1.8;
    align-items: flex-end;
}
.option_card_blk .option_card .option_img{
    width: 180px;
    height: 180px;
}
.option_card_blk .fir_opt,.sec_opt,.thr_opt,.for_opt{
    position: relative;
}
.option_card_blk .fir_opt::before{
    content: "";
    width: 186px;
    height: 48px;
    background: url(../img/mark01.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -25px;
    right: 40px;
}
.option_card_blk .sec_opt::before{
    content: "";
    width: 324px;
    height: 48px;
    background: url(../img/mark02.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -25px;
    right: 40px;
}
.option_card_blk .thr_opt::before{
    content: "";
    width: 324px;
    height: 48px;
    background: url(../img/mark03.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -25px;
    right: 40px;
}
.option_card_blk .for_opt::before{
    content: "";
    width: 186px;
    height: 48px;
    background: url(../img/mark04.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -25px;
    right: 40px;
}
@media screen and (max-width: 768px) {
    .first_option_card {
        flex-direction: column;
        gap: 33px;
    }
    .option_ttl_one {
        font-size: 16px;
        max-width: 335px;
        display: block;
        text-align: right;
        margin: 0 auto;
        padding-right: 46px;
    }
    .option_ttl-two {
        font-size: 39px;
        max-width: 335px;
        width: 100%;
    }
    .option_ttl-two::before {
        width: 84px;
        height: 50px;
        top: -46px;
        left: -17px;
    }
    .first_option_card+.first_option_card {
        padding-top: 33px;
    }
    .option_card_blk .option_card {
        padding: 35px 35px 20px 35px;
        gap: 15px;
        font-size: 13px;
        color: #ffffff;
        font-weight: 500;
        text-align: left;
        padding-right: 13px;
        padding-left: 20px;
        letter-spacing: 0.9px;
        line-height: 1.4;
        align-items: center;
    }
    .option_card_blk .option_card .option_img {
        width: 100px;
        height: 100px;
    }
    .option_card_blk .fir_opt::before {
        width: 130px;
        height: 34px;
        top: -18px;
        right: unset;
        left: 0;
    }
    .option_card_blk .sec_opt::before {
        content: "";
        width: 227px;
        height: 34px;
        top: -18px;
        right: unset;
        left: 0;
    }
    .option_card_blk .thr_opt::before {
        width: 227px;
        height: 34px;
        top: -18px;
        right: unset;
        left: 0;
    }
    .option_card_blk .for_opt::before {
        width: 130px;
        height: 34px;
        top: -18px;
        right: unset;
        left: 0;
    }
    .sec_option {
        padding-top: 67px;
        padding-bottom: 30px;
        text-align: right;
        background: linear-gradient(to bottom, #ffffff 0px, #ffffff 320px, #f3f6f9 320px, #f3f6f9 100%);
    }
    .option_card_blk {
        padding-top: 90px;
    }
    .option_ttl_one::after {
    width: 31px;
    height: 28px;
    top: -7px;
    right: 10px;
}
.option_ttl_one::before {
    width: 31px;
    height: 28px;
    top: -7px;
    left: 66px;
} 
.option_ttl {
    display: block;
   
}  
}
/* option End*/

/* process */
.s_process{
    padding-top: 115px;
    padding-bottom: 300px;
}
.process_ttl{
    font-size: 75px;
    font-weight: 700;
    letter-spacing: 0.75px;
    text-align: center;
    color: #284b79;
    position: relative;
}
.process_ttl::before{
    content: "";
    width: 220px;
    height: 220px;
    background: url(../img/doc-circle.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -165px;
    left: 0;
    z-index: -1;
}
.process_ttl > span{
    position: relative;
    z-index: 2;
    padding: 0 4px;
}
.process_ttl > span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.process_section{
    margin-top: 250px;
    /* padding-left: 80px; */
    position: relative;
    display: flex;
    justify-content: center;
}
.process_section::before{
    content: "";
    max-width: 1080px;
    width: 100%;
    height: 35px;
    background: url(../img/process_bar_before.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -100px;
    left: 50%;
    transform: translateX(-50%);
}
.process_section::after{
    content: "";
    max-width: 1080px;
    width: 100%;
    height: 35px;
    background: url(../img/process_bar_after.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -100px;
    left: 50%;
    transform: translateX(-50%);
}
.process_card_wrap{
    display: flex;
    flex-direction: column;
    gap: 80px;
    max-width: 940px;
    width: 100%;
    border-left: 4px dotted #ffe36d;
}
.process_card{
    display: flex;
    gap: 50px;
}
.process_card:first-child{
    position: relative;
}
.process_card:first-child::before{
    content: "";
    width: 10px;
    height: 100px;
    background-color: #ffffff;
    position: absolute;
    top: 0;
    left: -5px;
}
.process_card:last-child{
    position: relative;
}
.process_card:last-child::before{
    content: "";
    width: 10px;
    height: 100px;
    background-color: #ffffff;
    position: absolute;
    bottom: 0;
    left: -5px;
}
.process_card.third_process_card > .process_card_left > .process_card_img::after{
    content: "";
    width: 38px;
    height: 21px;
    background: url(../img/process_down.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: -50px;
    left: 50%;
    transform: translateX(-50%);
}
.process_card_left{
    width: 500px;
    padding-left: 68px;
    position: relative;
    counter-increment: process-count;
}
.process_card_left::before{
    content: "0" counter(process-count);
    width: 80px;
    height: 80px;
    background: url(../img/process_left_before.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: -43px;
    font-size: 30px;
    font-weight: 700;
    color: #284b79;
    text-align: center;
    display: flex;
    justify-content: center;
    padding-top: 30px;
}
.process_card_left::after{
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    left: 0;
}
.process_card_right{
    width: calc(100% - 550px);
}
.process_card_img{
    width: 436px;
    height: 238px;
    position: relative;
}
.process_card_img > img{ 
    width: 100%;
    height: 100%;
    object-fit: cover;
}
.process_card:not(:last-child) > .process_card_left > .process_card_img::before{
    content: "";
    width: 38px;
    height: 21px;
    background: url(../img/process_down.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    bottom: -50px;
    left: 50%;
    transform: translateX(-50%);
}
.process_card_right{
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: start;
}
.process_right_ttl{
    font-size: 30px;
    font-weight: 700;
    letter-spacing: 4.4px;
    color: #284b79;
}
.process_right_txt{
    font-size: 17px;
    font-weight: 500;
    letter-spacing: 0.8px;
    line-height: 1.8;
    margin-top: 14px;
}
.process_first{
    width: calc(100% - 68px);
    background-color: #f3f6f9;
    margin-left: 68px;
    padding: 50px;
}
.process_first_ttl{
    font-size: 27px;
    font-weight: 700;
    letter-spacing: 0.6px;
    color: #284b79;
    border-bottom: 1px dotted #284b79;
    padding-bottom: 25px;
}
.process_first_li{
    display: flex;
    row-gap: 10px;
    column-gap: 20px;
    flex-wrap: wrap;
    padding-top: 25px;
}
.process_first_txt{
    font-size: 16px;
    font-weight: 600;
    letter-spacing: 0.2px;
}
@media screen and (max-width: 768px) {
    .s_process{
        padding-top: 60px;
        padding-bottom: 110px;
    }
    .process_ttl{
        font-size: 39px;
    }
    .process_ttl::before{
        display: none;
    }
    .process_section{
        margin-top: 100px;
    }
    .process_section::before{
        max-width: 355px;
        width: 100%;
        height: 29px;
        top: -45px;
        background: url(../img/process_bar_before_sp.webp);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
    }
    .process_section::after{
        max-width: 355px;
        width: 100%;
        height: 29px;
        bottom: -45px;
        background: url(../img/process_bar_after_sp.webp);
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        position: absolute;
    }
    .process_card_wrap{
        border-left: 0;
        gap: 35px;
        flex-wrap: wrap;
        column-gap: 15px;
        flex-direction: row;
    }
    .process_card{
        flex-direction: column;
        gap: 30px;
        width: calc(50% - 7.5px);
    }
    .process_card:first-child::before{
        display: none;
    }
    .process_card:last-child::before{
        display: none;
    }
    .process_card.third_process_card > .process_card_left > .process_card_img::after{
        display: none;
    }
    .third_process_card .process_card_right .process_right_ttl{
        text-align: start;
    }
    .process_card_left{
        width: 100%;
        padding-left: 0;
    }
    .process_card_left::before{
        width: 50px;
        height: 50px;
        bottom: -20px;
        top: unset;
        left: 50%;
        transform: translateX(-50%);
        z-index: 2;
        font-size: 20px;
        padding-top: 15px;
    }
    .process_card_right{
        width: 100%;
        justify-content: center;
        align-items: center;
    }
    .process_card_img{
        width: 100%;
        height: 160px;
    }
    .process_card:not(:last-child) > .process_card_left > .process_card_img::before{
        display: none;
    }
    .process_right_ttl{
        font-size: 18px;
        text-align: center;
        letter-spacing: 1.4px;
    }
    .process_right_txt{
        font-size: 14px;
        margin-top: 10px;
        letter-spacing: 0.2px;
    }
    .process_first{
        width: 100%;
        margin-left: 0;
        padding: 20px;
    }
    .process_first_ttl{
        font-size: 16px;
        text-align: center;
        padding-bottom: 15px;
    }
    .process_first_li{
        row-gap: 5px;
        padding-top: 15px;
    }
    .process_first_txt{
        width: 100%;
        font-size: 13px;
    }
}
/* process End*/

/* cost */
.sec_cost {
    background-color: #f3f6f9;
    text-align: center;
    padding-bottom: 120px;
    position: relative;
}
.sec_cost::before{
    content: "";
    max-width: 355px;
    width: 220px;
    height: 220px;
    top: -110px;
    right: 50px;
    background: url(../img/doc-circle.webp);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
}
.sec_cost .ttl{
    margin-top: -61px;
    margin-bottom: 50px;
    color:#284b79;
    letter-spacing: 7.5px;
}
.sec_cost .cost_txt{
    font-size: 31px;
    text-align: center;
    color:#284b79;
    font-weight: 700;
    padding-bottom: 105px;
    letter-spacing: 4px;
}
.sec_cost .cost_txt > span{
    position: relative;
    z-index: 2;
    padding: 0 4px;
}
.sec_cost .cost_txt > span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: -1;
}
.circle{
    max-width: 725px;
    width: 100%;
    margin: 0 auto;
    padding-bottom: 95px;
}
.circle_blk{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 30px;
    font-size: 33px;
    font-weight: 700;
    letter-spacing: 2.4px;
}
.left_circle{
    width: 306px; /* Width of the circle */
    height: 306px; /* Height of the circle */
    background-color: #284b79; /* Circle color */
    border-radius: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #ffffff;
}
.right_circle{
    width: 306px; /* Width of the circle */
    height: 306px; /* Height of the circle */
    background-color: #ffffff; /* Circle color */
    border-radius: 50%; 
    display: flex;
    justify-content: center;
    align-items: center;
    color: #284b79;
}

.right_circle p span{
    font-size: 22px;
}

.circle_blk .plus{
    width: 60px;
    height: 60px;
}
.sec_cost .left_txt{
    text-align: right;
    font-size: 14px;
    color: #284b79;
    font-weight: 500;
    padding-right: 60px;
    padding-top: 20px;
    letter-spacing: 0.8px;
}
.sec_cost .tbl_ttl{
    text-align: center;
    font-size: 38px;
    color: #284b79;
    font-weight: 700;
    padding-bottom: 30px;
    letter-spacing: 1.5px;
}
.sec_cost .tbl_under{
    text-align:right;
    font-size: 14px;
    color: #284b79;
    font-weight: 500;
    padding-top: 29px;
    letter-spacing: 0.5px;
}
.pay_ttl{
    text-align: center;
    font-size: 38px;
    color: #284b79;
    font-weight: 700;
    padding-top: 110px;
    padding-bottom: 61px;
    letter-spacing: 1.9px;
}
.sec_cost .card_blk{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 15px;
    font-size: 20px;
    color: #333333;
    font-weight: 700;
    justify-content: center;
    padding-bottom: 80px;
    letter-spacing: 1px;
    line-height: 1;
}
.sec_cost .card_blk span{
    font-size: 15px;
    font-weight: 700; 
}
.card_blk .cur_mon,.hos,.loan,.credit,.elec,.qr{
    background-color: #fff;
    max-width: 330px;
    width: 100%;
    padding: 69px 0;
}
.card_blk .loan{
    padding: 59px 0; 
}
.card_blk .credit{
    padding: 25px 0; 
}
.card_blk .elec{
    padding: 23px 0; 
}
.card_blk .qr{
    padding: 30px 0; 
}
.card_blk .credit .visa{
    max-width: 236px;
    width: 100%;
    margin: 0 auto;
    padding-top: 17px;
}
.card_blk  .electric{
    max-width: 215px;
    width: 100%;
    margin: 0 auto;
    padding-top: 17px;
}
.card_blk  .qr_img{
    max-width: 282px;
    width: 100%;
    margin: 0 auto;
    padding-top: 17px;
}
.sec_cost .expense_txt{
    text-align:center;
    font-size: 23px;
    color: #284b79;
    font-weight: 500;
    padding-bottom: 35px;
    letter-spacing: 1.4px;
}
.sec_cost .expense_blk{
    max-width: 903px;
    width: 100%;
    background-color: #fff;
    padding: 50px 60px;
    margin: 0 auto;
    text-align: left;
    font-size: 23px;
    font-weight: 500;
    color: #284b79;
}
.sec_cost .expense_blk .expense_ttl{
    border-bottom: 1px dotted #284b79;
    padding-bottom: 25px;
    letter-spacing: 1.5px;
}
.sec_cost .expense_list{
    display: flex;
    font-size: 17px;
    font-weight: 500;
    color: #284b79;
    padding-top: 30px;
    padding-left: 22px;
    line-height: 1.7;
    align-items: center;
    letter-spacing: 1px;
}
.sec_cost .expense_list .list{
    position: relative;
}
.sec_cost .expense_list .list::before{
    content: "";
    display: block;
    width: 15px; 
    height: 15px; 
    background-color: #284b79; 
    margin-left: -22px; 
    position: absolute;
    left: 0px;
    top: 7px;
}

.sec_cost .expense_list .left_list{
    max-width: 450px;
    width: 100%;
    padding-right: 35px;
}
/* price table */
.price_tbl_wrap{
    padding: 0 80px;
}
.add_txt{
    text-align: left;
    font-size: 15px;
    color: #284b79;
    font-weight: 500;
    padding-top: 20px;
    letter-spacing: 0.8px;
}
.price_tbl{
  border-top: 2px solid #284b79;
}
.price_row_sty_one{
    display: grid;
    grid-template-columns: 1fr 1fr;
    border-bottom: 2px solid #284b79;
    place-items: center;
    gap: 50px;
}
.price_ttl_left {
    width: 100%;
}
.price_sty_one_right{
    display: grid;
    width: 100%;
    grid-template-columns: repeat(3, 1fr);
}
.price_row_sty_one.last{
    grid-template-columns: 1fr;
    text-align: start;
    padding-left: 55px;
}
.price_row_sty_one.new_line_last{
    padding: 10px 0;
    gap: 500px;
}
.price_row_sty_one.new_line_last > .price_sty_one_col {
    width: 100%;
    text-align: left;
    padding-left: 27px;
}
.price_tbl_ttl{
    font-size: 19px;
    font-weight: 700;
    line-height: 1;
    letter-spacing: 0.8px;
    color: #284b79;
    padding: 17px 0;
}
.price_tbl_ttl_b{
    font-size: 19px;
    font-weight: 700;
    color: #284b79;
    letter-spacing: 0.8px;
}
.price_row_sty_two{
    display: grid;
    grid-template-columns: 1fr 1fr;
    place-items: center;
    border-bottom: 2px solid #284b79;
    background-color: #ffffff;
    padding: 17px 0;
    gap: 50px;
}
.sty_two_left{
    display: flex;
    justify-content: center;
    align-items: center;
}
.sty_two_right{
    width: 100%;
    display: flex;
    flex-direction: column;
}
.sty_two_right_upper,.sty_two_right_lower{
    display: grid;
    grid-template-columns: repeat(3,1fr);
    place-items: center;
}
.sty_two_right_upper{
    border-bottom: 2px dotted #284b79;
}
.sty_two_right_upper .price_tbl_ttl,.sty_two_right_lower .price_tbl_ttl{
    padding: 22px 0;
}
.sty_two_last{
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    gap: 10px;
    justify-content: center;
}
.sty_two_last > .price_tbl_ttl{
    padding: 0;
}
.sty_two_last .price_num,.price_sty_one_col .price_num{
    font-family: "Lato", serif;
    font-size: 22px;
    font-weight: 900;
    color: #4c93f0;
}
.sty_two_last .price_num span,.price_sty_one_col .price_num span{
    font-size: 15px;
    font-weight: 900;
}
@media screen and (max-width: 768px) {
    .price_row_sty_one.new_line_last > .price_sty_one_col {
        padding-left: 15px;
    }
    .sec_cost::before{
        display: none;
    }
    .sec_cost .ttl {
        margin-top:0;
        margin-bottom: 40px;
        letter-spacing: 2.5px;
    }
    .sec_cost .cost_txt {
        font-size: 18px;
        padding-bottom: 53px;

    }
    .left_circle {
        width: 150px;
        height: 150px;
        background-color: #284b79;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        color: #ffffff;
    }
    .right_circle {
        width: 150px;
        height: 150px;
        background-color: #ffffff;
        border-radius: 50%;
        display: flex;
        justify-content: center;
        align-items: center;
        color: #284b79;
    }
    .right_circle p span{
        font-size: 11px;
    }
    .sec_cost .card_blk span{
        font-size: 10px;
    }
    .circle_blk .plus {
        width: 25px;
        height: 25px;
    }
    .circle_blk {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 5px;
        font-size: 20px;
        font-weight: 700;
    }
    .sec_cost .left_txt {
        font-size: 10px;
        padding-right: 8px;
        padding-top: 9px;
    }
    .circle {
        padding-bottom: 45px;
    }
    .sec_cost .tbl_ttl {
        font-size: 21px;
        padding-bottom: 30px;
    }
    .sec_cost .tbl_under {
        text-align: left;
        font-size: 10px;
        padding-top: 11px;
        padding-left: 7px;
    }
    .sec_cost .tbl_under span{
        padding-left: 10px;
    }
    .pay_ttl {
        font-size: 21px;
        padding-top: 37px;
        padding-bottom: 25px;
    }
    .card_blk .cur_mon, .hos, .loan, .credit, .elec, .qr {
        background-color: #fff;
        max-width: 162px;
        width: 100%;
        padding: 42px 0;
    }
    .sec_cost .card_blk {
        gap: 10px;
        font-size: 16px;
        color: #333333;
        font-weight: 700;
        padding-bottom: 45px;
        line-height: 1;
        display: grid;
        grid-template-columns: repeat(2,1fr);
    }
    .card_blk .loan {
        padding: 34px 0;
    }
    .card_blk .credit .visa ,.card_blk .electric,.card_blk .qr_img{
        max-width: 135px;
        width: 100%;
        padding-top: 5px;
    }
    .card_blk .credit {
        padding: 19px 0;
    }
    .card_blk .elec {
        padding: 15px 0;
    }
    .card_blk .qr {
        padding: 25px 0;
    }
    .sec_cost .expense_txt {
        font-size: 15px;
        padding-bottom: 30px;
    }
    .sec_cost {
        padding-top: 30px;
        padding-bottom: 20px;
    }
    .sec_cost .expense_blk {
        padding: 20px 18px 27px 23px;
        text-align: center;
        font-size: 17px;
    }
    .sec_cost .expense_blk .expense_ttl {
        padding-bottom: 16px;
    }
    .sec_cost .expense_list {
        font-size: 13px;
        font-weight: 500;
        color: #284b79;
        padding-top: 15px;
        padding-left: 17px;
        flex-direction: column;
        text-align:left;
        line-height: 1.8;
        align-items: baseline;
        letter-spacing: 0.1px;
    }
    .sec_cost .expense_list .left_list {
        padding-right: 0px;
    }
    .sec_cost .expense_list .list::before {
        width: 10px;
        height: 10px;
        margin-left: -16px;
        left: 0px;
        top: 7px;
    }
    .price_tbl_wrap{
        padding: 0;
    }
    .price_ttl_left{
        padding: 0 10px;
    }
    .price_tbl_ttl{
        width: 100%;
        font-size: 13px;
        padding: 7px 0;
        text-align: left;
    }
    .price_tbl_ttl_b{
        font-size: 13px;
        letter-spacing: 0.3px;
        padding-left: 10px;
    }
    .sty_two_last .price_num, .price_sty_one_col .price_num{
        font-size: 12px;
    }
    .price_tbl_ttl_b span{
        font-size: 9px;
    }
    .sty_two_right_upper .price_tbl_ttl,.sty_two_right_lower .price_tbl_ttl{
        padding: 10px 0;
    }
    
    .sty_two_last .price_num span,.price_sty_one_col .price_num span{
        font-size: 6px;
    }
    .price_row_sty_two{
        grid-template-columns: 2fr 1fr;
        gap: 6px;
        padding: 7px 0;
        align-items: center;
        place-items: start;
    }
    .price_row_sty_one{
        grid-template-columns: 2fr 1fr;
        gap: 6px;
        place-items: start;

    }
    .price_row_sty_one.last{
        grid-template-columns: 1fr;
        text-align: start;
        padding-left: 0;
    }
    .price_sty_one_right{
        grid-template-columns: 1fr 1fr 2fr;
        place-items: center;
    }
    .sty_two_last{
        gap: 5px;
        align-items: center;
    }
    .price_row_sty_one.new_line_last{
        grid-template-columns: 3fr 1fr;
        gap: 50px;
        background-color: #ffffff;
    }
    .price_tbl_ttl.center, .price_sty_one_col.center{
        width: 100%;
    }
   
}
@media screen and (max-width: 350px) {
    .left_circle {
        width: 130px;
        height: 130px;
    }
    .right_circle {
        width: 130px;
        height: 130px;
    }
    .circle_blk .plus {
        width: 20px;
        height: 20px;
    }
    .circle_blk {
        gap: 5px;
        font-size: 16px;
        font-weight: 700;
    }
}
/* cost End */

/* doctor */
.sec_doctor {
    padding: 120px 0;
    background-color: #ffffff;
    position: relative;
    text-align: center;
  }
  .sec_doctor .ttl,.sec_cost .ttl,.sec_process .ttl {
    text-align: center;
    font-size: 75px;
    font-weight: 700;
    position: relative;
    z-index: 2;
    display: inline-block;
    color: #284b79;
    letter-spacing: 7.5px;
  }
  .sec_doctor .ttl::before,.sec_cost .ttl::before,.sec_process .ttl::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    z-index: -1;
    position: absolute;
    bottom: 5px;
    left: 0;
  }
  .doctor_blk {
    display: flex;
    gap: 70px;
    padding-top: 100px;
  }
  .doctor_blk .img_blk {
    max-width: 466px;
    width: 100%;
  }
  .doctor_blk:after{
    position: absolute;
    content: "";
    background: url(../img/doc-circle.webp)no-repeat center/contain;
    width: 199px;
    height: 200px;
    right: 10%;
    top: 22%;

  }
  .doctor_name {
    font-size: 24px;
    font-weight: 700;
    padding-bottom: 17px;
    color: #284b79;
    text-align: left;
    padding-top: 28px;
    letter-spacing: 2px;
  }
  .doctor_name span {
    font-size: 35px;
  }
  .doctor_txt {
    font-size: 17px;
    font-weight: 600;
    max-width: 540px;
    width: 100%;
    color: #333333;
    text-align: left;
    letter-spacing: 0.5px;
    line-height: 1.8;
  }
  @media screen and (max-width: 768px) {
    .sec_doctor {
      padding-top: 61px;
      padding-bottom: 35px;
      background-color: #ffffff;
    }
    .sec_doctor .ttl,.sec_cost .ttl {
      font-size: 39px;
     
    }
    .doctor_blk {
      display: flex;
      flex-direction: column;
      gap: 30px;
      padding-top: 60px;
    }
    .doctor_name {
      font-size: 16px;
      padding-bottom: 10px;
      text-align: center;
      padding-top: 0px;
    }
    .doctor_name span {
      font-size: 23px;
    }
    .doctor_txt {
      font-size: 15px;
      font-weight: 600;
      padding-bottom: 16px;
      color: #333333;
      text-align: left;
      letter-spacing: 0.9px;
    }
    .doctor_txt:last-child {
      padding-bottom: 0; /* Remove bottom padding for the last child */
    }
    .doctor_blk .img_blk {
      padding-left: 25px;
      padding-right: 25px;
    }
    .doctor_blk:after {
        position: unset;
        display: none;
    }
  }
/* doctor End*/

/* before treatment */
.sec_tre {
    background-color: #f3f6f9;
    padding: 100px 0;
  }
  .sec_tre .heading {
    font-size: 38px;
    font-weight: 700;
    padding-bottom: 22px;
    color: #284b79;
    text-align: left;
    letter-spacing: 5px;
  }
  .sec_tre .txt {
    font-size: 17px;
    font-weight: 600;
    padding-bottom: 59px;
    color: #333333;
    text-align: left;
    letter-spacing: 0.8px;
    line-height: 1.8;
  }
  .tre_list {
    background-color: #e8edf3;
    padding: 50px 10px 50px 30px;
  }
  .tre_list .list_ttl{
      font-size: 24px;
     font-weight: 700;
     padding-bottom: 50px;
     color: #284b79;
     text-align: left;
     letter-spacing: 1.5px;
  }
  
  .tre_list .list_blk{
      display: grid;
      /* justify-content: flex-start; */
      gap: 40px;
      grid-template-columns: 90px 1fr;
      padding-bottom: 50px;
  }
  .tre_list .list_blk:last-child {
      padding-bottom: 0; /* Remove padding-bottom for the last child */
  }
  .list_blk .left_blk{
      font-size: 18px;
      font-weight: 700;
      color: #284b79;
      text-align: left;
      letter-spacing: 1.4px;
  }
  .list_blk .right_blk{
      font-size: 14px;
      font-weight: 700;
      color: #333333;
      text-align: left;
      display: flex;
      flex-direction: column;
      gap: 7px;
      letter-spacing: 1.1px;
  }
  .list_blk .right_blk p{
      position: relative;
      padding-left: 14px;

  }
  .right_blk p::before {
      content: '●';
      position: absolute;
      left: 0;
      top: 50%;
      transform: translateY(-50%);
      font-size: 14px; 
      line-height: 1; 
      color: #333333;
  }
  .policy_blk{
    padding: 40px 53px;
    background-color: #ffffff;
    margin-top: 65px;
  }
  .policy_blk .policy_ttl{
      font-size: 24px;
      font-weight: 700;
      color: #284b79;
      text-align: left;
      letter-spacing: 1.5px;
  }
  .policy_blk .des_ttl{
   font-size: 18px;
      font-weight: 700;
      color: #284b79;
      text-align: left;
     margin-top: 18px;
      position: relative;
      padding-left: 22px;
      letter-spacing: 1.5px;
  }
  .policy_blk .des_ttl::before{
    content: '●';
    position: absolute;
    left: 0;
    top: 4px;
    font-size: 19px; 
    line-height: 1; 
    color: #284b79;
  }
  .p-risk_cont {
    height: 230px;
    overflow-y: auto;
}

.p-risk_cont::-webkit-scrollbar {
    width: 4px;
}

.p-risk_cont::-webkit-scrollbar-track {
    background: transparent; 
}

.p-risk_cont::-webkit-scrollbar-thumb {
    background-color:#284b79 ; 
}

.p-risk_ttl {
    font-size: 14px;
    font-weight: 600;
    margin-bottom: 10px;
    color: #333333;
    line-height: 1.8;
    position: relative;
    letter-spacing: 1px;
}

/* .p-risk_ttl::before{
    content: '●';
    position: absolute;
    left: 0;
    top: 11px;
    font-size: 5px; 
    line-height: 1; 
    color: #333333;
} */
.p-risk_item {
    margin-top: 25px;
    margin-bottom: 10px;
    padding-right: 27px;
}

  @media screen and (max-width: 768px) {
      .sec_tre {
          padding-top: 45px;
          padding-bottom: 22px;
      } 
      .sec_tre .heading {
          font-size: 23px;
          padding-bottom: 25px;
          color: #284b79;
          text-align: center;
      }
      .sec_tre .txt {
          font-size: 15px;
          padding-bottom: 30px;
          letter-spacing: 0.8px;
      }
      .tre_list {
          padding: 31px 19px;
          border-radius: 1px;
      }
      .tre_list .list_ttl {
          font-size: 18px;
          padding-bottom: 31px;
          text-align: left;
      }
      .tre_list .list_blk {
          grid-template-columns: 1fr;
          padding-bottom: 20px;
          gap: 10px;
      }
      .list_blk .left_blk {
          font-size: 15px;
          text-align: left;
      }
     
      .list_blk .right_blk {
          font-size: 12px;
          text-align: left;
          letter-spacing: 0.4px;
         
      }
      .right_blk p::before {
          content: '●';
          position: absolute;
          left: 0;
          top: 11px;
          font-size: 10px;
          line-height: 1;
          color: #333333;
      }
      .list_blk .right_blk p {
          position: relative;
          padding-left: 13px;
      }
      .policy_blk {
       padding: 30px 15px 22px 22px;
        margin-top: 23px;
    }
    .policy_blk .policy_ttl {
        font-size: 18px;
        font-weight: 700;
        color: #284b79;
        text-align: left;
    }
    .policy_blk .des_ttl {
        font-size: 14px;
        text-align: left;
        position: relative;
        padding-left: 20px;
    }
    .policy_blk .des_ttl::before {
        content: '●';
        position: absolute;
        left: 0;
        top: 6px;
        font-size: 14px;
        line-height: 1;
        color: #284b79;
    }
    .p-risk_cont {
        height: 213px;
        overflow-y: auto;
    }
    .p-risk_ttl {
        font-size: 12px;
        margin-bottom: 8px;
    }
    .p-risk_item {
        margin-top: 15px;
        margin-bottom: 20px;
        padding-right: 7px;
    }
    /* .p-risk_ttl::before {
        left: 0;
        top: 9px;
        font-size: 4px;
        line-height: 1;
        color: #333333;
    } */
    .p-risk_cont::-webkit-scrollbar {
        width: 4px;
    }
  }
/* before treatment End*/

/* map */
@media screen and (max-width: 768px) {
    .sec_map iframe{
      height: 380px;
    }
}
/* map End */

/* about */
.sec_about{
    padding-top:45px;
    padding-bottom: 65px;
}
.sec_about .table_blk{
    padding:0 70px;
}
.sec_about .about_img{
    width: 195px;
    height: 168px;
    margin: 0 auto;
    margin-bottom: 60px;
}
.clinic_table {
    width: 100%;
    height: 100%;
    border-collapse: collapse;
    position: relative;
}
.tbl_row:first-child {
    border-top: 1px solid #284b79;
}
td.tbl_row_left {
    width: 150px;
    padding: 30px 20px 30px 48px;
    color: #284b79;
    font-size: 15px;
    font-weight: 600;
    line-height: 1.7;
    /* border-right: 1px solid #284b79; */
    vertical-align: top;
    background-color: #f3f6f9; 
}
td.third_left{
    padding: 70px 20px 30px 48px;
}
td.fourth_left{
    padding: 52px 20px 30px 48px;
}

td.tbl_row_right {
    width: calc(100% - 150px);
    padding:30px 20px 27px 33px;
    vertical-align: top;
    background-color: #ffffff;
}
.tbl_row_right > .right_txt {
    font-size: 15px;
    font-weight: 600;
    line-height: 1.7;
    color: #284b79;
}
.tbl_row_right  .rg_first {
    padding-top: 17px;
    font-weight: 600 !important;
}
.tbl_row_right > .rg_txt {
    font-size: 13px;
    font-weight: 600;
    line-height: 1.7;
    color: #284b79;
}
.tbl_row{
    display: flex;
    flex-direction: row;
}
.tbl_row {
    border-bottom: 1px solid #284b79;
}
.time_tbl{
    width: 100%;
    margin-top: 20px;
    color: #284b79;
}
.time_tbl thead tr{
    background-color: #f3f6f9; 
    height: 30px;
    font-size: 14px;
 }
 .time_tbl tbody tr{
    border-bottom: 1px solid #284b79;
    font-size: 15px;
 }
.time_tbl td{
    height: 52px;
    text-align: center;
 }

 .time_tbl th{
    text-align: center !important;
 }
 .time_tbl .left_tbl{
    width: 150px;
 }
 tfoot tr td{
    text-align: right !important;
 }
 .sec_about .tbl_ttl{
    font-size: 18px;
    font-weight: 700;
    color: #284b79;
    text-align:center;
    margin-top: 18px;
    letter-spacing: 1.5px;
 }
@media screen and (max-width: 768px) {
    .tbl_row{
        display: flex;
        flex-direction: column;
    } 
    .sec_about .table_blk {
        padding: 0;
    }  
    td.tbl_row_left {
        width: 100%;
        padding: 3px 35px 3px 13px;
        color: #284b79;
        font-size: 12px;
        font-weight: 600;
        line-height: 1.7;
        border-bottom: 1px solid #284b79;
        /* border-right: 1px solid #284b79; */
        vertical-align: top;
        background-color: #f3f6f9;
    }
    .sec_about {
        padding-top: 60px;
        padding-bottom: 95px;
    }
    td.tbl_row_right {
        width:100%;
        padding: 16px 7px 16px 13px;
        vertical-align: top;
        background-color: #ffffff;
    }
    .tbl_row:last-child {
        border-bottom: 1px solid #284b79;
    }
    .tbl_row_right > .right_txt {
        font-size: 14px;
        font-weight: 600;
        line-height: 1.7;
        color: #284b79;
    }
    .tbl_row:first-child {
        border-top: 0;
    }
    .tbl_row{
        border-bottom: 0;
    }
    .tbl_row_right .rg_first {
        padding-top: 15px;
    }

    .sec_about .about_img {
        width: 195px;
        height: 168px;
        margin: 0 auto;
        margin-bottom: 50px;
    }
    .time_tbl .left_tbl {
        width: 100px;
    }
}
/* about End */

/* contact */
.p_ortho_section{
    background: linear-gradient(to right, #ffffff 50%, #ffffff 50%, #fcfcfc 50%, #fcfcfc 100%);
    position: relative;
}
.p_ortho_section::before{
    content: "";
    width: 50%;
    height: 52px;
    background-color: #ffffff;
    position: absolute;
    top: -1px;
    right: 0;
    z-index: 2;
}
.p-ortho {
    width: 100%;
    position: relative;
    /* padding-bottom: 80px; */
}
.ortho_blk{
    position: relative;
    margin: 0 auto;
    background: linear-gradient(to right, #ffffff 50%, #ffffff 50%, #fcfcfc 50%, #fcfcfc 100%);

}
.ortho_blk::before{
    position: absolute;
    background: url(../img/doc-circle.webp)no-repeat center/contain;
    width: 220px;
    height: 220px;
    content: "";
    top: -100px;
    left: -80px;

}
.p-ortho_wrapper {
    max-width: 1350px;
    margin: 0 auto;
    width: 100%;
}

.p-ortho_img {
    width: 100%;
    height: 540px;
    aspect-ratio: 767 / 540;
    background-image: url(../img/contact_photo.webp);
    background-size: contain;
    background-repeat: no-repeat;
    background-position: left center;
    position: relative;
    margin: auto;
    z-index: 2;
}
.p-ortho_img::before{
    position: absolute;
    background: url(../img/img_tbl.webp)no-repeat center/contain;
    width: 126px;
    height: 250px;
    content: "";
    top: -60px;
    left: -76px;
}
.p-ortho_txt_wrapper {
    position: absolute;
    right: 20px;
    top: 150px;
    z-index: 3;
    color: #0f294c;
    width: fit-content;
    display: inline-block;
}
.ortho_ttl {
    display: inline-block;
    font-size: 37px;
    color: #284b79;
    font-weight: 700;
    text-align:right;
    line-height: 1.5;
}
.ortho_ttl span{
    position: relative;
    z-index: 2;
}
.ortho_ttl span::before{
    content: "";
    width: 100%;
    height: 25%;
    background-color: #fbeaa3;
    z-index: -1;
    position: absolute;
    bottom: 0;
    left: 0;
}
.ortho_list {
    margin-top: 50px;
    list-style: none;
}
.ortho_add{
    display: grid;
    max-width: 660px;
    grid-template-columns: 1fr 1fr;
    position: absolute;
    right: 20px;
    bottom: 100px;
    z-index: 3;
    width: 100%;
    text-align: center;
    color: #fafaf9;
    font-weight: 600;
}
.ortho_add .ortho_ph{
    background-color: #284b79;
    display: flex;
    justify-content: center;
    flex-direction: column;
    padding-top: 23px;
    padding-bottom: 28px;
    font-size: 17px;
}
.ortho_add .ortho_ph .ph{
    font-size: 28px;
    font-weight: 700;
    position: relative;
    font-family: "Lato", serif;
} 
.ortho_add .ortho_ph .ph::before{
    position: absolute;
    background: url(../img/ico_tel.webp)no-repeat center/contain;
    width: 20px;
    height: 28px;
    content: "";
    top: 8px;
    left: 50px;
}
.ortho_add .ortho_cal{
   background-color: #265ba0;
   display: flex;
    justify-content: center;
    flex-direction: column;
    padding-top: 23px;
    padding-bottom: 28px;
    font-size: 17px;
    position: relative;
}
.ortho_add .ortho_cal:after{
    position: absolute;
    background: url(../img/ico_next.webp)no-repeat center/contain;
    width: 7px;
    height: 13px;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    right: 20px;
}
.ortho_add .ortho_cal .mail{
    font-size: 28px;
    font-weight: 700;
    position: relative;
}
.ortho_add .ortho_cal .mail::before{
    position: absolute;
    background: url(../img/contact_mail.webp)no-repeat center/contain;
    width: 38px;
    height: 36px;
    content: "";
    top: 4px;
    left: 36px;
}
@media screen and (max-width: 768px) {
    .p-ortho {
        background: #edefef;
        text-align: center;
        padding-bottom: 20px;
    }
    .p-ortho_img {
        width: 100%;
        height: 209px;
        aspect-ratio: unset;
        background-image: url(../img/contact_photo_sp.webp);
        background-size: cover;
        background-repeat: no-repeat;
        background-position: center;
        top: -23px;
    }
    .p-ortho_txt_wrapper {
        max-width: 100%;
        position: unset;
        padding-bottom:23px;
        margin: 0 auto;
    }
    .ortho_ttl {
        display:block;
        font-size: 21px;
        color: #284b79;
        font-weight: 700;
        text-align: center;
        line-height: 1.5;
        letter-spacing: 0.75px;
    }
    .ortho_add {
        display: grid;
        max-width:375px;
        grid-template-columns: 1fr;
        position: unset;
        margin: 0 auto;
        z-index: 3;
        width: unset;
        text-align: center;
        color: #fafaf9;
        font-weight: 600;
        gap: 5px;
    }
    .p-ortho_img::before {
        position: absolute;
        background: url(../img/img_tbl.webp) no-repeat center / contain;
        width: 75px;
        height: 150px;
        content: "";
        top: -29px;
        left: unset;
        right: 15px;
    }
    .ortho_blk::before {
        top: -71px;
        width: 140px;
        height: 140px;
    }
    .ortho_blk{
        max-width: 375px;
        width: 100%;
        margin: 0 auto;
        background: unset;
    }
    .ortho_add .ortho_ph {
        background-color: #284b79;
        display: flex;
        justify-content: center;
        flex-direction: column;
        padding-top: 8px;
        padding-bottom: 8px;
        font-size: 13px;
        align-items: center;
    }
    .ortho_add .ortho_cal {
        padding-top: 8px;
        padding-bottom: 8px;
        font-size: 13px;
        position: relative;
        align-items: center;
        height: 83px;
    }
    .ortho_add .ortho_cal p:first-child{
        line-height: 1;
    }
    .ortho_add .ortho_cal .mail {
        font-size: 20px;
        display: inline;
        width: fit-content;
        padding-left: 37px;
    }
    .ortho_add .ortho_cal .mail::before {
        width: 30px;
        height: 27px;
        content: "";
        top: 5px;
        left: 0;
    }
    .ortho_add .ortho_ph .ph::before {
        width: 19px;
        height: 28px;
        content: "";
        top: 12px;
        left: 0;
    }
    .ortho_add .ortho_ph .ph {
        display: inline;
        width: fit-content;
        letter-spacing: 0.2px;
        padding-left: 27px;
    }
    .ortho_ttl span::before{
        content: "";
        width: 100%;
        height: 25%;
        background-color: #fbeaa3;
        z-index: -1;
        position: absolute;
        bottom: 0;
        left: 0;
    }
    .ortho_add .ortho_cal:after{
        right: 10px;
    }
}
/* contact End */

/* footer slider  */
.footer_slider{
    padding-top: 80px;
}
.footer_slider .footer_slider_img{
    width: 440px;
    height: 294px;
    margin-right: 20px;
}
.footer_slider .footer_slider_img >  img{
    width: 100%;
    height: 100%;
    object-fit: cover;
}
@media screen and (max-width: 768px) {
    .footer_slider .footer_slider_img{
        width: 270px;
        height: 180px;
        margin-right: 10px;
    }
    .footer_slider{
        padding-top: 30px;
    }
}
/* footer slider End */

/* footer */
footer{
    background-color: #fff;
}
footer .footer_txt{
    font-size: 13px;
    text-align: center;
    color: #284b79;
    font-weight: 600;
    padding-top: 55px;
    padding-bottom: 34px;
}
@media screen and (max-width: 768px) {
    footer .footer_txt{
        font-size: 9px;
        padding-top: 25px;
        padding-bottom: 29px;
    }  
}
/* footer End*/

/* fixed footer */
#fixed_footer.on {
    bottom: 0;
}
#fixed_footer {
    position: fixed;
    left: 0;
    bottom: -110px;
    width: 100%;
    background-color: transparent;
    z-index: 5;
    transition: all 0.4s cubic-bezier(1, 0, 0, 1);
}
.footer_flex {
    display: flex;
    justify-content: end;
    align-items: center;
    margin: 0 auto;
    width: 100%;
   /* max-width: 1400px; */
}
.footer_wrapper .logo_blk{
    max-width: 435px;
    width: 100%;
    margin: 0 auto;
}
.footer_wrapper .ph_blk{
    background-color: #284b79;
    max-width: 435px;
    width: 100%;
    text-align: center;
    font-size: 33px;
    font-weight: 700;
    position: relative;
    font-family: "Lato", serif;
    color: #fafaf9;
    padding: 30px 10px;
}
.footer_wrapper .ph_blk .ph{
    position: relative;
    display: inline;
}
.footer_wrapper .ph_blk .ph::before{
    position: absolute;
    background: url(../img/ico_tel.webp) no-repeat center / contain;
    width: 20px;
    height: 28px;
    content: "";
    top: 8px;
    left: -28px;
}
.footer_wrapper .mail_blk{
    background-color: #265ba0;
    max-width: 435px;
    width: 100%;
    text-align: center;
    font-size: 26px;
    font-weight: 700;
    color: #fafaf9;
    padding: 35px 10px;
}
.footer_wrapper .mail_blk .mail{
    position: relative;
    display: inline;
}
.footer_wrapper .mail_blk .mail::before{
    position: absolute;
    background: url(../img/contact_mail.webp) no-repeat center / contain;
    width: 38px;
    height: 36px;
    content: "";
    top: 4px;
    left: -50px;
}
.footer_wrapper .pageTop{
background-color: #4c93f0;
max-width: 112px;
width: 100%;
padding: 33px 0;
cursor: pointer;

}
.footer_wrapper .pageTop img{
    width: 39px;
    height: 43px;
    margin: 0 auto;
    }
    
.footer_logo{
    width: 296px;
    height: 67px;
    margin: 0 auto;
}
@media screen and (max-width: 768px) {
    .footer_wrapper .ph_blk {
        font-size: 18px;
        padding: 15px 5px;
    }
    .footer_wrapper .mail_blk {
        font-size: 15px;
        padding: 17.5px 5px;
    }
    .footer_wrapper .mail_blk .mail{
        padding-left: 33px;
    }
    .footer_wrapper .mail_blk .mail::before {
        width: 24px;
        height: 22px;
        content: "";
        top: 0px;
        left: 0;
    }
    .footer_wrapper .ph_blk .ph{
        padding-left: 22px;
    }
    .footer_wrapper .ph_blk .ph::before {
        width: 14px;
        height: 20px;
        content: "";
        top: 1px;
        left: 0;
    }
    .sp__wri {
        writing-mode: horizontal-tb;
    }
   
}
@media screen and (max-width: 350px) {
    .footer_wrapper .ph_blk {
        font-size: 16px;
        padding: 15px 5px;
    }
    .footer_wrapper .mail_blk {
        font-size: 13px;
        padding: 17.5px 5px;
    }
    /* .footer_wrapper .ph_blk .ph::before {
        top: -1px;
        left: -17px;
    }
    .footer_wrapper .mail_blk .mail::before {
        top: 0px;
        left: -29px;
    } */
}
/* fixed footer End */

