html {
    background: #C4E4FF;
}

@media screen and (max-width: 768px) {
    html {
        overflow-x: hidden;
    }
}

body {
    margin: 0 auto;
    padding: 0;
}

@media screen and (max-width: 768px) {
    body {
        overflow-x: hidden;
    }
}

img {
    width: 100%;
    height: auto;
    vertical-align: middle;
    margin-bottom: -1px;
}

.body_wrap {
    background-color: #C4E4FF;
    margin: 0;

}

.content_wrap {
    background-color: white;
    margin-inline: auto;
}

.cv_btn_02 {
    margin: 0 auto;
    position: absolute;
    padding: 0 12%;
    transition: .2s;
}

.cv_btn_02:hover {
    scale: .9;
}


/* header */

.hd_wrap {
    /*position:fixed;
    z-index: 9999;*/
    background-color: white;
    display: flex;
    justify-content: space-around;
    align-items: center;
}

.nav_ul {
    display: flex;
    list-style: none;
    justify-content: end;
    align-items: center;
    width: 100%;
    /* margin-top: 1.5vw;
    margin-bottom: 1.0vw;
    margin-left: 8vw;
    margin-right: 3.5vw; */
}

.logo {
    margin-top: auto;
    margin-bottom: auto;
    margin-left: 4vw;
}

/* sec01 */

/*.sc01 {
    padding-top: 13vw;
}*/

.sc01 .sec_atn {
    background: #EDF6FF;
    font-size: 2.13vw;
    font-family: "A1 Gothic R", "A1ゴシック R", sans-serif;
    padding: 4vw 5.6vw;
    font-weight: 300;
    line-height: 1.5;
}

@media screen and (min-width: 751px) {
    .sc01 .sec_atn {
        font-size: 16px;
        padding: 30px 41px;
    }
}

.sc01 .sec_img__behind {
    margin-top: -32%;
}

/* sec campaign */
.sc_campaign .sec_box {
    position: relative;
}

.sc_campaign .sc_campaign_box {
    position: absolute;
    top: 17%;
    left: 4%;
    width: 92%;
}

.sc_campaign .sc_campaign_atn {
    font-size: 2vw;
    margin: .6vw auto 4vw;
    width: 97%;
    line-height: 1.5;
    font-family: "A1 Gothic R", "A1ゴシック R", sans-serif;
}

@media screen and (min-width: 751px) {
    .sc_campaign .sc_campaign_atn {
        font-size: 15px;
        margin: 5px auto 30px;
    }
}

/* sec02 */
.sc02 {
    position: relative;
    z-index: 99;
}

.sc02 .cv_btn_02 {
    top: 47%;
}

.sc02 .sec_tit {
    margin-bottom: -13%;
}

.sc02 .sec_tit.yahoo {
    margin-bottom: 0;
}

.monitor_content {
    position: relative;
}

.monitor01,
.monitor01_change,
.monitor02,
.monitor02_change,
.monitor03,
.monitor03_change {
    position: absolute;
    left: 0;
}

.monitor01 {
    top: 14.7%;
    padding-inline: 5%;
}

.monitor01_change {
    top: 20%;
    left: 4.3%;
    width: 93%;
}

.monitor02 {
    top: 43.7%;
    padding-inline: 5%;
}

.monitor02_change {
    top: 49%;
    left: 4.3%;
    width: 93%;
}

.monitor03 {
    top: 72.2%;
    padding-inline: 5%;
}

.monitor03_change {
    top: 77.1%;
    left: 5%;
    width: 93%;
}

.sec_box {
    position: relative;
}

.eminal_cup {
    margin-top: -10%;
    z-index: 5;
    position: relative;
}

.eminal_cup_sample {
    position: absolute;
    top: 16%;
    left: 5%;
    width: min(89.3vw, 670px);
}
.eminal_cup .cv_btn_03 {
    position: absolute;
    width: 79.2%;
    bottom: 7%;
    left: 10%;
    transition: .2s;
}

.eminal_cup .cv_btn_03:hover {
    scale: .9;
}

.what_glp1 {
    position: relative;
    z-index: 10;
    margin-top: -15%;
}

.no_glp1 .cv_btn_03 {
    position: absolute;
    width: 79.2%;
    bottom: 19%;
    left: 10%;
    transition: .2s;
}

.no_glp1 .cv_btn_03:hover {
    scale: .9;
}

.sc03 .sec_tit {
    position: relative;
    margin-bottom: -6%;
    z-index: 1;
}

.sc03 {
    margin-top: -15%;
    z-index: 5;
    position: relative;
}

.sc03 .yahoo_cv {
    position: absolute;
    bottom: 1.5%;
    left: 50%;
    transform: translateX(-50%);
    width: 79.2%;
    z-index: 2;
}

.sc04.yahoo {
    z-index: 10;
    position: relative;
    margin-top: -15%;
}

.sc05 {
    margin-top: -10%;
    position: relative;
    z-index: 5;
}

.sc05.yahoo {
    position: relative;
    z-index: 10;
    margin-top: -10%;
}

.sc05 .yahoo_cv {
    position: absolute;
    bottom: 2.5%;
    left: 50%;
    transform: translateX(-50%);
    width: 79.2%;
    z-index: 2;

}

.sc08 {
    margin-top: -40%;
}

.sc09 {
    margin-top: -15%;
}

.sc11 {
    position: relative;
}

.sc11 .cv_btn_03 {
    position: absolute;
    width: 79.2%;
    top: 17.7%;
    left: 10%;
    transition: .2s;
}

.sc11 .cv_btn_03:hover {
    scale: .9;
}

.sc11_2 {
    margin-top: -15%;
    position: relative;
}

.sc11_2_video_ttl {
    position: absolute;
    top: 44.6%;
    left: 50%;
    width: 90%;
    transform: translateX(-50%);
    z-index: 10;
}

.sc11_2 video {
    position: absolute;
    top: 47.2%;
    width: 89.3%;
    height: min(50.9vw, 382px);
    left: 5.35%;
    -o-object-fit: cover;
    object-fit: cover;
    box-shadow: 0px 3px 2px 0px rgba(0, 0, 0, 0.16);
}

.sc12 {
    margin-block: -12% -5%;
}

.sc13 {
    position: relative;
}

.sc13 .cv_btn_03 {
    position: absolute;
    width: 79.2%;
    bottom: 13%;
    left: 10%;
    transition: .2s;
}

.sc13 .cv_btn_03:hover {
    scale: .9;
}

.sc14 {
    margin-top: -10%;
}

/* 計算セクション */
#medicaldiet #wt {
    font-family: Arial, sans-serif;
    background-image: url(../img/weight_bg.webp);
    background-size: contain;
    z-index: 100;
    position: relative;
}

@media screen and (min-width: 751px) {
    #medicaldiet #wt {
        background-size: contain;
        z-index: 100;
        position: relative;
    }
}

#medicaldiet .wt_p {
    padding-bottom: 6vw;
}

@media screen and (min-width: 751px) {
    #medicaldiet .wt_p {
        padding-bottom: 60px;
    }
}

#medicaldiet #bmiWeightCalculator {
    text-align: center !important;
    padding: 20vw 7vw 5vw;
    margin-inline: 2vw;
    background-image: url(/lp/asset/img/wt/weight_bk.webp);
    background-size: cover;
    background-repeat: no-repeat;
    font-family: 'A P-OTF A1ゴシック Std', sans-serif;
}

@media screen and (min-width: 751px) {
    #medicaldiet #bmiWeightCalculator {
        padding: 140px 70px 50px;
        margin-inline: 20px;
        background-size: initial;
        background-repeat: no-repeat;
        background-position: top center;
    }
}

#medicaldiet .wt_input {
    padding-left: 25vw;
    background-image: url(/lp/asset/img/wt/weight_img.webp);
    background-repeat: no-repeat;
    background-position: center left;
    background-size: contain;
}

@media screen and (min-width: 751px) {
    #medicaldiet .wt_input {
        padding-left: 195px;
    }
}

#medicaldiet .wt_input dt {
    position: relative;
    right: -1vw;
}

#medicaldiet .wt_input dt div {
    text-align: center;
}

@media screen and (max-width: 750px) {
    #medicaldiet #wt label {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        display: inline-block;
        font-size: 5vw;
        width: 20%;
    }
}

@media screen and (min-width: 751px) {
    #medicaldiet #wt label {
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        display: inline-block;
        font-size: 38px;
        width: 20%;
        letter-spacing: 0.25em;
    }
}

#medicaldiet input {
    text-align: center;
    color: #CBCBCB;
}

#medicaldiet .wt_input input {
    width: 50%;
    height: 10vw;
    border-radius: 5px;
    background: #FFF;
    color: #000000;
    border: 3px solid #1B8DE0;
    flex-direction: column;
    font-size: 6.5vw;
    position: relative;
    top: -3.2vw;
    margin-left: 0;
    text-align: center;
}

@media screen and (min-width: 751px) {
    #medicaldiet .wt_input input {
        width: 200px;
        height: 82px;
        border-radius: 8px;
        flex-direction: column;
        font-size: 50px;
        position: relative;
        top: -34px;
    }
}

#medicaldiet .wt_input dt div::before {
    position: absolute;
    content: "入力できます";
    font-size: 2.6vw;
    color: #1B8DE0;
    bottom: -0.8vw;
    left: 16.2vw;
}

@media screen and (min-width: 751px) {
    #medicaldiet .wt_input dt div::before {
        font-size: 20px;
        bottom: 0px;
        left: 97px;
    }
}

#medicaldiet .wt_input dt div::after {
    content: "cm";
    font-size: 6.4vw;
    position: absolute;
    top: 2.5vw;
    right: -2.65vw;
    line-height: 1em;
}

@media screen and (min-width: 751px) {
    #medicaldiet .wt_input dt div::after {
        content: "cm";
        font-size: 48px;
        position: absolute;
        top: -10px;
        right: -12px;
        transform: translate(20px, 40px);
    }
}

#medicaldiet .wt_input dd {
    padding-left: 8.8vw;
    position: relative;
    right: -0.5vw;
    top: 0vw;
}

@media screen and (min-width: 751px) {
    #medicaldiet .wt_input dd {
        padding-left: 50px;
        position: relative;
        right: -10px;
        top: 0vw;
    }
}

#medicaldiet table {
    width: 100%;
    border-spacing: 0;
    border-collapse: separate;
    margin-top: 4vw;
    font-size: 3.2vw;
}

@media screen and (min-width: 751px) {
    #medicaldiet table {
        margin-top: 30px;
        font-size: 24px;
    }
}

#medicaldiet th {
    /* font-size: smaller; */
    letter-spacing: 0.12em;
    text-align: center;
    vertical-align: middle;
}

#medicaldiet .th_00 {
    width: 28%;
}

#medicaldiet .th_01,
#medicaldiet .th_02 {
    background-color: #13204f;
    border-radius: 3px 3px 0px 0px;
    color: #ffffff;
    width: 36%;
    padding: 2vw 0;
}

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

    #medicaldiet .th_01,
    #medicaldiet .th_02 {
        border-radius: 6px 6px 0px 0px;
        width: 36%;
        padding: 18px 0;
    }
}

#medicaldiet .th_01 {
    border-right: 1px #afafaf solid;
}

#medicaldiet .th_03 {
    background-color: #045189;
    border-radius: 3px 0 0 0;
    color: #ffffff;
    padding: 2vw 0;
}

@media screen and (min-width: 751px) {
    #medicaldiet .th_03 {
        border-radius: 6px 0 0 0;
        padding: 18px 0;
    }
}

#medicaldiet .th_04 {
    background-color: #0078d0;
    color: #ffffff;
    padding: 2vw 0;
}

@media screen and (min-width: 751px) {
    #medicaldiet .th_04 {
        padding: 18px 0;
    }
}

#medicaldiet .th_05 {
    background-color: #3abcf5;
    color: #ffffff;
    line-height: 1;
    padding: 1vw 0;
    border-radius: 0 0 0 3px;
    padding: 2vw 0;
}

@media screen and (min-width: 751px) {
    #medicaldiet .th_05 {
        border-radius: 0 0 0 6px;
        padding: 18px 0;
    }
}

#medicaldiet .wt_tbl tr:first-child th:first-child {
    border: none;
}

#medicaldiet td {
    border-bottom: 1px solid #ddd;
    border-right: 1px solid #ddd;
    padding: 10px;
    text-align: center;
    vertical-align: middle;
    font-size: larger;
    color: #13204f;
    font-family: "hiragino-kaku-gothic-std", sans-serif;
    font-weight: 400;
}

@media screen and (min-width: 751px) {
    #medicaldiet td {
        font-size: 28px;
    }
}

#medicaldiet aside {
    text-align: left;
    line-height: 1.2;
    margin-top: 2.6vw;
    color: #352c27;
    font-size: 2.4vw;
}

@media screen and (min-width: 751px) {
    #medicaldiet aside {
        margin-top: 20px;
        font-size: 17px;
    }
}

#medicaldiet a,
#medicaldiet button {
    cursor: revert;
}

/* sec15 */
.sc15 {
    position: relative;
}

.sc15 .cv_btn_02 {
    top: 68.5%;
    transition: .2s;
}

.sc15 .cv_btn_02:hover {
    scale: .9;
}


/* sec16 */
/* カウンセリング */
.sc16 {
    background-image: url(./../img/sec16.webp);
    background-position: top center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 10% 0 100%;
}


.sc16 .swiper {
    margin: 15vw 6vw 5vw;
}

.sc16 .swiper-pagination {
    position: relative;
    text-align: left;
}

.sc16 .swiper-horizontal>.swiper-pagination-bullets,
.swiper-pagination-bullets.swiper-pagination-horizontal {
    bottom: -0.4vw;
    ;
}

.sc16 .swiper-button-next:after {
    content: none;
}

.sc16 .swiper-button-next {
    position: relative;
    width: 30vw;
    right: -58.5vw;
    top: -2.4vw;
}

.sc16 .swiper-pagination-bullet {
    background: #CEE0F6 !important;
    opacity: 1;
    box-shadow: 1px 1px 0px 0px rgba(52, 52, 52, 16%);
}

.sc16 .swiper-pagination-bullet-active {
    background: #0e193e !important;
}

.sc16 .swiper-slide img {
    padding: 40px 0 0;
}

.sc18 {
    position: relative;
    background: #FFF;
}

.sc18 .cv_btn_02 {
    top: 79.8%;
}

/* sec17 */
/* FAQ */
.faq h2 {
    margin-left: 20vw;
    margin-right: 20vw;
}

.faq li {
    list-style: none;
    cursor: pointer;
    line-height: 1.5;
}

.faq {
    /*background: linear-gradient(to bottom right, #1b317c, #0e193e);*/
    padding: calc((100vw / 375) * 60) calc((100vw / 375) * 20) calc((100vw / 375) * 45) calc((100vw / 375) * 20);
    outline: 1px solid rgb(255, 255, 255);
    outline-offset: calc((100vw / 375) * -10);
    text-align: center;
    background-image: url(../img/sec17_bg.webp);
    background-position: top center;
    background-size: cover;
}

@media screen and (min-width: 481px) {
    .faq {
        padding: 15% 5% 12% 5%;
        outline-offset: -15px;
    }
}

.medical_faq {
    width: 51%;
    margin: 0 auto 10%;
}

.medical_faq_list {
    text-align: left;
    font-family: Noto Sans CJK JP, sans-serif;
    font-size: calc((100vw / 375) * 15);
    font-weight: 600;
    position: relative;
    padding-left: 0;
    margin-top: min(6.6vw, 50px);
}

.medical_faq_item {
    background: #fff;
    color: #000;
    border-radius: 5px;
    margin-bottom: 3%;
}

.toggle {
    display: none;
}

/* footer */
.footer_wrap {
    background-image: url(./../img/footer.jpg);
    background-position: top center;
    background-repeat: repeat-x;
    padding: 2vw 0vw 10vw;
    background-size: contain;
}

.cp {
    color: white;
    font-size: x-small;
    text-align: center;
}


/* ----- PC -------*/
@media screen and (min-width:600px) {

    .body_wrap {
        margin: auto;
    }

    .hd_wrap {
        height: 96px;
    }

    .logo {
        margin-left: 16px;
    }

    .nav_ul {
        /* margin-top: 10px;
    margin-bottom: 1vw;
    margin-left: 120px;
    margin-right: 0px; */
    }

    .sc16 .swiper-pagination-bullet {
        width: 14px;
        height: 14px;
    }

    .sc16 .swiper {
        margin: 150px 60px 50px;
    }

    .sc16 .swiper-button-next {
        position: relative;
        width: min(26vw, 200px);
        right: min(-5.3vw, -400px);
        top: -20px;
    }

    .sc16 .swiper-horizontal>.swiper-pagination-bullets,
    .swiper-pagination-bullets.swiper-pagination-horizontal {
        bottom: -22px;
        left: 5px;
    }

    .medical_faq_list {
        font-size: 25px;
    }

    .faq h2 {
        margin-left: 150px;
        margin-right: 150px;
    }

    .footer_wrap {
        padding: 55px 0 100px;
        background-size: contain;
    }

    .cp {
        font-size: smaller;
    }

}