@charset "utf-8";

:root {
    --designSizePc: 1300;
    --designSizeSp: 750;
    /* 
     * pxをvwに変換する式
     * min(calc(22 * var(--vw-pc)), 22px)
     */
    --vw-pc: calc(100vw / 1300);
    --vw-sp: calc(100vw / 750);
}

section *{
    box-sizing: border-box;
    line-height: 1;
    list-style: none;
}

main{
    font-family: "YakuHanJP", "Zen Kaku Gothic New", sans-serif;
    font-weight: 500;
    overflow: hidden;
}

main picture{
    display: block;
}
main picture img{
    display: block;
    width: 100%;
    height: auto;
}

/* 共通 */
.btn_wrap{
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: min(calc(18 * var(--vw-pc)), 18px);
    margin-left: auto;
    margin-right: auto;
    width: min(calc(470 * var(--vw-pc)), 470px);
}

.btn_inner{
    display: block;
    width: min(calc(214 * var(--vw-pc)), 214px);
}

.btn_inner:nth-child(3){
    width: min(calc(328 * var(--vw-pc)), 328px);
}

.winterStudy_slide_wrap{
    margin-top: min(calc(56 * var(--vw-pc)), 56px);
}


.bg01{
    background-color: #f2f4ff;
    padding-bottom: min(calc(140 * var(--vw-pc)), 140px);
    position: relative;
}

.bg01_circleDeco{
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    background: linear-gradient(to right, #fff0ff, #f2f4ff);
    width: min(calc(360 * var(--vw-pc)), 360px);
    position: absolute;

    &:nth-child(1){
        top: max(calc(-15 * var(--vw-pc)), 15px);
        left: max(calc(-88 * var(--vw-pc)), -88px);
    }
    &:nth-child(2){
        top: min(calc(305 * var(--vw-pc)), 305px);
        right: min(calc(15 * var(--vw-pc)), 15px);
    }
    &:nth-child(3){
        top: min(calc(870 * var(--vw-pc)), 870px);
        left: min(calc(24 * var(--vw-pc)), 24px);
    }
    &:nth-child(4){
        top: min(calc(1090 * var(--vw-pc)), 1090px);
        right: max(calc(-84 * var(--vw-pc)), 84px);
    }
    &:nth-child(5){
        top: min(calc(1450 * var(--vw-pc)), 1450px);
        left: max(calc(-60 * var(--vw-pc)), -60px);
    }
    &:nth-child(6){
        top: min(calc(2200 * var(--vw-pc)), 2200px);
        right: max(calc(-84 * var(--vw-pc)), -84px);
    }
    &:nth-child(7){
        top: min(calc(2350 * var(--vw-pc)), 2350px);
        left: max(calc(-70 * var(--vw-pc)), -70px);
    }
}

.bg01_crystalDeco{
    width: min(calc(248 * var(--vw-pc)), 248px);
    position: absolute;

    &:nth-child(1){
        top: min(calc(0 * var(--vw-pc)), 0px);
        right: max(calc(-70 * var(--vw-pc)), -70px);
    }
    &:nth-child(2){
        top: min(calc(500 * var(--vw-pc)), 500px);
        left: max(calc(-50 * var(--vw-pc)), -50px);
    }
    &:nth-child(3){
        top: min(calc(1177 * var(--vw-pc)), 1177px);
        right: max(calc(-70 * var(--vw-pc)), -70px);
    }
    &:nth-child(4){
        top: min(calc(1230 * var(--vw-pc)), 1230px);
        left: max(calc(-50 * var(--vw-pc)), -50px);
    }
    &:nth-child(5){
        top: min(calc(1660 * var(--vw-pc)), 1660px);
        right: max(calc(-70 * var(--vw-pc)), -70px);
    }
    &:nth-child(6){
        top: min(calc(2190 * var(--vw-pc)), 2190px);
        left: max(calc(-50 * var(--vw-pc)), -50px);
    }
}

/* メインビジュアル */
.section_mv{
    position: relative;
}

.mv_title{
    color: #4b90ff;
    font-size: min(calc(9 * var(--vw-pc)), 9px);
    letter-spacing: .06em;
    text-align: center;
    padding-top: min(calc(10 * var(--vw-pc)), 10px);
    padding-bottom: min(calc(10 * var(--vw-pc)), 10px);
}

.mv_main_wrap{
    margin-left: auto;
    margin-right: auto;
    width: min(calc(1015 * var(--vw-pc)), 1015px);
    position: relative;
}

.mv_main{
    width: 100%;
}

.mv_logo{
    width: min(calc(495 * var(--vw-pc)), 495px);
    position: absolute;
    bottom: min(calc(34 * var(--vw-pc)), 34px);
    left: 50%;
    transform: translateX(-50%);
}

.mv_copy{
    color: #4b90ff;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: min(calc(40 * var(--vw-pc)), 40px);
    font-weight: 900;
    line-height: 1.5;
    letter-spacing: .1em;
    -webkit-writing-mode: vertical-rl; /* Safari用 */
    writing-mode: vertical-rl;
    text-indent: -.5em;
    position: absolute;
    top: min(calc(80 * var(--vw-pc)), 80px);
    left: min(calc(88 * var(--vw-pc)), 88px);
}

.mv_anniversary{
    width: min(calc(72 * var(--vw-pc)), 72px);
    position: absolute;
    top: min(calc(16 * var(--vw-pc)), 16px);
    right: min(calc(20 * var(--vw-pc)), 20px);
}

.mv_icon_wrap{
    width: min(calc(154 * var(--vw-pc)), 154px);
    position: absolute;
    top: min(calc(216 * var(--vw-pc)), 216px);
    right: min(calc(75 * var(--vw-pc)), 75px);
}

.mv_icon_box:nth-child(1){
    position: relative;
}
.mv_icon_box:nth-child(2){
    margin-top: max(calc(-10 * var(--vw-pc)), -10px);
}

.mv_notice{
    color: #4b90ff;
    font-size: min(calc(9 * var(--vw-pc)), 9px);
    line-height: 1.75;
    margin-top: min(calc(12 * var(--vw-pc)), 12px);
    text-align: center;
}

/* msg */
.section_msg{
    margin-top: min(calc(24 * var(--vw-pc)), 24px);
}

.msg_application_btn_inner{
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: min(calc(328 * var(--vw-pc)), 328px);
}

.msg_img_wrap{
    margin-top: min(calc(46 * var(--vw-pc)), 46px);
    margin-left: auto;
    margin-right: auto;
    width: min(calc(1300 * var(--vw-pc)), 1300px);
    height: min(calc(255 * var(--vw-pc)), 255px);
    position: relative;
    /* 円の半径（画像中心から回転中心まで） */
    --msg-radius: min(calc(1500 * var(--vw-pc)), 1500px);
}

/* 半径 --msg-radius の円周上に並べ、JSで rotate を更新して回転させる */
.msg_img_box{
    border-radius: 50%;
    overflow: hidden;
    width: min(calc(287 * var(--vw-pc)), 287px);
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: max(calc(-143.5 * var(--vw-pc)), -143.5px);
    transform-origin: 50% calc(50% + var(--msg-radius));
    will-change: transform;

    &:nth-child(1){ transform: rotate(-26deg); }
    &:nth-child(2){ transform: rotate(-13deg); }
    &:nth-child(4){ transform: rotate(13deg); }
    &:nth-child(5){ transform: rotate(26deg); }
}

.msg_text{
    color: #4b90ff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    line-height: 2.6;
    margin-top: min(calc(46 * var(--vw-pc)), 46px);
    text-align: center;
}

.msg_head{
    display: block;
    margin-left: auto;
    margin-right: auto;
    margin-top: min(calc(46 * var(--vw-pc)), 46px);
    width: min(calc(347 * var(--vw-pc)), 347px);
}

.msg_btn_wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: min(calc(28 * var(--vw-pc)), 28px);
    margin-top: min(calc(24 * var(--vw-pc)), 24px);
}

.msg_btn_inner{
    display: block;
    width: min(calc(214 * var(--vw-pc)), 214px);
}

/* results */
.results_container{
    padding-top: min(calc(58 * var(--vw-pc)), 58px);
}

.results_item_wrap{
    background-color: #fff;
    border-radius: min(3vw, 37px);
    margin-left: auto;
    margin-right: auto;
    margin-bottom: min(calc(12 * var(--vw-pc)), 12px);
    padding-top: min(calc(20 * var(--vw-pc)), 20px);
    padding-bottom: min(calc(46 * var(--vw-pc)), 46px);
    width: min(calc(972 * var(--vw-pc)), 972px);
}

.results_item{
    margin-left: auto;
    margin-right: auto;
    width: 97%;
}

.results_switch{
    display: none;
}

.results_note{
    color: #4b90ff;
    font-size: min(calc(9 * var(--vw-pc)), 9px);
    line-height: 1.5;
    text-align: center;
    margin-bottom: min(calc(32 * var(--vw-pc)), 32px);
}

/* pointElementary,pointJunior */
.section_pointElementary{
    background: linear-gradient(to right, #ececff, #dff0ff);
    mask-image: url(../img/ws2026/mask_wave.png);
    -webkit-mask-image: url(../img/ws2026/mask_wave.png);
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-position: 0 0;
    -webkit-mask-position: 0 0;
    mask-size: 100%;
    -webkit-mask-size: 100%;
    margin-top: max(calc(-70 * var(--vw-pc)), -70px);
    padding-top: min(calc(152 * var(--vw-pc)), 152px);
    padding-bottom: min(calc(200 * var(--vw-pc)), 200px);
    position: relative;
}

.pointElementary_circleDeco{
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    background: linear-gradient(90deg, #dff0ff, #fff0ff);
    width: min(calc(1160 * var(--vw-pc)), 1160px);
    position: absolute;

    &:nth-child(1){
        top: min(calc(180 * var(--vw-pc)), 180px);
        right: max(calc(-377 * var(--vw-pc)), -377px);
    }
    &:nth-child(2){
        top: min(calc(972 * var(--vw-pc)), 972px);
        left: max(calc(-550 * var(--vw-pc)), -550px);
    }
    &:nth-child(3){
        top: min(calc(1830 * var(--vw-pc)), 1830px);
        right: max(calc(-377 * var(--vw-pc)), -377px);
    }
    &:nth-child(4){
        top: min(calc(2600 * var(--vw-pc)), 2600px);
        left: max(calc(-550 * var(--vw-pc)), -550px);
    }
    &:nth-child(5){
        top: min(calc(3480 * var(--vw-pc)), 3480px);
        right: max(calc(-377 * var(--vw-pc)), -377px);
    }
    &:nth-child(6),
    &:nth-child(7),
    &:nth-child(8){
        display: none;
    }
}

.pointElementary_crystalDeco{
    width: min(calc(248 * var(--vw-pc)), 248px);
    position: absolute;

    &:nth-child(1){
        top: min(calc(70 * var(--vw-pc)), 70px);
        right: max(calc(-12 * var(--vw-pc)), -12px);
    }
}

.title_container{
    margin-left: auto;
    margin-right: auto;
    width: min(calc(1015 * var(--vw-pc)), 1015px);
    position: relative;
}

.title_head_wrap{
    display: flex;
    align-items: center;
    gap: min(calc(20 * var(--vw-pc)), 20px);

    &::before{
        content: "";
        aspect-ratio: 80/89;
        background-image: url(../img/ws2026/head_icon.svg);
        background-repeat: no-repeat;
        background-size: contain;
        width: min(calc(80 * var(--vw-pc)), 80px);
    }
}

.title_head{
    color: #4b8dff;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: min(calc(54 * var(--vw-pc)), 54px);
    font-weight: 900;
    letter-spacing: .12em;

    .text{
        display: block;
        font-size: min(calc(27 * var(--vw-pc)), 27px);
        margin-bottom: min(calc(16 * var(--vw-pc)), 16px);
    }
}

.title_text{
    color: #4b8dff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    line-height: 1.7;
    margin-top: min(calc(22 * var(--vw-pc)), 22px);
}

.feature_container{
    margin-left: auto;
    margin-right: auto;
    margin-top: min(calc(120 * var(--vw-pc)), 120px);
    margin-bottom: min(calc(100 * var(--vw-pc)), 100px);
    width: min(calc(1015 * var(--vw-pc)), 1015px);
    position: relative;
}

.feature_inner{
    display: flex;
    justify-content: space-between;
    position: relative;

    &::before{
        content: "";
        aspect-ratio: 119/20;
        background-image: url(../img/ws2026/feature_icon_bule.svg);
        background-repeat: no-repeat;
        background-size: contain;
        display: block;
        width: min(calc(119 * var(--vw-pc)), 119px);
        position: absolute;
        top: max(calc(-48 * var(--vw-pc)), -48px);
        left: max(calc(-145 * var(--vw-pc)), -145px);
    }

    &:nth-child(n+2){
        margin-top: min(calc(100 * var(--vw-pc)), 100px);
    }

    &.pink{
        &::before{
            background-image: url(../img/ws2026/feature_icon_pink.svg);
        }

        .feature_title{
            background-color: #ed7ea5;
        }

        .feature_right_course{
            color: #ed7ea5;
            .tag{
                background-color: #ed7ea5;
            }
        }

        .feature_right_head{
            color: #ed7ea5;

            &::after{
                background-image: linear-gradient(to right, #ed7ea5 50%, transparent 50% 100%);
            }
        }

        .feature_right_text{
            color: #ed7ea5;
        }
    }
    &.darkBlue{
        &::before{
            background-image: url(../img/ws2026/feature_icon_darkBule.svg);
        }

        .feature_title{
            background-color: #4b3dff;
        }

        .feature_right_course{
            color: #4b3dff;
            .tag{
                background-color: #4b3dff;
            }
        }

        .feature_right_head{
            color: #4b3dff;

            &::after{
                background-image: linear-gradient(to right, #4b3dff 50%, transparent 50% 100%);
            }
        }

        .feature_right_text{
            color: #4b3dff;
        }
    }
}

.feature_left{
    width: min(calc(500 * var(--vw-pc)), 500px);
    position: relative;
}

.feature_img{
    border-bottom-left-radius: min(calc(30 * var(--vw-pc)), 30px);
    border-top-right-radius: min(calc(30 * var(--vw-pc)), 30px);
    overflow: hidden;
}

.feature_title{
    background-color: #4b8dff;
    border-top-left-radius: min(calc(30 * var(--vw-pc)), 30px);
    border-top-right-radius: min(calc(30 * var(--vw-pc)), 30px);
    color: #fff;
    font-size: min(calc(30 * var(--vw-pc)), 30px);
    font-weight: 900;
    letter-spacing: .06em;
    padding-top: min(calc(16 * var(--vw-pc)), 16px);
    padding-bottom: min(calc(16 * var(--vw-pc)), 16px);
    text-align: center;
    width: min(calc(196 * var(--vw-pc)), 196px);
    position: absolute;
    bottom: calc(100% - 1px);
    left: 0;
}

.feature_right{
    width: min(calc(470 * var(--vw-pc)), 470px);
}

.feature_right_course{
    color: #4b8dff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    font-weight: 700;
    line-height: 1.7;
    white-space: nowrap;

    span{
        color: #fff;
        background-color: #4b8dff;
        border-radius: 1000px;
        display: inline-block;
        margin-bottom: min(calc(8 * var(--vw-pc)), 8px);
        padding: min(calc(4 * var(--vw-pc)), 4px) min(calc(11 * var(--vw-pc)), 11px);
    }

    .freeTag{
        border-radius: unset;
        background-color: #ffde00;
        color: #4b8dff;
    }
}

.feature_right_head{
    color: #4b8dff;
    font-size: min(calc(21 * var(--vw-pc)), 21px);
    font-weight: 900;
    line-height: 1.5;
    margin-top: min(calc(22 * var(--vw-pc)), 22px);

    &::after{
        content: "";
        aspect-ratio: 96 / 1;
        background-image: linear-gradient(to right, #4b8dff 50%, transparent 50% 100%);
        background-size: min(calc(4 * var(--vw-pc)), 4px) 100%;
        background-repeat: repeat-x;
        display: block;
        margin-top: min(calc(22 * var(--vw-pc)), 22px);
        width: min(calc(96 * var(--vw-pc)), 96px);
    }
}

.feature_right_text{
    color: #4b8dff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    line-height: 1.7;
    margin-top: min(calc(24 * var(--vw-pc)), 24px);
    text-align: justify;
}

.feature_right_notice{
    color: #4b8dff;
    font-size: min(calc(9 * var(--vw-pc)), 9px);
    line-height: 1.5;
    margin-top: min(calc(12 * var(--vw-pc)), 12px);
}

.pointElementary_program_container{
    background-color: #fff;
    border-radius: min(calc(30 * var(--vw-pc)), 30px);
    margin-top: min(calc(84 * var(--vw-pc)), 84px);
    margin-bottom: min(calc(84 * var(--vw-pc)), 84px);
    margin-left: auto;
    margin-right: auto;
    padding: min(calc(34 * var(--vw-pc)), 34px) min(calc(64 * var(--vw-pc)), 64px);
    width: min(calc(950 * var(--vw-pc)), 950px);
    position: relative;
}

.pointElementary_program_tag{
    background-color: #4b3dff;
    border-top-left-radius: min(calc(15 * var(--vw-pc)), 15px);
    border-top-right-radius: min(calc(15 * var(--vw-pc)), 15px);
    color: #fff;
    font-size: min(calc(20 * var(--vw-pc)), 20px);
    letter-spacing: .07em;
    padding-top: min(calc(9 * var(--vw-pc)), 9px);
    padding-bottom: min(calc(9 * var(--vw-pc)), 9px);
    text-align: center;
    width: min(calc(180 * var(--vw-pc)), 180px);
    position: absolute;
    bottom: calc(100% - 1px);
    left: min(calc(48 * var(--vw-pc)), 48px);
}

.pointElementary_program_head{
    color: #4b3dff;
    display: flex;
    align-items: center;
    gap: min(calc(3 * var(--vw-pc)), 3px);
    font-size: min(calc(18 * var(--vw-pc)), 18px);
    font-weight: 900;
    letter-spacing: .02em;

    &::before,&::after{
        content: '';
        aspect-ratio: 21/1;
        background-color: #4b3dff;
        display: block;
        width: min(calc(210 * var(--vw-pc)), 21px);
    }
    &::before{
        transform: rotate(65deg);
    }
    &::after{
        transform: rotate(-65deg);
    }
}

.pointElementary_program_title{
    border-bottom: min(calc(1 * var(--vw-pc)), 1px) solid #4b3dff;
    color: #4b3dff;
    display: flex;
    align-items: center;
    gap: min(calc(20 * var(--vw-pc)), 20px);
    font-size: min(calc(42 * var(--vw-pc)), 42px);
    font-weight: 900;
    letter-spacing: .02em;
    margin-top: min(calc(16 * var(--vw-pc)), 16px);
    padding-bottom: min(calc(10 * var(--vw-pc)), 10px);

    &::after{
        content: '';
        aspect-ratio: 1/1;
        background-image: url(../img/ws2026/calendar_icon.svg);
        background-size: contain;
        background-repeat: no-repeat;
        display: block;
        width: min(calc(50 * var(--vw-pc)), 50px);
    }
}

.pointElementary_program_content{
    display: flex;
    justify-content: space-between;
    margin-top: min(calc(24 * var(--vw-pc)), 24px);
}

.pointElementary_program_text{
    color: #4b3dff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    line-height: 1.6;
    letter-spacing: .07em;
    text-align: justify;
    width: min(calc(365 * var(--vw-pc)), 365px);
}

.pointElementary_program_info{
    width: min(calc(410 * var(--vw-pc)), 410px);
}

.pointElementary_program_lineItem{
    display: flex;
    align-items: flex-start;
    gap: min(calc(8 * var(--vw-pc)), 8px);

    &:last-child .pointElementary_program_lineItem_head{
        background-color: #ffde00;
        color: #4b3dff;
    }

    &:nth-child(n+2){
        margin-top: min(calc(6 * var(--vw-pc)), 6px);
    }
}

.pointElementary_program_lineItem_head{
    background-color: #4b3dff;
    border-radius: 1000px;
    color: #fff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    flex-shrink: 0;
    padding-top: min(calc(2 * var(--vw-pc)), 2px);
    padding-bottom: min(calc(2 * var(--vw-pc)), 2px);
    text-align: center;
    width: min(calc(163 * var(--vw-pc)), 175px);
}

.pointElementary_program_lineItem_text{
    color: #4b3dff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    line-height: 2;
    letter-spacing: .14em;
    margin-top: -1.5%;
    white-space: nowrap;
}

.slideProgram_container{
    margin-top: min(calc(70 * var(--vw-pc)), 70px);
    margin-bottom: min(calc(140 * var(--vw-pc)), 140px);
    
    .splide__track{
        overflow: visible;
    }

    .splide__arrows{
        .splide__arrow{
            width: min(calc(48 * var(--vw-pc)), 48px);
            position: absolute;
            top: 50%;
            transform: translateY(-50%);

            &.splide__arrow--prev{
                left: min(calc(100 * var(--vw-pc)), 100px);
            }
            &.splide__arrow--next{
                right: min(calc(100 * var(--vw-pc)), 100px);
            }
        }
    }
}

.slideProgram_item{
    background-color: #fff;
    border-top-right-radius: min(calc(30 * var(--vw-pc)), 30px);
    border-bottom-left-radius: min(calc(30 * var(--vw-pc)), 30px);
    padding: min(calc(16 * var(--vw-pc)), 16px) min(calc(12 * var(--vw-pc)), 12px) 0;
    position: relative;
}

.slideProgram_tag{
    background-color: #4b8dff;
    border-top-left-radius: min(calc(15 * var(--vw-pc)), 15px);
    border-top-right-radius: min(calc(15 * var(--vw-pc)), 15px);
    color: #fff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    padding: min(calc(6 * var(--vw-pc)), 6px) min(calc(15 * var(--vw-pc)), 15px);
    text-align: center;
    min-width: min(calc(140 * var(--vw-pc)), 140px);
    position: absolute;
    bottom: calc(100% - 1px);
    left: 0;

    &.pink{
        background-color: #ed7ea5;
    }

    &.yellow{
        color: #0076ff;
        background-color: #ffde00;
    }
}

.slideProgram_title{
    color: #4b8dff;
    font-size: min(calc(21 * var(--vw-pc)), 21px);
    font-weight: 900;
    letter-spacing: .06em;
    margin-bottom: min(calc(16 * var(--vw-pc)), 16px);
}

.slideProgram_img{
    margin-bottom: min(calc(16 * var(--vw-pc)), 16px);
}

.slideProgram_text{
    color: #4b8dff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    line-height: 1.7;
    letter-spacing: -.02em;
    margin-bottom: min(calc(8 * var(--vw-pc)), 8px);
    text-align: justify;

    .bold{
        font-weight: 900;
    }
}

.slideEvent_container{
    margin-top: min(calc(70 * var(--vw-pc)), 70px);
    margin-bottom: min(calc(80 * var(--vw-pc)), 80px);

    .splide__arrows{
        .splide__arrow{
            width: min(calc(48 * var(--vw-pc)), 48px);
            position: absolute;
            top: 50%;
            transform: translateY(-50%);

            &.splide__arrow--prev{
                left: min(calc(100 * var(--vw-pc)), 100px);
            }
            &.splide__arrow--next{
                right: min(calc(100 * var(--vw-pc)), 100px);
            }
        }
    }
}

.slideEvent_item{
    border-right: min(calc(1 * var(--vw-pc)), 1px) dotted #4b8dff;
    display: flex;
    flex-direction: column;
    padding-left: min(calc(24 * var(--vw-pc)), 24px);
    padding-right: min(calc(24 * var(--vw-pc)), 24px);
}

.slideEvent_title{
    color: #4b8dff;
    font-size: min(calc(21 * var(--vw-pc)), 21px);
    font-weight: 900;
    line-height: 1.3;
    margin-bottom: min(calc(12 * var(--vw-pc)), 12px);
    height: calc(1.3em * 2); ;
}

.slideEvent_img_inner{
    border-top-right-radius: min(calc(30 * var(--vw-pc)), 30px);
    border-bottom-left-radius: min(calc(30 * var(--vw-pc)), 30px);
    margin-bottom: min(calc(20 * var(--vw-pc)), 20px);
    overflow: hidden;
    position: relative;
}

.slideEvent_btn{
    width: min(calc(165 * var(--vw-pc)), 165px);
    position: absolute;
    bottom: min(calc(10 * var(--vw-pc)), 10px);
    right: min(calc(10 * var(--vw-pc)), 10px);

    &.noLink{
        width: min(calc(266 * var(--vw-pc)), 266px);
    }
}

.slideEvent_info{
    color: #4b8dff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    font-weight: 900;
    line-height: 1.7;
    text-align: justify;

    .bold{
        font-weight: 900;
    }

    .small{
        font-size: min(calc(9 * var(--vw-pc)), 9px);
    }
    .middle{
        font-size: min(calc(11 * var(--vw-pc)), 11px);
    }
}

.slideEvent_text{
    color: #4b8dff;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    line-height: 1.7;
    margin-top: min(calc(12 * var(--vw-pc)), 12px);
    text-align: justify;
    
    &::before{
        content: "";
        aspect-ratio: 96 / 1;
        background-image: linear-gradient(to right, #4b8dff 50%, transparent 50% 100%);
        background-size: min(calc(4 * var(--vw-pc)), 4px) 100%;
        background-repeat: repeat-x;
        display: block;
        margin-bottom: min(calc(8 * var(--vw-pc)), 8px);
        width: min(calc(96 * var(--vw-pc)), 96px);
    }
}

.slideEvent_note{
    color: #4b8dff;
    font-size: min(calc(9 * var(--vw-pc)), 9px);
    line-height: 1.6;
    margin-top: min(calc(12 * var(--vw-pc)), 12px);
    text-align: justify;
}

.section_pointJunior{
    background: linear-gradient(to right, #e7f1ff, #dafffb);
    mask-image: url(../img/ws2026/mask_wave.png);
    -webkit-mask-image: url(../img/ws2026/mask_wave.png);
    mask-repeat: no-repeat;
    -webkit-mask-repeat: no-repeat;
    mask-position: 0 0;
    -webkit-mask-position: 0 0;
    mask-size: 100%;
    -webkit-mask-size: 100%;
    margin-top: max(calc(-130 * var(--vw-pc)), -130px);
    padding-top: min(calc(140 * var(--vw-pc)), 140px);
    padding-bottom: min(calc(100 * var(--vw-pc)), 100px);
    position: relative;
}

.pointJunior_circleDeco{
    aspect-ratio: 1 / 1;
    border-radius: 50%;
    background: linear-gradient(90deg, #dafffb, #fef1ff);
    width: min(calc(1160 * var(--vw-pc)), 1160px);
    position: absolute;

    &:nth-child(1){
        top: min(calc(180 * var(--vw-pc)), 180px);
        right: max(calc(-377 * var(--vw-pc)), -377px);
    }
    &:nth-child(2){
        top: min(calc(972 * var(--vw-pc)), 972px);
        left: max(calc(-550 * var(--vw-pc)), -550px);
    }
    &:nth-child(3){
        top: min(calc(1830 * var(--vw-pc)), 1830px);
        right: max(calc(-377 * var(--vw-pc)), -377px);
    }
    &:nth-child(4),
    &:nth-child(5),
    &:nth-child(6),
    &:nth-child(7),
    &:nth-child(8){
        display: none;
    }
}

.pointJunior_crystalDeco{
    width: min(calc(248 * var(--vw-pc)), 248px);
    position: absolute;

    &:nth-child(1){
        top: min(calc(70 * var(--vw-pc)), 70px);
        right: max(calc(-12 * var(--vw-pc)), -12px);
    }
}

.pointJunior_alpha_container{
    margin-left: auto;
    margin-right: auto;
    margin-bottom: min(calc(90 * var(--vw-pc)), 90px);
    width: min(calc(1015 * var(--vw-pc)), 1015px);
    position: relative;
}

.pointJunior_alpha_inner.different{
    border-radius: min(calc(30 * var(--vw-pc)), 30px);
    background: linear-gradient(to right, #0076ff, #00c4ff);
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: min(calc(24 * var(--vw-pc)), 24px) min(calc(120 * var(--vw-pc)), 120px) min(calc(46 * var(--vw-pc)), 46px) min(calc(120 * var(--vw-pc)), 120px);
    position: relative;

    .pointJunior_alpha_left{
        width: min(calc(260 * var(--vw-pc)), 260px);
    }

    .pointJunior_alpha_left_head{
        color: #ffde00;
        font-size: min(calc(85 * var(--vw-pc)), 85px);
        font-weight: 700;

        .small{
            color: #fff;
            display: block;
            font-size: min(calc(15 * var(--vw-pc)), 15px);
            line-height: 1.8;
            margin-bottom: min(calc(12 * var(--vw-pc)), 12px);
        }

        .middle{
            color: #fff;
            display: block;
            font-size: min(calc(35 * var(--vw-pc)), 35px);
            margin-top: min(calc(15 * var(--vw-pc)), 15px);
        }
    }

    .pointJunior_alpha_right{
        width: min(calc(460 * var(--vw-pc)), 460px);
    }

    .pointJunior_alpha_right_line{
        display: flex;
        align-items: flex-start;
        gap: min(calc(10 * var(--vw-pc)), 10px);

        &:first-child{
            .pointJunior_alpha_right_term{
                background-color: #ffde00;
            }
        }

        &:nth-child(n+2){
            margin-top: min(calc(20 * var(--vw-pc)), 20px);
        }
    }

    .pointJunior_alpha_right_term{
        background-color: #fff;
        border-radius: 1000px;
        color: #0076ff;
        flex-shrink: 0;
        font-size: min(calc(15 * var(--vw-pc)), 15px);
        font-weight: 500;
        padding-top: min(calc(4 * var(--vw-pc)), 4px);
        padding-bottom: min(calc(6 * var(--vw-pc)), 6px);
        text-align: center;
        width: min(calc(93 * var(--vw-pc)), 93px);
    }

    .pointJunior_alpha_right_data{
        color: #fff;
        font-size: min(calc(15 * var(--vw-pc)), 15px);
        font-weight: 500;
        line-height: 1.3;
        margin-top: min(calc(2 * var(--vw-pc)), 2px);

        .notice{
            display: block;
            font-size: min(calc(10 * var(--vw-pc)), 10px);
            margin-top: min(calc(5 * var(--vw-pc)), 5px);
        }
        .big{
            font-size: min(calc(20 * var(--vw-pc)), 20px);
        }
    }
}

.pointJunior_alpha_inner.test{
    border-radius: min(calc(30 * var(--vw-pc)), 30px);
    background: linear-gradient(to right, #74ebfb, #f1baff);
    padding: min(calc(24 * var(--vw-pc)), 24px) min(calc(30 * var(--vw-pc)), 30px) min(calc(24 * var(--vw-pc)), 24px) min(calc(120 * var(--vw-pc)), 120px);
    position: relative;

    .pointJunior_text{
        color: #fff;
        font-size: min(calc(16 * var(--vw-pc)), 16px);
        font-weight: 500;
        line-height: 1.3;
        margin-bottom: min(calc(10 * var(--vw-pc)), 10px);
    }

    .pointJunior_head{
        color: #fff;
        display: flex;
        align-items: center;
        gap: min(calc(20 * var(--vw-pc)), 20px);
        font-size: min(calc(54 * var(--vw-pc)), 54px);
        font-weight: 900;
        margin-top: min(calc(16 * var(--vw-pc)), 16px);
        margin-bottom: min(calc(16 * var(--vw-pc)), 16px);

        .pointJunior_head_sub{
            background-color: #ffde00;
            color: #0076ff;
            font-size: min(calc(20 * var(--vw-pc)), 20px);
            font-weight: 700;
            padding: min(calc(4 * var(--vw-pc)), 4px) min(calc(8 * var(--vw-pc)), 8px);
        }
    }
}

.pointJunior_alpha_icon{
    width: min(calc(104 * var(--vw-pc)), 104px);
    position: absolute;
    top: -8%;
    left: -3%;
}

.pointJunior_notice{
    color: #0076ff;
    font-size: min(calc(9 * var(--vw-pc)), 9px);
    font-weight: 500;
    margin-top: min(calc(10 * var(--vw-pc)), 10px);
    margin-bottom: min(calc(32 * var(--vw-pc)), 32px);
    text-align: center;
}

/* faq */
.section_faq{
    background-color: #4b8dff;
    margin-top: min(calc(156 * var(--vw-pc)), 156px);
    padding-top: min(calc(80 * var(--vw-pc)), 80px);
    padding-bottom: min(calc(80 * var(--vw-pc)), 80px);
}

.faq_title{
    color: #fff;
    font-size: min(calc(54 * var(--vw-pc)), 54px);
    font-weight: 700;
    letter-spacing: .12em;
    text-align: center;
    position: relative;
}

.faq_container{
    background-color: #fff;
    border-radius: min(calc(50 * var(--vw-pc)), 50px);
    margin-left: auto;
    margin-right: auto;
    margin-top: min(calc(40 * var(--vw-pc)), 40px);
    padding: min(calc(40 * var(--vw-pc)), 40px);
    width: min(calc(900 * var(--vw-pc)), 900px);
}

.faq_inner{
    padding-top: min(calc(24 * var(--vw-pc)), 24px);
    padding-bottom: min(calc(24 * var(--vw-pc)), 24px);
}
.faq_inner:nth-child(n+2){
    border-top: min(calc(1 * var(--vw-pc)), 1px) solid #231815;
}

.faq_box{
    display: flex;
    align-items: center;
}
.faq_box.question{
    cursor: pointer;
}
.faq_box.answer{
    align-items: flex-start;
    overflow: hidden;
}

.faq_icon{
    display: block;
    width: min(calc(54 * var(--vw-pc)), 54px);
    height: auto;
}
.faq_box.answer .faq_icon{
    margin-top: min(calc(24 * var(--vw-pc)), 24px);
}

.faq_text_content{
    margin-top: min(calc(20 * var(--vw-pc)), 20px);
    width: min(calc(735 * var(--vw-pc)), 735px);
}

.faq_text{
    font-size: min(calc(19 * var(--vw-pc)), 19px);
    font-weight: 700;
    letter-spacing: .12em;
    line-height: 1.6;
    margin-left: min(calc(12 * var(--vw-pc)), 12px);
    text-align: justify;
    width: min(calc(670 * var(--vw-pc)), 670px);
}
.faq_box.answer .faq_text{
    width: 100%;
}
.faq_text .annot{
    display: block;
    font-size: min(calc(16 * var(--vw-pc)), 16px);
    font-weight: 500;
    margin-top: min(calc(20 * var(--vw-pc)), 20px);
}

.faq_switch{
    --rotate: 90deg;
    aspect-ratio: 9 / 4;
    border: min(calc(2 * var(--vw-pc)), 2px) solid #4b8dff;
    border-radius: 1000px;
    box-sizing: border-box;
    margin-left: auto;
    width: min(calc(90 * var(--vw-pc)), 90px);
    position: relative;
}
.faq_switch::before,
.faq_switch::after{
    content: "";
    background-color: #4b8dff;
    width: min(calc(24 * var(--vw-pc)), 24px);
    height: min(calc(3 * var(--vw-pc)), 3px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.faq_switch::after{
    transform: translate(-50%, -50%) rotate(var(--rotate));
}

.section_faq .btn_wrap{
    margin-left: 0;
    margin-top: min(calc(24 * var(--vw-pc)), 24px);
    width: 50%;
}

.section_faq .btn_inner{
    width: 100%;
}

/* voice */
.section_voice{
    background: linear-gradient(to right, #f5f7f6, #fef6ee);
    padding-top: min(calc(80 * var(--vw-pc)), 80px);
    padding-bottom: min(calc(90 * var(--vw-pc)), 90px);
}

.voice_title{
    color: #ed7ea5;
    font-size: min(calc(50 * var(--vw-pc)), 50px);
    font-weight: 700;
    letter-spacing: .12em;
    text-align: center;
    position: relative;
}

.voice_container{
    margin-left: auto;
    margin-right: auto;
    width: min(calc(1015 * var(--vw-pc)), 1015px);
}

.voice_wrap{
    display: flex;
    justify-content: space-between;
    margin-top: min(calc(60 * var(--vw-pc)), 60px);
}

.voice_inner{
    display: flex;
    flex-direction: column;
    width: min(calc(240 * var(--vw-pc)), 240px);
}

.voice_info{
    background-color: #fff;
    flex-grow: 1;
    margin-top: min(calc(10 * var(--vw-pc)), 10px);
    padding: min(calc(10 * var(--vw-pc)), 10px) min(calc(10 * var(--vw-pc)), 10px) min(calc(20 * var(--vw-pc)), 20px);
    position: relative;
}
.voice_info::before{
    content: "";
    aspect-ratio: 23 / 20;
    background-image: url(../img/ws2026/voice_bubble_icon.svg);
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    width: min(calc(23 * var(--vw-pc)), 23px);
    position: absolute;
    top: max(calc(-20 * var(--vw-pc)), -20px);
    left: 30%;
}

.voice_student_text,
.voice_parent_text{
    color: #ed7ea5;
    font-size: min(calc(15 * var(--vw-pc)), 15px);
    line-height: 1.5;
    text-align: justify;
}

.voice_parent_text{
    color: #ed7ea5;
    font-weight: 700;
}

.voice_parent_head{
    color: #ed7ea5;
    font-size: min(calc(17 * var(--vw-pc)), 17px);
    font-weight: 700;
    margin-top: min(calc(22 * var(--vw-pc)), 22px);
    margin-bottom: min(calc(4 * var(--vw-pc)), 4px);
}

/* flow */
.section_flow{
    background-color: #4b8dff;
    padding-top: min(calc(80 * var(--vw-pc)), 80px);
    padding-bottom: min(calc(90 * var(--vw-pc)), 90px);
}

.flow_title{
    color: #fff;
    font-size: min(calc(50 * var(--vw-pc)), 50px);
    font-weight: 700;
    letter-spacing: .12em;
    text-align: center;
    position: relative;
}

.flow_wrap{
    margin-top: min(calc(60 * var(--vw-pc)), 60px);
    margin-left: auto;
    margin-right: auto;
    width: min(calc(783 * var(--vw-pc)), 783px);
}

.flow_inner:nth-child(n+2){
    margin-top: min(calc(40 * var(--vw-pc)), 40px);
}

.flow_step_box{
    background-color: #fff;
    display: flex;
    align-items: center;
    padding: min(calc(8 * var(--vw-pc)), 8px) min(calc(120 * var(--vw-pc)), 120px) min(calc(8 * var(--vw-pc)), 8px) min(calc(32 * var(--vw-pc)), 32px);
    width: 100%;
}

.flow_step_img{
    display: block;
    flex-shrink: 0;
    width: min(calc(80 * var(--vw-pc)), 80px);
    height: auto;
    position: relative;
}

.flow_step_title{
    color: #ed7ea5;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: min(calc(24 * var(--vw-pc)), 24px);
    font-weight: 700;
    letter-spacing: .12em;
    width: 100%;
}

.flow_info_box{
    display: flex;
    align-items: center;
    margin-top: min(calc(24 * var(--vw-pc)), 24px);
}

.flow_info_icon_box{
    display: block;
    flex-shrink: 0;
    width: min(calc(100 * var(--vw-pc)), 100px);
}

.flow_info_icon{
    display: block;
    width: 100%;
    height: auto;
}

.flow_info_text{
    color: #fff;
    font-size: min(calc(19 * var(--vw-pc)), 19px);
    font-weight: 500;
    letter-spacing: .12em;
    line-height: 1.25;
    margin-left: min(calc(8 * var(--vw-pc)), 8px);
    text-align: justify;
}

/* section_lastBtn */
.section_lastBtn{
    padding-top: min(calc(80 * var(--vw-pc)), 80px);
    padding-bottom: min(calc(80 * var(--vw-pc)), 80px);
}

/* お申し込みモーダル */
.app_modal_container{
    background-color: rgba(0, 0, 0, .5);
    display: flex;
    align-items: center;
    justify-content: center;
    opacity: 0;
    visibility: hidden;
    width: 100%;
    height: calc(100% - 62px);
    position: fixed;
    bottom: 0;
    left: 0;
}

.app_modal_wrap{
    background-color: var(--bgcolor-white, #fff);
    border-radius: min(calc(30 * var(--vw-pc)), 30px);
    padding: min(calc(84 * var(--vw-pc)), 84px) min(calc(117 * var(--vw-pc)), 117px);
    width: min(calc(830 * var(--vw-pc)), 830px);
    position: relative;
}

.app_modal_title{
    color: #1e1ece;
    display: block;
    font-size: min(calc(26 * var(--vw-pc)), 26px);
    font-weight: 700;
    letter-spacing: .24em;
    text-align: center;
}
.app_modal_title .orange{
    color: #ff553c;
}

.app_modal_menu{
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    margin-top: min(calc(42 * var(--vw-pc)), 42px);
    width: 100%;
}

.app_modal_link{
    aspect-ratio: 1/1;
    background-color: #f2f6f9;
    border: min(calc(2 * var(--vw-pc)), 2px) solid #1e1ece;
    display: block;
    width: min(calc(115 * var(--vw-pc)), 115px);
    position: relative;
    transition: all .3s ease-out;
}
.app_modal_link:not(:nth-child(1)),
.app_modal_link:not(:nth-child(6)){
    margin-left: max(calc(-2 * var(--vw-pc)), -2px);
}
.app_modal_link:nth-child(n+6){
    margin-top: max(calc(-2 * var(--vw-pc)), -2px);
}
.app_modal_link:nth-child(n+9){
    background-color: #f9f4f4;
    border: min(calc(2 * var(--vw-pc)), 2px) solid #ff553c;
}
.app_modal_link:hover{
    background-color: #1e1ece;
}
.app_modal_link:nth-child(n+9):hover{
    background-color: #ff553c;
}

.app_modal_link_text{
    color: #1e1ece;
    font-size: min(calc(20 * var(--vw-pc)), 20px);
    font-weight: 700;
    letter-spacing: .24em;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    transition: all .3s ease-out;
}
.app_modal_link:nth-child(n+9) .app_modal_link_text{
    color: #ff553c;
}
.app_modal_link:hover .app_modal_link_text{
    color: #fff;
}

.app_modal_close{
    cursor: pointer;
    display: block;
    width: min(calc(36 * var(--vw-pc)), 36px);
    height: auto;
    position: absolute;
    top: min(calc(42 * var(--vw-pc)), 42px);
    right: min(calc(36 * var(--vw-pc)), 36px);
}

/* フローティングバナー */
.floating_container{
    display: block;
    width: min(calc(100 * var(--vw-pc)), 100px);
    position: fixed;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    z-index: 900;

    opacity: 0;
    visibility: hidden;
    transition: all .5s ease;
}
.floating_container.scroll{
    opacity: 1;
    visibility: visible;
}

.floating_img{
    display: block;
    width: 100%;
    height: auto;
}

/* ローディングアニメーション */
.loading_container{
    background-color: #f2f4ff;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 9999;
}

.loading_logo{
    width: min(calc(550 * var(--vw-pc)), 550px);
}

.loading_anniversary{
    width: min(calc(550 * var(--vw-pc)), 550px);
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.loading_logo,
.loading_anniversary{
    opacity: 0;
    visibility: hidden;
}


br.pc{
    display: block;
}
br.sp{
    display: none;
}
















@media screen and (max-width:768px){
    /* 共通 */
    .btn_wrap{
        gap: min(calc(18 * var(--vw-sp)), 18px);
        width: min(calc(630 * var(--vw-sp)), 630px);
    }

    .btn_inner{
        width: min(calc(305 * var(--vw-sp)), 305px);
    }

    .btn_inner:nth-child(3){
        width: min(calc(630 * var(--vw-sp)), 630px);
    }

    .winterStudy_slide_wrap{
        margin-top: min(calc(100 * var(--vw-sp)), 100px);
    }


    .bg01{
        padding-bottom: min(calc(760 * var(--vw-sp)), 760px);
    }

    .bg01_circleDeco{
        width: min(calc(540 * var(--vw-sp)), 540px);

        &:nth-child(1){
            top: min(calc(1370 * var(--vw-sp)), 1370px);
            left: auto;
            right: max(calc(-300 * var(--vw-sp)), -300px);
        }
        &:nth-child(2){
            top: min(calc(2150 * var(--vw-sp)), 2150px);
            right: auto;
            left: max(calc(-300 * var(--vw-sp)), -300px);
        }
        &:nth-child(3){
            top: min(calc(3000 * var(--vw-sp)), 3000px);
            left: auto;
            right: max(calc(-300 * var(--vw-sp)), -300px);
        }
        &:nth-child(4){
            top: min(calc(3750 * var(--vw-sp)), 3750px);
            right: auto;
            left: max(calc(-300 * var(--vw-sp)), -300px);
        }
        &:nth-child(5){
            top: min(calc(4570 * var(--vw-sp)), 4570px);
            left: auto;
            right: max(calc(-300 * var(--vw-sp)), -300px);
        }
        &:nth-child(6),
        &:nth-child(7){
            display: none;
        }
    }

    .bg01_crystalDeco{
        width: min(calc(248 * var(--vw-sp)), 248px);

        &:nth-child(1){
            top: min(calc(1550 * var(--vw-sp)), 1550px);
            right: max(calc(-130 * var(--vw-sp)), -130px);
        }
        &:nth-child(2){
            top: min(calc(2100 * var(--vw-sp)), 2100px);
            left: max(calc(-130 * var(--vw-sp)), -130px);
        }
        &:nth-child(3){
            top: min(calc(2870 * var(--vw-sp)), 2870px);
            right: max(calc(-130 * var(--vw-sp)), -130px);
        }
        &:nth-child(4){
            top: min(calc(4940 * var(--vw-sp)), 4940px);
            left: max(calc(-130 * var(--vw-sp)), -130px);
        }
        &:nth-child(5),
        &:nth-child(6){
            display: none;
        }
    }

    /* メインビジュアル */
    .mv_title{
        font-size: min(calc(15 * var(--vw-sp)), 15px);
        padding-top: 0;
        padding-bottom: 0;
        width: 100%;
        position: absolute;
        top: min(calc(18 * var(--vw-sp)), 18px);
        left: 0;
        z-index: 1;
    }

    .mv_main_wrap{
        width: 100%;
    }

    .mv_main{
        width: 100%;
    }

    .mv_logo{
        width: min(calc(670 * var(--vw-sp)), 670px);
        bottom: min(calc(54 * var(--vw-sp)), 54px);
    }

    .mv_copy{
        font-size: min(calc(48 * var(--vw-sp)), 48px);
        top: min(calc(160 * var(--vw-sp)), 160px);
        left: min(calc(24 * var(--vw-sp)), 24px);
    }

    .mv_anniversary{
        width: min(calc(100 * var(--vw-sp)), 100px);
        top: min(calc(85 * var(--vw-sp)), 85px);
        right: min(calc(24 * var(--vw-sp)), 24px);
    }

    .mv_icon_wrap{
        width: min(calc(237 * var(--vw-sp)), 237px);
        top: min(calc(570 * var(--vw-sp)), 570px);
        right: min(calc(10 * var(--vw-sp)), 10px);
    }

    .mv_icon_box:nth-child(1){
        display: none;
    }
    .mv_icon_box:nth-child(2) {
        margin-top: 0;
    }

    .mv_notice{
        font-size: min(calc(20 * var(--vw-sp)), 20px);
        line-height: 1.3;
        margin-top: min(calc(30 * var(--vw-sp)), 30px);
    }

    /* msg */
    .section_msg{
        margin-top: min(calc(46 * var(--vw-sp)), 46px);
    }

    .msg_application_btn_inner{
        width: min(calc(630 * var(--vw-sp)), 630px);
    }

    .msg_img_wrap{
        margin-top: min(calc(94 * var(--vw-sp)), 94px);
        width: 100%;
        height: min(calc(255 * var(--vw-sp)), 255px);
        --msg-radius: min(calc(1500 * var(--vw-sp)), 1500px);
    }

    .msg_img_box{
        width: min(calc(287 * var(--vw-sp)), 287px);
        margin-left: max(calc(-143.5 * var(--vw-sp)), -143.5px);
    }

    .msg_text{
        font-size: min(calc(28 * var(--vw-sp)), 28px);
        margin-top: min(calc(64 * var(--vw-sp)), 64px);
    }

    .msg_head{
        margin-top: min(calc(94 * var(--vw-sp)), 94px);
        width: min(calc(592 * var(--vw-sp)), 592px);
    }

    .msg_btn_wrap{
        gap: min(calc(12 * var(--vw-sp)), 12px);
        margin-top: min(calc(42 * var(--vw-sp)), 42px);
    }

    .msg_btn_inner{
        width: min(calc(214 * var(--vw-sp)), 214px);
    }

    /* results */
    .results_container{
        padding-top: min(calc(164 * var(--vw-sp)), 164px);
    }

    .results_item_wrap{
        border-radius: min(calc(40 * var(--vw-sp)), 40px);
        margin-bottom: min(calc(24 * var(--vw-sp)), 24px);
        padding-top: min(calc(40 * var(--vw-sp)), 40px);
        padding-bottom: min(calc(30 * var(--vw-sp)), 30px);
        width: min(calc(677 * var(--vw-sp)), 677px);
    }

    .results_item{
        width: 95%;
    }

    .results_switch{
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: min(calc(46 * var(--vw-sp)), 46px);
    }

    .results_switch_mark{
        --rotate: 90deg;
        aspect-ratio: 1/1;
        border: min(calc(2 * var(--vw-sp)), 2px) solid #4b90ff;
        border-radius: 50%;
        width: min(calc(80 * var(--vw-sp)), 80px);
        position: relative;
    }
    .results_switch_mark::before, .results_switch_mark::after {
        content: "";
        background-color: #4b90ff;
        width: min(calc(48 * var(--vw-sp)), 48px);
        height: min(calc(2 * var(--vw-sp)), 2px);
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .results_switch_mark::after {
        transform: translate(-50%, -50%) rotate(var(--rotate));
    }

    .results_note{
        font-size: min(calc(20 * var(--vw-sp)), 20px);
        margin-bottom: min(calc(80 * var(--vw-sp)), 80px);
        position: relative;
    }

    /* pointElementary,pointJunior */
    .section_pointElementary{
        mask-image: url(../img/ws2026/mask_wave_sp.png);
        -webkit-mask-image: url(../img/ws2026/mask_wave_sp.png);
        margin-top: max(calc(-628 * var(--vw-sp)), -628px);
        padding-top: min(calc(100 * var(--vw-sp)), 100px);
        padding-bottom: min(calc(670 * var(--vw-sp)), 670px);
    }

    .pointElementary_circleDeco{
        width: min(calc(810 * var(--vw-sp)), 810px);

        &:nth-child(1){
            top: min(calc(240 * var(--vw-sp)), 240px);
            right: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(2){
            top: min(calc(1260 * var(--vw-sp)), 1260px);
            left: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(3){
            top: min(calc(2190 * var(--vw-sp)), 2190px);
            right: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(4){
            top: min(calc(3200 * var(--vw-sp)), 3200px);
            left: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(5){
            top: min(calc(4100 * var(--vw-sp)), 4100px);
            right: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(6){
            top: min(calc(5132 * var(--vw-sp)), 5132px);
            left: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(7){
            top: min(calc(6070 * var(--vw-sp)), 6070px);
            right: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(8){
            top: min(calc(7080 * var(--vw-sp)), 7080px);
            left: max(calc(-420 * var(--vw-sp)), -420px);
        }
    }

    .pointElementary_crystalDeco{
        width: min(calc(430 * var(--vw-sp)), 430px);

        &:nth-child(1){
            top: min(calc(300 * var(--vw-sp)), 300px);
            right: max(calc(-180 * var(--vw-sp)), -180px);
        }
    }

    .title_container{
        width: min(calc(677 * var(--vw-sp)), 677px);
    }

    .title_head_wrap{
        gap: min(calc(28 * var(--vw-sp)), 28px);

        &::before{
            width: min(calc(100 * var(--vw-sp)), 100px);
        }
    }

    .title_head{
        font-size: min(calc(55 * var(--vw-sp)), 55px);
        white-space: nowrap;

        .text{
            font-size: min(calc(29 * var(--vw-sp)), 29px);
            margin-bottom: min(calc(24 * var(--vw-sp)), 24px);
        }
    }

    .title_text{
        font-size: min(calc(30 * var(--vw-sp)), 30px);
        margin-top: min(calc(32 * var(--vw-sp)), 32px);
    }

    .feature_container{
        margin-top: min(calc(130 * var(--vw-sp)), 130px);
        margin-bottom: min(calc(120 * var(--vw-sp)), 120px);
        width: min(calc(677 * var(--vw-sp)), 677px);
    }

    .feature_inner{
        flex-direction: column;

        &::before{
            display: none;
        }

        &:nth-child(n+2){
            margin-top: min(calc(170 * var(--vw-sp)), 170px);
        }
    }

    .feature_left{
        width: 100%;
    }

    .feature_img{
        border-bottom-left-radius: min(calc(40 * var(--vw-sp)), 40px);
        border-top-right-radius: min(calc(40 * var(--vw-sp)), 40px);
    }

    .feature_title{
        border-top-left-radius: min(calc(40 * var(--vw-sp)), 40px);
        border-top-right-radius: min(calc(40 * var(--vw-sp)), 40px);
        font-size: min(calc(40 * var(--vw-sp)), 40px);
        padding-top: min(calc(24 * var(--vw-sp)), 24px);
        padding-bottom: min(calc(24 * var(--vw-sp)), 24px);
        width: min(calc(324 * var(--vw-sp)), 324px);
    }

    .feature_right{
        margin-top: min(calc(46 * var(--vw-sp)), 46px);
        width: 100%;
    }

    .feature_right_course{
        font-size: min(calc(30 * var(--vw-sp)), 30px);
        margin-bottom: min(calc(18 * var(--vw-sp)), 18px);

        span{
            margin-bottom: min(calc(10 * var(--vw-sp)), 10px);
            padding: min(calc(6 * var(--vw-sp)), 6px) min(calc(16 * var(--vw-sp)), 16px);
        }
    }

    .feature_right_head{
        font-size: min(calc(40 * var(--vw-sp)), 40px);
        margin-top: min(calc(24 * var(--vw-sp)), 24px);
        white-space: nowrap;

        &::after{
            aspect-ratio: 222 / 3;
            background-size: min(calc(5 * var(--vw-sp)), 5px) 100%;
            margin-top: min(calc(32 * var(--vw-sp)), 32px);
            width: min(calc(222 * var(--vw-sp)), 222px);
        }
    }

    .feature_right_text{
        font-size: min(calc(30 * var(--vw-sp)), 30px);
        margin-top: min(calc(42 * var(--vw-sp)), 42px);
    }

    .feature_right_notice{
        font-size: min(calc(20 * var(--vw-sp)), 20px);
        margin-top: min(calc(20 * var(--vw-sp)), 20px);
    }

    .pointElementary_program_container{
        border-radius: min(calc(40 * var(--vw-sp)), 40px);
        margin-top: min(calc(120 * var(--vw-sp)), 120px);
        margin-bottom: min(calc(120 * var(--vw-sp)), 120px);
        padding: min(calc(48 * var(--vw-sp)), 48px) min(calc(24 * var(--vw-sp)), 24px);
        width: min(calc(677 * var(--vw-sp)), 677px);
    }

    .pointElementary_program_tag{
        border-top-left-radius: min(calc(40 * var(--vw-sp)), 40px);
        border-top-right-radius: min(calc(40 * var(--vw-sp)), 40px);
        font-size: min(calc(36 * var(--vw-sp)), 36px);
        padding-top: min(calc(16 * var(--vw-sp)), 16px);
        padding-bottom: min(calc(16 * var(--vw-sp)), 16px);
        width: min(calc(326 * var(--vw-sp)), 326px);
        left: min(calc(56 * var(--vw-sp)), 56px);
    }

    .pointElementary_program_head{
        font-size: min(calc(30 * var(--vw-sp)), 30px);
        line-height: 1.6;
        text-align: center;
        white-space: nowrap;
        position: relative;

        &::before,&::after{
            aspect-ratio: 40/2;
            width: min(calc(40 * var(--vw-sp)), 40px);
            position: absolute;
            top: 72%;
        }
        &::before{
            left: 6%;
            transform: rotate(65deg);
        }
        &::after{
            right: 5%;
            transform: rotate(-65deg);
        }
    }

    .pointElementary_program_title{
        border-bottom: min(calc(2 * var(--vw-sp)), 2px) solid #4b3dff;
        font-size: min(calc(55 * var(--vw-sp)), 55px);
        line-height: 1.5;
        margin-top: min(calc(46 * var(--vw-sp)), 46px);
        padding-bottom: min(calc(20 * var(--vw-sp)), 20px);
        position: relative;

        &::after{
            width: min(calc(77 * var(--vw-sp)), 77px);
            position: absolute;
            bottom: 33%;
            right: 3%;
        }
    }

    .pointElementary_program_content{
        flex-direction: column;
        margin-top: min(calc(48 * var(--vw-sp)), 48px);
    }

    .pointElementary_program_text{
        font-size: min(calc(30 * var(--vw-sp)), 30px);
        width: 100%;
    }

    .pointElementary_program_info{
        margin-top: min(calc(36 * var(--vw-sp)), 36px);
        width: 100%;
    }

    .pointElementary_program_lineItem{
        gap: min(calc(14 * var(--vw-sp)), 14px);

        &:nth-child(n+2){
            margin-top: min(calc(10 * var(--vw-sp)), 10px);
        }
    }

    .pointElementary_program_lineItem_head{
        font-size: min(calc(22 * var(--vw-sp)), 22px);
        padding-top: min(calc(5 * var(--vw-sp)), 5px);
        padding-bottom: min(calc(8 * var(--vw-sp)), 8px);
        width: min(calc(250 * var(--vw-sp)), 250px);
    }

    .pointElementary_program_lineItem_text{
        font-size: min(calc(22 * var(--vw-sp)), 22px);
        letter-spacing: .1em;
        margin-top: -1%;
    }

    .slideProgram_container{
        margin-top: min(calc(125 * var(--vw-sp)), 125px);
        margin-bottom: min(calc(120 * var(--vw-sp)), 120px);

        .splide__arrows{
            .splide__arrow{
                width: min(calc(48 * var(--vw-sp)), 48px);

                &.splide__arrow--prev{
                    left: min(calc(10 * var(--vw-sp)), 10px);
                }
                &.splide__arrow--next{
                    right: min(calc(10 * var(--vw-sp)), 10px);
                }
            }
        }
    }

    .slideProgram_item{
        border-top-right-radius: min(calc(40 * var(--vw-sp)), 40px);
        border-bottom-left-radius: min(calc(40 * var(--vw-sp)), 40px);
        padding: min(calc(42 * var(--vw-sp)), 42px) min(calc(32 * var(--vw-sp)), 32px) min(calc(24 * var(--vw-sp)), 24px);
    }

    .slideProgram_tag{
        border-top-left-radius: min(calc(40 * var(--vw-sp)), 40px);
        border-top-right-radius: min(calc(40 * var(--vw-sp)), 40px);
        font-size: min(calc(30 * var(--vw-sp)), 30px);
        padding: min(calc(20 * var(--vw-sp)), 20px) min(calc(42 * var(--vw-sp)), 42px);
        min-width: min(calc(320 * var(--vw-sp)), 320px);
    }

    .slideProgram_title{
        font-size: min(calc(45 * var(--vw-sp)), 45px);
        margin-bottom: min(calc(40 * var(--vw-sp)), 40px);
    }

    .slideProgram_img{
        margin-bottom: min(calc(30 * var(--vw-sp)), 30px);
    }

    .slideProgram_text{
        font-size: min(calc(30 * var(--vw-sp)), 30px);
        margin-bottom: min(calc(16 * var(--vw-sp)), 16px);
    }

    .slideEvent_container{
        margin-top: min(calc(70 * var(--vw-sp)), 70px);
        margin-bottom: min(calc(80 * var(--vw-sp)), 80px);

        .splide__arrows{
            .splide__arrow{
                width: min(calc(48 * var(--vw-sp)), 48px);

                &.splide__arrow--prev{
                    left: min(calc(10 * var(--vw-sp)), 10px);
                }
                &.splide__arrow--next{
                    right: min(calc(10 * var(--vw-sp)), 10px);
                }
            }
        }
    }

    .slideEvent_item{
        border-right: min(calc(3 * var(--vw-sp)), 3px) dotted #4b8dff;
        padding-left: min(calc(54 * var(--vw-sp)), 54px);
        padding-right: min(calc(54 * var(--vw-sp)), 54px);
    }

    .slideEvent_title{
        font-size: min(calc(44 * var(--vw-sp)), 44px);
        margin-bottom: min(calc(20 * var(--vw-sp)), 20px);
        white-space: nowrap;
    }

    .slideEvent_img_inner{
        border-top-right-radius: min(calc(40 * var(--vw-sp)), 40px);
        border-bottom-left-radius: min(calc(40 * var(--vw-sp)), 40px);
        margin-bottom: min(calc(40 * var(--vw-sp)), 40px);
    }

    .slideEvent_btn{
        width: min(calc(340 * var(--vw-sp)), 340px);
        bottom: min(calc(20 * var(--vw-sp)), 20px);
        right: min(calc(20 * var(--vw-sp)), 20px);

        &.noLink{
            width: min(calc(545 * var(--vw-sp)), 545px);
        }
    }

    .slideEvent_info{
        font-size: min(calc(30 * var(--vw-sp)), 30px);

        .small{
            font-size: min(calc(18 * var(--vw-sp)), 18px);
        }
        .middle{
            font-size: min(calc(22 * var(--vw-sp)), 22px);
        }
    }

    .slideEvent_text{
        font-size: min(calc(30 * var(--vw-sp)), 30px);
        margin-top: min(calc(16 * var(--vw-sp)), 16px);
        
        &::before{
            aspect-ratio: 196 / 3;
            background-size: min(calc(5 * var(--vw-sp)), 5px) 100%;
            margin-bottom: min(calc(16 * var(--vw-sp)), 16px);
            width: min(calc(196 * var(--vw-sp)), 196px);
        }
    }

    .slideEvent_note{
        font-size: min(calc(20 * var(--vw-sp)), 20px);
        margin-top: min(calc(24 * var(--vw-sp)), 24px);
    }

    .section_pointJunior{
        mask-image: url(../img/ws2026/mask_wave_sp.png);
        -webkit-mask-image: url(../img/ws2026/mask_wave_sp.png);
        margin-top: max(calc(-530 * var(--vw-sp)), -530px);
        padding-top: min(calc(150 * var(--vw-sp)), 150px);
        padding-bottom: min(calc(110 * var(--vw-sp)), 110px);
    }

    .pointJunior_circleDeco{
        width: min(calc(810 * var(--vw-sp)), 810px);

        &:nth-child(1){
            top: min(calc(240 * var(--vw-sp)), 240px);
            right: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(2){
            top: min(calc(1260 * var(--vw-sp)), 1260px);
            left: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(3){
            top: min(calc(2190 * var(--vw-sp)), 2190px);
            right: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(4){
            top: min(calc(3200 * var(--vw-sp)), 3200px);
            left: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(5){
            top: min(calc(4100 * var(--vw-sp)), 4100px);
            right: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(6){
            top: min(calc(5132 * var(--vw-sp)), 5132px);
            left: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(7){
            top: min(calc(6070 * var(--vw-sp)), 6070px);
            right: max(calc(-420 * var(--vw-sp)), -420px);
        }
        &:nth-child(8){
            top: min(calc(7080 * var(--vw-sp)), 7080px);
            left: max(calc(-420 * var(--vw-sp)), -420px);
        }
    }

    .pointJunior_crystalDeco{
        width: min(calc(430 * var(--vw-sp)), 430px);

        &:nth-child(1){
            top: min(calc(300 * var(--vw-sp)), 300px);
            right: max(calc(-180 * var(--vw-sp)), -180px);
        }
    }

    .pointJunior_alpha_container{
        margin-bottom: min(calc(135 * var(--vw-sp)), 135px);
        width: min(calc(677 * var(--vw-sp)), 677px);
    }

    .pointJunior_alpha_inner.different{
        border-radius: min(calc(40 * var(--vw-sp)), 40px);
        flex-direction: column;
        padding: min(calc(54 * var(--vw-sp)), 54px) min(calc(20 * var(--vw-sp)), 20px) min(calc(36 * var(--vw-sp)), 36px);

        .pointJunior_alpha_left{
            width: 100%;
        }

        .pointJunior_alpha_left_head{
            display: flex;
            align-items: center;
            flex-wrap: wrap;
            gap: min(calc(12 * var(--vw-sp)), 12px);
            font-size: min(calc(133 * var(--vw-sp)), 133px);

            .small{
                font-size: min(calc(29 * var(--vw-sp)), 29px);
                margin-bottom: min(calc(56 * var(--vw-sp)), 56px);
                margin-left: min(calc(200 * var(--vw-sp)), 200px);
            }

            .middle{
                font-size: min(calc(55 * var(--vw-sp)), 55px);
                margin-top: 0;
            }
        }

        .pointJunior_alpha_right{
            margin-top: min(calc(34 * var(--vw-sp)), 34px);
            width: 100%;
        }

        .pointJunior_alpha_right_line{
            gap: min(calc(12 * var(--vw-sp)), 12px);

            &:nth-child(n+2){
                margin-top: min(calc(34 * var(--vw-sp)), 34px);
            }
        }

        .pointJunior_alpha_right_term{
            font-size: min(calc(23 * var(--vw-sp)), 23px);
            padding-top: min(calc(4 * var(--vw-sp)), 4px);
            padding-bottom: min(calc(8 * var(--vw-sp)), 8px);
            width: min(calc(146 * var(--vw-sp)), 146px);
        }

        .pointJunior_alpha_right_data{
            font-size: min(calc(29 * var(--vw-sp)), 29px);
            margin-top: 0;

            .notice{
                font-size: min(calc(18 * var(--vw-sp)), 18px);
                margin-top: min(calc(18 * var(--vw-sp)), 18px);
            }
            .big{
                font-size: min(calc(42 * var(--vw-sp)), 42px);
            }
        }
    }

    .pointJunior_alpha_inner.test{
        border-radius: min(calc(40 * var(--vw-sp)), 40px);
        padding: min(calc(76 * var(--vw-sp)), 76px) min(calc(40 * var(--vw-sp)), 40px) min(calc(190 * var(--vw-sp)), 190px);

        .pointJunior_text{
            font-size: min(calc(29 * var(--vw-sp)), 29px);
            line-height: 1.5;
            margin-bottom: 0;

            &.first{
                margin-left: min(calc(200 * var(--vw-sp)), 200px);
            }
        }

        .pointJunior_head{
            justify-content: flex-start;
            gap: min(calc(210 * var(--vw-sp)), 210px);
            font-size: min(calc(92 * var(--vw-sp)), 92px);
            line-height: 1.3;
            margin-top: min(calc(72 * var(--vw-sp)), 72px);
            margin-bottom: min(calc(42 * var(--vw-sp)), 42px);

            .pointJunior_head_sub{
                font-size: min(calc(37 * var(--vw-sp)), 37px);
                padding: min(calc(12 * var(--vw-sp)), 12px);
                width: max-content;
                position: absolute;
                top: 80%;
                left: 5%;
            }
        }
    }

    .pointJunior_alpha_icon{
        width: min(calc(184 * var(--vw-sp)), 184px);
        top: min(calc(20 * var(--vw-sp)), 20px);
        left: min(calc(10 * var(--vw-sp)), 10px);
    }

    .pointJunior_notice{
        font-size: min(calc(20 * var(--vw-sp)), 20px);
        line-height: 1.4;
        margin-top: min(calc(24 * var(--vw-sp)), 24px);
        margin-bottom: min(calc(64 * var(--vw-sp)), 64px);
        text-align: left;
    }

    /* faq */
    .section_faq{
        padding-top: min(calc(48 * var(--vw-sp)), 48px);
        padding-bottom: min(calc(60 * var(--vw-sp)), 60px);
    }

    .faq_title{
        font-size: min(calc(62 * var(--vw-sp)), 62px);
    }

    .faq_container{
        border-radius: min(calc(60 * var(--vw-sp)), 60px);
        margin-top: min(calc(46 * var(--vw-sp)), 46px);
        padding: min(calc(20 * var(--vw-sp)), 20px);
        width: min(calc(670 * var(--vw-sp)), 670px);
    }

    .faq_inner{
        padding-top: min(calc(24 * var(--vw-sp)), 24px);
        padding-bottom: min(calc(24 * var(--vw-sp)), 24px);
    }

    .faq_icon{
        width: min(calc(54 * var(--vw-sp)), 54px);
    }
    .faq_box.answer .faq_icon{
        margin-top: min(calc(32 * var(--vw-sp)), 32px);
    }

    .faq_text_content{
        margin-top: min(calc(32 * var(--vw-sp)), 32px);
        width: min(calc(550 * var(--vw-sp)), 550px);
    }

    .faq_text{
        font-size: min(calc(29 * var(--vw-sp)), 29px);
        line-height: 1.3;
        margin-left: min(calc(14 * var(--vw-sp)), 14px);
        width: min(calc(425 * var(--vw-sp)), 425px);
    }
    .faq_text .annot{
        font-size: min(calc(21 * var(--vw-sp)), 21px);
        letter-spacing: .1em;
        margin-top: min(calc(32 * var(--vw-sp)), 32px);
    }

    .faq_switch{
        border: min(calc(2 * var(--vw-sp)), 2px) solid #4b8dff;
        width: min(calc(88 * var(--vw-sp)), 88px);
    }
    .faq_switch::before,
    .faq_switch::after{
        width: min(calc(24 * var(--vw-sp)), 24px);
        height: min(calc(3 * var(--vw-sp)), 3px);
    }

    .section_faq .btn_wrap{
        margin-top: min(calc(32 * var(--vw-sp)), 32px);
        width: 100%;
    }

    /* voice */
    .section_voice{
        padding-top: min(calc(90 * var(--vw-sp)), 90px);
        padding-bottom: min(calc(170 * var(--vw-sp)), 170px);
    }

    .voice_title{
        font-size: min(calc(62 * var(--vw-sp)), 62px);
    }

    .voice_container{
        width: min(calc(670 * var(--vw-sp)), 670px);
    }

    .voice_wrap{
        flex-wrap: wrap;
        margin-top: min(calc(64 * var(--vw-sp)), 64px);
    }

    .voice_inner{
        width: 100%;
    }
    .voice_inner:nth-child(n+2){
        margin-top: min(calc(42 * var(--vw-sp)), 42px);
    }
    
    .voice_info{
        margin-top: min(calc(24 * var(--vw-sp)), 24px);
        padding: min(calc(22 * var(--vw-sp)), 22px);
    }
    .voice_info::before{
        top: max(calc(-50 * var(--vw-sp)), -50px);
    }

    .voice_student_text,
    .voice_parent_text{
        font-size: min(calc(30 * var(--vw-sp)), 30px);
    }

    .voice_parent_head{
        font-size: min(calc(42 * var(--vw-sp)), 42px);
        margin-top: min(calc(64 * var(--vw-sp)), 64px);
    }

    /* flow */
    .section_flow{
        padding-top: min(calc(94 * var(--vw-sp)), 94px);
        padding-bottom: min(calc(94 * var(--vw-sp)), 94px);
    }

    .flow_title{
        font-size: min(calc(62 * var(--vw-sp)), 62px);
    }

    .flow_wrap{
        margin-top: min(calc(62 * var(--vw-sp)), 62px);
        width: min(calc(670 * var(--vw-sp)), 670px);
    }

    .flow_inner:nth-child(n+2){
        margin-top: min(calc(42 * var(--vw-sp)), 42px);
    }

    .flow_step_box{
        padding: min(calc(8 * var(--vw-sp)), 8px) 0% min(calc(8 * var(--vw-sp)), 8px) min(calc(32 * var(--vw-sp)), 32px);
    }

    .flow_step_img{
        width: min(calc(120 * var(--vw-sp)), 120px);
    }

    .flow_step_title{
        font-size: min(calc(36 * var(--vw-sp)), 36px);
        letter-spacing: .02em;
    }

    .flow_info_box{
        justify-content: space-between;
        margin-top: min(calc(24 * var(--vw-sp)), 24px);
    }

    .flow_info_icon_box{
        width: min(calc(190 * var(--vw-sp)), 190px);
    }

    .flow_info_text{
        font-size: min(calc(27 * var(--vw-sp)), 27px);
        letter-spacing: 0;
        line-height: 1.5;
        margin-left: 0;
        margin-right: min(calc(32 * var(--vw-sp)), 32px);
        width: min(calc(410 * var(--vw-sp)), 410px);
    }

    /* section_lastBtn */
    .section_lastBtn{
        padding-top: min(calc(80 * var(--vw-sp)), 80px);
        padding-bottom: min(calc(80 * var(--vw-sp)), 80px);
    }

    /* お申し込みモーダル */
    .app_modal_container{
        height: calc(100% - 50px);
    }

    .app_modal_wrap{
        border-radius: min(calc(40 * var(--vw-sp)), 40px);
        padding: min(calc(48 * var(--vw-sp)), 48px) min(calc(68 * var(--vw-sp)), 68px);
        width: min(calc(670 * var(--vw-sp)), 670px);
    }

    .app_modal_title{
        font-size: min(calc(42 * var(--vw-sp)), 42px);
    }

    .app_modal_menu{
        margin-top: min(calc(48 * var(--vw-sp)), 48px);
        width: 100%;
    }

    .app_modal_link{
        border: min(calc(2 * var(--vw-sp)), 2px) solid #1e1ece;
        width: min(calc(135 * var(--vw-sp)), 150px);
    }
    .app_modal_link:not(:nth-child(1)),
    .app_modal_link:not(:nth-child(6)){
        margin-left: max(calc(-2 * var(--vw-sp)), -2px);
    }
    .app_modal_link:nth-child(n+5){
        margin-top: max(calc(-2 * var(--vw-sp)), -2px);
    }
    .app_modal_link:nth-child(n+9){
        border: min(calc(2 * var(--vw-sp)), 2px) solid #ff553c;
    }

    .app_modal_link_text{
        font-size: min(calc(24 * var(--vw-sp)), 24px);
    }

    .app_modal_close{
        width: min(calc(40 * var(--vw-sp)), 40px);
        top: min(calc(48 * var(--vw-sp)), 48px);
        right: min(calc(40 * var(--vw-sp)), 40px);
    }

    /* フローティングバナー */
    .floating_container{
        width: 100%;
        top: auto;
        bottom: 0;
        transform: translateY(0);
    }

    /* ローディングアニメーション */
    .loading_logo{
        width: 50%;
    }

    .loading_anniversary{
        width: 50%;
    }

    

    br.pc{
        display: none;
    }
    br.sp{
        display: block;
    }
}






























/* 講座詳細 スケジュール */
.schedule_title_wrap{
    margin-top: 80px;
    margin-left: auto;
    margin-right: auto;
    width: 78%;
}

.schedule_title_img{
    display: block;
    width: 100%;
    height: auto;
}

.course ul.accordion.near-school{
    margin-top: 70px;
}

#lp-wrap{
    margin-top: 80px;
}

#lp-wrap .ws_btn_wrap{
    margin-top: 0;
    width: 72%;
}
#lp-wrap .ws_btn_wrap::after{
    display: none;
}

/* 講座スケジュール準備中 */
#briefing{
    margin-bottom: 80px;
}

#briefing .accordion.near-school{
    position: relative;
}

#briefing .sche_commingsoon_wrap{
    background-color: rgba(0, 0, 0, .7);
    color: var(--color-white, #fff);
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: min(5vw, 57px);
    font-weight: 700;
    letter-spacing: .24em;
    line-height: 1.75;
    text-align: center;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
}

@media screen and (max-width:768px){
    #lp-wrap{
        margin-top: 70px;
    }

    /* 講座スケジュール準備中 */
    #briefing{
        margin-bottom: 50px;
    }
}
@media screen and (max-width:500px){
    #lp-wrap{
        margin-top: 70px;
    }

    #lp-wrap .ws_btn_wrap{
        width: 85%;
    }
}

.lp-course-box h2::before{
    background: url(../img/ws2025/course/course-ttl-left.png);
    background-size: cover;
}
.lp-course-box h2::after {
    background: url(../img/ws2025/course/course-ttl-right.png);
    background-size: cover;
}

.multi-box {
    padding-bottom: 0px;
}

.bg-y{
    background-color: #e9f2fb;
}

.border-frame {
    border: solid 1px #000;
    padding: 15px;
}

.border-frame-inline{
    display: inline-block;
    border: solid 1px;
    border-color: #1e1ece;
    color: #1e1ece;
    padding: 0px 10px;
}

/* チェックボックス */
.input-check + span + p{
    min-width: 150px;
}
#j3_1 .input-check + span + p{
    min-width: 160px;
}

#e1_1 .input-check + span:after,
#e2_1 .input-check + span:after,
#e6_1 .input-check + span:after{
    left: 195px;
}
#j3_1 .input-check + span:after{
    left: 205px;
}
   
@media screen and (max-width: 767px) {
    .input-check + span + p{
        min-width: 110px;
    }
    #j3_1 .input-check + span + p{
        width: 120px;
    }
    
    #e1_1 .input-check + span:after,
    #e2_1 .input-check + span:after,
    #e6_1 .input-check + span:after{
        left: 155px;
    }
    #j3_1 .input-check + span:after{
        left: 200px;
    }
}

/*講座申込ボタン*/
.course_btn {
    margin: 50px 0 0;
}
.course_btn img {
    display: block;
    margin: 0 auto;
    width: 100%;
    height: 70px;
}
/*ボタンアニメーション*/
.course_btn:hover{
    animation-name: ss21_btn_anim;
	animation-duration: 2s;
	animation-iteration-count: 1;
	animation-fill-mode: forwards;
	animation-timing-function: linear;
}
@media screen and (max-width: 767px) {
    .course_btn img {
        display: block;
        margin: 0 auto;
        width: 100%;
        height: 70px;
    }
}
@media screen and (max-width: 500px) {
    .course_btn img {
        display: block;
        margin: 0 auto;
        width: 100%;
        height: 70px;
    }
}

/* カリキュラム */
.guidebook-table-head.background_blue{
    background-color: #a3bfe4;
}
.guidebook-table-head.background_red{
    background-color: #f1967c;
}
.guidebook-table-line{
    background-color: #efefef;
}

th.guidebook-table-head,
td.guidebook-table-data{
    border: none;
    vertical-align: top;
}

td.guidebook-table-data{
    padding-left: calc(1em + 5px);
    text-indent: calc(-1em + 5px);
    text-align: left;
}



/* 色変更関連 */
/*青系変更*/
.course-tp .tp-reg{
	background-color: #1e1ece;
}

.course ul.accordion > li > p,
.briefing-schedule dd a::before{
	background: #1e1ece;
}
.course ul.accordion.near-school .box{
	border-right:2px solid #1e1ece;
	border-bottom: 2px solid #1e1ece;
    border-left: 2px solid #1e1ece;
}

.c-blue {
    color: #1e1ece;
}
.bdrc-blue {
    border-color: #1e1ece;
}

.course .resp-tabs-list li,
.course .resp-tabs-list li:last-child{
	color: #1e1ece;
}
.course .resp-tabs-list li:last-child {
    border-right: 2px solid #1e1ece;
}
.course .c-ttl{
    background: #ff553c !important;
}
.course .resp-tab-active,
.course .resp-tabs-list li::before{
	background: #1e1ece !important;;
}
.course .resp-tabs-list li{
	border-left: 2px solid #1e1ece;
}
.course .resp-tabs-list li.resp-tab-active::after{
	border-color: #1e1ece transparent transparent transparent;
}
.course .resp-tabs-list li::after{
	border-color: #1e1ece transparent transparent transparent;
}
@media screen and (min-width: 768px){
	.course .resp-tab-content {
    border-top: 2px solid #1e1ece;
	}
}
.lp-course-box em{
	color: #1e1ece;
}
h2.lp-course-ttl {
    color: #1e1ece;
    border-bottom: 4px solid #1e1ece;
}
.course .courselink li a{
	border-bottom: 1px solid #1e1ece;
}
@media screen and (min-width: 1025px) and (max-width: 1200px){
	.course .courselink li:first-child a, .course .courselink li:nth-child(5) a, .course .courselink li:nth-child(9) a {
		border-left: 1px solid #1e1ece;
	}
}
@media screen and (min-width: 1025px) and (max-width: 1200px){
	.course .courselink li:nth-child(-n+4) a {
    border-top: 1px solid #1e1ece;
	}
}

.course .courselink li{
	border-right: 1px solid #1e1ece;
}
.course .courselink li a:hover {
    background-color: #1e1ece;
}
#scroolltop{
	background: #1e1ece;
}

.btn a{
	background: #1e1ece;
}
.btn_yellow > a::after{
	border-top: 1px solid #1e1ece;
    border-right: 1px solid #1e1ece;
}
.btn_yellow a{
	background: #ffff3c;
	color: #1e1ece;
}
.modal-dtl h3{
	background: #1e1ece;
}

@media screen and (max-width: 767px){
	.course h2.resp-accordion {
		display: block;
		background: #1e1ece !important;
	}
}

@media screen and (min-width: 1201px){
	.course .courselink::after{
		background: #1e1ece
	}
}

.course-cur dt{
background-color: #1e1ece;
}

.cols-icon{
    background-color: #1e1ece;
}

.op-plus:before,
.op-plus:after{
    background-color: #1e1ece;
}

.bgc-blue{
    background-color: #1e1ece;
}

/*赤系変更*/
.course-tp .tp-free{
	background-color: #ff553c;
}

.c-price{
    padding: 10px;
    background-color: #ffff3c;
    font-size: 1.6rem;
    line-height: 1;
    color: #ff553c;
    font-weight: 700;
    flex-wrap: wrap;
}

.c-price h4{
    color: #ff553c;
    width: 100%;
}

.course-cur-table th.course_no_table_head{
    background-color: transparent;
    border: none;
}

.course-cur-table th.course_no_table_data,
.course-cur-table td.course_no_table_data{
    border: none;
    text-align: left;
}

.course ul.accordion-box > li > div.ttl-main{
    background-color: #1e1ece;
	background-size:100% 100%;
}


@media screen and (max-width:768px){
    .schedule_title_wrap{
        margin-top: 60px;
        margin-left: auto;
        margin-right: auto;
        width: 97%;
    }

    .course ul.accordion.near-school{
        margin-top: 60px;
    }

	.course dl.dtl dt{
        float: left;
        width: 20%;
	}

    .course dl.dtl dd{
        margin-left: 20%;
        padding-bottom: 10px;
        border-left: 1px solid #ddd;
    }
}



@media screen and (max-width:500px){
    .schedule_title_wrap{
        margin-top: 70px;
    }

    .course ul.accordion.near-school{
        margin-top: 30px;
    }
}