/*=====================================
各ページ共通ボタンデザイン（クラス「.btn2」を使う）
======================================*/
/*==================================================
<button><a href="">ボタン内のテキストはここ</a></button>
===================================================*/

/* フッター体験授業のご案内ボタン */
.btn:after {
    transform: translateY(-50%);
    top: 45%;
}
/* フッター体験授業のご案内ボタン */

.pc {
    display: block !important;
}
.sp, .sp3 {
    display: none !important;
}

#LowPage .Inner .btn2 {
    width: 95%;
}

#LowPage #Course .btn2 {
    text-transform: none;
}

#LowPage #Course .btn2 a {
    text-transform: none;
}
.btn2 {
    position: relative;
    width: 60%;
    margin: auto;
    font-size: .9em;
    display: block;
    margin: 0 auto;
}
.btn2 a {
    width: 100%;
    display: inline-block;
    padding: 0.75rem 1.25rem;
    color: #fff;
    text-transform: uppercase;
    letter-spacing: .15rem;
    transition: all .3s;
    position: relative;
    z-index: 1;
    text-align: center;
    border: 1px solid #004ea1;
    border-radius: 5px;
}
.btn2 a:before {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 0%;
    height: 100%;
    background-color: #fff;
    transition: all .3s;
    border-radius: 3px;
    z-index: -1;
}
.btn2 a:after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #004ea1;
    border-radius: 4px;
    z-index: -2;
}
.btn2 a:hover {
    color: #004ea1;
    opacity: 1;
}
.btn2 a:hover:before {
    width: 100%;
}
.btn2:after {
    font-family: "Font Awesome 5 Free";
    content: '\f105';
    font-weight: 900;
    color: #fff;
    margin-right: 0.3em;
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    right: 10px;
    font-size: 1em;
    z-index: 1;
}
.btn2:hover:after {
    color: #004ea1;
}
/*=====================================
各ページ共通ボタンデザイン　ここまで
======================================*/






/*=====================================
/tablet_learning/index.php
理英会のタブレット学習（old版）　ここから
======================================*/

.h_mainV {
    max-width: 1280px;
    margin: 0 auto;
}

#LowPage #Course #Useful h2,
#about_app h3,
#background_app h3,
#befoaf h3,
#merit_app h3,
#gamen h3 {
    text-align: center;
    font-family: '游明朝', 'Yu Mincho', YuMincho, 'Hiragino Mincho Pro', serif;
}

#about_app h4,
#background_app h4,
#befoaf h4,
#merit_app h4,
#gamen h4,
.func h4,
#tablet_other h4,
#tablet_func h4,
#hukabori h4 {
    margin: 0 auto;
    font-size: 2rem;
    font-weight: bold;
    border-bottom: 4px solid #2d5daa;
    padding-left: 2em;
    background-image: url(/img/tablet_learning/denkyu.svg);
    background-repeat: no-repeat;
    background-size: 1.5em;
    background-position: left top -0.2em;
    line-height: 1.5;
}

/* Inner */
#about_app div,
#background_app div,
#befoaf div,
#merit_app div,
#gamen div,
.func div,
#h_faq div,
#tablet_other div,
#tablet_func div {
    width: 100%;
    max-width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding: 0 3.4%;
}
/* Inner */


#about_app div p,
#background_app div p {
    padding-top: 1em;
}
#about_app div p span {
    display: inline-block;
    padding-left: 2em;
}


#LowPage .h_bc_y {
    background-color: #fffcf7;
}

/* #background_app .youtube {
    width: fit-content;
}
#background_app div.FadeUP div {
    margin: 0 auto;
} */


#LowPage .h_others-wrapper {
    background-image: url(/img/landing/1091045.png);
    background-position: bottom;
    background-size: cover;
    background-repeat: no-repeat;
}

#befoaf .siwake {
    padding-top: 15em;
}
#befoaf .next {
    width: 100px;
    height: auto;
    display: block;
    margin: 3em auto;
}


#background_app p,
#befoaf div p,
#merit_app p {
    padding: 1em 0;
}

#merit_app div {
    margin: 2em auto;
}


#gamen div {
    text-align: center;
    margin: 5em auto;
}
#gamen p {
    text-align: left;
    padding-left: 7%;
    margin-bottom: 1em;
}
#gamen img {
    max-width: 100%;
}


.func .flex {
    justify-content: flex-start;
}
.func div {
    border-bottom: solid 2px #d1d1d1;
    padding: 3em 0 !important;
}
.func div:last-child {
    border-bottom: none;
}
.func p {
    width: 40%;
    text-align: left;
    overflow-wrap: anywhere;
    display: block;
    margin: auto 0;
}
.func img {
    max-width: 60%;
}


#LowPage .h_bc_b {
    background-color: #f5fafe;
}

#h_faq h4 {
    font-size: 1.3em;
    font-weight: bold;
    max-width: 1000px;
    margin: 0 auto;
    padding: 10px;
    text-align: center;
    background-color: #004ea1;
    color: #fff;
}
#h_faq h5 {
    position: relative;
    padding-left: 2.5em;
    border-bottom: 1px solid #d1d1d1;
}
#h_faq h5::before {
    content: 'Q';
    color: #fff;
    text-align: center;
    line-height: 1.8em;
    width: 1.8em;
    height: 1.8em;
    background: #004ea1;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    /* bottom: 0; */
    margin: auto;
}
#h_faq div {
    max-width: 1000px;
    margin: 3em auto 0;
}
#h_faq p {
    padding-top: 10px;
}
#h_faq p span {
    display: inline-block;
    padding: 0.9em 2em;
}

@media screen and (max-width: 640px) {

    #LowPage #Course #Useful h2 {
        font-size: 2.4em;
        padding: 1em;
    }

    #about_app h4,
    #background_app h4,
    #befoaf h4,
    #merit_app h4,
    #gamen h4,
    .func h4,
    #h_faq h4,
    #tablet_other h4,
    #tablet_func h4 {
        font-size: 1.4rem;
    }

    #Course h4 img {
        width: 50px;
        height: auto;
        padding-right: 0.5em;
    }

    #befoaf .siwake {
        padding-top: 5em;
    }
    #befoaf .next {
        margin: 1em auto;
    }

    #gamen img {
        max-width: 100%;
    }
    #gamen p {
        padding-left: 0%;
    }

    #tablet_func  {
        padding-top: 0;
    }

    .func .flex {
        flex-direction: column-reverse;
        justify-content: center;
        gap: 10px;
        padding-left: 0;
        padding-right: 0;
    }
    .func .flex:first-child {
        padding-top: 1em !important;
    }
    .func .flex img {
        max-width: 100%;
    }
    .func .flex p {
        width: 100%;
    }
}
/*=====================================
/tablet_learning/index.php
理英会のタブレット学習　ここまで
======================================*/



/*=====================================
/tablet_learning/index.php
理英会のタブレット学習（GAMMA版）　ここから
======================================*/

section#intro,
section#hogosya,
section#okosama {
    width: 100%;
    background-color: #faf9f4;
    color: #384653;
}

section#intro .intro_Inner,
section#hogosya .hogosya_Inner,
section#okosama .okosama_Inner,
section#tablearn .tablearn_Inner,
section#evidence .evidence_Inner,
section#learning_flow .learning_flow_Inner,
section#voice .voice_Inner,
section#question .question_Inner,
section#aukana .aukana_Inner {
    width: 90%;
    max-width: 1280px;
    margin: 0 auto;
}


section#intro {

    div {
        margin-bottom: 5em;
    }

    div:last-child {
        margin-bottom: 0;
    }

    h3 {
        font-size: 3.5rem;
        line-height: 1.5;
        margin-bottom: 1em;
    }

    h3 span {
        color: #c94730;
    }

    h3.normal {
        font-weight: normal;
    }

    div p {
        margin: 1em 0;
        line-height: 1.7;
    }

    div p span {
        font-weight: bold;
    }

}


#hogosya .hogosya_Inner h3,
#okosama .okosama_Inner h3 {
    font-size: 2.3em;
    margin-bottom: 2em;
    line-height: 1.5;
}

#hogosya .hogosya_Inner ul,
#okosama .okosama_Inner ul {
    width: 70%;
}

#hogosya .hogosya_Inner ul li,
#okosama .okosama_Inner ul li {
    margin-bottom: 2em;
    padding-left: 2em;
    position: relative;
}

#hogosya .hogosya_Inner ul li h4,
#okosama .okosama_Inner ul li h4,
.kaihatsucolumn h4 {
    font-weight: bold;
    font-size: 1.3em;
}

.kaihatsucolumn h4 {
    text-align: center;
}

#hogosya .hogosya_Inner ul li::before,
#okosama .okosama_Inner ul li::before {
    position: absolute;
    /* background-color: #d9ecf2; */
    background-color: #fff;
    border: #bfd2d8 solid 1px;
    border-radius: 5px;
    padding: 0.4em;
    left: -1.5em;
    top: -0.3em;
    width: 2.5em;
    height: 2.5em;
}

#hogosya .hogosya_Inner ul li.icon1::before,
#okosama .okosama_Inner ul li.icon1::before {
    content: url(/img/tablet_learning/kirakira2.svg);
}

#hogosya .hogosya_Inner ul li.icon2::before {
    content: url(/img/tablet_learning/stick2.svg);
}

#hogosya .hogosya_Inner ul li.icon3::before {
    content: url(/img/tablet_learning/yomiage2.svg);
}

#okosama .okosama_Inner ul li.icon4::before {
    content: url(/img/tablet_learning/gohoubi2.svg);
}

#okosama .okosama_Inner ul li.icon5::before {
    content: url(/img/tablet_learning/minitest2.svg);
}

#hogosya .hogosya_Inner li.kaihatsucolumn,
#okosama .okosama_Inner li.kaihatsucolumn {
    width: 100%;
    max-width: 35em;
    margin: 0 auto;
    /* background-color: #c6e4eb; */
    background-color: #fff;
    border-radius: 16px;
    padding: 2em;
}

#hogosya .hogosya_Inner .h_btn,
#okosama .okosama_Inner .h_btn,
#aukana .aukana_Inner .h_btn {
    padding: 0.5em 1em;
    width: fit-content;
    margin: 0 auto;
    display: block;
    background-color: #2c5f6c;
    color: #ffffff;
    font-weight: bold;
    border-radius: 8px;
}

#hogosya {

    position: relative;
    overflow: hidden;

    .hogosya__bg{
        position: absolute;
        inset: 0;
        background:url("/img/tablet_learning/hogosya_grad6.png") left/cover no-repeat;
    }

/* ボタンデザイン
    .btn {
        width: 100%;
        display: inline-block;
        padding: 0.75rem 1.25rem;
        color: #004ea1;
        text-transform: uppercase;
        letter-spacing: .15rem;
        transition: all .3s;
        position: relative;
        overflow: hidden;
        z-index: 1;
        text-align: center;
        border: 1px solid #004ea1;
        border-radius: 5px;
    }

    .btn:before {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0%;
        height: 100%;
        background-color: #004ea1;
        transition: all .3s;
        border-radius: 3px;
        z-index: -1;
    }

    .btn:hover:before {
        width: 100%;
        color: #004ea1;
    }

    .btn:hover:after {
        width: 100%;
        color: #fff;
        z-index: 5;
    }

    li.kaihatsucolumn .btn:after {
        content: '';
        position: absolute;
        bottom: 0;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        background-color: #fff;
        border-radius: 4px;
        z-index: -2;
    }
ボタンデザイン */

    .hogosya_Inner {

        h3,ul {
            margin-left: auto;
        }

        h3 {
            text-align: right;
            white-space: nowrap;
            z-index: 10;
            position: relative;
        }

        ul {
            width: 70%;
        }

        ul li {
            margin-bottom: 2em;
            padding-left: 2em;
            position: relative;
        }

        ul li h4,
        #jidousaiten div h4 {
            font-weight: bold;
            font-size: 1.3em;
        }

        ul li h4::before {
            position: absolute;
            left: 0.2em;
            top: 0.5em;
            width: 0.7em;
            height: 0.7em;
            background: #1fabeb;
        }

        li.kaihatsucolumn {
            margin: 0 auto;
            border-radius: 16px;
            padding: 2em;
        }

        .h_btn {
            padding: 0.5em 1em;
            width: fit-content;
            margin: 0 auto;
            display: block;
            background-color: #2c5f6c;
            color: #ffffff;
            font-weight: bold;
            border-radius: 8px;
        }

    }

}

#okosama {

    position: relative;

    .okosama__bg{
        position: absolute;
        inset:0;
        background:url("/img/tablet_learning/okosama_grad4.png") center/cover no-repeat;
    }

    .okosama_Inner {

        h3,ul {
            margin-right: auto;
        }

        h3 {
            font-size: 2.3em;
            margin-bottom: 2em;
            text-align: left;
            white-space: nowrap;
            z-index: 10;
            position: relative;
        }

        ul {
            width: 70%;
        }

        ul li {
            margin-bottom: 2em;
            position: relative;
        }

    }

}

#LowPage #tablearn {
    width: 100%;
    background-color: #eff4f3;
    color: #384653;

    h3 {
        font-size: 2em;
        text-align: center;
        margin-bottom: 3em;
    }

    .flex {
        justify-content: center;
        /* align-items: center; */
        margin-bottom: 3em;
    }

    .flex div {
        width: 55%;
        margin-bottom: 2em;
    }

    h4 {
        text-align: center;
        font-size: 1.6em;
        font-weight: bold;
        margin-bottom: 1em;
    }

    .flex p {
        width: 40%;
    }

    .p_plus div.p2 {
        width: 40%;
    }
    .p_plus div.p2 p {
        width: 100%;
    }
    .p_plus .p2 .mb20 {
        margin-bottom: 40px;
    }

    .flex p span {
        font-size: 0.9em;
    }

    .omoi {
        padding: 5em 2em 2em 2em;
        background-color: #fff;
        border-radius: 16px;
        max-width: 1000px;
        margin: 0 auto 3em;
        background-image: url(/img/tablet_learning/h_features_bg.svg);
        background-repeat: no-repeat;
        background-size: 7em;
        background-position: top 1.5em center;
    }

    .omoi span {
        font-weight: bold;
        border-bottom: #c94730 3px solid;
        display: inline-block;
        height: 1.9em;
    }

}

#evidence {
    background-color: #64B8CE;
    color: #384653;

    .evidence_Inner {
        padding: 4em;
        /* background-color: #faf9f4; */
        background-color: #fff;
        border-radius: 16px;
    }

    .bc_grey {
        border-radius: 8px;
    }

    h3 {
        text-align: center;
    }

    .P1st {
        padding: 0.5em 1em 1em 1em;
    }

    .P1st p {
        margin-bottom: 1em;
    }

    th, td {
        border: 1px solid #e6e5e2;
        padding: 0.6em 1em;
        line-height: 1.5;
    }
    tr:nth-of-type(2n) {
        background-color: #f0efea;
    }

    .P2nd {
        line-height: 1.7;
    }

    .P2nd p {
        margin-bottom: 1em;
    }

    .P2nd p.textright {
        font-size: 0.9em;
    }

    .P2nd p span {
        font-weight: bold;
    }

}

#learning_flow {
    background-color: #faf9f4;
    color: #384653;

    h3 {
        padding-left: 6%;
    }

    .P1st {
        margin: 0 auto 1.5em;
        width: 88%;
    }

    .flex {
        justify-content: center;
        gap: 20px;
    }

    .flex div {
        width: 28%;
        padding: 2em;
        background-color: #daeaf0;
        border-radius: 10px;
        border: #bfd2d8 1px solid;
    }

    .flex div img {
        width: 80%;
        display: block;
        margin: 0 14% 1em auto;
    }

    .flex div h4 {
        text-align: center;
        font-size: 1.3em;
        margin-bottom: 1em;
    }

}

#voice {
    background-color: #eef3f2;
    color: #384653;

    h3 {
        padding-left: 7%;
    }

    .flex {
        gap: 20px;
        justify-content: center;
    }

    .flex div {
        width: 28%;
    }

    .flex div img {
        border-radius: 8px;
    }

    .flex div h4 {
        font-size: 1.3em;
        font-weight: bold;
        margin: 0.6em 0;
    }

    .flex div span {
        font-weight: bold;
    }

}

#question {
    background-color: #faf9f4;
    color: #384653;
    position: relative;
    z-index: -5;

    .question__bg {
        position: absolute;
        inset:0;
        background:url(/img/tablet_learning/question.png)center/cover no-repeat;
        z-index: -1;
    }

    .main_text {
        width: 70%;
        max-width: 45em;
        margin-left: auto;
    }

    h3 {
        margin-bottom: 1.5em;
    }

    .mainQ {
        background-color: #f2eeda;
        padding: 2em 2em 1.8em 1em;
        border-radius: 8px;
    }

    .mainQ,
    .Q {
        position: relative;
        padding-left: 2em;
        margin-bottom: 3em;
    }

    .mainQ::before,
    .Q::before {
        content: "";
        position: absolute;
        left: 0.2em;
        top: 0.6em;
        width: 0.7em;
        height: 0.7em;
        background: #384653;
    }

    .mainQ::before {
        content: none;
    }

    .mainQ h4 {
        font-size: 1.5em;
        font-weight: bold;
        margin-bottom: 0.8em;
    }

    .Q h4 {
        font-weight: bold;
        font-size: 1.1em;
    }

}

#aukana {
    background-color: #faf9f4;
    color: #384653;

    h3 {
        text-align: center;
    }

    div {
        width: 80%;
        margin: 0 auto;
    }

    .img img {
        border-radius: 8px;
    }

    div p {
        line-height: 2;
        margin-bottom: 2em;
    }

    .flex {
        justify-content: center;
    }
    .flex button {
        width: 25em;
        margin: 0;
    }

    .btn2:after {
        transform: translateY(-50%);
        top: 50%;
        /* color: #fff; */
    }

    .aukana_Inner p.smallp {
        font-size: 0.8em;
        text-align: left;
        padding-top: 5em;
        width: 80%;
        max-width: 1280px;
        margin: 0 auto;
    }

}
/*=====================================
/tablet_learning/index.php
理英会のタブレット学習（GAMMA版）　ここまで
======================================*/






/*=====================================
/tablet_learning/index.php
理英会とは？　ここから
======================================*/

#Classroom #Event .h_du {
    border-bottom: none;
}

#Classroom #Event .h_bi {
    line-height: 1.7;
    padding-top: 8em;
    background-image: url(/img/about/present.svg);
    background-repeat: no-repeat;
    background-size: 100px;
    background-position: center top;
}

#Classroom #Event .h_bi p {
    margin: 1em;
}

#Classroom #Event .u_training .Inner
#about_1 {
    margin: 0 auto;
}

#Classroom #Event .u_training .Inner
#about_1 h4,
#Classroom #Event .u_training .Inner
#kakikukeko h4,
#Classroom #Event .u_training .Inner
#hukabori h4 {
    margin: 0 auto;
    text-align: left;
    font-size: 2.8rem;
    font-weight: bold;
    border-bottom: 5px solid #2d5daa;
    padding-left: 2em;
    background-image: url(/img/tablet_learning/denkyu.svg);
    background-repeat: no-repeat;
    background-size: 1.5em;
    background-position: left bottom 0.1em;
    line-height: 1.6;
}

#Classroom #Event .u_training .Inner
#about_1 .flex .shadow img {
    box-shadow: 28px 27px 0px -15px rgb(221, 241, 250);
}


#Classroom #Event .u_training .Inner
#about_1 .flex {
    gap: 3em;
    padding-top: 3em;
    flex-wrap: nowrap;
    justify-content: center;
    margin: 0 auto 2em;
}

#Classroom #Event .u_training .Inner
#about_1 .flex .text_1 {
    margin: auto 0;
    width: 45%;
}

#Classroom #Event .u_training .Inner
#about_1 .flex p {
    font-size: 1.5em;
    font-weight: bold;
    line-height: 1.5;
    padding-bottom: 0.3em;
}

#Classroom #Event .u_training .Inner
#about_1 .flex p span {
    display: inline-block;
    font-size: 1.6em;
    line-height: 1.7;
    padding-left: -0.5em;
}

#Classroom #Event .u_training .Inner
#about_1 .reverse {
    flex-direction: row-reverse;

}

#Classroom #Event .u_training .Inner
#about_1 .reverse p {
    font-weight: normal;
    font-size: inherit;
    line-height: 2;
}

#Classroom #Event .u_training .Inner
#about_1 .point {
    width: 100%;
    max-width: 40em;
    margin: 5em auto 0;
    padding: 2em;
    background-color: #f5fafe;
    border: #2d5daa solid 4px;
}
#Classroom #Event .u_training .Inner
#about_1 .point h5 {
    font-size: 3.5rem;
    font-weight: bolder;
    color: #2d5daa;
    padding-left: 1.8em;
    margin-bottom: 0.5em;
    background-image: url(/img/about/hand_white.svg);
    background-repeat: no-repeat;
    background-size: 1.5em;
    background-position: left;
    line-height: 1.2;
}

#Classroom #Event .u_training .Inner
#about_1 .flex p .fs {
    font-size: 1.4em;
}



#Classroom #Event .u_training .Inner
#kakikukeko .text_2 {
    margin: 0 auto 7em;
}

#Classroom #Event .u_training .Inner
#kakikukeko span {
    background-color: #1fabeb;
    display: inline-block;
    font-size: 22px;
    color: #fff;
    height: 40px;
    width: 43px;
    text-align: center;
    margin: 5px;
}

#Classroom #Event .u_training .Inner
#kakikukeko h4 span {
    padding: 3px 0 1px;
}

#Classroom #Event .u_training .Inner
#kakikukeko .textcenter {
    margin: 3em auto;
}


/* =========理英会のカキクケコタイトル========= */
#Classroom #Event .u_training .Inner
#kakikukeko .ka_title {
    position: relative;
    margin: 0 auto;
    max-width: 90%;
}

#Classroom #Event .u_training .Inner
#kakikukeko .ka_title h5 {
    position: absolute;
    top: -2em;
    left: 50%;
    z-index: 10;
    transform: translateX(-50%);
    white-space: nowrap;
    background: #2D5DAA;
    color: #F5FAFE;
    font-weight: bold;
    font-size: 1.3em;
    background-image: url(/img/about/hand_white.svg);
    background-repeat: no-repeat;
    background-size: 2.5em;
    background-position: 1.2em center;
    padding: 1em 2em 1em 4.5em;
}
/* =========理英会のカキクケコタイトル========= */

#Classroom #Event .u_training .Inner
#kakikukeko .detail {
    width: 90%;
    margin: 0 auto;
    background-color: #f5fafe;
    border: #2d5daa solid 4px;
    padding: 3em;
}

#Classroom #Event .u_training .Inner
#kakikukeko .detail span {
    font-weight: bold;
    margin-right: 0.7em;
    padding: 5px 0 0;
}

#Classroom #Event .u_training .Inner
#kakikukeko .detail h5 {
    font-weight: bold;
    font-size: 1.5em;
}

#Classroom #Event .u_training .Inner
#kakikukeko .detail div {
    margin: 2em 0;
}

#ouen {
    max-width: 1000px;
    width: 90%;
    margin: 0 auto;
    text-align: center;
}

#Classroom #Event .u_training .Inner
#ouen h3 {
    background-image: url(/img/about/heart_smile.svg);
    background-repeat: no-repeat;
    background-size: 5em;
    background-position: top center;
    padding-top: 6em;
}

#Classroom #Event .u_training #ouen p {
    text-align: left;
    margin-bottom: 2em;
}

#Classroom #Event .u_training .Inner
#ouen .text_4 {
    margin: 0 auto;
    position: relative;
    width: 80%;
    display: block;
}

#Classroom #Event .u_training .Inner
#ouen .text_4 p.bold {
    border-bottom: none;
}

#Classroom #Event .u_training .Inner
#ouen .text_4 p.above_1 {
    position: absolute;
    top: 15%;
    left: 8%;
    margin-bottom: 0;
    font-size: clamp(24px, 3vw, 36px);
    line-height: 1.2;
    padding: 0.8em 0.2em;
    background-color: rgba(255, 255, 255, 0.5);
}

#Classroom #Event .u_training .Inner
#ouen .text_4 p.above_2 {
    margin-bottom: 0;
    display: block;
    width: 60%;
    position: absolute;
    top: 40%;
    left: 8%;
    padding: 1em 0.4em;
    background-color: rgba(255, 255, 255, 0.5);
}

#Classroom #Event .u_training .Inner
#ouen .text_4 span {
    font-size: 1.5em;
}

#Classroom #Event .u_training .Inner
#ouen .text_4 img {
    box-shadow: 28px 27px 0px -15px #f2dee7;
    margin: 0 auto;
    width: 100%;
}

#Classroom #Event .u_training .h_bcy {
    padding: 0;
    background-color: #f5fafe;
}

#tokuten .h_bb {
    display: block;
    width: fit-content;
    margin: 0 auto 1em;
    border-bottom: #004ea1 solid 2px;
}

#tokuten .w90 {
    width: 85%;
    margin: 0 auto;
}

#tokuten ul {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 20px;
}

#tokuten ul li {
    max-width: 300px;
    display: flex;
    flex-direction: column;
    align-items: center;
    padding-top: 0;
    padding-bottom: 0;
    margin: 0 1em 2em;
}

#Classroom #Event .u_training #tokuten h4 {
    font-size: 1.3em;
    line-height: 1.4;
}

#tokuten ul li img {
    border-radius: 50%;
    margin-bottom: 1em;
}




#hukabori h3 {
    margin-bottom: 3em;
}
#hukabori ul {
    margin-bottom: 7em;
}

#Classroom #Event .u_training
#hukabori ul li .hukabori_list {
    position: relative;
    margin: 0 auto;
    width: 30%;
}


#hukabori aside {
    background-color: #c94730;
    font-size: 1.3em;
    font-weight: bold;
    width: 6em;
    height: 2.2em;
    text-align: center;
    color: #ffffff;
    margin-right: 0.5em;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
}



#hukabori .pinpon{
    height: 20em;
}

#Classroom #Event .u_training
#hukabori ul li h5 {
    width: 5.5em;
    text-align: center;
    position: absolute;
    z-index: 10;
    background: #c94730;
    color: #ffffff;
    font-weight: bold;
    font-size: 1.3em;
    padding: 0.3em 0.5em;
    top: -1.5em;
    left: 50%;
    transform: translateX(-50%);
    white-space: nowrap;
}

#Classroom #Event .u_training
#hukabori ul li .hukabori_detail {
    border: #c94730 3px solid;
    padding: 2.5em 2em 1.5em 2em;
}

#Classroom #Event .u_training
#hukabori h4 {
    font-size: 2.5rem;
}
#Classroom #Event .u_training
#hukabori h4 span {
    background-color: #c94730;
    height: 40px;
    display: inline-block;
    width: 6em;
    height: 2em;
    padding: 5px;
    text-align: center;
    color: #F5FAFE;
    margin-right: 0.5em;
    margin-bottom: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
}

#Classroom #Event .u_training ul {
    align-items: start;
}

#hukabori .tokucho {
    margin: 5em auto;
    position: relative;
}

#hukabori .tokucho:last-child {
    margin-bottom: 0;
}

#hukabori .tokucho h5 {
    width: fit-content;
    font-size: 1.5em;
    font-weight: bold;
    margin-bottom: 2em;
    border-bottom: #2d5daa solid 3px;
    padding-bottom: 0.3em;
}

#hukabori .tokucho h5 span {
    background-color: #2d5daa;
    padding: 0.5em;
    color: #ffffff;
    margin-right: 1em;
}

#hukabori .tokucho_detail {
    margin-bottom: 2.5em;
}

#hukabori .tokucho h6 {
    line-height: 2;
    background-image: url(/img/about/onpu_red.svg);
    background-repeat: no-repeat;
    background-size: 1.5em;
    background-position: left;
    padding-left: 3em;
}
#hukabori .tokucho h6 img {
    width: 1.5em;
    margin: 0.3em;
}

#hukabori .tok1, #hukabori .tok2 {
    position: relative;
}

#hukabori .tok1 figure,
#hukabori .tok2 figure {
    position: absolute;
    bottom: 5%;
    right: 3%;
}

#hukabori .tok2 figure {
    position: absolute;
    bottom: -1em;
    right: 0;
    transform: rotateZ(-15deg);
}

#hukabori .tok2 figure img {
    width: 11em;
}

/* #hukabori .tok3 .pen, */
#hukabori .tok3 .story {
    position: relative;
}

/* #hukabori .tok3 .pen figure {
    position: absolute;
    bottom: 15%;
    right: 0;
} */

#hukabori .tok3 .story figure {
    position: absolute;
    top: 25%;
    right: 0;
}
/*=====================================
/tablet_learning/index.php
理英会とは？　ここまで
======================================*/




/*=====================================
/faq/index.php
よくある質問　ここから
======================================*/

#yokuarufaq .u_border1 {
    width: 75%;
}

#yokuarufaq p.P1st {
    margin: 2em auto;
}


#yokuarufaq .u_border1 p.sogo_info {
    font-size: 1.5em;
    line-height: 2em;
    display: inline-flex;
    align-items: center;
    margin: 0 auto;
    background-image: url(/img/faq/call.svg);
    background-repeat: no-repeat;
    background-size: 1.5em;
    background-position: left center;
    padding-left: 1.8em;

}

#yokuarufaq .u_border1 p.tel {
    font-size: 1.5em;
    letter-spacing: 0.1em;
}

#yokuarufaq .u_3rdTimetable button.u_acc_button {
    align-items: center;
    margin: auto 10px;
}


#yokuarufaq .u_acc_content {
    margin: 0 auto;
}

#yokuarufaq .u_acc_content .btn {
    width: 100%;
    color: #004ea1;
}
/* #yokuarufaq .u_acc_content .btn::after {
    top: 17%;
} */

#yokuarufaq .h_yokuarufaq li {
    /* max-width: 1000px; */
    margin: 0 2em 3em;
}
#yokuarufaq .h_yokuarufaq li:first-child {
    padding-top: 1em;
}

#yokuarufaq .h_yokuarufaq h5 {
    position: relative;
    padding-left: 2.5em;
    border-bottom: 1px solid #d1d1d1;
    margin-bottom: 0.7em;
}

#yokuarufaq .h_yokuarufaq h5::before {
    content: 'Q';
    color: #fff;
    text-align: center;
    line-height: 1.8em;
    width: 1.8em;
    height: 1.8em;
    background: #004ea1;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    margin: auto;
}

#yokuarufaq .h_yokuarufaq p {
    font-weight: initial;
}

#yokuarufaq .kanrenpage {
    /* border: #c94730 solid 2px; */
    text-align: center;
    padding: 1em;
}

#yokuarufaq .u_acc_content .kanrenpage ul.u_grid {
    grid-template-columns: 1fr 1fr 1fr;
}
/* #yokuarufaq .kanrenpage ul li {
    font-size: 0.9em;
    line-height: 1.4;
    padding: 0.3em 1em;
    width: 100%;
    margin: 0.5em 0;
    display: block;
    background-color: #add0ee;
    font-weight: bold;
} */

#yokuarufaq .kanrenpage p {
    display: inline-block;
    padding-left: 0;
}
#yokuarufaq .kanrenpage a {
    text-decoration: none;
    color: inherit;
}
#yokuarufaq .kanrenpage .u_btn_timetable a {
    padding: 0.75rem 2.5rem 0.75rem 1.25rem;;
}
#yokuarufaq .kanrenpage .u_btn_timetable a:hover {
    color: #fff;
}

#yokuarufaq .h_yokuarufaq li ul {
    margin: 0;
    padding-left: 0;
    padding-top: 1em;
}

#yokuarufaq .h_yokuarufaq li ul li {
    position: relative;
    padding-left: 1.5em;
    margin-block: 0.8em;
    line-height: 1.8;
    margin: 0 0 1em 0;
}
#yokuarufaq .h_yokuarufaq li ul li:first-child {
    padding-top: 0;
}
#yokuarufaq .h_yokuarufaq li ul li:last-child {
    margin-bottom: 2em;
}

#yokuarufaq .h_yokuarufaq li ul li::before {
    content: "";
    position: absolute;
    left: 0.2em;
    top: 0.6em;
    width: 0.7em;
    height: 0.7em;
    background: #1fabeb;
}

#yokuarufaq .h_yokuarufaq li ul li span {
    font-weight: bold;
    /* border-bottom: #004ea1 2px solid; */
}
/*=====================================
/faq/index.php
よくある質問　ここまで
======================================*/



/*=====================================
/success_voice/index.php
合格者の声　ここから
======================================*/

#LowPage #Topics #success_voice .sakura {
    padding-top: 8em;
}

#LowPage #Topics #success_voice .u_Inner {
    background-image: url(/img/success_voice/sakura.svg);
}

#LowPage #Topics #success_voice .h_topicBg h3 img {
    max-width: 70px;
}

#LowPage #Topics #success_voice {

    .i_main {
        max-width: 1280px;
        margin: 0 auto;
    }

    section {
        padding-bottom: 5em;
        /* margin-bottom: 5em; */
    }

    .Inner {
        max-width: 100%;
    }

    .by_area {
        text-align: center;
        font-size: 0.8em;
    }

    h2 {
        margin-bottom: 0;
    }

    h3 {
        line-height: 1.7;
    }

    #tokyo h3,
    #kanagawa h3,
    #kansai h3 {
        width: fit-content;
        margin: 0 auto 1em;
        padding-left: 2em;
        background-image: url(/img/success_voice/sakura.svg);
        background-repeat: no-repeat;
        top: 1em;
    }

    #btn_area ul.area {
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        max-width: 1280px;
        margin: 0 auto;
        border-radius: 12px;
    }
    #btn_area ul.area li {
        text-align: center;
        margin: 1em;
        border-radius: 30px;
        display: flex;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #btn_area ul.area li:first-child,
    #btn_area ul.area li:nth-child(2) {
        margin-top: 0;
    }
    #btn_area ul.area li::after{
        position: absolute;
        content:"▶";
        /* background:url(/img/about/hand_white.svg) no-repeat center/contain; */
        display: block;
        width:1.9em;
        height:1.9em;
        flex:0 0 auto; /* 伸び縮みさせない */
        right: 2em;
    }
    #btn_area ul.area li a {
        width: 15em;
        height: 5em;
        display: flex;
        justify-content: center;
        align-items: center;
        line-height: 1.3;
        font-weight: bold;
        font-size: 1.3em;
    }

    #btn_area ul.area .tokyo a,
    #btn_area ul.area .tokyo::after {
        color: #2d5daa;
    }
    #btn_area ul.area .kanagawa a,
    #btn_area ul.area .kanagawa::after {
        color: #1c8bdb;
    }
    #btn_area ul.area .kansai a,
    #btn_area ul.area .kansai::after {
        color: #01ad6e;
    }


    #btn_area ul.area li.tokyo {
        background-color: #e8f1fd;
        background-position: center left 3em;
    }
    #btn_area ul.area li.kanagawa {
        background-color: #e0f2fe;
    }
    #btn_area ul.area li.kansai {
        background-color: #e5f2ed;
    }

    #btn_area .ul_box {
        width: 90%;
        display: block;
        margin: 2em auto 0;
    }
    #btn_area .ul_box p {
        font-size: 0.8em;
        text-align: center;
    }
    #btn_area ul.link {
        display: flex;
        justify-content: center;
        align-items: center;
    }
    #btn_area ul.link li {
        margin: 0 0.5em;
        text-align: center;
        /* line-height: 2; */
        /* display: flex; */
        align-items: center;
    }
    #btn_area ul.link li:last-child {
        margin-right: 0;
    }
    #btn_area ul.link li a {
        display: flex;
        justify-content: center;
        align-items: center;
        padding: 1.5em 0;
        width: 18em;
        /* height: 2.5em; */
        background-color: #ffedce;
        color: #384653;
        border-radius: 20px;
        font-weight: bold;
        position: relative;
    }
    /* #btn_area ul.link li a span {
        margin-left: 1em;
    } */
    #btn_area ul.link li a::after {
        position: absolute;
        content: "▶";
        display: block;
        width: 20px;
        height: 20px;
        right: 1.5em;
        transform:translateY(-50%);
    }


    #voice_navi {
        /* 範囲確認とりあえずの見た目 */
        max-width: 900px;
        margin: 0 auto 4rem;
    }

    /* === タブ見出し行 ===================================== */

    ul.jtab, .jtab_area {
        width: 100%;
        max-width: 1280px;
        margin: 0 auto;
    }

    ul.jtab{
        display: flex;
        margin: 0 auto;
        padding: 0;
        list-style: none;
    }

    ul.jtab li{
        flex: 1 1 0;
    }

    ul.jtab button{
        all: unset;
        box-sizing: border-box;
        width: 100%;
        padding: 1.5rem 2.5rem;
        font: 600 1.4rem/1 "Noto Sans JP",sans-serif;
        text-align: center;
        /* border: 3px solid #0091d9; */
        cursor: pointer;
        transition: background .25s,color .25s;
        position: relative;
    }

    #tokyo ul.jtab button {
        /* color: #489cd7; */
        color: #5d82c0;
        background: #fff;
    }
    #tokyo ul.jtab li.active button{
        color:#fff;
        background:#5d82c0;
    }
    #kanagawa ul.jtab button {
        color: #1d8bdb;
        background: #fff;
    }
    #kanagawa ul.jtab li.active button{
        color:#fff;
        background:#1d8bdb;
    }
    #kansai ul.jtab button {
        color: #00ac6e;
        background: #fff;
    }
    #kansai ul.jtab li.active button{
        color:#fff;
        background:#00ac6e;
    }

    ul.jtab button::before{                /* ▶︎アイコン */
        content:"";
        position:absolute;
        left:1.1rem; top:50%;
        width: 0.8rem; height: 0.8rem;
        margin-top:-0.4rem;
        border: 0.4rem solid transparent;
        border-left-color:currentColor;
    }

    /* === タブパネル（本文） ================================ */

    section#tokyo {
        background-color: #edf3fd;
        background: linear-gradient(180deg, #ffffff 0%, #adcaf7 100%);
    }

    section#kanagawa {
        background-color: #d4ecfc;
        background: linear-gradient(180deg, #ffffff 0%, #97d4fc 100%);
    }

    section#kansai {
        background-color: #d7f2e6;
        background: linear-gradient(180deg, #ffffff 0%, #c3e0d3 100%);
    }

    #LowPage #Topics .h_topicBg p {
        max-width: 700px;
    }/* これ効いてない */

    .h_topicBg .voice_content p {
        max-width: 800px !important;
        margin: 0 auto;
    }


    #kanagawa .jtab li button span {
        font-size: 0.8em;
    }


    .jtab_area{
        height: 500px;
        overflow-y: auto;
        padding: 1.5rem 5rem;
        background:#fff;
        border-radius: 0 0 20px 20px;
    }

    .jtab_area[hidden]{ display:none; }
    /* hidden 属性で OFF */


    /* こどもアイコンの表示 */
    .voice_navi .voice_name {
        width: 100%;
        max-width: 1100px;
        height: 100%;
        margin-bottom: 0.5em;
        display:flex;           /* アイコンとテキストを横並び */
        flex-direction: row;
        align-items:center;     /* 高さ中央でそろえる */
        gap:0.5em;
    }
    .voice_navi .voice_name h5 {
        font-size: 1.1em;
        line-height: 1.4;
        /* padding-top: 0.5em; */
        height: fit-content;
        display: block;
    }
    .voice_navi .voice_name::before{
        content:"";
        flex:0 0 auto;          /* 伸縮させない */
        width:55px;
        height:55px;/* アイコン実寸 */
        align-items: start;
    }

    .voice_navi .voice_name h5 span {
        font-size: 0.8em;
        display: block;
    }

}
/*=====================================
/success_voice/index.php
合格者の声　ここまで
======================================*/


/*=====================================
/breaking/index.php
神奈川　合格速報　ここから
======================================*/

#breaking_kanagawa {
    position: relative;           /* ← 基準を作る */
    overflow: hidden;             /* ← ボケ端を切り落とす */
}

#breaking_kanagawa::before {
    filter: blur(4px);             /* ★ ここがボケ量 */
    content: "";
    position: absolute;
    inset: 0;                     /* = top:0; right:0; bottom:0; left:0; */
    background: url(/img/breaking_kanagawa/pass_bg_01.jpg) center/cover no-repeat;
    transform: scale(1.1);        /* エッジのボケ切れを隠す */
    z-index: -1;                   /* 背景レイヤーに下げる */
}

#breaking_kanagawa {

    article {
        padding-top: 5em;
    }

    .sakura {
        color:lightcoral;
        font-size:6.5em;
        /* margin-bottom:1em; */
        line-height:1.1;
        font-weight: bold;
        text-align: center;
    }

    div.no1 {
        width: 20em;
        display: block;
        margin: 0 auto 1em;
    }
    #Pass_info h2 {
        padding-top: 0;
        margin-bottom: 0.3em;
        letter-spacing: 10px;
    }
    #Pass_info section div.Inner {
        border-top: none;
        border-bottom: none;
    }

    #Pass_info h3 {
        text-align: left;
        display: block;
        margin: 0 auto;
    }

    #Pass_info section div.Inner p,
    #Pass_info h3 {
        width: 90%;
    }

    #Pass_info table {
        width: 90%;
    }

    #Pass_info .u_table2col tbody {
        height: 1100px;
    }
    #Pass_info tr {
        height: 5em;
    }
    #Pass_info th {
        width: 65%;
        display: flex;
        align-items: center;
        line-height: 1.3;
        padding: 0.7em;
    }
    #Pass_info td {
        width: 35%;
        line-height: 1.3;
        padding: 0.7em;
    }

    .btn2:last-child {
        margin-bottom: 5em;
        width: 20em;
    }

    .sp2 {
        display: none;
    }
    .sp3 {
        display: none;
    }
}
/*=====================================
/breaking/index.php
神奈川　合格速報　ここまで
======================================*/



/*=====================================
/shingakki_spring/index.php
新学期応援特別期間(春)　ここから
======================================*/

#shingakki_spring____ {
    background-color: #fffcea;

    .deadline{
        color:#84bc3a;
    }
    .price {
        color:#de0050;
    }
    .gaiyou .mg {
        border: #f2bcca 4px dashed;
    }
}

#shinnendo_autumn____ {
    background-color: #ffe9db;

    .deadline{
        color:#dc624a;
    }
    .price {
        color: #891117;
    }
    .price::after{
        background-color:#f0d732;
    }
    .gaiyou .mg {
        border: #e5999d 4px dashed;
    }
}

#shingakki_spring____,
#shinnendo_autumn____ {

    #Topics h2 {
        margin-bottom: 0;
    }

    .img {
        padding-top: 8em;
        margin: 0 auto;
    }
    .flex {
        justify-content: center;
    }

    /* ＝＝＝＝＝ 特典テキストCSS ＝＝＝＝＝ */
    .campaign{
        font-family:"Noto Sans JP",sans-serif;
        text-align:center;
        line-height:1.35;
        margin:3rem auto;
        padding: 3em 0;
    }

    .deadline{
        margin:0;
        font-weight:700;
        font-size:clamp(1.3rem,4vw,3rem);
    }

    /* .campaign div {
        padding-bottom: 5em;
    } */

    .campaign div {
        width: fit-content;
        /* max-width: 800px; */
        margin: 0 auto;
    }
    /* 2行目 ─ ピンク ＋ 黄色マーカー */
    .price {
    /* 見出し全体をインラインブロック化して中央寄せ */
        display:inline-flex;
        align-items: center;
        position:relative;
        margin:.4em 0 1em;
        font-weight:800;
        font-size:clamp(2.4rem,8vw,5.2rem);
    }

    .price span.zeikomi {
        font-size: 0.7em;
        padding-top: 0.3em;
    }

    .price > span{ position:relative; z-index:2; }

    /* 黄色ハイライト */
    .price::after{
        content:"";
        position:absolute;
        inset:auto 0 -0.07em 0;          /* left:0; right:0; bottom:0.5em; */
        height:.4em;                   /* マーカーの太さ */
        z-index:1;
        border-radius:.12em;           /* 端を少し丸く */
    }

    /* 注意書き ─ 小さめグレー */
    .note{
        font-size:1.5rem;
        color:#666;
        margin:0;
        text-align: right;
    }



    /* ＝＝＝＝＝ 下部画像CSS いらなかったら消す　２２７６まで＝＝＝＝＝ */
    .present-banner{
        display:flex;
        gap:2rem;
        align-items:center;
        max-width:1000px;
        margin:0 auto;
        padding:1.5rem 1rem;
        font-family:"Noto Sans JP",sans-serif;
    }

    /* ========== 左テキスト部 ========== */
    .txt-block{ flex:1 1 60%; }

    .catch{
        display:flex;
        align-items:center;
        gap:1rem;
        font-size:clamp(1.4rem,3.5vw,2.4rem);
        margin:0 0 .3em;
    }

    .balloon{
        display:inline-block;
        padding:.2em .6em;
        border:4px solid #ff6c87;
        border-radius:1.4em 1.4em 1.4em 0;
        color:#ff6c87;
        font-weight:700;
        position:relative;
    }
    .balloon::after{                    /* 吹き出しのしっぽ */
        content:"";
        position:absolute;
        bottom:-.48em; left:.4em;
        width:.6em; height:.6em;
        border:4px solid #ff6c87;
        border-top:none; border-right:none;
        background:#fff;
        transform:rotate(-45deg);
    }

    .headline{
        position:relative;
        font-weight:700;
        color:#000;
    }
    .headline::after{                   /* 黄色マーカー */
        content:"";
        position:absolute;
        left:0; right:0; bottom:.1em;
        height:.35em;
        background:#fff678;
        z-index:-1;
    }

    .main-copy{
        margin:.4em 0 1.2em;
        font-size:clamp(1.8rem,6vw,3.4rem);
        font-weight:800;
        color:#ff6c87;
        line-height:1.25;
        text-shadow:4px 4px 0 rgba(0,0,0,.25); /* 影で縁取り */
    }

    /* ボタン */
    .btn-more{
        display:inline-block;
        padding:.6em 2.5em .6em 2.8em;   /* ▶ のぶん左余白多め */
        background:#e49a1c;
        color:#fff;
        font-weight:700;
        border-radius:4px;
        text-decoration:none;
        position:relative;
    }
    .btn-more::before{                 /* ▶アイコン */
        content:"";
        position:absolute;
        left:1em; top:50%;
        width:0; height:0;
        border:.4em solid transparent;
        border-left-color:#fff;
        transform:translateY(-50%);
    }

    /* ========== 右画像部 ========== */
    .img-block{
        position:relative;
        flex:0 0 320px;                  /* 円の外径 */
        aspect-ratio:1/1;
    }

    .pen-img{
        width:100%; height:100%;
        object-fit:cover;
        border-radius:50%;
        border:6px solid #35c1ff;
    }

    .boy,.prof{
        position:absolute; width:120px;
    }

    .boy{  left:10%; bottom:-15%; }
    .prof{ right:2%; bottom:-18%; }

    @media(max-width:640px){
        .present-banner{ flex-direction:column; }
        .img-block{ margin-top:1rem; }
        .boy,.prof{ width:80px; }
    }


    .gaiyou {

        /* border-top: #f2bcca 4px dashed; */
        margin: 0 auto;
        padding-top: 0;

        h2 {
            text-align: center;
            font-weight: normal;
        }

        .mg {
            max-width: 700px;
            width: 85%;
            margin: 0 auto 3em;
            padding: 2em;
            background-color: #fff;
        }

        h3 {
            position: relative;
            z-index: 2;
            width: fit-content;
            padding: 0 0.5em 0;
        }
        h3 > span{ position:relative; z-index:2; }
        h3::after{
            content:"";
            position:absolute;
            inset:auto 0 0 0;          /*left:0; right:0; bottom:0.5em; */
            height:.4em;                   /* マーカーの太さ */
            background:#fccf8a;            /* やわらかい黄色 */
            z-index:1;
            border-radius:.12em;           /* 端を少し丸く */
        }

        h4 {
            font-size: 1.2em;
            margin-bottom: 0.3em;
        }

        /* .course {
            background-color: #fae8ec; あとでけす
            border: 2px solid coral;
        } */
        .course ul {
            margin-bottom: 2em;
            font-weight: bold;
        }
        .course ul:last-child {
            margin-bottom: 0;
        }
        .course ul li {
            position: relative;
            padding: 0.5em 0 0.5em 2em;
        }
        .course ul li::before{
            content:"●";
            position:absolute;
            left: 0;
        }
        .course ul .jukentaiou {
            color: #e86868;
        }
        .course ul .hoiku {
            color: #e55ba0;
        }
        .course ul .junior {
            color: #4091a2;
        }
        .course ul .nensho {
            color: #fc9b00;
        }
        .course ul .nenchu {
            color: #91c002;
        }
        .course ul .nencho {
            color: #47bbf0;
        }
        .course p {
            padding-top: 2em;
        }


        /* .sch_building table {
            margin-bottom: 3em;
        }

        .sch_building table td {
            width: 15em;
            padding: 0.5em 1em;
            padding-left: 2em;
            background-image: url(/img/notice/shingakki_spring/kyositsu.svg);
            background-repeat: no-repeat;
            background-size: 10%;
            background-position: left 1em;
        }

        .sch_building table td a {
            color: inherit;
        } */

        .sch_building ul {
            margin-bottom: 3em;
            display: flex;
            flex-wrap: wrap;
        }
        .sch_building ul li {
            width: 9em;
            padding: 0.5em 1em;
            padding-left: 2em;
            background-image: url(/img/notice/shingakki_spring/kyositsu.svg);
            background-repeat: no-repeat;
            background-size: 14%;
            background-position: left 1em;
            flex: 0 1 calc(100% / 3 - 1em); /* 3つ並べる（隙間を考慮） */
            box-sizing: border-box;
        }
        .sch_building ul li a {
            color: inherit;
        }
        .sch_building ul.kansai li {
            width: 15em;
            flex: none;
            background-size: 14%;
        }
        .sch_building ul.kansai li:first-child {
            width: 11em;
        }
        .sch_building ul.kansai li:nth-child(2) {
            width: 15em;
            background-size: 10%;
        }




        .tokuten .price {
            font-size: 1.5em;
            margin-bottom: 3em;
            color: inherit;
        }

        .tokuten .price::after {
            background-color: unset;
        }

        /* .kanrenlink {
            border: none;
            display: flex;
            flex-direction: column;
            justify-content: center;
        }
        .kanrenlink h3 {
            display: block;
            font-weight: normal;
            font-size: 1em;
        }
        .kanrenlink h3::after {
            background: inherit;
        }
        .kanrenlink .btn {
            width: 20em;
        } */

    }

}

/*=====================================
/shingakki_spring/index.php
新学期応援特別期間(春)　ここまで
======================================*/



/*=====================================
/shinnendo_autumn/index.php
新年度応援特別期間(秋)　ここから
======================================*/

#shinnendo_autumn {

    .Inner {
        width: 90%;
        max-width: 1000px;
    }

    h2 {
        margin-bottom: 0;
    }
    .i_main {
        max-width: 1280px;
        margin: 0 auto;
    }

    #prologue {

        text-align: center;
        padding-top: 100px;
        padding-bottom: 100px;
        background-image: url(/img/notice/shinnendo_autumn/round_bottom_beige.svg);
        background-repeat: no-repeat;
        background-position: center bottom;
        background-size: 100%;
        text-transform: uppercase;

        p {
            font-size: 2em;
            line-height: 1.6;
            padding: 0.5em;
            color: #962d0a;
        }
        p span {
            font-weight: normal;
        }
        p span.nov {
            font-weight: bold;
            padding: 0.2em 0.4em;
            background-color: #fff5de;
        }
    }

    .h_bg {
        background-color: #fff5de;
    }

    #gaiyou {

        padding-bottom: 3em;

        h3 {
            padding: 0.5em 0.8em;
            margin-bottom: 0;
            color: #fff;
            background-color: #f2a760;
        }

        .term,
        .discount,
        .target {
            /* border: 2px solid #ed8e00; */
            background-color: #fff;
            margin-bottom: 2.5em;
            padding: 2em 1.5em;
        }


        .dis_1st,
        .dis_2nd {
            position: relative;
            padding-left: 2.5em;
        }
        .dis_1st::before,
        .dis_2nd::before {
            position: absolute;
            display: block;
            background-color: #952d0a;
            /* border: 1px solid; */
            border-radius: 50%;
            box-sizing: border-box;
            display: flex;
            justify-content: center;
            align-items: center;
            height: 25px;
            width: 25px;
            color: #ffffff;
            font-size: 85%;
            line-height: 2;
            top: 8px;
            left: 0;
        }
        .dis_1st::before {
            content: "1";
        }
        .dis_2nd::before {
            content: "2";
        }


        .discount .p1 span,
        .discount .p2 span {
            font-weight: bold;
            font-size: 1.3em;
        }
        .discount p {
            line-height: 1.5;
        }
        .dis_note {
            font-size: 0.8em;
            margin-bottom: 2em;
            padding-top: 0.5em;
        }
        .discount .p2 {
            margin-bottom: 1.5em;
        }

        .ohanashipen img {
            max-width: 20em;
            border-radius: 20px;
        }
        .ohanshilink a {
            font-size: 0.8em;
        }


        .target ul li {
            position: relative;
            padding-left: 2.5em;
            margin: 0.5em;
        }
        .target ul li::before {
            position: absolute;
            display: block;
            content: "●";
            color: #952d0a;
            left: 1em;
            /* border: 1px solid; */
            /* border-radius: 50%;
            box-sizing: border-box;
            display: flex;
            justify-content: center;
            align-items: center;
            /* height: 25px;
            width: 25px; */
            /* color: #ffffff; */
            /* font-size: 85%;
            line-height: 2; */
            /* top: 8px;
            left: 0; */
        }

        .target p {
            font-size: 0.8em;
            padding-left: 3em;
        }
    }


    #kanren {

        h3 {
            text-align: center;
            padding-bottom: 0.3em;
            border-bottom: 3px #952d0a solid;
            height: 1.8em;
            width: fit-content;
            margin: 0 auto 2em;
        }

        .syoukai, .kanrenlink {
            margin-bottom: 7em;
        }

        .syoukai .flex {
            gap: 2em;
            flex-wrap: nowrap;
        }
        .syoukai .flex div.img {
            width: 100%;
            min-width: 20em;
        }
        .syoukai .flex div.img img {
            display:block;
            margin-left:auto;
        }
        .syoukai .flex .btn {
            width: 100%;
            max-width: 17em;
        }

        .kanrenlink .flex {
            flex-wrap: wrap;
            gap: 1.5em;
        }
        .kanrenlink .flex > * {
            flex: 0 1 calc(50% - 1.5em); /* 2 分割。 gap 半分だけ引いて帳尻合わせ */
            box-sizing: border-box;     /* padding / border ぶんも幅に含める */
        }
        .kanrenlink .flex div {
            padding: 2em;
            background-color: #fff4dd;
            display:flex;
            flex-direction:column;
            box-sizing:border-box;
        }
        .kanrenlink .flex h4 {
            font-size: 1.1em;
            font-weight: bold;
            text-align: center;
        }
        .kanrenlink .flex p {
            margin-bottom: 1.5em;
        }
        .kanrenlink .flex .btn {
            display: block;
            width: 100%;
            max-width: 17em;
            margin: auto auto 0;
        }



        .contact h3 {
            margin-bottom: 1em;
        }
        .contact .form {
            margin-bottom: 2em;
        }
        .contact .form .btn {
            display: block;
            margin: 0 auto;
        }

        .u_border1 {
            max-width: 700px;
            margin: 0 auto 3em;
            padding: 10px 20px;
            border: 3px solid #1eacec;
            background-color: #f2fbff;
        }
        .u_border1 p.sogo_info {
            font-size: 1.5em;
            line-height: 2em;
            display: inline-flex;
            align-items: center;
            margin: 0 auto;
            background-image: url(/img/faq/call.svg);
            background-repeat: no-repeat;
            background-size: 1.5em;
            background-position: left center;
            padding-left: 1.8em;
        }
        .contact p {
            text-align: center;
        }

    }
}
/*=====================================
/notice/shinnendo_autumn/index.php
新年度応援特別期間(秋)　ここまで
======================================*/


/*=====================================
notice/keio-project/index.php
慶應応援プロジェクト　ここから
======================================*/

#keio_project::before{
    content:"";
    position:fixed;        /* ← ここで “画面に貼り付け” */
    inset:0;               /* top:0 right:0 bottom:0 left:0 */
    background:url(/img/notice/keio-project/back_link2.png) center/cover no-repeat;
    z-index:-1;            /* コンテンツの背面に置く */
}

#keio_project {

    position: relative;

    .i_main {
        margin: 0 auto;
        background-color: #fff;
        max-width: 100%;
    }
    .i_main img {
        width: 1280px;
        margin: 0 auto;
        display: block;
    }

    h2 {
        margin-bottom: 0;
    }

    .message {
        height: 300px;
        background-color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
    }

    .message div, h3, h4, h5 {
        display: block;
        font-family: 'Times New Roman', Times, serif;
        font-weight: bold;
        font-size: 1.5em;
        color: #011764;
        letter-spacing: 2px;
    }

    .message div, h3 {
        font-size: 2em;
        line-height: 1.7;
    }

    .h_bg_fff {
        background-color: #fff;
    }

    h3 {
        padding: 2em 1em 0.5em 7%;
        margin-top: 7em;
        margin-bottom: 0;
        /* text-align: center; */
        /* width: fit-content; */
    }
    .intro {
        padding: 0.7em 1em 5em 7%;
        letter-spacing: 1px;
        /* text-align: center; */
        /* width: fit-content; */
    }

    /* .outbox {
        padding: 1em;
        background-color: #fff;
        margin-bottom: 2em;
    } */

    .houshin {
        padding: 3em 2em 4em;
        width: 85%;
        max-width: 1000px;
        margin: 0 auto 5em;
        position: relative;
    }
    /* 共通 */
    .houshin .corner{
        position:absolute;
        width:100%;
        height:40%;
        background:url(/img/notice/keio-project/gaku_quarter.svg) no-repeat;
    }
    /* 各隅 */
    .houshin .tl{ top:0; left:0; }
    .houshin .tr{ top:0; right:0;  transform:scaleX(-1); }
    .houshin .bl{ bottom:0; left:0;  transform:scaleY(-1); }
    .houshin .br{ bottom:0; right:0; transform:scale(-1,-1); }


    .houshin h4,
    .sakusen h4 {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 0.5em;
        margin: 0 1em 1em;
        /* width: fit-content; */
        /* position: relative; */
    }
    .houshin h4::before,
    .houshin h4::after,
    .sakusen h4::before,
    .sakusen h4::after {
        /* position: absolute; */
        content: "";
        flex: 0 0 5em;
        height: 2px;
        background: currentColor;
    }
    .sakusen h4::before,
    .sakusen h4::after {
        flex: 0 0 8em;
    }

    /* 1) カウンタをリセット（初期化） */
    .houshin .num-list{
        counter-reset: section;   /* 任意の名前で OK */
        list-style:none;          /* 先頭の点を消す */
        padding:0;                /* デフォルト余白調整 */
    }
    /* 2) 各 li の :before で番号を作る */
    .houshin .num-list > li{
        position:relative;        /* 番号を内側に配置したい場合 */
    }
    .houshin .num-list > li::before{
        content: counter(section) "."; /* 番号 + ドット */
        counter-increment: section;    /* 1 → 2 → 3 … */
        position:absolute;
        left:0;
    }

    .houshin ul {
        /* padding: 1em;
        padding-bottom: 0; */
        display: block;
        margin: 0 auto;
        width: fit-content;
    }
    .houshin ul li {
        padding: 1em 0 0.5em 1.5em;
        font-family: 'Times New Roman', Times, serif;
        font-size: 1.3em;
        letter-spacing: 2px;
    }
    .houshin ul li:last-child {
        padding: 0.5em 0 1em 1.5em;
    }

    .sakusen {
        padding-bottom: 5em;
    }
    .sakusen ul.flex {
        flex-wrap: wrap;
        justify-content: center;
        gap: 2%;
    }
    .sakusen ul.flex li {
        font-weight: bold;
        font-size: 1.2em;
        font-family: 'Times New Roman', Times, serif;
        width: 28%;
        /* border: 2px red solid; */
        background-color: #f2e9cd;
        padding: 1em;
        margin-bottom: 2em;
    }

    /* 1) カウンタをリセット（初期化） */
    .sakusen .num-list {
        counter-reset: section;   /* 任意の名前で OK */
        list-style:none;          /* 先頭の点を消す */
        padding:0;                /* デフォルト余白調整 */
    }
    /* 2) 各 li の :before で番号を作る */
    .sakusen .num-list > li span {
        position:relative;        /* 番号を内側に配置したい場合 */
    }
    .sakusen .num-list > li span::before{
        content: counter(section) "."; /* 番号 + ドット */
        counter-increment: section;    /* 1 → 2 → 3 … */
        position:absolute;
        left:0;
    }
    .sakusen ul.flex li span {
        padding-left: 1.5em;
    }


    .sakusen ul.flex li p {
        letter-spacing: 1px;
        line-height: 1.7;
        font-family: sans-serif;
        font-weight: normal;
        font-size: 0.7em;
        padding-top: 0.8em;
    }
    .sakusen ul.flex li a {
        font-size: 0.8em;
        font-family: sans-serif;
        font-weight: normal;
    }

    #op_class {
        justify-content: center;
    }
    #op_class div {
        width: 50%;
        padding: 3em 4em;
        border: #011764 1px solid;
    }
    /* /* .op_class div.class1 {
        border: #011764 2px 1px 2px 2px solid;
    } */
    #op_class div.class1 .flex,
    #op_class div.class2 .flex {
        width: 100%;
        justify-content: center;
        align-items: center;
        border: none;
        padding: 2em 1em;
    }
    #op_class div.class2 {
        border-left: none;
    }
    #op_class div.class2 .flex {
        gap: 2em;
    }
    #op_class div.class2 .flex button {
        display: block;
    }


    #kadaitosyo .Inner {
        width: 90%;
        padding: 5em 0;
    }
    #kadaitosyo .Inner h4 {
        margin-bottom: 2em;
    }
    #kadaitosyo ul {
        width: 100%;
        margin: 0 auto;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
    }
    #kadaitosyo ul li {
        font-family: 'Times New Roman', Times, serif;
        font-size: 1.2em;
        margin: 0 1.5em 3em;
    }
    #kadaitosyo ul li a {
        color: #000;
    }
    #kadaitosyo ul li div {
        display: flex;
        justify-content: center;
        margin-bottom: 1em;
    }
    /* #kadaitosyo ul li img {
        width: 50%;
        max-width: 20em;
    } */
    #kadaitosyo ul li p {
        text-align: center;
        width: 100%;
    }


    #interview .Inner {
        width: 90%;
        margin-bottom: 5em;
        padding: 0;
    }
    /* #interview .Inner div {
        width: 40%;
    } */

    #interview p {
        letter-spacing: 1px;
    }
    #interview h3 {
        padding-left: 0;
        margin-top: 0;
    }
    #interview p {
        margin-bottom: 2em;
    }
    #interview .flex {
        justify-content: center;
        gap: 2em;
    }
    button {
        max-width: 25em;
        line-height: 1.6;
        margin: 0;
    }
    .btn2 {
        width: 100%;
    }
    .btn2 a {
        border: 1px solid #011764;
    }
    .btn2 a:after {
        background-color: #011764;
    }
    .btn2 a:hover {
        color: #011764;
    }



    #kanren {
        justify-content: center;
        padding: 4em 0;
    }
    #kanren .Inner {
        width: 90%;
        margin: 0 auto;
        padding: 0;
        justify-content: center;
    }
    #kanren h4 {
        width: 100%;
        margin-bottom: 0.5em;
    }
    #kanren .Inner div {
        display: block;
        padding: 1em 0 0.5em 2em;
        position: relative;
    }
    #kanren .Inner div::before {
        content: '';
        width: 18px;
        height: 18px;
        background: #011764;
        border-radius: 50%;
        position: absolute;
        top: 0.5em;
        left: 0;
        bottom: 0;
        margin: auto;
    }
    #kanren .Inner div::after {
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 4px 0 4px 6px;
        border-color: transparent transparent transparent #fff;
        position: absolute;
        top: 0.5em;
        left: 7px;
        bottom: 0;
        margin: auto;
    }


    /* #kanren div.class1,
    #kanren div.class2 {
        width: 50%;
        padding: 3em;
        border: #011764 1px solid;
    }
    #kanren div.class1 .flex,
    #kanren div.class2 .flex {
        width: 100%;
        justify-content: center;
        align-items: center;
        border: none;
        padding: 2em 1em;
    }
    #kanren div.class1 {
        padding-right: 1em;
    }
    #kanren div.class2 {
        border-left: none;
        padding-left: 1em;
    }
    #kanren div.class1 p,
    #kanren div.class2 p {
        height: 5em;
    }
    #kanren div.class2 .flex {
        gap: 2em;
    }
    #kanren div.class2 .flex button {
        display: block;
    } */

}
/*=====================================
notice/keio-project/index.php
慶應応援プロジェクト　ここまで
======================================*/


/*=====================================
/flow/index.php
入会の流れ　ここから
======================================*/

#LowPage #Open #Flow #step1 .u_flexbox {
    max-width: 1000px;
    width: 90%;
    margin: 0 auto;
}

#LowPage #Open #Flow .u_flow-title {
    margin-top: 2.5em;
}

#LowPage #Open #Flow #step1 .u_flexbox.outbox {
    max-width: 600px;
}
#LowPage #Open #Flow #step1 .u_flexbox .outbox .flex {
    justify-content: space-between;
    gap: 1.5em;
    margin-bottom: 2em;
}
#LowPage #Open #Flow #step1 .u_flexbox .outbox .flex .btn2 {
    max-width: 18em;
    /* width: 100%; */
    margin: 0 auto;
}
#LowPage #Open #Flow #step1 .u_flexbox p.explanation {
    /* width: 80%; */
    max-width: 600px;
    margin: 0 auto;
}
#LowPage #Open #Flow #step1 .u_flexbox .outbox .u_flow-tel {
    padding: 1.5em;
    width: 80%;
}
#LowPage #Flow .u_flow-tel .u_p-img {
    letter-spacing: 2px;
}
#LowPage #Open #Flow #step1 .u_flexbox p.img {
    max-width: 400px;
}

/*=====================================
/flow/index.php
入会の流れ　ここまで
======================================*/



/*=====================================
/notice/atelier/index.php
絵画制作指導　ここから
======================================*/

#atelier .top_bg::before,
#atelier::after {
    content:"";
    position:absolute;
    width:100%;
    height:5em;
    background-image: url(/img/notice/atelier/crayon_line.svg);
    background-size: auto 100%;     /* 幅は自動 / 高さを要素いっぱい */
    background-repeat: repeat-x;      /* 横方向だけ繰り返す */
}
#atelier .top_bg::before {
    top:0;
    bottom:0;
    transform: scaleY(-1);
}
#atelier::after {
    left: 0;
    bottom: 0;
}
#atelier .top_bg {
    position: relative;
    height: 5em;
}

#atelier {

    color: #4c4c4c;
    position: relative;
    background-image: url(/img/notice/atelier/canvas.svg);
    padding-bottom: 10em;

    .Inner {
        width: 95%;
        max-width: 1280px;
        padding: 0;
    }

    .i_main {
        margin: 0 auto;
        background-color: #fff;
        max-width: 100%;
    }
    .i_main img {
        width: 1280px;
        margin: 0 auto;
        display: block;
    }
    h2 {
        margin-bottom: 0;
    }

    .message {
        padding: 4em 1em;
        background-color: #fff;
        display: flex;
        justify-content: center;
        align-items: center;
    }
    .message div {
        width: 80%;
    }
    .message h3 {
        font-size: 2em;
    }


    #ability,
    #shidou,
    #goannai,
    #movie  {
        width: 90%;
        margin: 8em auto;
        background-color: #fff;
        border-radius: 30px;
        padding: 4em 3em;
        position: relative;
        /* padding-block-start:5rem;   h3 の高さぶん余裕を確保 */
    }
    #movie {
        margin-bottom: 0;
    }

    #ability h3,
    #shidou h3,
    #goannai h3,
    #movie h3 {
        position: absolute;
        top: -1.5em;
        left: 0;
        z-index: 10;
        /* transform: translateX(-50%); */
        padding: 1em 2em;
        background-color: #ffffff;
        /* border: #004ea1 5px solid;
        color: #004ea0; */
        border-radius: 30px;
        margin: 0 auto;
    }
    /* #shidou h3 {
        right: 0;
    } */


    #ability div.flex {
        justify-content: center;
        margin: 3em 0;
        gap: 3em;
    }
    #ability div.img {
        width: 30em;
    }
    #ability ul {
        padding: 2em;
        /* border: 3px #2d5daa solid; */
        border-radius: 30px;
        font-size: 1.3em;
        background-color: #f7f7f7;
        height: fit-content;
        margin: auto 0;
    }
    #ability ul li {
        position: relative;
        padding-left: 2em;
        line-height: 1.6em;
        margin-bottom: 0.8em;
    }
    #ability ul li:last-child {
        margin-bottom: 0;
    }
    #ability ul li::before {
        position: absolute;
        content: "";
        display: block;
        border-radius:50%;     /* 円にする */
        width: 1.5rem;
        height: 1.5rem;
        left: 0;
        top: 50%;
        transform: translateY(-50%);
    }
    #ability ul li.green::before {
        background-color:#6bcb76;
    }
    #ability ul li.purple::before {
        background-color:#9b8aff;
    }
    #ability ul li.blue::before {
        background-color:#4c96fe;
    }
    #ability ul li.red::before {
        background-color:#ef767a;
    }
    #ability ul li.yellow::before {
        background-color:#f0c75b;
    }



    #shidou {

        .nensho,
        .nenchu_1,
        .nenchu_2,
        .nencho_1,
        .nencho_2,
        .keio {
            position: relative;
            height: 50px;
            line-height: 2.7;
        }

        .nensho::before,
        .keio::before,
        .nenchu_1::before,
        .nenchu_2::before,
        .nencho_1::before,
        .nencho_2::before {
            position: absolute;
            content: "";
            display: block;
            background-size: auto 90%;
            width:100%;
            height:100%;
            background-repeat: no-repeat;
            left:0;
            top:0;
            padding: 0;
            margin: 0;
        }

        .nensho::before {
            background-image: url(/img/notice/atelier/yellow.svg);
        }
        /* .Nensho h4 {
            line-height: 1.4;
        } */
        .Nensho .line-image {
            display: flex;
            justify-content: flex-start;
            /* margin-top: 0.3em; */
        }
        .Nensho .line-image img {
            max-width: 100%;
            height: auto;
        }
        .nenchu_1::before {
            background-image: url(/img/notice/atelier/green_2.svg);
        }
        .nenchu_2::before {
            background-image: url(/img/notice/atelier/green_1.svg);
        }
        .nencho_1::before,
        .nencho_2::before {
            background-image: url(/img/notice/atelier/blue.svg);
        }
        .keio::before {
            background-image: url(/img/notice/atelier/deepblue.svg);
        }
    }

    #shidou ul {
        margin: 0 auto;

        li.Nensho .text,
        li.Nensho .kaiga,
        li.Nenchu_1 .text,
        li.Nenchu_1 .kaiga,
        li.Nenchu_2 .text,
        li.Nenchu_2 .kaiga,
        li.Nencho_1 .text,
        li.Nencho_1 .kaiga,
        li.Nencho_2 .text,
        li.Nencho_2 .kaiga,
        li.Keio .text,
        li.Keio .kaiga {
            flex: 1 1 200px; /* ←ここがポイント！ */
        }
    }

    #shidou ul li {
        margin: 1em auto 8em;
        font-size: 0.9em;
    }
    #shidou ul li:nth-child(2n) {
        flex-direction: row-reverse;
    }
    #shidou ul li:last-child {
        margin-bottom: 3em;
    }
    #shidou li h4 {
        font-size: 1.2em;
        font-weight: bold;
        /* margin-bottom: -14%; */
    }
    #shidou li .line_img {
        max-width: 35em;
    }
    #shidou ul li .kaiga img {
        border-radius: 25px;
    }
    #shidou ul li.flex {
        flex-wrap: wrap;
        gap: 3em;
        align-items: flex-start;
        justify-content: center;
        /* align-items: center; */
    }

    #shidou ul li.Nensho {
        /* width: 85%; */
        margin-right: auto;

        .text {
            flex: 5;
        }
        .kaiga {
            flex: 3.5;
            /* max-width: 500px; */
        }
    }
    #shidou ul li.Nenchu_1 {
        width: 100%;
        margin: 0 auto 8em;

        .text {
            flex: 4;
        }
        .kaiga {
            flex: 5;
            max-width: 500px;
        }
    }
    #shidou ul li.Nenchu_2 {
        width: 100%;
        margin-left: auto;
        margin-bottom: 8em;
        justify-content: flex-end;

        .text {
            flex: 6;
            /* max-width: 40em; */
            margin-left: auto;
        }
        .kaiga {
            flex: 3;
            max-width: 500px;
        }
    }
    #shidou ul li.Nencho_1 {
        /* width: 90%; */
        margin-left: auto;
        margin-bottom: 8em;

        .text {
            flex: 2;
        }
        .kaiga {
            flex: 1;
            display: flex;
            justify-content: center;
        }
        .kaiga img {
            max-width: 100%;
            height: auto;
            display: block;
        }
    }
    #shidou ul li.Nencho_2 {
        /* width: 90%; */
        margin-left: auto;
        margin-bottom: 8em;

        .text {
            flex: 3;
        }
        .kaiga {
            flex: 2;
        }
        .kaiga img {
            max-width: 100%;
            height: auto;
            display: block;
        }
    }
    #shidou ul li.Keio {
        /* width: 90%; */
        margin-left: auto;

        .text {
            flex: 5;
        }
        .kaiga {
            flex: 3;
        }
        .kaiga img {
            max-width: 100%;
            height: auto;
            display: block;
        }
    }

    #goannai {
        padding-left: 5%;
    }
    #goannai h4 {
        font-weight: bold;
        font-size: 1.3em;
        width: 70%;
        display: block;
        margin-bottom: 0.5em;
    }
    #goannai ul li {
        margin-bottom: 2em;
    }
    #goannai ul li .btn2,
    #goannai div.online .btn2 {
        width: 25em;
        margin: 0;
        margin-left: 10%;
    }

    #goannai ul li.nensho .btn2 a {
        border: 1px solid #f39230;
    }
    #goannai ul li.nensho .btn2 a:after {
        background-color: #f39230;
    }
    #goannai ul li.nensho .btn2 a:hover {
        color: #f39230;
    }
    #goannai ul li.nensho .btn2:hover:after {
        color: #f39230;
    }
    #goannai ul li.nenchu .btn2 a {
        border: 1px solid #7dac00;
    }
    #goannai ul li.nenchu .btn2 a:after {
        background-color: #7dac00;
    }
    #goannai ul li.nenchu .btn2 a:hover {
        color: #7dac00;
    }
    #goannai ul li.nenchu .btn2:hover:after {
        color: #7dac00;
    }
    #goannai ul li.nencho .btn2 a {
        border: 1px solid #1062a9;
    }
    #goannai ul li.nencho .btn2 a:after {
        background-color: #1062a9;
    }
    #goannai ul li.nencho .btn2 a:hover {
        color: #1062a9;
    }
    #goannai ul li.nencho .btn2:hover:after {
        color: #1062a9;
    }
    #goannai div.online .btn2 a {
        border: 1px solid #ff7597;
    }
    #goannai div.online .btn2 a:after {
        background-color: #ff7597;
    }
    #goannai div.online .btn2 a:hover {
        color: #ff7597;
    }
    #goannai div.online .btn2:hover:after {
        color: #ff7597;
    }


    #movie ul {
        width: 100%;
        max-width: 60em;
        margin: 0 auto;
        padding: 0 2em;
    }
    #movie ul li {
        margin: 0 auto 3em;
        /* width: fit-content; */
        /* padding: 0 2em; */
    }
    /* #movie ul li div.flex {
        padding: 2em;
        margin: 0 auto;
        width: 80%;
    } */
    #movie ul li h4 {
        /* width: 30%; */
        /* max-width: 30%; */
        padding-right: 1em;
    }

}

/*=====================================
/notice/atelier/index.php
絵画制作指導　ここまで
======================================*/



/*=====================================
レスポンシブここから
======================================*/
@media screen and (max-width: 1230px) {

    #Classroom #Event .u_training ul {
        justify-content: center;
    }

    /* #atelier #shidou li h4 {
        margin-bottom: -14%;
    } */

}

@media screen and (max-width: 1340px) {

    #atelier #movie ul li h4 {
        width: 100%;
    }
}

@media screen and (max-width: 1000px) {

    #breaking_kanagawa {

        #Pass_info tbody td br.sp2 {
            display: block;
        }
    }

    #atelier #shidou ul li.Nenchu_1 {
        .kaiga {
            max-width: 350px;
        }
        /* .kaiga img {
            max-width: 350px;
        } */
    }
    /* #atelier #shidou li h4 {
        margin-bottom: -15%;
    } */
    #atelier #shidou ul {
        li.Nensho,
        li.Nenchu_1,
        li.Nenchu_2,
        li.Nencho_1,
        li.Nencho_2,
        li.Keio {
            width: 100%;
        }
    }
    #atelier #shidou ul li {
        margin: 0 auto 7em;
    }
    #atelier #shidou ul li:last-child {
        margin-bottom: 3em;
    }
    #atelier section h3 {
        font-size: 1.5em;
    }

}
@media screen and (max-width: 860px) {

    #breaking_kanagawa {

        #Pass_info tbody {
            height: 900px;
        }
    }

    #shingakki_spring,
    #shinnendo_autumn {

        .price {
            font-size: 6vw;
            display: inline-block;
            align-items: center;
        }
        .price::after {
            background-color: inherit;
        }
        .campaign .price br.sp3 {
            display: block !important;
        }
        .price span.nyukaikin {
            font-size:clamp(1.5rem,4vw,2.5rem);
            padding: 0.3em;
            padding-top: 0.3em;
        }
    }
    #shingakki_spring {
        .price span.nyukaikin {
            border: solid 3px #de0050;
            background-color: #f2dee7;
        }
    }
    #shinnendo_autumn {
        .price span.nyukaikin {
            border: solid 3px #891117;
            background-color: #f0d732;
        }
    }

    #atelier #shidou ul li {
        flex-direction: column;
    }
    #atelier #shidou ul li:nth-child(2n) {
        flex-direction: column;
    }
    /* #atelier #shidou br.pc {
        display: none !important;
    } */
    /* #atelier #shidou li h4 {
        margin-bottom: -14%;
    } */
    /* #shidou ul li {
        margin: 0;
    } */
    #atelier #shidou ul {
        li.Nensho,
        li.Nenchu_1,
        li.Nenchu_2,
        li.Nencho_1,
        li.Nencho_2,
        li.Keio {
            width: 100%;
            margin: 0 auto 10em;
        }
    }
    #atelier #shidou ul {
        li.Nensho .kaiga,
        li.Nenchu_1 .kaiga,
        li.Nenchu_2 .kaiga,
        li.Nencho_1 .kaiga,
        li.Nencho_2 .kaiga,
        li.Keio .kaiga {
            max-width: 30em;
            width: 100%;
        }
    }
    #atelier #shidou ul li.Nencho_1 .kaiga {
        max-width: 20em;
    }
    #atelier #shidou ul li.flex {
        align-items: center;
    }
    #atelier #shidou ul li .kaiga img {
        display: block;
        margin: 0;
        width: 100%;
    }
    #atelier #shidou ul li:last-child {
        margin-bottom: 3em;
    }
    #atelier #movie ul {
        width: 100%;
    }
    /* #atelier #movie ul li {
        width: fit-content;
        margin: 0;
    } */
    /* #atelier #movie ul li iframe {
        width: 100%;
        max-width: 800px;
        height: auto;
    } */
    #atelier #movie ul li iframe {
        width: 100%;
        aspect-ratio: 16/9;
        height: auto;
        margin: 0 auto;
    }

}


@media screen and (max-width: 768px) {

    #LowPage #Flow #step1 .u_flexbox p.u_p-img img {
        width: 50px;
        margin: 0;
    }
    #LowPage #Open #Flow #step1 .u_flexbox p.img,
    #LowPage #Open #Flow .u_flexbox p {
        max-width: 100%;
        margin: 0;
        display: flex;
        justify-content: center;
    }
    #LowPage #Open #Flow .u_flexbox p img {
        width: 80%;
        margin: 0 auto;
    }
    #LowPage #Open #Flow .u_flexbox p.explanation {
        display: block;
        width: 80%;
        max-width: 600px;
    }
    #LowPage #Open #Flow #step1 .u_flexbox .outbox .flex {
        justify-content: center;
    }
    #LowPage #Open #Flow #step1 .u_flexbox .outbox .flex .btn2 {
        margin: 0;
    }
}


@media screen and (max-width: 640px) {

    .pc {
        display: none !important;
    }
    .sp {
        display: block !important;
    }

    #Classroom #Event .h_bi {
        background-size: 150px;
    }

    #Classroom #Event .u_training .Inner #about_1 h4,
    #Classroom #Event .u_training .Inner #kakikukeko h4,
    #Classroom #Event .u_training #hukabori h4 {
        font-size: 2rem;
    }

    #Classroom #Event .u_training .Inner #about_1 h4 {
        background-position: left bottom 0.7em;
    }

    #Classroom #Event .u_training p .p_1st {
        text-align: left;
    }

    #Classroom #Event .u_training .Inner
    #about_1 .flex {
        flex-direction: column;
        justify-content: center;
    }

    #Classroom #Event .u_training .Inner
    #about_1 .flex .shadow img {
        width: 100%;
    }

    #Classroom #Event .u_training .Inner
    #about_1 .flex .text_1 {
        width: 100%;
        margin: 0 auto;
        text-align: center;
    }

    #Classroom #Event .u_training .Inner
    #about_1 .flex .text_1 span {
        font-size: 1.1em;
    }

    #Classroom #Event .u_training .Inner
    #about_1 .flex .p_2 {
        text-align: left;
    }

    #Classroom #Event .u_training .Inner
    #about_1 .point {
        width: 100%;
    }


    #Classroom #Event .u_training .Inner
    #kakikukeko .ka_title h5 {
        width: 97%;
        font-size: 1.1em;
        padding-left: 4em;
    }

    #kakikukeko h4,
    #Classroom #Event .u_training .Inner
    #kakikukeko .detail h5 {
        display: flex;
        align-items: center;
    }

    #Classroom #Event .u_training .Inner
    #kakikukeko .detail  {
        width: 100%;
        padding: 2em 1.5em;
    }

    #Classroom #Event .u_training .Inner
    #kakikukeko .detail span {
        padding: 0;
        line-height: 50px;
        height: 50px;
        width: 50px;
    }

    #Classroom #Event .u_training .Inner
    #ouen .text_4,
    #Classroom #Event .u_training .Inner
    #ouen .text_4 p.above_1,
    #Classroom #Event .u_training .Inner
    #ouen .text_4 p.above_2 {
        position: initial;
        width: 100%;
    }

    #Classroom #Event .u_training .Inner
    #ouen .text_4 p.above_1 {
        font-size: 1.3em;
        padding-bottom: 0;
    }

    #Classroom #Event section#ouen {
        padding-bottom: 6em;
    }


    #tokuten .w90 {
        width: 100%;
        text-align: left !important;
    }

    #tokuten ul li {
        max-width: 10em;
    }

    #Classroom #Event section#tokuten {
        padding-bottom: 5em;
    }

    #hukabori .miryoku {
        flex-direction: column;
        margin-bottom: 3em;
    }
    #hukabori .miryoku li {
        margin: 0 auto 3em;
        width: 75%;
    }

    #Classroom #Event .u_training
    #hukabori ul li .hukabori_detail {
        padding: 1.5em 2em 1.3em;
    }

    #hukabori h4 {
        background-position: left top 0.5em;
    }

    #hukabori .tokucho {
        width: 100%;
    }

    #hukabori .tokucho h5 {
        margin-bottom: 1em;
        padding-bottom: 0;
    }

    #hukabori .tokucho h5 span {
        padding: 0.3em 0.6em;
        font-size: 0.7em;
    }

    #hukabori .tokucho_detail {
        width: 100% !important;
    }

    #hukabori .tokucho h6 {
        padding-left: 2em;
    }

    #hukabori .tok3 .story figure {
        position: unset;
        text-align: center;
    }


    /* よくある質問 */

    #yokuarufaq .u_border1 {
        width: 90%;
    }

    #LowPage #Open .h_bc {
        padding-bottom: 0;
    }

    #LowPage #Open h2.h_h2 {
        margin-bottom: 0;
        padding: 1.5em;
        font-size: 2.5em;
        line-height: 1.5;
    }

    #LowPage #Open #yokuarufaq .u_border1 {
        padding: 1em;
    }

    #LowPage #Open #yokuarufaq .u_border1 p {
        font-size: 1.3em;
    }
    #LowPage #Open #yokuarufaq .u_border1 p.youbi {
        font-size: 1em;
        padding-top: 0.2em;
    }

    #LowPage #yokuarufaq .u_3rdTimetable section {
        padding: 0 2.4em;
    }

    #yokuarufaq .kanrenpage {
        padding: 0 0 1em 0;
    }

    #yokuarufaq .kanrenpage ul {
        display: inherit;
    }

    #yokuarufaq .kanrenpage a {
        text-decoration: none;
        color: inherit;
    }

    #yokuarufaq .h_yokuarufaq li {
        margin-left: 0.9em;
        margin-right: 0.9em;
    }



    /*===========================================
    /tablet_learning/index.php
    理英会のタブレット学習（GAMMA版）レスポンシブここから
    ============================================*/

    section#intro {

        div {
            margin-bottom: 5em;
        }

        /* div:last-child {
            margin-bottom: 0;
        } */

        h3 {
            font-size: 2.3rem;
            line-height: 1.5;
            margin-bottom: 1em;
            padding-top: 0.5em;
        }

    }

    section#intro .intro_Inner,
    section#hogosya .hogosya_Inner,
    section#okosama .okosama_Inner,
    section#tablearn .tablearn_Inner,
    section#evidence .evidence_Inner,
    section#learning_flow .learning_flow_Inner,
    section#voice .voice_Inner,
    section#question .question_Inner,
    section#aukana .aukana_Inner {
        width: 88%;
        max-width: 1280px;
        margin: 0 auto;
    }

    #hogosya .hogosya__bg {
        background: none;
    }

    #hogosya .hogosya_Inner ul li::before,
    #okosama .okosama_Inner ul li::before {
        position: static;
    }
    #hogosya .hogosya_Inner ul li h4,
    #okosama .okosama_Inner ul li h4 {
        position: relative;
    }
    #hogosya .hogosya_Inner ul li h4::before,
    #okosama .okosama_Inner ul li h4::before {
        position: absolute;
        background-color: #fff;
        border: #bfd2d8 solid 1px;
        border-radius: 5px;
        padding: 0.2em;
        left: -0.5em;
        top: -0.1em;
        width: 1.6em;
        height: 1.6em;
    }

    #hogosya .hogosya_Inner ul li.icon1::before,
    #okosama .okosama_Inner ul li.icon1::before {
        content: none;
    }
    #hogosya .hogosya_Inner ul li.icon2::before {
        content: none;
    }
    #hogosya .hogosya_Inner ul li.icon3::before {
        content: none;
    }
    #okosama .okosama_Inner ul li.icon4::before {
        content: none;
    }
    #okosama .okosama_Inner ul li.icon5::before {
        content: none;
    }

    #hogosya .hogosya_Inner ul li.icon1 h4::before,
    #okosama .okosama_Inner ul li.icon1 h4::before {
        content: url(/img/tablet_learning/kirakira2.svg);
    }
    #hogosya .hogosya_Inner ul li.icon2 h4::before {
        content: url(/img/tablet_learning/stick2.svg);
    }
    #hogosya .hogosya_Inner ul li.icon3 h4::before {
        content: url(/img/tablet_learning/yomiage2.svg);
    }
    #okosama .okosama_Inner ul li.icon4 h4::before {
        content: url(/img/tablet_learning/gohoubi2.svg);
    }
    #okosama .okosama_Inner ul li.icon5 h4::before {
        content: url(/img/tablet_learning/minitest2.svg);
    }


    section#hogosya {
        background-color: #e8edec;
    }

    #hogosya .hogosya_Inner {

        .hogosya__bg{
            background: none;
        }

        h3 {
            font-size: 2em;
            margin-bottom: 0.3em;
            text-align: left;
        }

        ul {
            width: 95%;
            margin: 0 auto;
        }

        ul li {
            margin-bottom: 0;
            padding-left: 0;
            padding-top: 3em;
        }

        ul li h4 {
            position: relative;
            padding-left: 1.5em;
            margin-bottom: 0.3em;
        }

        .kaihatsucolumn h4 {
            text-align: center;
            padding-left: 0;
        }

    }

    #okosama .okosama__bg {
        background: none;
    }

    #okosama .okosama_Inner {

        h3 {
            font-size: 2em;
            margin-bottom: 0.3em;
            text-align: left;
            padding-top: 0;
        }

        ul {
            width: 95%;
            margin: 0 auto;
        }

        ul li {
            margin-bottom: 0;
            padding-left: 0;
            padding-top: 3em;
        }

        ul li h4 {
            position: relative;
            padding-left: 1.5em;
            margin-bottom: 0.3em;
        }

        .kaihatsucolumn h4 {
            text-align: center;
            padding-left: 0;
        }

    }


    #LowPage #tablearn {

        h3 {
            margin-bottom: 2em;
        }

        h4 {
            margin-bottom: 0.6em;
        }

        .flex {
            flex-direction: column;
            margin-bottom: 4em;
        }

        .flex div {
            width: 100%;
            margin-bottom: 0.5em;
        }

        .flex p {
            width: 100%;
        }

        .omoi {
            margin-bottom: 0;
        }

    }

    #evidence .evidence_Inner {

        padding: 2.5em 1em 1em;

        h3 {
            margin-bottom: 1em;
        }

        .P1st {
            padding: 0;
        }

        .P2nd p.textright {
            font-size: 0.8em;
        }

        /* テーブル */
        .table_wrap {
            overflow-x: scroll;
        }
        table {
            width: 100%;
            border-collapse: collapse;
            white-space: nowrap;
        }
        /* テーブルここまで */


        caption {
            font-size: 0.8em;
        }

        th, td {
            font-size: 0.7em;
            line-height: 1.4;
            width: 30%;
        }

    }

    #learning_flow {

        h3 {
            padding-left: 0;
        }

        .P1st {
            width: 95%;
        }

        .flex {
            flex-direction: column;
        }

        .flex div {
            width: 100%;
            padding: 1.5em 1em;
        }

    }

    #voice {

        h3 {
            padding-left: 0;
        }

        .flex {
            flex-direction: column;
        }

        .flex div {
            width: 100%;
            margin-bottom: 3em;
        }

        .flex div:last-child {
            margin-bottom: 0;
        }
    }

    #question {

        .question__bg {
            position: static;
        }

        img {
            margin-bottom: 1.5em;
            border-radius: 8px;
        }

        .main_text {
            width: 100%;
        }

        .mainQ {
            width: 100%;
            margin: 0 auto 3em;
        }

        .Q {
            padding-left: 0;
            padding-top: 1em;
            margin: 0 auto 3em;
            width: 95%;
        }

        .Q::before {
            left: 0;
            top: 0;
        }

    }

    #aukana {

        div {
            width: 100%;
        }

        button {
            line-height: 1.4;
        }

    }

    /*===========================================
    /tablet_learning/index.php
    理英会のタブレット学習（GAMMA版）レスポンシブここまで
    ============================================*/


    /*===========================================
    /success_voice/index.php
    合格者の声　ここから
    ============================================*/

    #LowPage #Topics #success_voice .sakura {
        padding-top: 8em;
    }

    #LowPage #Topics #success_voice .u_Inner {
        background-image: url(/img/success_voice/sakura.svg);
    }

    #LowPage #Topics #success_voice .h_topicBg h3 img {
        max-width: 70px;
    }

    #LowPage #Topics #success_voice {

        #btn_area h3 {
            font-size: 1.5em;
            margin-bottom: 2.5em;
            font-weight: normal;
        }
        #btn_area h3 span {
            font-size: 1.7em;
            font-weight: bold;
        }

        #btn_area ul.area {
            flex-direction: column;
        }
        #btn_area ul.area li {
            width: 80%;
            margin: 0.2em;
        }

        #btn_area .ul_box p {
            text-align: center;
        }

        #btn_area .ul_box ul.link {
            flex-direction: column;
        }
        #btn_area .ul_box ul.link li {
            margin-bottom: 0.5em;
        }
        #btn_area .ul_box ul.link li:last-child {
            margin: 0 1em;
        }
        #btn_area .ul_box ul.link li a {
            text-align: center;
        }
        #btn_area .ul_box ul.link li span {
            text-align: right;
            padding-right: 1.5em;
        }


        ul.jtab {
            width: 95%;
            display: flex;
            /* flex-direction: column; */
        }

        ul.jtab li button {
            height: 3.5em;
            padding: 0.5em 1em;
        }

        #kanagawa ul.jtab li button {
            /* font-size: 0.95em; */
            height: 4em;
            padding: 0.5em;
        }
        ul.jtab li button::before {
            display: none;
        }

        .jtab_area {
            width: 95%;
            height: 700px;
            padding: 0 1em 1em 1em;
        }



        /* #tabSelect {
            width: 95%;
            border: red 1px solid;
            margin: 0 auto;
        }

        #tabSelect option div {
            color: #fff;
            background: #489cd7;
        } */
    }
    /*===========================================
    /success_voice/index.php
    合格者の声　ここまで
    ============================================*/

    /*=====================================
    /breaking/index.php
    神奈川　合格速報　ここから
    ======================================*/

    #breaking_kanagawa {

        article {
            padding-top: 0;
        }

        .title div.sp {
            width: 3em;
            margin: 0 auto;
        }
        #Pass_info h2 {
            font-size: 2em;
            margin-bottom: 0.5em;
        }
        .title .sakura {
            font-size: 4.5em;
            line-height: 0.9;
        }
        #Pass_info h3 {
            padding-left: 0;
            padding-right: 0;
        }

        #Pass_info table {
            width: 90%;
        }
        #Pass_info tbody {
            flex-direction: unset;
        }
        #Pass_info .u_table2col tbody {
            height: 100%;
            max-height: 3000px;
        }

        #Pass_info tr {
            height: fit-content;
        }
    }
    /*=====================================
    /breaking/index.php
    神奈川　合格速報　ここまで
    ======================================*/




    /*=====================================
    /shingakki_spring/index.php
    新学期応援特別期間(春)　ここから
    ======================================*/

    /* #shingakki_spring,
    #shinnendo_autumn {

        .sp {
            padding-top: 4.5em;
        }

        .campaign {
            padding: 0;
        }
        .campaign .price {
            font-size: 8vw;
        }
        .campaign p.note {
            font-size: 0.8em;
            text-align: center;
        }

        .gaiyou .mg {
            width: 90%;
            padding: 2em 1em;
        }
        .gaiyou .course ul li,
        .gaiyou p {
            line-height: 1.4;
        }
        .gaiyou .course ul li span {
            font-size: 0.8em;
        }
        .gaiyou p {
            font-size: 0.8em;
        }
        .gaiyou .sch_building ul {
            justify-content: space-between;
        }
        .gaiyou .sch_building ul li {
            background-size: 15%;
            flex:0 1 calc(50% - 0.6rem);
        }
        .gaiyou .sch_building ul.kansai {
            margin-bottom: 0;
        }
        .gaiyou div.tokuten {
            margin-bottom: 0;
        }
        .gaiyou div.tokuten .price {
            margin-bottom: 1em;
        }
        .gaiyou div.tokuten .price span {
            font-size: 0.6em;
        }
    } */

    /*=====================================
    /shingakki_spring/index.php
    新学期応援特別期間(春)　ここまで
    ======================================*/

    /*=====================================
    /shinnendo_ouen/index.php
    新年度応援特別期間(秋)　ここから
    ======================================*/

    #shinnendo_autumn {

        .Inner {
            width: 95%;
        }

        #prologue p.bold {
            font-size: 1.5em;
        }
        #prologue p {
            font-size: 1.3em;
        }

        #gaiyou .discount {
            padding: 2em 1em;
        }

        #gaiyou .discount ul li.dis_1st,
        #gaiyou .discount ul li.dis_2nd {
            padding-left: 1.5em;
        }
        #gaiyou .discount .ohanashipen img {
            max-width: 100%;
        }



        #gaiyou .target {
            padding: 1em 0.2em 2em;
        }
        #gaiyou .target ul li::before {
            left: 0;
        }
        #gaiyou .target ul li {
            padding-left: 1.2em;
            margin: 0.8em;
            margin-left: 1.2em;
        }
        #gaiyou .target ul li span {
            font-size: 0.8em;
        }
        #gaiyou .target ul li,
        #gaiyou .target p {
            line-height: 1.4;
        }

        #kanren .syoukai {
            margin-bottom: 4em;
        }
        #kanren .syoukai .flex {
            flex-direction: column-reverse;
        }
        #kanren .syoukai .flex div.img img {
            margin: 0;
            width: 100%;
        }
        .syoukai .flex .btn {
            margin: 0 auto;
            display: flex;
            justify-content: center;
        }

        #kanren .kanrenlink {
            margin-bottom: 6em;
        }

        .kanrenlink .flex {
            display: block;
        }
        .kanrenlink .flex .jisseki {
            margin-bottom: 2em;
        }
        #kanren .kanrenlink .flex div {
            padding: 2em 1em;
        }

        #kanren .contact .form .btn {
            width: 17em;
        }

        #kanren .u_border1 {
            padding: 1em;
        }
        #kanren .u_border1 p {
            line-height: 1.;
            font-size: 1.3em;
        }
        #kanren .u_border1 p.sogo_info {
            font-size: 1.3em;
        }
        #kanren .u_border1 p.tel {
            letter-spacing: 0.1em;
        }
        #kanren .u_border1 p.youbi {
            font-size: 1em;
        }
    }
    /*=====================================
    /shinnendo_ouen/index.php
    新年度応援特別期間(秋)　ここまで
    ======================================*/



    /*=====================================
    notice/keio-project/index.php
    慶應応援プロジェクト　ここから
    ======================================*/

    #LowPage #keio_project #Topics h2 {
        font-size: 1.7em;
    }

    #keio_project {

        .i_main {
            height: 800px;
            overflow: hidden;
        }
        .i_main img {
            width:auto;
            height:100%;
            object-fit: cover;
            object-position: center;
        }

        .message {
            height: 500px;
        }
        .message p {
            font-size: 0.8em;
            padding: 0 2em;
        }
        h3 {
            margin-top: 4em;
            font-size: 1.5em;
        }

        .houshin {
            width: 95%;
            padding: 3.5em;
            font-weight: bold;
        }
        .houshin .corner {
            width: 30%;
        }
        .houshin h4,
        .sakusen h4 {
            font-size: 1.4em;
            margin: 0 0 1em;
            gap: 0.3em;
            text-align: center;
        }
        .houshin h4::before,
        .houshin h4::after {
            flex: 0 0 1.8em;
        }
        .sakusen h4::before,
        .sakusen h4::after {
            flex: 0 0 3.5em;
        }

        ul.num-list li {
            font-size: 1.1em;
        }

        .sakusen ul.flex {
            width: 92%;
            margin: 0 auto;
        }
        .sakusen ul.flex li {
            width: 100%;
            margin-bottom: 0.5em;
        }

        #op_class {
            display: block;
        }
        #op_class div {
            width: 100%;
            padding: 4em 1.5em;
        }
        #op_class div.class2 {
            border-left: 1px;
            border-top: none;
        }
        #op_class div.class1 .flex,
        #op_class div.class2 .flex {
            padding-bottom: 0;
        }

        #kadaitosyo .Inner {
            padding-bottom: 3em;
        }

        #interview .Inner {
            margin-top: 2em;
        }

    }
    /*=====================================
    notice/keio-project/index.php
    慶應応援プロジェクト　ここまで
    ======================================*/

    /*=====================================
    /notice/atelier/index.php
    絵画制作指導　ここから
    ======================================*/

    #LowPage #Topics h2.atelier {
        font-size: 2em;
        padding: 1.7em 0;
        line-height:1.5;
    }

    #atelier {

        .message h3 {
            line-height: 1.6;
        }
        .message p {
            font-size: 0.9em;
            text-align: left;
        }

        #ability,
        #shidou,
        #goannai,
        #movie  {
            width: 95%;
            padding: 5em 0 1em;
        }
        #ability h3,
        #shidou h3,
        #goannai h3,
        #movie h3 {
            font-size: 1.2em;
        }

        #ability {
            padding: 5em 1.5em 3em;
            margin-top: 5em;
        }
        #ability h3 {
            top: -2.5em;
            padding-left: 1em;
        }
        #ability p {
            font-size: 0.9em;
            line-height: 1.9;
        }
        #ability div.flex {
            margin: 2em 0 3em;
        }
        #ability ul {
            padding: 1em 2em;
        }
        #ability ul li {
            font-size: 0.8em;
            margin-bottom: 0.5em;
        }
        #ability ul li::before {
            width: 1rem;
            height: 1rem;
        }
        #ability div.img {
            max-width: 20em;
        }




        #shidou {
            padding: 3em 1em 1em;
        }
        #shidou ul {
            li.Nensho,
            li.Nenchu_1,
            li.Nenchu_2,
            li.Nencho_1,
            li.Nencho_2,
            li.Keio {
                width: 100%;
                margin: 0 auto 5em;
                gap: 2em;
            }
        }
        #shidou ul li:last-child {
            margin-bottom: 2em;
        }
        #shidou ul li p {
            font-size: 1em;
            line-height: 1.9;
            padding-top: 0.5em;
        }
        #shidou ul li h4 {
            font-size: 1.1em;
            /* line-height: 1.5; */
            margin-bottom: 0.5em;
        }
        #shidou .nensho::before {
            height: 3em;
            top:-5%;
            background-size: 90%;
        }
        #shidou .nenchu_1::before {
            height: 3em;
            top:-10%;
            background-size: 70%;
        }
        #shidou .nenchu_2::before {
            height: 3em;
            top:-5%;
            background-size: 75%;
        }
        #shidou .nencho_1::before,
        #shidou .nencho_2::before {
            height: 3em;
            top:-3%;
            background-size: 65%;
        }
        #shidou .keio::before {
            height: 2.8em;
            top:0;
            background-size: 95%;
        }

        #shidou ul {
            li.Nensho .kaiga,
            li.Nenchu_1 .kaiga,
            li.Nenchu_2 .kaiga,
            li.Nencho_1 .kaiga,
            li.Nencho_2 .kaiga,
            li.Keio .kaiga {
                width: 100%;
                max-width: 15em;
                margin: 0 auto;
            }
        }


        /* #goannai ul li .btn2,
        #goannai div.online .btn2 {
            width: 25em;
            margin: 0;
            margin-left: 10%;
        } */

        #goannai {
            padding: 3em 0 3em 5%;
        }
        #goannai h4 {
            width: 85%;
            font-size: 1.1em;
        }
        #goannai ul li .btn2,
        #goannai div.online .btn2 {
            width: 75%;
        }
        #goannai ul li .btn2 a,
        #goannai div.online .btn2 a {
            font-size: 0.8em;
        }

        #movie h3 {
            top: -2.5em;
        }
        /* #movie ul {
            padding: 0 2em;
        }
        #movie ul li {
            width: 100%;
        }
        #movie ul li p {
            width: 90%;
            padding: 0 2em;
        } */

    }


    /*=====================================
    /notice/atelier/index.php
    絵画制作指導　ここまで
    ======================================*/




    #LowPage #Open #Flow .u_flexbox p.explanation {
        width: 100%;
    }
    #LowPage #Open #Flow .u_flexbox p.u_p-img {
        line-height: 1.2;
        padding-top: 0.2em;
        font-size: 1.7em;
        letter-spacing: 2px;
    }
    #LowPage #Open #Flow .u_flexbox p.telno {
        line-height:1.5;
        padding-top: 0.5em;
    }
    #LowPage #Open #Flow #step1 .u_flexbox .outbox .u_flow-tel {
        margin: 0;
        margin-top: 1.5em;
        width: 100%;
    }
    #LowPage #Open #Flow .u_flexbox p img {
        width: 100%;
    }

}