@charset "utf-8";

#bdash-reception-window-close-detector{
    visibility: hidden;
}

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

.msg_container,
.about_container,
.parentVoice_container,
.results_container,
.graduateVoice_container,
.point_container,
.trial_container{
    margin-left: auto;
    margin-right: auto;
    max-width: 1500px;
}

main{
    overflow: hidden;
}

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

/* 共通 */
.course_btn_wrap{
    display: flex;
    align-items: flex-end;
    justify-content: center;
    gap: min(2vw, 30px);
    margin-top: 2%;
}

.course_btn{
    display: block;
    width: 20%;
}

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

.color_red{
    color: #ff6699;
}

.underline_white-blue{
    background-image: linear-gradient(to right, #FFF 50%, #84c8f9);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100% .5em;
}
.underline_pink-white{
    background-image: linear-gradient(to right, #ffb6e7 50%, #fff);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100% .5em;
}
.underline_yellow{
    background-image: linear-gradient(90deg, #ffff26, #ffff26);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100% .5em;
}
.underline_pink{
    background-image: linear-gradient(90deg, #ff6699, #ff6699);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100% .5em;
}

.marker_red{
    background: linear-gradient(90deg, #ff6699, #ff6699);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100% 1.3em;
}
.marker_blue-pink{
    background: linear-gradient(90deg, #84c8f9, #ffb6e7 55%);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100% 1.3em;
}
.marker_blue-lightblue{
    background: linear-gradient(90deg, #2e37c8, #0097ff);
    background-position: left bottom;
    background-repeat: no-repeat;
    background-size: 100% 1.3em;
}


/* bg01 */
.bg1_container{
    background-image: url(../img/ny2026/pink_deco.png),
    url(../img/ny2026/pink_deco.png),
    url(../img/ny2026/pink_deco.png),
    url(../img/ny2026/pink_deco.png),
    radial-gradient(circle at 0px 0px, #8CABE1 0% 10%, #E1F4FF 30% 80%, #8CABE1 95% 100%);
    background-size: 11%, 20%, 30%, 20%, auto;
    background-position: top 3% right 2%, top 23% left -5%, top 43% right -10%, top 76% left 3%, top left;
    background-repeat: no-repeat;
    padding-bottom: 9%;
    position: relative;
}

/* mv */
.section_mv{
    padding-top: 1px;
}

.mv_title{
    color: #fff;
    font-size: min(1.2vw, 18px);
    font-weight: 700;
    letter-spacing: .07em;
    margin-top: 1.2%;
    margin-bottom: 1.2%;
    text-align: center;
}

.mv_wrap{
    margin-left: auto;
    margin-right: auto;
    width: 94%;
    position: relative;
}

.mv_img{
    border-radius: 1000px;
    overflow: hidden;
}

.mv_copy{
    width: 5.1%;
    position: absolute;
    top: 16%;
    left: 19%;
}

.mv_anniversary{
    width: 8%;
    position: absolute;
    top: 6%;
    right: 8%;
}

.mv_date{
    width: 20%;
    position: absolute;
    top: 24%;
    right: 8%;
}

.mv_icon{
    width: 12%;
    position: absolute;
    top: 54%;
    right: 8%;
}

.mv_logo{
    width: 64%;
    position: absolute;
    bottom: 5%;
    left: 50%;
    transform: translateX(-50%);
}

.mv_notice{
    color: #2e37c8;
    font-size: min(1vw, 15px);
    font-weight: 500;
    line-height: 1.4;
    letter-spacing: .01em;
    margin-top: 1.5%;
    text-align: center;
}

/* msg */
.section_msg{
    margin-top: 2%;
    position: relative;
}

.msg_benefit{
    margin-left: auto;
    margin-right: auto;
    margin-top: 2%;
    width: 53%;
}

.msg_grade_head{
    color: #2e37c8;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: min(1vw, 15px);
    font-size: 2vw;
    font-weight: 700;
    letter-spacing: .02em;
    margin-top: 2.5%;
}
.msg_grade_head::before,
.msg_grade_head::after{
    content: "";
    aspect-ratio: 25/31;
    display: block;
    width: 2%;
}
.msg_grade_head::before{
    background-image: url(../img/ny2026/msg_title_deco_left.svg);
}
.msg_grade_head::after{
    background-image: url(../img/ny2026/msg_title_deco_right.svg);
}

.msg_grade_wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: min(1.8vw, 27px);
    margin-top: 1.5%;
}

.msg_grade_btn{
    display: block;
    width: 27%;
}
.msg_grade_btn img{
    display: block;
    width: 100%;
    height: auto;
}

.msg_wrap{
    display: flex;
    justify-content: flex-end;
    align-items: center;
    margin-top: 5%;
    margin-right: 8%;
}

.msg_text{
    color: #2e37c8;
    font-size: min(1.2vw, 18px);
    font-weight: 500;
    line-height: 4;
    letter-spacing: .15em;
}

.msg_img_inner{
    width: 47%;
}

.msg_img{
    border-radius: 50%;
    overflow: hidden;
    width: 67%;
}
.msg_img:nth-child(2){
    margin-left: auto;
    margin-top: -8%;
    width: 53%;
}

.msg_copy{
    margin-left: auto;
    margin-right: auto;
    margin-top: 5%;
    width: 36%;
}

.msg_logo{
    margin-left: auto;
    margin-right: auto;
    margin-top: 1.5%;
    margin-bottom: 3%;
    width: 38%;
}

/* bg02 */
.bg2_container{
    background-image: url(../img/ny2026/ellipse_deco_white.svg),
    url(../img/ny2026/ellipse_deco_white.svg),
    url(../img/ny2026/ellipse_deco_white.svg),
    url(../img/ny2026/ellipse_deco_white.svg),
    url(../img/ny2026/ellipse_deco_white.svg),
    linear-gradient(to bottom, #ff75a3 0% 30%, #ffb6e7 40% 100%);
    background-size: 52%, 72%, 52%, 52%, 52%, auto;
    background-position: top 3% right -17%, top 19% left -29%, top 39% right -70%, top 79% left -12%, top 97% right -18%, top left;
    padding-top: 7%;
    padding-bottom: 7%;
}

/* about */
.about_title{
    margin-left: auto;
    margin-right: auto;
    width: 40%;
}

.about_head{
    font-size: min(2.7vw, 40px);
    font-weight: 700;
    margin-top: 5%;
    text-align: center;
}

.about_text{
    font-size: min(1.2vw, 18px);
    font-weight: 500;
    line-height: 2.5;
    margin-top: 3%;
    text-align: center;
}

.about_text .notice{
    display: block;
    font-size: min(1vw, 15px);
    line-height: 2.5;
}

.about_benefit_wrap{
    background: linear-gradient(120deg, #FFF 65%, #84c8f9);
    border-radius: min(2vw, 30px);
    margin-left: auto;
    margin-right: auto;
    margin-top: 6%;
    width: 74%;
}

.about_benefit_title{
    background: linear-gradient(to bottom, #FFF, #84c8f9);
    border-radius: 1000px;
    display: inline-block;
    font-size: min(2.7vw, 40px);
    font-weight: 700;
    margin-top: -5%;
    padding: 1.5% 3.5%;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.about_benefit_text{
    font-size: min(1.9vw, 28px);
    font-weight: 700;
    letter-spacing: .05em;
    margin-top: 2.5%;
    text-align: center;
}

.about_benefit_inner{
    display: flex;
    justify-content: space-between;
    padding: 3% 6% 4%;
}

.about_benefit_box{
    width: 25%;
}

.about_benefit_grade{
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: min(1.7vw, 26px);
    font-weight: 700;
    letter-spacing: .12em;
}
.about_benefit_box:nth-child(3) .about_benefit_grade{
    margin-left: -10%;
    width: 120%;
}
.about_benefit_grade .arrow{
    margin-left: 2%;
    margin-right: 2%;
    width: 8%;
}
.about_benefit_grade::before,
.about_benefit_grade::after{
    content: "";
    aspect-ratio: 60 / 2;
    background-color: #000;
    display: block;
    width: min(3vw, 45px);
}
.about_benefit_grade::before{
    transform: rotate(50deg);
}
.about_benefit_grade::after{
    transform: rotate(-50deg);
}

.about_benefit_img{
    margin-left: auto;
    margin-right: auto;
    margin-top: 5%;
    width: min(14vw, 200px);
}

.about_benefit_head{
    font-size: min(1.3vw, 20px);
    font-weight: 700;
    margin-top: 7%;
    text-align: center;
}

.about_notice_wrap{
    background-color: #fff;
    border-radius: min(2vw, 30px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3%;
    margin-bottom: 4%;
    padding: 3% 1% 3% 1.5%;
    width: 74%;
}

.about_notice_img{
    width: 34%;
}

.about_notice_info{
    width: 63%;
}

.about_notice_info_title{
    color: #ff6699;
    font-size: min(1.9vw, 28px);
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: .09em;
}

.about_notice_info_text{
    color: #ff6699;
    font-size: min(1.1vw, 16px);
    font-weight: 500;
    line-height: 2;
    margin-top: 3%;
}

.about_notice_info_head{
    color: #fff;
    font-size: min(1.9vw, 28px);
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: .09em;
    margin-top: 3%;
}

.about_deco_img{
    margin-left: auto;
    margin-right: -3%;
    margin-top: -1%;
    width: 50%;
}

/* parentVoice */
.parentVoice_title{
    margin-left: auto;
    margin-right: auto;
    margin-top: 2%;
    width: 40%;
}

.parentVoice_wrap{
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    margin-top: 7%;
    margin-bottom: 4%;
    width: 74%;
}

.parentVoice_inner{
    background-color: #fff;
    border-radius: min(2vw, 30px);
    padding: 0 2.7% 3.2%;
    width: 31%;
}

.parentVoice_img{
    margin-left: auto;
    margin-right: auto;
    margin-top: -18%;
    width: 38%;
}

.parentVoice_head{
    color: #ff6699;
    font-size: min(1.9vw, 28px);
    font-weight: 700;
    letter-spacing: .03em;
    margin-top: 10%;
    text-align: center;
}

.parentVoice_text{
    color: #ff6699;
    font-size: min(1.1vw, 16px);
    font-weight: 500;
    line-height: 2;
    margin-top: 10%;
    text-align: justify;
}

/* bg03 */
.bg3_container{
    background: linear-gradient(45deg, #c6e7ff 30%, #84c8f9 30% 70%, #c6e7ff 70%);
    padding-top: 5%;
    padding-bottom: 7%;
}

/* results */
.results_head{
    color: #2e37c8;
    font-size: min(2.5vw, 38px);
    font-weight: 700;
    line-height: 1.6;
    letter-spacing: .07em;
    text-align: center;
}
.results_head sup{
    font-size: min(1.1vw, 16px);
}

.results_wrap{
    background-color: #003cbe;
    border-radius: min(2vw, 30px);
    margin-left: auto;
    margin-right: auto;
    margin-top: 3%;
    padding: 2.3% 1%;
    width: 74%;
}

.results_notice{
    color: #2e37c8;
    font-size: min(1vw, 15px);
    font-weight: 500;
    margin-top: 2%;
    text-align: center;
}

.results_switch{
    display: none;
}

/* graduateVoice */
.graduateVoice_title{
    background-color: #2e37c8;
    border-radius: 1000px;
    color: #fff;
    display: inline-block;
    font-size: min(2.7vw, 40px);
    font-weight: 700;
    margin-top: 4%;
    padding: 1.5% 4%;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
}

.graduateVoice_wrap{
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    margin-top: 4%;
    margin-bottom: 7%;
    width: 74%;
}

.graduateVoice_inner{
    display: flex;
    flex-direction: column;
    width: 17%;
}

.graduateVoice_head{
    background: linear-gradient(to right, #fff 70%, #ffb6e7);
    color: #2e37c8;
    font-size: min(1.3vw, 20px);
    font-weight: 700;
    padding-top: 7%;
    padding-bottom: 7%;
    text-align: center;
}

.graduateVoice_info_box{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.graduateVoice_right{
    display: flex;
    flex-direction: column;
    flex-grow: 1;
}

.graduateVoice_text{
    color: #2e37c8;
    flex-grow: 1;
    font-size: min(1.1vw, 16px);
    font-weight: 500;
    line-height: 1.9;
    letter-spacing: .05em;
    margin-top: 13%;
    text-align: justify;
}

.graduateVoice_name{
    color: #2e37c8;
    flex-shrink: 1;
    font-size: min(1.1vw, 16px);
    font-weight: 500;
    margin-top: 9%;
    text-align: right;
}

/* point */
.section_point{
    background-color: #2e37c8;
    background-image: url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_circle_deco.svg);
    background-size: 27%, 19%, 19%, 30%, 19%, 25%, 38%, 19%;
    background-position: top -1% right 8%, top 17% left 6%, top 23% right -5%, top 37% left -4%, top 46% right -3%, top 58% right 8%, top 86% right -18%, top 95% left -2%;
    padding-top: 5%;
    padding-bottom: 7%;
}

.point_title{
    margin-left: auto;
    margin-right: auto;
    width: 38%;
}

.point_title_wrap{
    display: flex;
    align-items: center;
    justify-content: center;
    gap: min(1.5vw, 22px);
    margin-top: 2%;
}

.point_title_num{
    display: block;
    width: 9%;
    height: auto;
}

.point_title_text{
    color: #fff;
    font-size: min(3.3vw, 50px);
    font-weight: 700;
    line-height: 1.3;
    letter-spacing: .08em;
    margin-top: -1%;
}
.point_title_text .small{
    font-size: min(2vw, 30px);
}

.point_main_img{
    margin-left: auto;
    margin-right: auto;
    margin-top: 2.5%;
    width: 60%;
}

.point1_head_wrap{
    margin-top: 4%;
}

.point1_head_grade{
    color: #2e37c8;
    font-size: min(2vw, 30px);
    font-weight: 700;
    letter-spacing: .13em;
    text-align: center;
}

.point1_head{
    color: #fff;
    font-size: min(2.7vw, 40px);
    font-weight: 700;
    letter-spacing: .15em;
    margin-top: 2%;
    text-align: center;
}
.point1_head span{
    font-size: min(3.3vw, 50px);
}

.point1_improve_wrap{
    display: flex;
    justify-content: center;
    gap: min(2.7vw, 40px);
    margin-top: 4%;
    margin-bottom: 5%;
}

.point1_improve_inner{
    width: 22%;
    position: relative;
}
.point1_improve_inner:nth-child(1)::after,
.point1_improve_inner:nth-child(2)::after{
    content: "";
    aspect-ratio: 47/40;
    background-image: url(../img/ny2026/point01_grade_arrow.svg);
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    display: block;
    width: 14%;
    position: absolute;
    top: 41%;
    right: -12%;
}

.point1_improve_grade{
    display: block;
    margin-left: auto;
    margin-right: auto;
    width: 85%;
    height: auto;
}

.point1_improve_img{
    margin-top: 9%;
}

.point1_improve_text{
    color: #FFF;
    font-size: min(1.1vw, 16px);
    font-weight: 500;
    line-height: 1.9;
    margin-top: 8%;
    text-align: justify;
}

#point2_container{
    margin-top: 5%;
}

.point2_head_grade{
    color: #2e37c8;
    font-size: min(2vw, 30px);
    font-weight: 700;
    letter-spacing: .13em;
    margin-top: 4%;
    text-align: center;
}

.point2_wrap{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-left: auto;
    margin-right: auto;
    margin-top: 3%;
    margin-bottom: 4%;
    width: 74%;
}

.point2_img{
    width: 31%;
}
.point2_img:nth-child(n+4){
    margin-top: 3%;
    width: 100%;
}

#point3_container{
    margin-top: 5%;
}

.point3_head_text{
    color: #FFF;
    font-size: min(1.7vw, 25px);
    font-weight: 500;
    line-height: 2;
    letter-spacing: .08em;
    margin-top: 4%;
    text-align: center;
}

.point3_head{
    color: #FFF;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: min(4.5vw, 52px);
    font-weight: 700;
    letter-spacing: .12em;
    margin-top: 3%;
    text-align: center;
}
.point3_head::before,
.point3_head::after{
    content: "";
    aspect-ratio: 2/60;
    background-color: #fff;
    display: block;
    width: .15%;
}
.point3_head::before{
    margin-right: 3%;
    transform: rotate(-35deg);
}
.point3_head::after{
    margin-left: 3%;
    transform: rotate(35deg);
}

.point3_graph_wrap{
    display: flex;
    justify-content: space-between;
    margin-left: auto;
    margin-right: auto;
    margin-top: 4%;
    width: 74%;
}

.point3_graph_inner{
    width: 30%;
}

.point_head_notice{
    color: #FFF;
    font-size: min(1vw, 15px);
    font-weight: 500;
    letter-spacing: .16em;
    margin-top: 2.5%;
    margin-bottom: 7%;
    text-align: center;
}

/* trial */
.section_trial{
    background: linear-gradient(to bottom, #ff6699 60%, #ffb6e7);
    padding-top: 6%;
    padding-bottom: 12%;
}

.trial_title{
    margin-left: auto;
    margin-right: auto;
    width: 46%;
}

.trial_head{
    color: #fff;
    font-size: min(2vw, 30px);
    font-weight: 700;
    letter-spacing: .1em;
    margin-top: 3%;
    text-align: center;
}
.trial_head sup{
    font-size: min(1.1vw, 16px);
}

.trial_notice{
    color: #fff;
    font-size: min(1vw, 15px);
    font-weight: 500;
    letter-spacing: .05em;
    margin-top: 2%;
    text-align: center;
}

.trial_slide_wrap{
    margin-left: calc(50% - 50vw);
    margin-top: 6%;
    width: 100vw;
    position: relative;
}

.trial_slide_inner{
    width: 64%;
    position: relative;
}

.trial_slide_img{
    border-radius: 1000px;
    overflow: hidden;
}

.trial_slide_sentence_box{
    position: absolute;
    top: 9%;
    left: 6%;
}
.trial_slide_inner[data-slide="4"] .trial_slide_sentence_box{
    top: 9%;
    left: auto;
    right: 9%;
}
.trial_slide_inner[data-slide="5"] .trial_slide_sentence_box{
    top: 18%;
    left: auto;
    right: 6%;
}

.trial_slide_sentence_head{
    color: #fff;
    font-size: min(2vw, 30px);
    font-weight: 700;
    line-height: 1.7;
    letter-spacing: .06em;
}
.trial_slide_sentence_head .small{
    font-size: min(1.1vw, 16px);
}

.trial_slide_sentence_text{
    color: #2e37c8;
    font-size: min(.9vw, 14px);
    font-weight: 500;
    line-height: 1.8;
    letter-spacing: .18em;
    margin-top: 3%;
}

.trial_slide_info{
    background-color: #fff;
    border-bottom-left-radius: min(1.5vw, 22px);
    border-bottom-right-radius: min(1.5vw, 22px);
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: -24%;
    padding: 27% 4% 4%;
}

.trial_slide_grade{
    width: 24%;
}
.trial_slide_inner[data-slide="1"] .trial_slide_grade{
    width: 11%;
}

.trial_slide_btn{
    display: block;
    width: 39%;
}

.trial_slide_online{
    background: linear-gradient(to right, #84c8f9, #ffb6e7);
    border-radius: 1000px;
    color: #2e37c8;
    font-size: min(1.2vw, 18px);
    font-weight: 700;
    letter-spacing: .17em;
    padding: 2% 4%;
    position: absolute;
    top: 1%;
    left: 4%;
}

.trial_slide_wrap .splide__arrow{
    width: 3.4%;
    position: absolute;
    top: 31%;
}
.trial_slide_wrap .splide__arrow--prev{
    left: 22%;
}
.trial_slide_wrap .splide__arrow--next{
    right: 22%;
}

/* フローティングバナー */
.floating_container{
    display: block;
    width: 4.6%;
    max-width: 70px;
    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 img{
    display: block;
    width: 100%;
    height: auto;
}

/* loading */
.loading_container{
    background: linear-gradient(90deg, rgba(168, 202, 240, 1), rgba(233, 240, 250, 1));
    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(33%, 500px);
}

.loading_anniversary{
    width: min(33%, 500px);
    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){
    /* 共通 */
    .course_btn_wrap{
        gap: 4vw;
        margin-top: 6%;
    }

    .course_btn{
        width: 40%;
    }

    /* bg01 */
    .bg1_container{
        background-image: url(../img/ny2026/pink_deco.png), url(../img/ny2026/pink_deco.png), url(../img/ny2026/pink_deco.png), url(../img/ny2026/pink_deco.png), url(../img/ny2026/pink_deco.png), radial-gradient(circle at 0px 0px, #8CABE1 0% 10%, #E1F4FF 30% 80%, #8CABE1 95% 100%);
        background-size: 14%, 30%, 40%, 30%, 50%, auto;
        background-position: top 2% left 20%, top 5% left -19%, top 29% right -10%, top 62% left -11%, top 81% right -21%, top left;
        padding-bottom: 14%;
    }

    /* mv */
    .mv_title{
        font-size: 2.4vw;
        margin-top: 2%;
        margin-bottom: 7%;
    }

    .mv_wrap{
        width: 90%;
    }

    .mv_copy{
        width: 11%;
        top: 17%;
        left: 9%;
    }

    .mv_anniversary{
        width: 17%;
        top: 7%;
        right: 0%;
    }

    .mv_date{
        width: 60%;
        top: -2%;
        right: 50%;
        transform: translateX(50%);
    }

    .mv_icon{
        width: 25%;
        top: 33%;
        right: -4%;
    }

    .mv_logo{
        width: 88%;
        bottom: 2%;
    }

    .mv_notice{
        font-size: 2vw;
    }

    /* msg */
    .msg_benefit{
        margin-top: 3%;
        width: 90%;
    }

    .msg_grade_head{
        gap: 1vw;
        font-size: 4vw;
        margin-top: 4.5%;
    }
    .msg_grade_head::before,
    .msg_grade_head::after{
        width: 4%;
    }

    .msg_grade_wrap{
        gap: 3vw;
        margin-top: 4%;
    }

    .msg_grade_btn{
        width: 43%;
    }

    .msg_wrap{
        justify-content: center;
        margin-top: 7%;
        margin-right: 0;
    }

    .msg_text{
        font-size: 4vw;
        line-height: 2.2;
        letter-spacing: 0;
        text-align: center;
    }

    .msg_img_inner{
        display: none;
    }

    .msg_copy{
        margin-top: 7%;
        width: 71%;
    }

    .msg_logo{
        margin-top: 3%;
        margin-bottom: 8%;
        width: 76%;
    }

    /* bg02 */
    .bg2_container{
        background-image: url(../img/ny2026/ellipse_deco_white.svg), url(../img/ny2026/ellipse_deco_white.svg), url(../img/ny2026/ellipse_deco_white.svg), url(../img/ny2026/ellipse_deco_white.svg), url(../img/ny2026/ellipse_deco_white.svg), url(../img/ny2026/ellipse_deco_white.svg), url(../img/ny2026/ellipse_deco_white.svg), url(../img/ny2026/ellipse_deco_white.svg), linear-gradient(to bottom, #ff75a3 0% 0%, #ffb6e7 30% 100%);
        background-size: 70%, 90%, 70%, 70%, 70%, 70%, 70%, 70%, auto;
        background-position: top 4.5% right -48%, top 9% left -79%, top 32% right -71%, top 39% left -42%, top 56% right -78%, top 73% left -100%, top 81% right -112%, top 99% left -118%, top left;
        padding-top: 10%;
        padding-bottom: 14%;
    }

    /* about */
    .about_title{
        width: 80%;
    }

    .about_head{
        font-size: 5.4vw;
        line-height: 1.6;
        margin-top: 8%;
    }

    .about_text{
        font-size: 4vw;
        margin-top: 6%;
    }

    .about_text .notice{
        font-size: 2vw;
    }

    .about_benefit_wrap{
        border-radius: 3vw;
        margin-top: 11%;
        width: 90%;
    }

    .about_benefit_title{
        font-size: 5.4vw;
        padding: 2% 5.5%;
    }

    .about_benefit_text{
        font-size: 3.7vw;
        line-height: 1.5;
        margin-top: 4%;
    }

    .about_benefit_inner{
        flex-wrap: wrap;
        padding: 4% 6% 10%;
    }

    .about_benefit_box{
        width: 50%;
    }
    .about_benefit_box:nth-child(n+3){
        margin-top: 10%;
    }

    .about_benefit_grade{
        font-size: 3.5vw;
    }
    .about_benefit_box:nth-child(3) .about_benefit_grade{
        margin-left: 0%;
        width: 100%;
    }
    .about_benefit_grade::before,
    .about_benefit_grade::after{
        width: 5vw;
    }

    .about_benefit_img{
        width: 27vw;
    }

    .about_benefit_head{
        font-size: 3.1vw;
    }

    .about_notice_wrap{
        display: block;
        border-radius: 1000px 1000px 4vw 4vw;
        margin-top: 15%;
        margin-bottom: 8%;
        padding: 1px 5% 9.5%;
        width: 90%;
    }

    .about_notice_img{
        margin-left: auto;
        margin-right: auto;
        margin-top: -11%;
        width: 50%;
    }

    .about_notice_info{
        margin-top: 6%;
        width: 100%;
    }

    .about_notice_info_title{
        font-size: 5.3vw;
        text-align: center;
    }

    .about_notice_info_text{
        font-size: 3.7vw;
        margin-top: 6%;
    }

    .about_notice_info_head{
        font-size: 6vw;
        letter-spacing: .02em;
        margin-top: 5%;
    }

    .about_deco_img{
        margin-right: -11%;
        margin-top: 5%;
        width: 98%;
    }

    /* parentVoice */
    .parentVoice_title{
        margin-top: 7%;
        width: 80%;
    }

    .parentVoice_wrap{
        flex-wrap: wrap;
        margin-top: 12%;
        margin-bottom: 8%;
        width: 90%;
    }

    .parentVoice_inner{
        border-radius: 2.7vw;
        padding: 0 6.7% 8%;
        width: 100%;
    }
    .parentVoice_inner:nth-child(n+2){
        margin-top: 10%;
    }

    .parentVoice_img{
        margin-left: 0;
        margin-top: -6%;
        width: 22%;
    }

    .parentVoice_head{
        font-size: 4.7vw;
        margin-top: -10%;
        margin-left: 26%;
        text-align: left;
    }

    .parentVoice_text{
        font-size: 3.2vw;
        margin-top: 6%;
    }

    /* bg03 */
    .bg3_container{
        background: linear-gradient(57deg, #c6e7ff 20%, #84c8f9 20% 80%, #c6e7ff 80%);
        padding-top: 8%;
        padding-bottom: 14%;
    }

    /* results */
    .results_head{
        font-size: 5.2vw;
    }
    .results_head sup{
        font-size: 3vw;
    }

    .results_wrap{
        border-radius: 4vw;
        margin-top: 6%;
        padding: 6.3% 5%;
        width: 94%;
    }

    .results_notice{
        font-size: 2.7vw;
        line-height: 1.5;
        margin-top: 3%;
        margin-left: 3%;
        text-align: left;
    }

    .results_switch{
        cursor: pointer;
        display: flex;
        align-items: center;
        justify-content: center;
        margin-top: 6%;
    }

    .results_switch_mark{
        --rotate: 90deg;
        aspect-ratio: 1/1;
        border: .3vw solid #FFF;
        border-radius: 50%;
        width: 10%;
        position: relative;
    }
    .results_switch_mark::before, .results_switch_mark::after {
        content: "";
        background-color: #FFF;
        width: 65%;
        height: .3vw;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
    .results_switch_mark::after {
        transform: translate(-50%, -50%) rotate(var(--rotate));
    }

    /* graduateVoice */
    .graduateVoice_title{
        font-size: 5.4vw;
        margin-top: 11%;
        padding: 2% 10%;
    }

    .graduateVoice_wrap{
        flex-wrap: wrap;
        margin-top: 7%;
        margin-bottom: 11%;
        width: 90%;
    }

    .graduateVoice_inner{
        display: flex;
        flex-direction: column;
        width: 100%;
    }
    .graduateVoice_inner:nth-child(n+2){
        margin-top: 5%;
    }

    .graduateVoice_head{
        font-size: 6.4vw;
        padding-top: 3%;
        padding-bottom: 3%;
    }

    .graduateVoice_info_box{
        display: flex;
        justify-content: space-between;
        flex-direction: row;
    }

    .graduateVoice_img{
        width: 30%;
    }

    .graduateVoice_right{
        display: block;
        flex-grow: 0;
        margin-right: 5%;
        margin-top: 3%;
        width: 59%;
    }

    .graduateVoice_text{
        font-size: 3.2vw;
        letter-spacing: 0;
        margin-top: 0;
    }

    .graduateVoice_name{
        font-size: 3.2vw;
        margin-top: 2%;
    }

    /* point */
    .section_point{
        background-color: #2e37c8;
        background-image: url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_square_deco.svg), url(../img/ny2026/point_circle_deco.svg), url(../img/ny2026/point_square_deco.svg);
        background-size: 36%, 30%, 30%, 40%, 36%, 46%, 38%, 50%, 35%, 40%, 19%, 31%, 33%, 38%, 38%, 35%, 49%;
        background-position: top .5% right -13%, top 3.5% left -6%, top 11% right -13%, top 18% left -7%, top 20.5% right -17%, top 24% right -25%, top 31% left -18%, top 39% right -37%, top 48.5% right -15%, top 56% right -23%, top 60% left -6%, top 68% left -4%, top 74% right -23%, top 80% left -16%, top 83% right -18%, top 88.5% left -15%, top 92.5% right -32%;
        padding-top: 10%;
        padding-bottom: 10%;
    }

    .point_title{
        width: 75%;
    }

    .point_title_wrap{
        flex-direction: column;
        gap: 0;
        margin-top: 10%;
    }

    .point_title_num{
        width: 20%;
    }

    .point_title_text{
        font-size: 9.3vw;
        margin-top: -1%;
        text-align: center;
    }
    .point_title_text .small{
        font-size: 5.3vw;
    }

    .point_main_img{
        margin-top: 7.5%;
        width: 90%;
    }

    .point1_head_wrap{
        margin-top: 7%;
    }

    .point1_head_grade{
        font-size: 4.5vw;
    }

    .point1_head{
        font-size: 5.3vw;
        line-height: 1.5;
        margin-top: 4%;
    }
    .point1_head span{
        font-size: 6.6vw;
    }

    .point1_improve_wrap{
        flex-direction: column;
        gap: 18vw;
        margin-left: auto;
        margin-right: auto;
        margin-top: 7%;
        margin-bottom: 10%;
        width: 90%;
    }

    .point1_improve_inner{
        width: 100%;
    }
    .point1_improve_inner:nth-child(1)::after,
    .point1_improve_inner:nth-child(2)::after{
        content: "";
        aspect-ratio: 62/72;
        background-image: url(../img/ny2026/point01_grade_arrow_sp.svg);
        width: 10%;
        position: absolute;
        top: 105%;
        right: 50%;
        transform: translateX(50%);
    }

    .point1_improve_grade{
        margin-left: 0;
        width: 50%;
        position: relative;
    }

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

    .point1_improve_text{
        font-size: 3.7vw;
        margin-top: 5%;
    }

    #point2_container{
        margin-top: 5%;
    }

    .point2_head_grade{
        font-size: 4.5vw;
        margin-top: 8%;
    }

    .point2_wrap{
        flex-direction: column;
        margin-top: 9%;
        margin-bottom: 8%;
        width: 90%;
    }

    .point2_img{
        width: 100%;
    }
    .point2_img:nth-child(n+4){
        margin-top: 0;
    }
    .point2_img:nth-child(n+2){
        margin-top: 5%;
    }

    #point3_container{
        margin-top: 5%;
    }

    .point3_head_text{
        font-size: 4vw;
        letter-spacing: 0;
        margin-top: 8%;
    }

    .point3_head{
        font-size: 6.6vw;
        margin-top: 10%;
    }
    .point3_head::before,
    .point3_head::after{
        width: .3%;
    }
    .point3_head::before{
        margin-right: 4%;
    }
    .point3_head::after{
        margin-left: 1%;
    }

    .point3_graph_wrap{
        flex-direction: column;
        margin-top: 7%;
        width: 73%;
    }

    .point3_graph_inner{
        margin-left: auto;
        margin-right: auto;
        width: 100%;
    }
    .point3_graph_inner:nth-child(1){
        width: 94%;
    }
    .point3_graph_inner:nth-child(3){
        width: 83%;
    }
    .point3_graph_inner:nth-child(n+2){
        margin-top: 15%;
    }

    .point_head_notice{
        font-size: 2.6vw;
        margin-top: 8%;
        margin-bottom: 8%;
    }

    /* trial */
    .section_trial{
        padding-top: 11%;
        padding-bottom: 12%;
    }

    .trial_title{
        width: 93%;
    }

    .trial_head{
        font-size: 4vw;
        letter-spacing: 0;
        margin-top: 6%;
    }
    .trial_head sup{
        font-size: 2.1vw;
    }

    .trial_notice{
        font-size: 2.6vw;
        line-height: 1.75;
        margin-top: 4%;
    }

    .trial_slide_wrap{
        margin-top: 7%;
    }

    .trial_slide_sentence_box{
        top: 0;
        left: 5%;
    }
    .trial_slide_inner[data-slide="4"] .trial_slide_sentence_box{
        top: 0;
        right: 12%;
    }
    .trial_slide_inner[data-slide="5"] .trial_slide_sentence_box{
        top: 13%;
        left: 5%;
        right: auto;
    }

    .trial_slide_sentence_head{
        font-size: 4.8vw;
    }
    .trial_slide_sentence_head .small{
        font-size: 3vw;
    }

    .trial_slide_sentence_text{
        font-size: 2.6vw;
        letter-spacing: 0;
    }

    .trial_slide_online{
        font-size: 3.2vw;
        padding: 1.5% 3%;
        top: 14%;
        left: 19%;
    }

    .trial_slide_info{
        border-bottom-left-radius: 4vw;
        border-bottom-right-radius: 4vw;
        margin-top: -29%;
        padding: 32% 5% 5%;
    }

    .trial_slide_grade{
        width: 36%;
    }
    .trial_slide_inner[data-slide="1"] .trial_slide_grade{
        width: 16%;
    }

    .trial_slide_btn{
        width: 55%;
    }

    .trial_slide_wrap .splide__arrow{
        width: 8.4%;
    }
    .trial_slide_wrap .splide__arrow--prev{
        left: 1%;
    }
    .trial_slide_wrap .splide__arrow--next{
        right: 1%;
    }

    /* フローティングバナー */
    .floating_container{
        display: flex;
        align-items: flex-end;
        top: auto;
        bottom: 0;
        transform: translateY(0);
        width: 100%;
        max-width: none;
    }

    .floating_img:nth-child(1){
        width: 55%;
    }
    .floating_img:nth-child(2){
        width: 45%;
    }

    /* loading */
    .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-details_container{
    background-color: #fff;
    padding-top: 6%;
    padding-bottom: 12%;
}

.course ul.accordion > li > p span,
.course ul.accordion > li > h2 span{
    background-image:url(https://www.edic.jp/common/img/open2.png);
}

.course ul.accordion > li > p span.open,
.course ul.accordion > li > h2 span.open{
    background-image:url(https://www.edic.jp/common/img/close2.png);
}

[data-ruby]:before {
	content: attr(data-ruby);
	position: absolute;
	top: -.35em;
	left: 0;
	right: 0;
	margin: auto;
	font-size: .5em;
	font-weight: normal;
    letter-spacing: -1px;
    line-height: 1;
    text-align: center;
}

.programming-point4{
    background-image: url("../img/ny2021/programming-20.png");
    background-repeat: no-repeat;
    background-position: right 250px bottom 0;
}

@media screen and (max-width: 767px) {    
    .programming-point4{
        background-image: none;
    }
}

@media screen and (max-width: 1100px) {
 .course .resp-tabs-list li {
  padding: 25px 15px;
 }
}
@media screen and (max-width: 880px) {
 .course .resp-tabs-list li {
  padding: 25px 5px;
  font-size: 1.4rem;
 }
}

.course ul.accordion > li > p em i {
 padding: 2px 6px;
}

@media screen and (min-width:768px), print {
 .eiken-notice::after {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 15px 0 15px 20px;
  border-color: transparent transparent transparent #fff;
 }
}
.eiken-answer {
 background-image: url(../img/ny2020/eiken-arrow.png);
 background-repeat: no-repeat;
 background-position: top center;
}
@media screen and (max-width: 767px) {
 .eiken-answer {
  background-size: contain;
 }
}

@media screen and (max-width: 767px) {
	.course .courselink li a{
		padding: 15px 5px !important;
	}

	.course .courselink li a::before{
		margin-right: 5px;
	}
}

/* 色変更関連 */
/* 青のベースカラーを #00348B から #003cbe に変更 */
.course ul.accordion > li > h2 {
    background: #0d16a9;
}

.course ul.accordion > li > p,
.briefing-schedule dd a::before{
	background: #003cbe;
}

.course .resp-tabs-list li,
.course .resp-tabs-list li:last-child{
	color: #003cbe;
}
.course .resp-tabs-list li:last-child {
    border-right: 2px solid #003cbe;
}
.course .resp-tab-active,
.course .resp-tabs-list li::before{
	background: #003cbe !important;;
}
.course .resp-tabs-list li{
	border-left: 2px solid #003cbe;
}
.course .resp-tabs-list li.resp-tab-active::after{
	border-color: #003cbe transparent transparent transparent;
}
.course .resp-tabs-list li::after{
	border-color: #003cbe transparent transparent transparent;
}
@media screen and (min-width: 768px){
	.course .resp-tab-content {
    border-top: 2px solid #003cbe;
	}
}
.course .courselink li a{
	border-bottom: 1px solid #003cbe;
}
@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 #003cbe;
	}
}
@media screen and (min-width: 1025px) and (max-width: 1200px){
	.course .courselink li:nth-child(-n+4) a {
    border-top: 1px solid #003cbe;
	}
}

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

.btn a{
	background: #003cbe;
}

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

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

/* 講座詳細 */
.course .resp-tabs-list li.ny_prpl{
    padding: 25px;
    padding-left: 5px;
    padding-right: 5px;
}


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

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