@charset "shift_jis";


/*===============================================

画面の横幅が769px以上（パソコン用）

===============================================*/

@media all and (min-width: 769px),print {

    html {
        height: 100%;
        min-height: 100vh;
        font-size: 14px;
        line-height: 14px;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }

    body {
        height: 100%;
        min-height: 100vh;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
        line-height: 2;
        color: #000;
        margin: 0;
        padding: 0;
        max-height: 100%;
        text-align: center;
        background-color: transparent;
        -webkit-text-size-adjust: 100%;
    }

    /*リンクカラー*/
    a {
        color: #002b55;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    /*カーソルオーバー時のリンクカラー*/
    a:hover {
        color: #A51A91;
        text-decoration: none;
        /*下線を消す設定。残したままがいいならこの１行を削除。*/
    }

    /*ヘッダー
---------------------------------------------------------------------------*/
    header {
        width: 100%;
        height: 4rem;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        top: 0;
        left: 0;
        z-index: 100;
    }

    
    header #h_header_outer{
        width: 100%;
        height: 4rem;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
        position: fixed;
        top: 0rem;
        left: 0;
        z-index: 100;
        background: #FFF9E8;
    transition: top 0.3s ease;
    }
    
header.is-scrolling #h_header_outer{
    top: -5rem;
    left: 0;
}
    header #h_header_outer h1{
        width: 10.5%;
        height: 3.5rem;
        margin: 0;
        padding: 0.25rem 2.5%;
        display: block;
        position: relative;
        order: 1;
    }
    header #h_header_outer h1 img{
        max-width: 100%;
        height: 100%;
        margin: 0 auto 0 0;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    header #h_header_outer .menu_btn_outer{
        width: calc(82.5% - 14rem);
        height: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        order: 2;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner a{
        width: calc((100% / 5) - 1px);
        height: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        font-size: 0.9rem;
        line-height: 0.9rem;
        color: #333;
        text-decoration: none;
        border-left: 1px solid #333;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.about,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.faq,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.access{
        display: none;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner a img{
        max-width: 100%;
        height: 2rem;
        margin: 0 auto 0.5rem auto;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner a:hover img{
        transform: translateY(-0.3rem);
    }
    header #h_header_outer .contact_btn_outer{
        width: 14rem;
        height: 100%;
        margin: 0;
        padding: 0 4rem 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        color: #fff;
        background: #2048A8;
        order: 3;
    }
    header #h_header_outer .contact_btn_outer p{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        text-align: center;
    }
    header #h_header_outer .contact_btn_outer a{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #fff;
        text-align: center;
        pointer-events: none;
    }
    header #h_header_outer .contact_btn_outer a i{
        margin: 0 0.5rem 0 0;
        color: #ff0;
    }
    
    
    
    
    #wrapper {
        overflow: hidden;
        height: auto;
        padding: 0;
        display: block;
        -webkit-transition: 1s ease-in-out;
        -moz-transition: 1s ease-in-out;
        -o-transition: 1s ease-in-out;
        transition: 1s ease-in-out;
        opacity: 1;
    }

    #wrapper.openmenu {
        display: block;
    }

    #navTgl:checked ~ .contents {
        -webkit-transform: translateX(250px);
        transform: translateX(250px);
    }

    /* :::::: toggle button :::::: */
    #navTgl {
        display: none;
        overflow: hidden;
    }

    label {
        cursor: pointer;
        position: fixed;
        top: 0;
        right: 0rem;
        text-align: center;
    }

    #wrapper.openmenu label {
        right: 0rem;
    }

    label span {
        display: block;
        font-size: 0.8rem;
    }

    .open {
        z-index: 5000;
        width: 4rem;
        height: 4rem;
        color: #ff0;
        font-size: 2rem;
        line-height: 1rem;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        text-align: center;
        -webkit-transition: background-color .6s, -webkit-transform .6s;
        transition: background-color .6s, transform .6s;
        background: none;
        -moz-transition: all 0.5s;
        -o-transition: all 0.5s;
        -webkit-transition: all 0.5s;
        transition: all 0.5s;
    }

    #navTgl:checked + .open {
        background: #2048A8;
        color: #ff0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
    }


    .close {
        pointer-events: none;
        z-index: 100;
        width: calc(100% + 4rem);
        height: 100%;
        transition: .6s;
    }

    #navTgl:checked ~ .close {
        pointer-events: auto;
        background-color: rgba(0, 0, 0, 0.5);
    }

    /* :::::: drawer menu :::::: */
    #wrapper .menu {
        z-index: 1;
        position: fixed;
        overflow: auto;
        top: 0;
        right: -18rem;
        width: 18rem;
        height: calc(100% - 4rem);
        margin: 0;
        padding: 5rem 0 0 0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transition: -webkit-transform .6s;
        transition: transform .6s;
        background: #2048A8;
        z-index: 1000;
        text-align: center;
        color: #fff;
    }
    #wrapper .menu::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }
    #wrapper .menu::-webkit-scrollbar-track {
        background: #eee;
    }
    #wrapper .menu::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }


    #navTgl:checked ~ .menu {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        margin: 0;
    }
#wrapper .menu .menu_btn_outer{
        width: 95%;
        margin: 0 0 2rem 0;
        padding: 0 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
#wrapper .menu .menu_btn_outer a{
        width: calc(48% - 1rem - 2px);
        margin: 0 0 0.5rem 0;
        padding: 0.5rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        border: 1px solid #fff;
        border-radius: 0.5rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
        font-size: 1rem;
        line-height: 1.5rem;
        background: #fff;
    }
#wrapper .menu .menu_btn_outer a span{
        font-weight: normal;
        font-size: 0.9rem;
        line-height: 1.3rem;
    }
#wrapper .menu .menu_btn_outer a img{
        width: 30%;
        margin: 0 auto 0.5rem auto;
        padding: 0;
        display: block;
        position: relative;
    object-fit: contain;
    }
#wrapper .menu .menu_btn_outer a:hover{
        background: #ff0;
        color: #3961c1;
    }
#wrapper .menu .contact_btn_outer{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: center;
    }
#wrapper .menu .contact_btn_outer p{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
#wrapper .menu .contact_btn_outer a{
        width: calc(100% - 1rem);
        margin: 0 0 2rem 0;
        padding: 1rem 0.5rem;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.2rem;
        font-weight: bold;
        background: #ff0;
        color: #2048A8;
        border-radius: 0.5rem;
    }
#wrapper .menu .contact_btn_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
#wrapper .menu .contact_btn_outer a i{
        margin: 0 1rem 0 0;
    }
#wrapper .menu .character{
    width: 80%;
    margin: 0 auto;
    padding: 0;
    display: block;
    position: relative;
    }
    
    .modal_wrap input {
        display: none;
    }

    .modal_overlay {
        display: none;
    }

    .modal_trigger {
        display: none;
    }

    .modal_content {
        display: none;
    }

    .close_button {
        display: none;
    }

    .modal_wrap input:checked ~ .modal_overlay {
        display: none;
    }

    .modal_wrap input:checked ~ .modal_overlay .modal_content {
        display: none;
    }

    /*コンテナー
---------------------------------------------------------------------------*/
    #container {
        text-align: left;
        width: 100%;
        margin: 0;
        padding: 0;
        border: none;
        background-color: #fff;
    }



    /*全体を囲むボックス
---------------------------------------------------------------------------*/
    #contents {
        width: 100%;
        margin: 0;
        padding: 100vh 0 0 0;
        display: block;
        position: relative;
    }
    .contents_page #contents{
        padding: 0;
    }

    /*メインコンテンツ1
---------------------------------------------------------------------------*/

    
    .news {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .news h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }

    .news h2 span {
        display: block;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }

    .news h2 span::before,
    .news h2 span::after {
        content: "-";
        margin: 0 0.5rem;
    }

    .news .campaign_outer{
        width: 48%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news .campaign_outer img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news .news_outer{
        width: 48%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news dl {
        width: 100%;
        height: 25rem;
        margin: 0 auto;
        padding: 1rem 0;
        display: block;
        position: relative;
        overflow-y: auto;
        background: #fff;
        z-index: 0;
    }

    .news dl::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }

    .news dl::-webkit-scrollbar-track {
        background: #eee;
    }

    .news dl::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }

    .news dl dt {
        width: 95%;
        margin: 0 0 0.5rem 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 1.8rem;
        font-style: italic;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        text-align: left;
        font-weight: bold;
        border-top: 1px dashed #ccc;
    }
    .news dl dt:first-of-type{
        border: none;
    }

    .news dl dt span {
        background: #2048A8;
        margin: 0 0 0 1rem;
        padding: 0 0.5rem;
        color: #fff;
        font-style: normal;
    }

    .news dl dd {
        width: 95%;
        margin: 0 0 1rem 0;
        padding: 0 2.5% 0.5rem 2.5%;
        text-align: left;
        font-size: 1rem;
        line-height: 2rem;
    }
    .news dl dd a.lightbox{
        width: 50%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .news dl dd a.lightbox:hover{
        opacity: 0.6;
    }
    .news dl dd a.lightbox img{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }

    
    .message {
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    
    .message h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .message h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .message .text_outer{
        width: 50%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    .message .text_outer .text_inner{
        width: 60%;
        margin: 3rem auto;
        padding: 0 0 3rem 0;
        display: block;
        position: relative;
    }
    .message .text_outer .text_inner p {
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        color: #2048A8;
        font-family: "Klee One", cursive;
        font-weight: bold;
        font-style: normal;
    }
    .message .text_outer .text_inner a {
        margin: 0;
        padding: 0.25rem 1rem;
        position: absolute;
        right: 0;
        bottom: 0;
        border: 1px solid #2048A8;
        font-size: 1rem;
        line-height: 1.2rem;
        color: #2048A8;
        text-decoration: none;
    }
    .message .text_outer .text_inner a:hover {
        background-color: #2048A8;
        color: #fff;
    }

    
    .message .gallery_outer{
        width: 50%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    .message .gallery_outer ul.slider{
        width: 100%!important;
        padding: 0!important;
    margin: 0!important;
    z-index: 0;
    background: none!important;
    position: relative!important;
        text-align: center!important;
    }
    .message .gallery_outer .slider li{
        margin: 0;
        padding: 0;
        display: block;
    position: relative;
        border: none!important;
    }
    .message .gallery_outer .slider li img{
        width: 100%;
        margin: 0!important;
        padding: 0!important;
        display: block!important;
        border: none!important;
        object-fit: cover;
    }

/*左右の矢印*/
    .message .gallery_outer .slider .slick-next {
    display: none!important;
}
    .message .gallery_outer .slider .slick-prev {
    display: none!important;
}
    .message .gallery_outer .slider .slick-dots{
        display: none!important;
        position: relative;
        bottom: -1rem!important;
        margin-top: 0rem!important;
    }

    .point {
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .point h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .point h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .point dl{
        width: calc((100% / 5) - 1rem);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .point dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.4rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .point dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
    }
    .point dl dd p{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .point dl dd p strong{
        color: #c00;
        font-size: 1.3rem;
        font-weight: bold;
    }
    .point p.title {
        width: 100%;
        margin: 5rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    .point p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    
    .courses {
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }

    .courses h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .courses h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    
    .courses dl{
        width: calc(100% / 2.1);
        margin: 0;
        padding: 0 0 3rem 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .courses dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.8rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .courses dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .courses dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .courses dl dd:last-of-type{
        padding: 0rem 2.5% 2rem 2.5%;
        position: absolute;
        left: 0;
        bottom: 0;
    }
    .courses dl dd p{
        width: 95%;
        margin: 3rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
    }
    .courses dl dd p.title{
        text-align: center;
        font-size: 1.3rem;
        line-height: 2.5rem;
        margin: 3rem 0;
        font-weight: bold;
    }
    .courses dl dd p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    .courses dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #FABD00;
        color: #2048A8;
        border-radius: 50vh;
    }
    .courses dl dd a:hover{
        opacity: 0.6;
    }
    
    .season_info {
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .season_info h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .season_info h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .season_info dl{
        width: calc(100% / 3.5);
        margin: 0;
        padding: 0 0 3rem 0;
        display: block;
        position: relative;
        border: 2px solid #999;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .season_info dl dt{
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #ddd;
        color: #333;
    }
    .season_info dl dt span{
        font-size: 1.1rem;
    }
    .season_info dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .season_info dl dd:last-of-type{
        padding: 0rem 2.5% 2rem 2.5%;
        position: absolute;
        left: 0;
        bottom: 0;
    }
    .season_info dl dd p{
        width: 95%;
        margin: 3rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
    }
    .season_info dl dd p.title{
        text-align: center;
        font-size: 1.3rem;
        line-height: 2.5rem;
        margin: 3rem 0;
        font-weight: bold;
    }
    .season_info dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
        border-radius: 50vh;
    }
    .season_info dl dd a:hover{
        opacity: 0.6;
    }
    .season_info dl.pickup{
        width: calc(100% / 3);
        margin: 0;
        padding: 0 0;
        display: block;
        position: relative;
        border-top: none;
        border-left: 4px solid #FABD00;
        border-right:  4px solid #FABD00;
        border-bottom: none;
        background: #fff;
        border-radius: 0;
        z-index: 10;
    }
    .season_info dl.pickup::before{
        content: "";
        width: 100%;
        height: 1rem;
        display: block;
        background: #FABD00;
        border: 4px solid #FABD00;
        position: absolute;
        top: -1rem;
        left: -4px;
        z-index: 0;
    }
    .season_info dl.pickup::after{
        content: "";
        width: 100%;
        height: 2rem;
        display: block;
        background: #FABD00;
        border: 4px solid #FABD00;
        position: absolute;
        left: -4px;
        bottom: -2rem;
        border-radius: 0 0 0.5rem 0.5rem;
        z-index: 0;
    }
    .season_info dl.pickup dt{
        padding: 0.5rem 0;
        background: #FABD00;
    }
    .season_info dl.pickup dt span{
        color: #c00;
    }
    .season_info dl.pickup dd a{
        color: #2048A8;
        background: #FABD00;
    }
    
        .voice_pickup {
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }

    .voice_pickup h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .voice_pickup h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .voice_pickup dl{
        width: calc(100% / 4.5);
        margin: 0;
        padding: 0 0 5rem 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .voice_pickup dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
        color: #2048A8;
    }
    .voice_pickup dl dt span.result{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .voice_pickup dl dt span.year{
        margin: 0 1rem 0 0;
        padding: 0;
        position: relative;
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    .voice_pickup dl dt span.gender{
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    .voice_pickup dl dd{
        width: 95%;
        margin: 0;
        padding: 2rem 2.5%;
        display: block;
        position: relative;
    }
    .voice_pickup dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
    }
    .voice_pickup dl dd:last-of-type{
        padding: 0rem 2.5% 2rem 2.5%;
        position: absolute;
        left: 0;
        bottom: 0;
    }
    .voice_pickup dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
        border-radius: 50vh;
    }
    .voice_pickup dl dd a:hover{
        opacity: 0.6;
    }    
    .voice_pickup .more_btn_outer{
        width: 100%;
        margin: 8rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .voice_pickup .more_btn_outer a{
        margin: 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .voice_pickup .more_btn_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
        .cta {
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
        position: relative;
        text-align: center;
        background: #2048A8;
    }

    .cta h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    .cta h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
    }

    .cta h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #FABD00;
    }
    .cta dl{
        width: calc((100% - 6rem) / 3.3);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    .cta dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.5rem;
        line-height: 2.5rem;
        font-weight: bold;
        color: #333;
        border-bottom: 2px solid #2048A8;
    }
    .cta dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .cta dl dd{
        width: 80%;
        margin: 0;
        padding: 2rem 10%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #333;
        text-align: left;
    }
    .cta .icon_outer{
        width: 3rem;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
    }
    .cta .icon_outer i{
        font-size: 3rem;
        color: #fff;
    }
    .cta .text_btn_outer{
        width: 100%;
        margin: 1rem auto 0 auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
    }
    .cta .text_btn_outer a{
        padding: 0.25rem 1rem;
        text-decoration: none;
        color: #fff;
        font-size: 1.1rem;
        line-height: 1.5rem;
    }
    .cta .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    .cta .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    .cta .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    
    .cta .cta_btn_outer .cta_btn_inner{
        width: calc(80% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 45%;
        margin: 0 1rem 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer{
        width: calc(55% - 1rem);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        color: #fff;
        background: #2048A8;
    }
    
    
    
    .contents_bg{
        width: 100%;
        margin: -4rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices,
    #access,
    #contact{
        margin: 0;
    }
    #about .title_outer{
        background-image: url(images/bg_about.jpg);
    }
    #curriculum .title_outer{
        background-image: url(images/bg_curriculum.jpg);
    }
    #season .title_outer{
        background-image: url(images/bg_season.jpg);
    }
    #admission .title_outer{
        background-image: url(images/bg_admission.jpg);
    }
    #voices .title_outer{
        background-image: url(images/bg_voices.jpg);
    }
    #access .title_outer{
        background-image: url(images/bg_access.jpg);
    }
    #contact .title_outer{
        background-image: url(images/bg_contact.jpg);
    }
    .contents_bg .title_outer{
        width: 100%;
        height: calc(100vh - 3rem);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        background-size: cover;
        background-repeat: no-repeat;
        background-attachment: fixed;
    }
    .contents_bg .title_outer img{
        display: none;
    }
    .contents_bg .title_outer h2{
        margin: 0;
        padding: 1rem 3rem;
        display: block;
        position: relative;
        background: rgba(32,72,168,0.6);
        color: #fff;
        font-size: 3rem;
        line-height: 5rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    }
    .contents_bg .title_outer h2 span{
        display: block;
        font-size: 1.5rem;
        line-height: 2rem;
        font-style: italic;
    }
    
    .contents_bg .st_menu{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: sticky;
        top: 4rem;
        background: #2048A8;
        z-index: 10;
    transition: top 0.3s ease;
    }
    
    .st_menu_toggle{
        display: none;
    }
    .contents_bg .st_menu.is-scrolling{
    top: 0rem;
}
    .contents_bg .st_menu ul{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        position: relative;
    }
    .contents_bg .st_menu ul li{
        width: calc((100% / 6) - 1px);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        border-left: 1px solid #fff;
    }
    .contents_bg .st_menu ul li:last-of-type{
        width: calc((100% / 6) - 2px);
        border-right: 1px solid #fff;
    }
    .contents_bg .st_menu ul.div_2 li,
    .contents_bg .st_menu ul.div_3 li{
        width: calc((100% / 4) - 1px);
    }
    .contents_bg .st_menu ul.div_2 li:last-of-type,
    .contents_bg .st_menu ul.div_3 li:last-of-type{
        width: calc((100% / 4) - 2px);
    }
    .contents_bg .st_menu ul li a{
        width: calc(100% - 1rem);
        margin: 0;
        padding: 0.5rem;
        display: block;
        position: relative;
        text-align: center;
        text-decoration: none;
        color: #fff;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    .contents_bg .st_menu ul li a i{
        margin: 0 0 0 0.5rem;
    }
    .contents_bg .st_menu ul li a:hover{
        background: rgba(255,255,255,0.3);
    }
    
    
    #about_message{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #about_message h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #about_message h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #about_message .text_outer{
        width: 80%;
        margin: 0;
        padding: 1rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #about_message .text_outer p {
        width: 90%;
        margin: 0 5% 2rem 5%;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        color: #333;
        font-family: "Klee One", cursive;
        font-weight: bold;
        font-style: normal;
    }
    #about_message .text_outer p.title{
        font-size: 2rem;
        color: #2048A8;
        text-align: center;
        margin: 5rem 5%;
    }
    #about_message .text_outer p.sign{
        text-align: right;
  font-family: "Zen Kurenaido", sans-serif;
  font-weight: 400;
  font-style: normal;
        font-size: 1.5rem;
        margin: 3rem 5% 2rem 5%;
        letter-spacing: 0.1rem;
    }
    #about_message .text_outer p.sign span{
        margin: 0 0 0 1rem;
    }
    
    
    #about_exam {
        width: 100%;
        margin: 0;
        padding: 7rem 0;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    #about_exam h3 {
        width: 90%;
        margin: 0 auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam h3 img{
        width: 80%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam .exam_outer{
        width: calc(90% - 4rem);
        margin: 4rem auto;
        padding: 2rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        position: relative;
        border-radius: 1rem;
        background: #F0F4FF;
        color: #2048A8;
    }
    #about_exam .exam_outer p{
        width: 49%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #about_exam .exam_outer p.title{
        width: 49%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
    }
    #about_exam .exam_outer p.title span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    #about_exam .exam_outer p.title i{
        margin: 1rem auto;
    }
    #about_exam .exam_outer p.title span.text_a{
        font-weight: bold;
        color: #FABD00;
    }
    #about_exam .exam_point_outer{
        width: 90%;
        margin: 0 auto;
        padding: 2rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        background: #FFF9E8;
    }
    #about_exam .exam_point_outer dl{
        width: 75%;
        margin: 0 auto 4rem auto;
        padding: 0 0 4rem 0;
        display: block;
        position: relative;
        background: #FFF9E8;
    }
    #about_exam .exam_point_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 2rem;
        line-height: 4rem;
        font-weight: bold;
    }
    #about_exam .exam_point_outer dl dt span.number{
        width: 20%;
        margin: 0;
        padding: 0 0 3rem 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        font-weight: normal;
        font-size: 4rem;
        line-height: 4rem;
        color: #FABD00;
    }
    #about_exam .exam_point_outer dl dt span.text{
        width: 80%;
        margin: 0;
        padding: 0 0 3rem 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
    }
    #about_exam .exam_point_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
    }
    #about_exam .exam_point_outer dl dd p{
        width: 80%;
        margin: 0 0 0 20%;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #about_exam .exam_point_outer img{
        width: 22.5%;
        margin: 1.5rem 2.5% 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    
    #about_exam .character{
        width: 90%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam .character img{
        width: 90%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    #about_exam p.conclusion{
        width: 90%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        font-size: 2rem;
        line-height: 4rem;
        font-weight: bold;
    }
    #about_exam p.conclusion span {
    background: linear-gradient(transparent 70%, #FABD00 30%);
        color: #2048A8;
}
    
    #about_teaching{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: stretch;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #about_teaching h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #about_teaching h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #about_teaching .teaching_outer{
        width: 49%;
        margin: 0;
        padding: 0 0 2rem 0;
        display: flex;
        justify-content: flex-start;
        flex-direction: column;
        position: relative;
        background: #fff;
        box-shadow: 2px 2px 4px #ccc;
    }
    #about_teaching .small1{
        order: 2;
    }
    #about_teaching .one-to-two1{
        order: 3;
    }
    #about_teaching .small2{
        order: 4;
    }
    #about_teaching .one-to-two2{
        order: 5;
    }
    #about_teaching .teaching_outer h4{
        width: 95%;
        margin: 0 0 5rem 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #fff;
        background: #2048A8
    }
    #about_teaching .teaching_outer h4 i{
        font-size: 2.5rem;
        color: #FABD00;
        margin: 0 1rem 0 0;
    }
    
    #about_teaching .teaching_outer ul{
        width: auto;
        max-width: 95%;
        margin: 0 auto 2rem auto;
        padding: 0 2.5%;
        display: block;
        position: relative;
    }
    #about_teaching .teaching_outer ul li{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
    }
    #about_teaching .teaching_outer ul li::before {
        content: "\f14a";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 2rem;
        color: #FABD00;
    }
    #about_teaching .teaching_outer h5{
        width: 95%;
        margin: 3rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #about_teaching .teaching_outer h5::before {
        content: "\f0a6";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    #about_teaching .teaching_outer .point_outer{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #about_teaching .teaching_outer .point_outer dl{
        width: 49%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px solid #2048A8;
    }
    #about_teaching .teaching_outer .point_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    #about_teaching .teaching_outer .point_outer dl dt i{
        font-size: 1.8rem;
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    #about_teaching .teaching_outer .point_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #about_teaching .teaching_outer p.title{
        width: 95%;
        margin: 0 0 2rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
        text-align: center;
    }
    #about_teaching .teaching_outer p.title span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        color: #333;
    }
    #about_teaching .teaching_outer p.title span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    #about_teaching .teaching_outer p.title span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    #about_teaching .teaching_outer p{
        width: 95%;
        margin: 0 0 8rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #about_teaching .teaching_outer a{
        margin: auto auto 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    #about_teaching .teaching_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    #about_support{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #about_support h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #about_support h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #about_support .support_outer{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0 0 2rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        background: #fff;
        box-shadow: 2px 2px 4px #ccc;
    }
    #about_support .support_outer h4{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #fff;
        background: #2048A8
    }
    #about_support .support_outer h4 i{
        font-size: 2.5rem;
        color: #FABD00;
        margin: 0 1rem 0 0;
    }
    #about_support .support_outer h4 span{
        font-weight: normal;
        font-size: 1.2rem;
        margin: 0 0 0 1rem;
    }
    #about_support .support_outer h4 span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    #about_support .support_outer h4 span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    #about_support .support_outer p.title{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    #about_support .support_outer .text_outer{
        width: 60%;
        margin: 0 0 0 2.5%;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_support .support_outer .text_outer p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #about_support .support_outer .text_outer p span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    #about_support .support_outer img{
        width: 32.5%;
        margin: 0 2.5%;
    }
    
    #curriculum_fee{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #curriculum_fee h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #curriculum_fee h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #curriculum_fee .fee_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #curriculum_fee .fee_outer dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #curriculum_fee .fee_outer dl dt{
        max-width: calc(50% - 2rem);
        margin: 0;
        padding: 0 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        align-items: center;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    #curriculum_fee .fee_outer dl dd{
        max-width: calc(50% - 2rem);
        margin: 0;
        padding: 0 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
    }
    #curriculum_fee .fee_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0 0.5rem;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 3rem;
        font-weight: bold;
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    #curriculum_fee .discount_outer{
        width: 100%;
        margin: 8rem 0 0 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #curriculum_fee .discount_outer h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    #curriculum_fee .discount_outer h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #curriculum_fee .discount_outer dl{
        width: 49.5%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #curriculum_fee .discount_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #2048A8;
        color: #fff;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
    }
    #curriculum_fee .discount_outer dl dt i{
        margin: 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #curriculum_fee .discount_outer dl dt i:last-of-type{
        margin: 0 1rem 0 0;
    }
    #curriculum_fee .discount_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 2rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #curriculum_fee .discount_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0 0.5rem;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
    }
    #curriculum_fee .discount_outer dl dd p.sub{
        margin: 1rem 0 0 0;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
        color: #2048A8;
    }
    #curriculum_fee .discount_outer dl dd p.free span{
        font-size: 2.5rem;
        line-height: 4rem;
        padding: 0 0.5rem;
    background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    #curriculum_small{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #curriculum_small h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #curriculum_small h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .curriculum_point{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_point h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .curriculum_point h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_point dl{
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #small_point dl{
        width: 49%;
    }
    #one-to-two_point dl{
        width: calc(100% / 3.1);
    }
    .curriculum_point dl dt{
        width: calc(95% - 1.8rem);
        margin: 0;
        padding: 0.25rem 2.5% 0 calc(2.5% + 1.8rem);
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #fff;
        background: #2048A8;
    }
    .curriculum_point dl dt i{
        margin: 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
        position: absolute;
        top: 0;
        left: 2.5%;
    }
    .curriculum_point dl:first-of-type dt i{
        left: calc(2.5% + 0.2rem);
    }
    .curriculum_point dl dd{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: left;
    }
    .curriculum_point dl dd p{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
    }
    .curriculum_point .img_outer{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-around;
        position: relative;
    }
    .curriculum_point .img_outer img{
        width: calc(100% / 3.3);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .curriculum_content{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_content h4{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .curriculum_content h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_content dl{
        width: calc(100% / 2.1);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .curriculum_content dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .curriculum_content dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .curriculum_content dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .curriculum_content dl dd p{
        width: calc(95% - 1.9rem);
        margin: 1rem auto;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
        text-indent: -1.9rem;
    }
    .curriculum_content dl dd p::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .curriculum_pricelist{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
    }
    .curriculum_pricelist h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .curriculum_pricelist h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_pricelist p.start{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .curriculum_pricelist p.title{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        color: #2048A8;
        font-weight: bold;
    }
    .curriculum_pricelist p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    .pricelist_outer{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #one-to-two_pricelist .pricelist_outer{
        width: 24.5%;
        align-items: flex-start;
        flex-direction: column;
    }
    .pricelist_outer h5{
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        border-radius: 0.5rem 0.5rem 0 0;
    }
    .pricelist_outer h5.jr{
        background: #FABD00;
    }
    .pricelist_outer h5.h1{
        background: #9FBBFF;
    }
    .pricelist_outer h5.h2{
        background: #3961c1;
        color: #fff;
    }
    .pricelist_outer h5.h3{
        background: #2048A8;
        color: #fff;
    }
    .pricelist_outer table{
        width: calc(49% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #one-to-two_pricelist table{
        width: calc(100% - 4px);
        box-sizing: content-box;
    }
    #one-to-two_pricelist table.one-to-two_jr_1,
    #one-to-two_pricelist table.one-to-two_jr_2{
        border: 2px solid #FABD00;
    }
    #one-to-two_pricelist table.one-to-two_h1_1,
    #one-to-two_pricelist table.one-to-two_h1_2{
        border: 2px solid #9FBBFF;
    }
    .pricelist_outer table.small_h2,
    #one-to-two_pricelist table.one-to-two_h2_1,
    #one-to-two_pricelist table.one-to-two_h2_2{
        border: 2px solid #3961c1;
    }
    .pricelist_outer table.small_h3,
    #one-to-two_pricelist table.one-to-two_h3_1,
    #one-to-two_pricelist table.one-to-two_h3_2{
        border: 2px solid #2048A8;
    }
    #one-to-two_pricelist table:first-of-type{
        border-bottom: none;
    }
    .pricelist_outer table caption{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
    .pricelist_outer table.small_h2 caption{
        background: #3961c1;
        color: #fff;
    }
    .pricelist_outer table.small_h3 caption{
        background: #2048A8;
        color: #fff;
    }
    .pricelist_outer table tbody{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .pricelist_outer table tbody tr{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-top: 1px solid #ccc;
    }
    .pricelist_outer table tbody tr th{
        width: 7rem;
        margin: 0;
        padding: 0.5rem 0.25rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td{
        width: calc(100% - 8rem);
        margin: 0;
        padding: 0.5rem 0.25rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.fees{
        width: 49%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        color: #2048A8;
        font-weight: bold;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.fees:last-of-type{
        margin: 0 0 0 2%;
    }
    #one-to-two_pricelist table tbody tr td p.fees{
        width: 100%;
        margin: 0;
    }
    .pricelist_outer table tbody tr td p.materials{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.not{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #one-to-two_pricelist p.materials_info{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: right;
    }
    #one-to-two_pricelist p.materials_info::before{
        content: "\203B";
        margin: 0 0.5rem 0 0;
    }
        
    #curriculum_one-to-two{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #curriculum_one-to-two h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #curriculum_one-to-two h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    
    .curriculum_schedule{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_schedule h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .curriculum_schedule h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_schedule table.schedule{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    .curriculum_schedule table.schedule caption{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        background: #eee;
    }
    .curriculum_schedule table.schedule tbody{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #3961c1;
    }
    .curriculum_schedule table.schedule tbody tr{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-top: 1px solid #ccc;
    }
    .curriculum_schedule table.schedule tbody tr:first-of-type{
        border: none;
    }
    .curriculum_schedule table.schedule tbody tr th{
        width: 5rem;
        margin: 0;
        padding: 1rem 0.5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #2048A8;
        color: #FABD00;
    }
    .curriculum_schedule table.schedule tbody tr.week td{
        font-weight: bold;
        color: #fff;
        background: #3961c1;
    }
    .curriculum_schedule table.schedule tbody tr.week td:nth-of-type(even){
        background: #2048A8;
    }
    .curriculum_schedule table.schedule tbody tr td{
        width: calc(((100% - 6rem) / 7) - 0.5rem);
        margin: 0;
        padding: 1rem 0.25rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .curriculum_schedule table.schedule tbody tr td:nth-of-type(even){
        background: #F0F4FF;
    }
    .curriculum_schedule p{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    
    #curriculum .text_btn_outer{
        width: 100%;
        margin: 1rem auto 0 auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
    }
    #curriculum .text_btn_outer a{
        padding: 0.25rem 1rem;
        text-decoration: none;
        color: #2048A8;
        font-size: 1.1rem;
        line-height: 1.5rem;
    }
    #curriculum .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    #curriculum .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    #season_now{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #season_now h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #season_now h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #season_now p.title{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: normal;
        color: #666;
    }
    #season_now.on p.title{
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    #season_now.on p.title span{
        position: relative;
    }
    #season_now.on p.title span::before{
        content: "\53D7\4ED8\4E2D";
        display: block;
        position: absolute;
        top: -1rem;
        left: -3rem;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #fff;
        background: #f00;
        padding: 0 1rem;
        border-radius: 0.25rem;
        transform: rotateZ(-25deg);
    }
    
    .target_outer,
    .season_now_info,
    .season_now_price,
    .season_now_calendar,
    .season_feature_outer{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .target_outer h4,
    .season_now_info h4,
    .season_now_price h4,
    .season_now_calendar h4,
    .season_feature_outer h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .target_outer h4 i,
    .season_now_info h4 i,
    .season_now_price h4 i,
    .season_now_calendar h4 i,
    .season_feature_outer h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .target_outer dl{
        width: calc((100% / 3.5) - 4px);
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;;
        border: 2px solid #2048A8;
    }
    .target_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .target_outer dl dd{
        width: 90%;
        margin: 0;
        padding: 1rem 5%;
        display: block;
        position: relative;
    }
    .target_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
    }
    .target_outer p.conclusion{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        text-align: center;
    }
    .target_outer p.conclusion span.marker {
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    #season_now .message_outer{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #season_now .message_outer .message_inner{
        width: 80%;
        margin: 3rem auto;
        padding: 0 0 3rem 0;
        display: block;
        position: relative;
    }
    #season_now .message_outer .message_inner p {
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.3rem;
        line-height: 4rem;
        font-family: "Klee One", cursive;
        font-style: normal;
    }
    #season_now .message_outer .message_inner p.conclusion{
        text-align: center;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
        font-weight: bold;
    }
    
    .season_now_info dl{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        background: #fff;
        border: 2px solid #2048A8;
    }
    .season_now_info dl dt{
        width: 8rem;
        margin: 0;
        padding: 1rem 0.25rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
        border-bottom: 1px solid #fff;
    }
    .season_now_info dl dd{
        width: calc(50% - 9rem);
        margin: 0;
        padding: 1rem 0.25rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: left;
        border-bottom: 1px solid #ccc;
    }
    .season_now_info dl dt:nth-of-type(3),
    .season_now_info dl dt:nth-of-type(4),
    .season_now_info dl dd:nth-of-type(3),
    .season_now_info dl dd:nth-of-type(4){
        border: none;
    }
    .season_now_info dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .season_now_info dl dd p.type{
        font-weight: bold;
        color: #2048A8;
        text-align: center;
        font-size: 1.5rem;
    }
    .season_now_info dl dd p span.day{
        font-weight: bold;
        color: #2048A8;
    }
    .season_now_price p{
        width: 80%;
        margin: 0 auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    .season_now_price p strong{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
        word-break: keep-all;
    }
    .season_now_price .price_outer{
        width: calc(100% - 4px);
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        background: #fff;
        border: 2px solid #FABD00;
    }
    .season_now_price .price_outer dl{
        width: 50%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-bottom: 1px solid #ccc;
    }
    .season_now_price .price_outer dl:last-of-type{
        border-bottom: none;
        border-right: 1px solid #ccc;
    }
    .season_now_price .price_outer dl dt{
        width: 8rem;
        margin: 0;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        position: relative;
        background: #FABD00;
        font-size: 1.8rem;
        line-height: 3rem;
        font-weight: bold;
        color: #fff;
    }
    .season_now_price .price_outer dl dd{
        width: calc(100% - 12rem);
        margin: 0;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        position: relative;
        background: #fff;
        font-size: 1.8rem;
        line-height: 3rem;
        font-weight: bold;
    }
    .season_now_price .price_outer p{
        width: calc(50% - 2rem - 2px);
        margin: 0;
        padding: 1rem;
        display: block;
        position: relative;
        font-size: 1.8rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    .season_now_calendar{
        margin: 0 0 5rem 0;
    }
    .season_now_calendar p{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    .season_now_calendar .calendar_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
    }
    .season_now_calendar .calendar_outer dl{
        width: calc(100% / 7);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: space-between;
        position: relative;
        background: #fff;
    }
    .season_now_calendar .calendar_outer dl:nth-of-type(even){
        background: #F0F4FF;
    }
    .season_now_calendar .calendar_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
    }
    .season_now_calendar .calendar_outer dl:nth-of-type(even) dt{
        background: #2048A8;
    }
    .season_now_calendar .calendar_outer dl dt span{
        margin: 0 0 0 1rem;
    }
    .season_now_calendar .calendar_outer dl dt span.sat{
        color: #FABD00;
    }
    .season_now_calendar .calendar_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
    }
    .season_now_calendar .calendar_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px dashed #ccc;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .season_now_calendar .calendar_outer dl dd p:last-of-type{
        border: none;
    }
    .season_now_entry{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .season_now_entry a{
        margin: 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .season_now_entry a:hover{
        background: #2048A8;
        color: #fff;
    }
    .season_now_entry a i{
        margin: 0 1rem 0 0;
    }
    .season_now_entry p{
        width: 100%;
        margin: 1rem 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    
    #season_now.not .target_outer,
#season_now.not .message_outer,
#season_now.not .season_now_info,
#season_now.not .season_now_price,
#season_now.not .season_now_calendar{
        display: none;
    }
    #season_info{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #season_info h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #season_info h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #season_info .text_outer{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 3rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #season_info .text_outer p {
        width: 80%;
        margin: 0 auto 2rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.3rem;
        line-height: 4rem;
        font-family: "Klee One", cursive;
        font-style: normal;
    }
    #season_info .message_outer .message_inner p.conclusion{
        text-align: center;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
        font-weight: bold;
    }
    .season_feature_outer dl{
        width: calc(100% / 3.2);
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        box-shadow: 2px 2px 4px #ccc;
        background: #fff;
    }
    .season_feature_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
    }
    .season_feature_outer dl dt span{
        font-weight: normal;
        font-size: 1.2rem;
        line-height: 2rem;
        margin: 0 0 0 0.5rem;
    }
    .season_feature_outer dl dt span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    .season_feature_outer dl dt span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    .season_feature_outer dl dt i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 2rem;
    }
    .season_feature_outer dl.spring dt{
        background: #FABD00;
        color: #2048A8;
    }
    .season_feature_outer dl.summer dt{
        background: #e8dd00;
        color: #333;
    }
    .season_feature_outer dl.winter dt{
        background: #2048A8;
        color: #fff;
    }
    .season_feature_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    .season_feature_outer dl dd p{
        width: calc(100% - 1.9rem);
        margin: 1rem auto;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
        text-indent: -1.9rem;
    }
    .season_feature_outer dl dd p::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .season_feature_outer dl dd.now{
        display: none;
    }
    .season_feature_outer dl.now dd.now{
        display: block;
    }
    .season_feature_outer dl dd.now p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        color: #2048A8;
        font-weight: bold;
        text-indent: 0;
    }
    .season_feature_outer dl dd.now p::before{
        content: "";
        margin: 0;
    }
    .season_feature_outer dl dd.now a{
        margin: 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .season_feature_outer dl dd.now a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    #season_entry{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #2048A8;
    }
    #season_entry h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    #season_entry h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
    }
    #season_entry .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner{
        width: calc(80% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 50%;
        margin: 0 1rem 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer{
        width: calc(50% - 1rem);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        color: #fff;
        background: #2048A8;
    }
    
    
    
    .admission_entry{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    .admission_entry h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .admission_entry h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
    }
    .admission_entry h3 img{
        width: 80%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_entry .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner{
        width: calc(80% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #2048A8;
        border-radius: 0.5rem;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 50%;
        margin: 0 1rem 0 0;
        padding: 0;
        display: block;
        position: relative;
        color: #fff;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #FABD00;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer{
        width: calc(50% - 1rem);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #fff;
    }
    
    #admission_pre{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #admission_pre h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_pre h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #admission_pre p.title{
        width: 80%;
        margin: 0 auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    
    
    #admission_pre dl{
        width: calc((100% / 3.2) - 4px);
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
        border: 2px solid #2048A8;
    }
    #admission_pre dl:last-of-type{
        border: 2px solid #FABD00;
    }
    #admission_pre dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    #admission_pre dl dt span{
        margin: 0 1rem 0 0;
        color: #FABD00;
    }
    #admission_pre dl:last-of-type dt{
        background: #FABD00;
        color: #2048A8;
    }
    #admission_pre dl:last-of-type dt span{
        color: #fff;
    }
    #admission_pre dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    #admission_pre dl dd p{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: normal;
    }
    #admission_pre dl dd p span.marker{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    #admission_pre dl dd ul{
        width: 100%;
        margin: 3rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #admission_pre dl dd ul li{
        width: calc(100% - 1.9rem);
        margin: 0.5rem 0;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        text-indent: -1.9rem;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #admission_pre dl dd ul li::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .admission_pre_entry{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .admission_pre_entry a{
        margin: 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_pre_entry a:hover{
        background: #2048A8;
        color: #fff;
    }
    .admission_pre_entry a i{
        margin: 0 1rem 0 0;
    }
    .admission_pre_entry p{
        width: 100%;
        margin: 1rem 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    
    
    #admission_compare{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #admission_compare h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_compare h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    
    #admission_compare .compare_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #admission_compare .compare_outer dl{
        width: calc(100% / 4.1);
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #admission_compare .compare_outer input {
        display: none;
    }
    #admission_compare .compare_outer dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #admission_compare .compare_outer dl label dt{
        width: calc(95% - 2px);
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #fff;
        min-height: 5rem;
    }
    #admission_compare .compare_outer dl label dt i{
        font-size: 1.5rem;
        line-height: 2rem;
        margin: 0 0.5rem 0 0;
    }
    #admission_compare .compare_outer dl.small label dt,
    #admission_compare .compare_outer dl.other label dt{
        border-left: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label dt{
        border-left: 2px solid #FABD00;
    }
    #admission_compare .compare_outer dl label dd{
        width: calc(100% - 2px);
        margin: 0;
        padding: 0.25rem 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        transition: 0.3s;
    }
    #admission_compare .compare_outer dl label dd i{
        margin: 0 0.5rem 0 0;
    }
    #admission_compare .compare_outer dl.other label dd i{
        color: #Ff0;
    }
    #admission_compare .compare_outer dl.small label dd,
    #admission_compare .compare_outer dl.other label dd{
        background: #2048A8;
        color: #fff;
        font-weight: bold;
        border-left: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label dd{
        background: #FABD00;
        color: #2048A8;
        font-weight: bold;
        border-left: 2px solid #FABD00;
    }
    #admission_compare .compare_outer dl.small label:hover dd,
    #admission_compare .compare_outer dl.other label:hover dd{
        background: #fff;
        color: #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label:hover dd{
        background: #fff;
        color: #FABD00;
    }
    #admission_compare .compare_outer dl label dd::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 0;
        font-size: 1.5rem;
        line-height: 2.3rem;
        transition: 0.3s;
    }
    #admission_compare .compare_outer dl input:checked + label dd::after{
        transform: rotate(180deg);
    }
    #admission_compare .compare_outer dl dd.text{
        width: calc(95% - 4px);
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: left;
        border-left: 2px solid transparent;
        border-right: 2px solid transparent;
    }
    #admission_compare .compare_outer dl input:checked + label + dd.text{
        width: calc(95% - 4px);
        max-height: 20rem;
        padding: 1rem 2.5%;
    }
    #admission_compare .compare_outer dl.small input:checked + label + dd.text,
    #admission_compare .compare_outer dl.other input:checked + label + dd.text{
        border-left: 2px solid #2048A8;
        border-right: 2px solid #2048A8;
        border-bottom: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two input:checked + label + dd.text{
        border-left: 2px solid #FABD00;
        border-right: 2px solid #FABD00;
        border-bottom: 2px solid #FABD00;
    }
    
    #admission_compare p.title{
        width: 80%;
        margin: 0 auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #admission_compare p.title span.marker{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    #admission_compare h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    #admission_compare h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #admission_compare table.cheat_sheet{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #admission_compare table.cheat_sheet tbody{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #3961c1;
    }
    #admission_compare table.cheat_sheet tbody tr{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-top: 1px solid #ccc;
    }
    #admission_compare table.cheat_sheet tbody tr.course{
        border: none;
    }
    #admission_compare table.cheat_sheet tbody tr.course::before{
        content: "";
        display: block;
        position: relative;
        width: 11rem;
    }
    #admission_compare table.cheat_sheet tbody tr th{
        width: 10rem;
        margin: 0;
        padding: 1rem 0.5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        background: #2048A8;
        color: #fff;
    }
    #admission_compare table.cheat_sheet tbody tr.course th{
        width: calc(((100% - 11rem) / 2) - 1rem);
    }
    #admission_compare table.cheat_sheet tbody tr.course th.one-to-two{
        background: #FABD00;
        color: #2048A8;
    }
    
    .curriculum_schedule table.schedule tbody tr.week td:nth-of-type(even){
        background: #2048A8;
    }
    #admission_compare table.cheat_sheet tbody tr td{
        width: calc(((100% - 11rem) / 2) - 1rem);
        margin: 0;
        padding: 1rem 0.5rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #admission_compare table.cheat_sheet tbody tr td:nth-of-type(even){
        background: #F0F4FF;
    }
    #admission_compare .text_btn_outer{
        width: 100%;
        margin: 1rem auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
    }
    #admission_compare .text_btn_outer a{
        padding: 0.25rem 1rem;
        text-decoration: none;
        color: #2048A8;
        font-size: 1.1rem;
        line-height: 1.5rem;
    }
    #admission_compare .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    #admission_compare .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    #admission_flow{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #admission_flow h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_flow h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #admission_flow dl{
        width: 100%;
        margin: 0 auto;
        padding: 2rem 0;
        display: block;
        position: relative;
        background: #FFF9E8;
    }
    #admission_flow dl:last-of-type{
        margin: 0 auto 8rem auto;
    }
    #admission_flow dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 2rem;
        line-height: 4rem;
        font-weight: bold;
    }
    #admission_flow dl dt span.number{
        width: 20%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        font-weight: normal;
        font-size: 4rem;
        line-height: 4rem;
        color: #FABD00;
    }
    #admission_flow dl dt span.text{
        width: 80%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
    }
    #admission_flow dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
    }
    #admission_flow dl dd p{
        width: 80%;
        margin: 0 0 0 20%;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    
    #faq{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #faq h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #faq h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #faq .faq_list{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #faq .faq_list dl{
        width: calc(100% / 2.05);
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #faq .faq_list dl input {
        display: none;
    }
    #faq .faq_list dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #faq .faq_list dl label dt{
        width: calc(95% - 1.5rem);
        margin: 0;
        padding: 0.5rem calc(2.5% + 1.5rem) 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #F0F4FF;
        transition: 0.3s;
    }
    #faq .faq_list dl label dt i{
        font-size: 1.5rem;
        line-height: 2rem;
        margin: 0 0.5rem 0 0;
        color: #2048A8;
        transition: 0.3s;
    }
    #faq .faq_list dl label:hover dt{
        background: #2048A8;
        color: #fff;
    }
    #faq .faq_list dl label:hover dt i{
        color: #fff;
    }
    #faq .faq_list dl label dt::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 50%;
        font-size: 1.5rem;
        line-height: 0;
        transition: 0.3s;
    }
    #faq .faq_list dl input:checked + label dt::after{
        transform: rotate(180deg);
    }
    #faq .faq_list dl dd{
        width: 95%;
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
	counter-reset: listnum; /* カウンターをリセット */
	list-style: none; /* 標準のスタイルは消す */
    }
    #faq .faq_list dl dd p{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: left;
    }
    #faq .faq_list dl dd p a{
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
    }
    #faq .faq_list dl dd p a i{
        margin: 0 0 0 0.5rem;
    }
    #faq .faq_list dl dd p a:hover{
        color:#FABD00;
    }
    #faq .faq_list dl dd p.list{
        width: calc(100% - 2rem);
        padding: 0 0 0 2rem;
        text-indent: -2rem;
    }
    #faq .faq_list dl dd p.list::before{
	counter-increment: listnum;
	content: counter(listnum) ".";
	color: #2048A8;
	vertical-align: middle;
	font-size: 1.5rem;
	font-weight: bold;
        margin: 0 0.5rem 0 0;
}
    #faq .faq_list dl input:checked + label + dd{
        max-height: 100vh;
        padding: 1rem 2.5%;
    }
    #faq .faq_list p.data{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
        font-size: 1rem;
        line-height: 1rem;
    }
    #faq .faq_list p.data::before{
        content: "\203B";
        margin: 0 0.5rem 0 0;
    }
    
    .admission_cta{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #2048A8;
    }
    .admission_cta h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    .admission_cta h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
    }
    .admission_cta h3 img{
        width: 83%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_cta .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner{
        width: calc(80% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 50%;
        margin: 0 1rem 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer{
        width: calc(50% - 1rem);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    #admission_compare{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #admission_compare h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_compare h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    
    #admission_compare .compare_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    
    #voices_outer{
        width: 90%;
        margin: 0; 
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #voices_outer h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #voices_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #voices_outer .voices_pickup{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
    }
    #voices_outer .voices_pickup dl{
        width: 49%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #voices_outer .voices_pickup dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
        color: #2048A8;
    }
    #voices_outer .voices_pickup dl dt span.result{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_pickup dl dt span.year{
        margin: 0 1rem 0 0;
        padding: 0;
        position: relative;
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    #voices_outer .voices_pickup dl dt span.gender{
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    #voices_outer .voices_pickup dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    #voices_outer .voices_pickup dl dd input{
    display: none;
}
    #voices_outer .voices_pickup dl dd .voice_content{
    position: relative;
    max-height: 8rem;
    overflow: hidden;
    transition: max-height 0.4s ease;
}
    #voices_outer .voices_pickup dl dd .voice_content p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "Klee One", cursive;
    }
    #voices_outer .voices_pickup dl dd .voice_content p.note{
        margin: 0 0 1rem 0;
        font-size: 1.1rem;
        line-height: 2rem;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
    }
    #voices_outer .voices_pickup dl dd input:checked ~ .voice_content{
    max-height: 500vh;
}
    #voices_outer .voices_pickup dl dd .voice_content::after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3rem;
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
}
    #voices_outer .voices_pickup dl dd input:checked ~ .voice_content::after{
    display: none;
}
    #voices_outer .voices_pickup dl dd .more_btn{
        margin: 1rem 0 0 0;
        padding: 0.25rem 1rem;
        display: inline-block;
        position: relative;
        font-size: 1.1rem;
        line-height: 1.1rem;
        color: #fff;
        background: #2048A8;
        border-radius: 50vh;
        cursor: pointer;
        transition: 0.3s ease-in-out;
}
    #voices_outer .voices_pickup dl dd .more_btn:hover{
        opacity: 0.6;
    }
    #voices_outer .voices_pickup dl dd input:checked ~ .more_btn{
        background: #FABD00;
    }
    #voices_outer .voices_pickup dl dd .more_btn::before{
    content: "\7D9A\304D\3092\8AAD\3080";
}
    #voices_outer .voices_pickup dl dd input:checked ~ .more_btn::before{
    content: "\9589\3058\308B";
}
    #voices_outer .voices_other{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
    }
    #voices_outer .voices_other h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    #voices_outer .voices_other h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #voices_outer .voices_other dl{
        width: 49%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_other dl input {
        display: none;
    }
    #voices_outer .voices_other dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #voices_outer .voices_other dl label dt{
        width: calc(95% - 1.5rem);
        margin: 0;
        padding: 0.5rem calc(2.5% + 1.5rem) 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        color: #fff;
        background: #2048A8;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl:nth-of-type(even) label dt{
        background: #4a74d7;
    }
    #voices_outer .voices_other dl label dt span{
        font-size: 1.2rem;
        line-height: 2rem;
        color: #fff;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl label dt span.result{
    font-weight: bold;
    color: #Ff0;
}
    #voices_outer .voices_other dl label dt span.year{
        margin: 0 1rem;
    }
    #voices_outer .voices_other dl label:hover dt{
        background: #fff;
    }
    #voices_outer .voices_other dl label:hover dt span{
        color: #2048A8;
    }
    #voices_outer .voices_other dl label dt::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 50%;
        font-size: 1.5rem;
        line-height: 0;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl input:checked + label dt::after{
        transform: rotate(180deg);
    }
    #voices_outer .voices_other dl dd{
        width: 95%;
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
    }
    #voices_outer .voices_other dl input:checked + label + dd{
        max-height: 500vh;
        padding: 1rem 2.5%;
    }
    #voices_outer .voices_other dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "Klee One", cursive;
    }
    
    
    #access_outer{
        width: 90%;
        margin: 0; 
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #access_outer h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #access_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #access_outer .access_inner{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #access_outer .access_inner dl{
        width: 49%;
        margin: 0;
        padding: 0 1% 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        background: #fff;
    }
    #access_outer .access_inner dl dt{
        width: 8rem;
        margin: 0;
        padding: 0.5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-weight: bold;
        border-bottom: 1px solid #ccc;
    }
    #access_outer .access_inner dl dd{
        width: calc(95% - 9rem);
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        border-bottom: 1px solid #ccc;
    }
    #access_outer .access_inner dl dt:last-of-type,
    #access_outer .access_inner dl dd:last-of-type{
        border: none;
    }
    #access_outer .access_inner dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
    }
    #access_outer .access_inner dl dd p span{
        margin: 0 0 0 1rem;
        word-break: keep-all;
    }
    #access_outer .access_inner dl dd ul{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner dl dd ul li{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
    }
    #access_outer .access_inner dl dd ul li::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        color: #333;
        font-size: 0.9rem;
    }
    #access_outer .access_inner dl dd ul li span{
        margin: 0 0 0 1rem;
    }
    #access_outer .access_inner .ggmap {
        width: 50%;
        position: relative;
        margin: 0;
        padding-bottom: 50%;
        padding-top: 0;
        height: 0;
        overflow: hidden;
        border: none !important;
    }
    .ggmap iframe,
    .ggmap object,
    .ggmap embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: none !important;
        -webkit-transition: all 0.7s ease;
        -moz-transition: all 0.7s ease;
        -o-transition: all 0.7s ease;
        transition: all 0.7s ease;
    }
    #access_outer .access_inner .gallery_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner .gallery_outer ul.gallery{
        width: 100%;
        margin: 5rem 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
    }
    #access_outer .access_inner .gallery_outer ul.gallery li{
        width: calc(100% / 3.3);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        overflow: hidden;
    }
    #access_outer .access_inner .gallery_outer ul.gallery li img{
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        object-fit: cover;
    }
    #access_outer .access_inner .gallery_outer ul.slider{
        display: none;
    }
    #access_outer .cta_btn_outer{
        width: 100%;
        margin: 8rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner{
        width: calc(80% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #2048A8;
        border-radius: 0.5rem;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 50%;
        margin: 0 1rem 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2.5rem;
        font-weight: bold;
        color: #fff;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #FABD00;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer{
        width: calc(50% - 1rem);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    
    #contact_outer{
        width: 90%;
        margin: 0; 
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #contact_outer h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #contact_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #contact_outer p.title span.marker{
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    #contact_outer  .form_outer {
        width: calc(100% - 2rem);
        margin: 0;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        background: #fff;
    }
    #contact_outer  .form_outer .text_inner {
        width: 45%;
        margin: 0 2.5%;
        padding: 0;
        display: block;
        position: relative;
    }
    #contact_outer  .form_outer .text_inner p{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2.5rem;
        text-align: left;
    }
    #contact_outer  .form_outer .text_inner p.title{
        margin: 5rem auto;
        font-size: 1.5rem;
        line-height: 3rem;
        text-align: center;
        font-weight: bold;
        color: #2048A8;
    }
    
    #contact_outer  .form_outer .form_inner{
        width: 49%;
        margin: 0 0 0 1%;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #contact_outer  .form_outer .form_inner dl{
        width: 49%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px solid #a9a9a9;
    }
    #contact_outer  .form_outer .form_inner dl.checkbox,
    #contact_outer  .form_outer .form_inner dl.wide,
    #contact_outer  .form_outer .form_inner dl.text{
        width: 100%;
    }
    #contact_outer  .form_outer .form_inner dl dt {
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #333;
        text-align: left;
        font-weight: bold;
    }
    #contact_outer  .form_outer .form_inner dl dt.check::before {
        content: "\f00c";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #f00;
    }
    #contact_outer  .form_outer .form_inner dl dd {
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #333;
    }
    #contact_outer .form_outer .form_inner dl dd span{
        max-width: 100%;
        margin: 0 2rem 1rem 0;
        word-break: keep-all;
    }
    #contact_outer .form_outer .form_inner .conditional-area{
        width: calc(100% - 2rem);
        margin: 0;
        padding: 1rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        background: #FFF9E8;
    }
    #contact_outer .form_outer .form_inner .conditional-area p{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2.5rem;
        text-align: center;
        font-weight: bold;
        color: #2048A8;
    }
    
    #contact_outer  .form_outer .form_inner .formbutton {
        width: 100%;
        margin: 3rem 0;
        padding: 0;
        text-align: center;
        display: block;
        position: relative;
    }


    #contact_outer input[type=text],
    #contact_outer input[type=tel] {
        width: calc(100% - 1rem);
        margin: 0;
        padding: 0 0.5rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer select {
        width: 100%;
        margin: 0;
        padding: 0.3rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer textarea {
        width: calc(100% - 1rem);
        height: 10rem;
        margin: 0;
        padding: 0.5rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer input[type=text]:focus,
    #contact_outer textarea:focus {
        border: none;
        background: #fff;
    }


    #contact_outer input[type=checkbox] {
        margin: 0.5rem 0.5rem 0 0;
        position: relative;
        top: 0.2rem;
    }

    #contact_outer input[type=radio] {
        margin: 0.5rem 0.5rem 0 0;
        position: relative;
        top: 0.1rem;
    }



    #contact_outer input[type=file] {
        width: 100%;
        display: block;
        overflow: hidden;
        position: relative;
        padding: 0;
        margin-bottom: 0;
    }


    input[type=submit] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #2048A8;
        border: none;
        color: #ff0;
        font-weight: bold;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    input[type=submit]:hover{
        background: #FABD00;
        color: #2048A8;
    }

    input[type=reset] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #ccc;
        border: none;
        color: #333;
        font-weight: bold;
    }

    input[type=button] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #2048A8;
        border: none;
        color: #fff;
        font-weight: bold;
    }
    #thanks_outer{
        width: 95%;
        min-height: 100vh;
        margin: 0;
        padding: 15rem 2.5%;
        display: block;
        position: relative;
        background: #F0F4FF;
        text-align: center;
    }
    #thanks_outer h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #thanks_outer h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #thanks_outer .thanks_inner{
        width: calc(80% - 4rem);
        margin: 0 auto;
        padding: 2rem;
        display: block;
        position: relative;
        background: #fff;
    }
    #thanks_outer .thanks_inner p{
        width: 100%;
        margin: 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        text-align: left;
    }
    #thanks_outer .thanks_inner  a{
        margin: 5rem auto 0 auto;
        padding: 1rem 2.5%;
        display: inline-block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #fff;
        background: #2048A8;
    }
    #thanks_outer #formWrap{
        width: calc(80% - 4rem);
        margin: 0 auto;
        padding: 2rem;
        display: block;
        position: relative;
        background: #fff;
        text-align: center;
    }
    #thanks_outer #formWrap h3{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: bold;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #thanks_outer #formWrap h4{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: bold;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #f00;
    }
    #thanks_outer #formWrap p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: normal;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #f00;
    }
    #thanks_outer #formWrap table{
        width: 50rem;
        max-width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #thanks_outer #formWrap table tr{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
    }
    #thanks_outer #formWrap table tr th{
        width: 10rem;
        margin: 0;
        padding: 0.5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
        border-bottom: 1px solid #F0F4FF;
    }
    
    #thanks_outer #formWrap table tr td{
        width: calc(100% - 12rem);
        margin: 0;
        padding: 0.5rem;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: normal;
        text-align: left;
        background: #fff;
        border-bottom: 1px solid #ccc;
    }
    .copyright_area{
        display: none;
    }
    
    /*背面動画
---------------------------------------------------------------------------*/
    .bgmovie {
        position: fixed;
        min-width: calc(100% - 10rem);
        min-height: 100%;
        width: 100%;
        height: auto;
        top: 0;
        left: 0rem;
        right: 0;
        bottom: 0;
        padding: 0;
        overflow: hidden;
        z-index: 0;
        display: block;
    }

    .bgmovie video {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: center;
        align-items: center;
        display: -ms-flexbox;
        -ms-flex-pack: center;
        -ms-flex-align: center;
        text-align: center;
        margin: auto;
        min-height: 100%;
        min-width: 100%;
        height: auto;
        background-color: #000;
    }

    @media all and (-ms-high-contrast: none) {
        .bgmovie video {
            position: relative;
            z-index: 2;
            display: flex;
            justify-content: center;
            align-items: center;
            display: -ms-flexbox;
            -ms-flex-pack: center;
            -ms-flex-align: center;
            text-align: center;
            margin: auto;
            min-height: 100%;
            min-width: 100%;
            width: 100%;
            height: auto;
            background-color: #000;
        }
    }

    .bgmovie video {
        position: absolute;
        display: block;
    }

    @media (aspect-ratio: 16/9),
    (min-aspect-ratio: 16/9) {
        video {
            width: 100%;
            top: 50%;
            transform: translateY(-50%);
        }
    }

    @media (max-aspect-ratio: 16/9) {
        .bgmovie video {
            height: 100%;
            left: 50%;
            transform: translateX(-50%);
        }
    }




    /*フッター
---------------------------------------------------------------------------*/
    footer {
        width: 100%;
        margin: 0;
        padding: 0;
        font-size: 1rem;
        line-height: 1rem;
        color: #fff;
        text-align: center;
        background-color: #FABD00;
    }
    footer .footer_menu_outer{
        width: 95%;
        margin: 0;
        padding: 2rem 2.5%;
        display: block;
        position: relative;
        background: #2048A8;
    }
    footer .footer_menu_outer ul{
        width: 80%;
        margin: 0 auto;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    footer .footer_menu_outer ul li{
        width: calc((100% / 5) - 1px);
        margin: 0 0 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        border-right: 1px solid #fff;
    }
    footer .footer_menu_outer ul li:nth-of-type(1),
    footer .footer_menu_outer ul li:nth-of-type(6){
        width: calc((100% / 5) - 2px);
        border-left: 1px solid #fff;
    }
    footer .footer_menu_outer ul li a{
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        color: #fff;
        text-decoration: none;
    }

    footer p {
        font-size: 1rem;
        line-height: 1rem;
        margin: 0;
        padding: 0.5rem 0;
    }
    footer p a{
        margin: 0;
        padding: 0;
        position: absolute;
        left: 20%;
        text-decoration: none;
    }

    
    
    
    
    @media screen and (max-width: 1115px) {
        
    header #h_header_outer .menu_btn_outer .menu_btn_inner a{
        width: calc((100% / 3) - 1px);
        height: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        font-size: 0.8rem;
        line-height: 0.8rem;
        color: #333;
        text-decoration: none;
        border-left: 1px solid #333;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.about,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.season,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.faq,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.voice,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.access{
        display: none;
    }
    .point dl{
        width: calc((100% / 3) - 1rem);
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
        .point dl:last-of-type{
        margin: 0 calc((100% / 3) + 5px) 2rem 0;
        }
        
    .voice_pickup dl{
        width: calc(100% / 2.1);
        margin: 0 0 2rem 0;
        padding: 0 0 5rem 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .cta .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
        
    .contents_bg .title_outer{
        background-size: cover;
        background-attachment: scroll;
    }
        
    #about_teaching .teaching_outer .point_outer dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px solid #2048A8;
    }
    footer .footer_menu_outer ul {
    width: 90%;
    margin: 0 0 0 10%;
    padding-right: 10rem;
    box-sizing: border-box;
  }
        
    #one-to-two_pricelist .pricelist_outer{
        width: 49%;
        align-items: flex-start;
        flex-direction: column;
    }
        
    .season_now_calendar .calendar_outer dl{
        width: calc(100% / 5);
    }
        
    #admission_compare .compare_outer dl{
        width: calc(100% / 2.05);
    }
      
    #voices_outer .voices_other dl label dt{
        flex-wrap: wrap;
        justify-content: center;
    }
    #voices_outer .voices_other dl label dt span.result{
        width: 100%;
        display: block;
        text-align: center;
}
    #voices_outer .voices_other dl label dt span.year{
        margin: 0 1rem 0 0;
    }
        
    #access_outer .access_inner dl{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
    }

    #access_outer .access_inner .ggmap {
        width: 100%;
        position: relative;
        margin: 0;
        padding-bottom: 50%;
        padding-top: 0;
        height: 0;
        overflow: hidden;
        border: none !important;
    }
        
    #contact_outer  .form_outer {
        display: block;
    }
    #contact_outer  .form_outer .text_inner {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }

    
    #contact_outer  .form_outer .form_inner{
        width: 100%;
        margin: 0;
    }
        
}
    /*その他
---------------------------------------------------------------------------*/
    .pcnone {
        display: none !important;
    }

    .color1 {
        color: #FF0000;
    }

    .color2 {
        color: #0000FF;
    }

    .color3 {
        color: darkorange;
        font-weight: bold;
    }

    .color4 {
        color: #336699;
    }

    .color5 {
        color: #009edc;
        font-weight: bold;
    }

    .color6 {
        color: #FFFF00;
        font-weight: normal;
    }

    .strong {
        font-weight: bold;
    }

    .br:before {
        content: "\A";
        white-space: pre;
    }

    .pccounter {
        position: relative;
        top: 0rem;
        right: 0%;
        width: 100%;
        text-align: center;
        margin-bottom: 0rem;
        border: none;
        color: #ccc !important;
        z-index: 500;
        display: none;
    }

    .pccounter iframe {
        width: 10rem;
        height: 3rem;
        border: none;
        background: none;
        overflow: hidden;
        vertical-align: bottom;
        background-color: transparent;
        color: #ccc !important;
        z-index: 500;
    }

    .pccounter img {
        position: relative;
        top: 0;
        left: 5%;
    }

    /*戻るボタン
---------------------------------------------------------------------------*/

    .pagetop {
        display: none;
        position: fixed;
        bottom: 1rem;
        right: 0;
        z-index: 100;
        margin: 0;
    }

    .pagetop a {
        width: 10rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        background-color: none;
        text-align: center;
        color: #fff;
        font-size: 2rem;
        text-decoration: none;
        padding: 0.8rem;
        filter: alpha(opacity=50);
        -moz-opacity: 1;
        opacity: 1;
        margin: 0;
        line-height: 0rem;
    }

    .pagetop a:hover {
        opacity: 0.5;
    }
    .pagetop a img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .pagetop a i{
        display: block;
        position: absolute;
        top: 10%;
        margin: auto;
        animation: blinking 1s ease-in-out infinite alternate;
    }
    @keyframes blinking {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}


}


/*===============================================

スマホ横型対策

===============================================*/

@media all and (min-width: 600px) and (max-width: 768px) {
    
    html {
        height: 100%;
        min-height: 100vh;
        font-size: 14px;
        line-height: 14px;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }

    body {
        height: 100%;
        min-height: 100vh;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
        line-height: 2;
        color: #000;
        margin: 0;
        padding: 0;
        max-height: 100%;
        text-align: center;
        background-color: transparent;
        -webkit-text-size-adjust: 100%;
    }

    /*リンクカラー*/
    a {
        color: #002b55;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    /*カーソルオーバー時のリンクカラー*/
    a:hover {
        color: #A51A91;
        text-decoration: none;
        /*下線を消す設定。残したままがいいならこの１行を削除。*/
    }

    /*ヘッダー
---------------------------------------------------------------------------*/
    header {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        top: 0;
        left: 0;
        z-index: 100;
    }

    header #h_header_outer{
        width: 100%;
        height: 4rem;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 100;
        background: #FFF9E8;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    
header.is-scrolling #h_header_outer{
        top: -4rem;
        left: 0;
    }
    header #h_header_outer h1{
        width: 12.5%;
        height: 3rem;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        order: 1;
    }
    header #h_header_outer h1 img{
        max-width: 100%;
        height: 100%;
        margin: 0 auto 0 0;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    header #h_header_outer .menu_btn_outer{
        width: calc(82.5% - 14.5rem);
        height: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        order: 2;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner a{
        width: calc((100% / 3) - 1px);
        height: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        font-size: 0.8rem;
        line-height: 0.8rem;
        color: #333;
        text-decoration: none;
        border-left: 1px solid #333;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.about,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.season,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.faq,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.voice,
    header #h_header_outer .menu_btn_outer .menu_btn_inner a.access{
        display: none;
    }
    header #h_header_outer .menu_btn_outer .menu_btn_inner a img{
        max-width: 100%;
        height: 2rem;
        margin: 0 auto 0.5rem auto;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    header #h_header_outer .contact_btn_outer{
        width: 10.5rem;
        height: 100%;
        margin: 0;
        padding: 0 4rem 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        color: #fff;
        background: #2048A8;
        order: 3;
    }
    header #h_header_outer .contact_btn_outer p{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: bold;
        text-align: center;
    }
    
    
    

    #wrapper {
        overflow: hidden;
        height: auto;
        padding: 0;
        display: block;
        -webkit-transition: 1s ease-in-out;
        -moz-transition: 1s ease-in-out;
        -o-transition: 1s ease-in-out;
        transition: 1s ease-in-out;
        opacity: 1;
    }

    #wrapper.openmenu {
        display: block;
    }

    #navTgl:checked ~ .contents {
        -webkit-transform: translateX(250px);
        transform: translateX(250px);
    }

    /* :::::: toggle button :::::: */
    #navTgl {
        display: none;
        overflow: hidden;
    }

    label {
        cursor: pointer;
        position: fixed;
        top: 0;
        right: 0rem;
        text-align: center;
    }

    #wrapper.openmenu label {
        right: 0rem;
    }

    label span {
        display: block;
        font-size: 0.8rem;
    }

    .open {
        z-index: 5000;
        width: 4rem;
        height: 4rem;
        color: #ff0;
        font-size: 2rem;
        line-height: 1rem;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        text-align: center;
        -webkit-transition: background-color .6s, -webkit-transform .6s;
        transition: background-color .6s, transform .6s;
        background: none;
        -moz-transition: all 0.5s;
        -o-transition: all 0.5s;
        -webkit-transition: all 0.5s;
        transition: all 0.5s;
    }

    #navTgl:checked + .open {
        background: none;
        color: #ff0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        text-shadow: 2px 2px 4px #000;
    }


    .close {
        pointer-events: none;
        z-index: 100;
        width: calc(100% + 4rem);
        height: 100%;
        transition: .6s;
    }

    #navTgl:checked ~ .close {
        pointer-events: auto;
        background-color: rgba(0, 0, 0, 0.5);
    }

    /* :::::: drawer menu :::::: */
    #wrapper .menu {
        z-index: 1;
        position: fixed;
        overflow: auto;
        top: 0;
        right: -45%;
        width: 45%;
        height: calc(100% - 4rem);
        margin: 0;
        padding: 5rem 0 0 0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transition: -webkit-transform .6s;
        transition: transform .6s;
        background: #2048A8;
        z-index: 1000;
        text-align: center;
        color: #fff;
    }
    #wrapper .menu::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }
    #wrapper .menu::-webkit-scrollbar-track {
        background: #eee;
    }
    #wrapper .menu::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }


    #navTgl:checked ~ .menu {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        margin: 0;
    }
#wrapper .menu .menu_btn_outer{
        width: 95%;
        margin: 0 0 2rem 0;
        padding: 0 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
#wrapper .menu .menu_btn_outer a{
        width: calc(48% - 1rem - 2px);
        margin: 0 0 0.5rem 0;
        padding: 0.5rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        border: 1px solid #fff;
        border-radius: 0.5rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
        font-size: 1rem;
        line-height: 1.5rem;
        background: #fff;
    }
#wrapper .menu .menu_btn_outer a span{
        font-weight: normal;
        font-size: 0.9rem;
        line-height: 1.3rem;
    }
#wrapper .menu .menu_btn_outer a img{
        width: 30%;
        margin: 0 auto 0.5rem auto;
        padding: 0;
        display: block;
        position: relative;
    object-fit: contain;
    }
#wrapper .menu .menu_btn_outer a:hover{
        background: #ff0;
        color: #3961c1;
    }
#wrapper .menu .contact_btn_outer{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: center;
    }
#wrapper .menu .contact_btn_outer p{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
#wrapper .menu .contact_btn_outer a{
        width: calc(100% - 1rem);
        margin: 0 0 2rem 0;
        padding: 1rem 0.5rem;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.2rem;
        font-weight: bold;
        background: #ff0;
        color: #2048A8;
        border-radius: 0.5rem;
    }
#wrapper .menu .contact_btn_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
#wrapper .menu .contact_btn_outer a i{
        margin: 0 1rem 0 0;
    }
#wrapper .menu .character{
    width: 80%;
    margin: 0 auto;
    padding: 0;
    display: block;
    position: relative;
    }
    
    .modal_wrap input {
        display: none;
    }

    .modal_overlay {
        display: none;
    }

    .modal_trigger {
        display: none;
    }

    .modal_content {
        display: none;
    }

    .close_button {
        display: none;
    }

    .modal_wrap input:checked ~ .modal_overlay {
        display: none;
    }

    .modal_wrap input:checked ~ .modal_overlay .modal_content {
        display: none;
    }


    /*コンテナー
---------------------------------------------------------------------------*/
    #container {
        text-align: left;
        width: 100%;
        margin: 0;
        padding: 0;
        border: none;
        background-color: #fff;
    }



    /*全体を囲むボックス
---------------------------------------------------------------------------*/
    #contents {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }


    /*メインコンテンツ1
---------------------------------------------------------------------------*/

    .news {
        width: 90%;
        margin: 100vh 0 0 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .news h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }

    .news h2 span {
        display: block;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }

    .news h2 span::before,
    .news h2 span::after {
        content: "-";
        margin: 0 0.5rem;
    }

    .news .campaign_outer{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news .campaign_outer img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news .news_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news dl {
        width: 100%;
        height: 25rem;
        margin: 0 auto;
        padding: 1rem 0;
        display: block;
        position: relative;
        overflow-y: auto;
        background: #fff;
        z-index: 0;
    }

    .news dl::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }

    .news dl::-webkit-scrollbar-track {
        background: #eee;
    }

    .news dl::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }

    .news dl dt {
        width: 95%;
        margin: 0 0 0.5rem 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 1.8rem;
        font-style: italic;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        text-align: left;
        font-weight: bold;
        border-top: 1px dashed #ccc;
    }
    .news dl dt:first-of-type{
        border: none;
    }

    .news dl dt span {
        background: #2048A8;
        margin: 0 0 0 1rem;
        padding: 0 0.5rem;
        color: #fff;
        font-style: normal;
    }

    .news dl dd {
        width: 95%;
        margin: 0 0 1rem 0;
        padding: 0 2.5% 0.5rem 2.5%;
        text-align: left;
        font-size: 1rem;
        line-height: 2rem;
    }

    .news dl dd a.lightbox{
        width: 50%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .news dl dd a.lightbox:hover{
        opacity: 0.6;
    }
    .news dl dd a.lightbox img{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }

    
    
    .message {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }

    .message h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .message h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .message .text_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    .message .text_outer .text_inner{
        width: 60%;
        margin: 3rem auto;
        padding: 0 0 3rem 0;
        display: block;
        position: relative;
    }
    .message .text_outer .text_inner p {
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        color: #2048A8;
        font-family: "Klee One", cursive;
        font-weight: bold;
        font-style: normal;
    }
    .message .text_outer .text_inner a {
        margin: 0;
        padding: 0.25rem 1rem;
        position: absolute;
        right: 0;
        bottom: 0;
        border: 1px solid #2048A8;
        font-size: 1rem;
        line-height: 1.2rem;
        color: #2048A8;
        text-decoration: none;
    }
    .message .text_outer .text_inner a:hover {
        background-color: #2048A8;
        color: #fff;
    }

    
    .message .gallery_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    .message .gallery_outer ul.slider{
        width: 100%!important;
        padding: 0!important;
    margin: 0!important;
    z-index: 0;
    background: none!important;
    position: relative!important;
        text-align: center!important;
    }
    .message .gallery_outer .slider li{
        margin: 0;
        padding: 0;
        display: block;
    position: relative;
        border: none!important;
    }
    .message .gallery_outer .slider li img{
        width: 100%;
        margin: 0!important;
        padding: 0!important;
        display: block!important;
        border: none!important;
        object-fit: cover;
    }

/*左右の矢印*/
    .message .gallery_outer .slider .slick-next {
    display: none!important;
}
    .message .gallery_outer .slider .slick-prev {
    display: none!important;
}
    .message .gallery_outer .slider .slick-dots{
        display: none!important;
        position: relative;
        bottom: -1rem!important;
        margin-top: 0rem!important;
    }

    .point {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .point h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .point h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .point dl{
        width: calc((100% / 2) - 1rem - 4px);
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .point dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.4rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .point dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
    }
    .point dl dd p{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .point dl dd p strong{
        color: #c00;
        font-size: 1.3rem;
        font-weight: bold;
    }
    .point p.title {
        width: 100%;
        margin: 5rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    .point p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    
    .courses {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }

    .courses h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .courses h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    
    .courses dl{
        width: calc(100% - 4px);
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .courses dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.8rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .courses dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .courses dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .courses dl dd:last-of-type{
        padding: 0rem 2.5% 2rem 2.5%;
    }
    .courses dl dd p{
        width: 95%;
        margin: 3rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
    }
    .courses dl dd p.title{
        width: 100%;
        text-align: center;
        font-size: 1.3rem;
        line-height: 2.5rem;
        margin: 3rem 0;
        font-weight: bold;
    }
    .courses dl dd p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    .courses dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #FABD00;
        color: #2048A8;
        border-radius: 50vh;
    }
    .courses dl dd a:hover{
        opacity: 0.6;
    }
    
    .season_info {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .season_info h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .season_info h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .season_info dl{
        width: calc(100% - 4px);
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #999;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
        order: 2;
    }
    .season_info dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #ddd;
        color: #333;
    }
    .season_info dl dt span{
        font-size: 1.1rem;
    }
    .season_info dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .season_info dl dd:last-of-type{
        padding: 0rem 2.5% 2rem 2.5%;
    }
    .season_info dl dd p{
        width: 95%;
        margin: 3rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
    }
    .season_info dl dd p.title{
        width: 100%;
        text-align: center;
        font-size: 1.3rem;
        line-height: 2.5rem;
        margin: 3rem 0;
        font-weight: bold;
    }
    .season_info dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
        border-radius: 50vh;
    }
    .season_info dl dd a:hover{
        opacity: 0.6;
    }
    .season_info dl.pickup{
        width: calc(100% - 8px);
        margin: 0 0 5rem 0;
        padding: 0 0;
        display: block;
        position: relative;
        border-top: none;
        border-left: 4px solid #FABD00;
        border-right:  4px solid #FABD00;
        border-bottom: none;
        background: #fff;
        border-radius: 0;
        z-index: 10;
        order: 1;
    }
    .season_info dl.pickup::before{
        content: "";
        width: 100%;
        height: 1rem;
        display: block;
        background: #FABD00;
        border: 4px solid #FABD00;
        position: absolute;
        top: -1rem;
        left: -4px;
        z-index: 0;
    }
    .season_info dl.pickup::after{
        content: "";
        width: 100%;
        height: 2rem;
        display: block;
        background: #FABD00;
        border: 4px solid #FABD00;
        position: absolute;
        left: -4px;
        bottom: -2rem;
        border-radius: 0 0 0.5rem 0.5rem;
        z-index: 0;
    }
    .season_info dl.pickup dt{
        padding: 0.5rem 2.5%;
        background: #FABD00;
    }
    .season_info dl.pickup dt span{
        color: #c00;
    }
    .season_info dl.pickup dd a{
        color: #2048A8;
        background: #FABD00;
    }
    
        .voice_pickup {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }

    .voice_pickup h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .voice_pickup h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .voice_pickup dl{
        width: calc((100% / 2.1) - 4px);
        margin: 0 0 3rem 0;
        padding: 0 0 3rem 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .voice_pickup dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
        color: #2048A8;
    }
    .voice_pickup dl dt span.result{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .voice_pickup dl dt span.year{
        margin: 0 1rem 0 0;
        padding: 0;
        position: relative;
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    .voice_pickup dl dt span.gender{
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    .voice_pickup dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    .voice_pickup dl dd:last-of-type{
        padding: 1rem 0;
        position: absolute;
        left: 2.5%;
        bottom: 0;
    }
    .voice_pickup dl dd p{
        width: 95%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
    }
    .voice_pickup dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
        border-radius: 50vh;
    }
    .voice_pickup dl dd a:hover{
        opacity: 0.6;
    }    
    .voice_pickup .more_btn_outer{
        width: 100%;
        margin: 8rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .voice_pickup .more_btn_outer a{
        margin: 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .voice_pickup .more_btn_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    

        .cta {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #2048A8;
    }

    .cta h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    .cta h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
    }

    .cta h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #FABD00;
    }
    .cta dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    .cta dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.5rem;
        line-height: 2.5rem;
        font-weight: bold;
        color: #333;
        border-bottom: 2px solid #2048A8;
    }
    .cta dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .cta dl dd{
        width: 80%;
        margin: 0;
        padding: 2rem 10%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #333;
        text-align: left;
    }
    .cta .icon_outer{
        width: 100%;
        margin: 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .cta .icon_outer i{
        font-size: 3rem;
        color: #fff;
        transform: rotateZ(90deg);
    }
    .cta .text_btn_outer{
        width: 100%;
        margin: 1rem auto 0 auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
    }
    .cta .text_btn_outer a{
        padding: 0.25rem 1rem;
        text-decoration: none;
        color: #fff;
        font-size: 1.1rem;
        line-height: 1.5rem;
    }
    .cta .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    .cta .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    .cta .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    
    .cta .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: block;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0 auto;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        color: #fff;
        background: #2048A8;
    }
    
    
    
    .contents_bg{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #about .title_outer{
        background-image: url(images/bg_about.jpg);
    }
    #curriculum .title_outer{
        background-image: url(images/bg_curriculum.jpg);
    }
    #season .title_outer{
        background-image: url(images/bg_season.jpg);
    }
    #admission .title_outer{
        background-image: url(images/bg_admission.jpg);
    }
    #voices .title_outer{
        background-image: url(images/bg_voices.jpg);
    }
    #access .title_outer{
        background-image: url(images/bg_access.jpg);
    }
    #contact .title_outer{
        background-image: url(images/bg_contact.jpg);
        background-position: 60% center;
    }
    .contents_bg .title_outer{
        width: 100%;
        height: 100vh;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        background-repeat: no-repeat;
        background-size: cover;
        background-attachment: scroll;
    }
    .contents_bg .title_outer img{
        display: none;
    }
    .contents_bg .title_outer h2{
        margin: 0;
        padding: 1rem 2rem;
        display: block;
        position: relative;
        background: rgba(32,72,168,0.6);
        color: #fff;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
    }
    .contents_bg .title_outer h2 span{
        display: block;
        font-size: 1.5rem;
        line-height: 2rem;
        font-style: italic;
    }
    
    .contents_bg .st_menu{
    position: fixed;
    right: calc(-100% + 2rem);
    width: calc(100% - 2rem);
  top: 4rem;
    background: #2048A8;
    transition: right 1s ease;
    z-index: 999;
    }
  .contents_bg .st_menu.active {
    right: 0;
  }
  .st_menu_toggle {
    position: absolute;
    top: 0;
    left: -2rem; /* ← メニューの外に出す */
    width: 2rem;
    height: 3rem;
    background: #2048A8;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px 0 0 4px;
    cursor: pointer;
  }

    .contents_bg .st_menu ul{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        position: relative;
    }
    .contents_bg .st_menu ul li{
        width: calc((100% / 6) - 1px);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        border-left: 1px solid #fff;
    }
    .contents_bg .st_menu ul li:last-of-type{
        width: calc((100% / 6) - 2px);
        border-right: 1px solid #fff;
    }
    .contents_bg .st_menu ul li a{
        width: calc(100% - 1rem);
        margin: 0;
        padding: 0.5rem;
        display: block;
        position: relative;
        text-align: center;
        text-decoration: none;
        color: #fff;
        font-size: 1rem;
        line-height: 2rem;
    }
    .contents_bg .st_menu ul li a i{
        margin: 0 0 0 0.5rem;
    }
    .contents_bg .st_menu ul li a:hover{
        background: rgba(255,255,255,0.3);
    }
    
    
    #about_message{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #about_message h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #about_message h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #about_message .text_outer{
        width: 95%;
        margin: 0;
        padding: 1rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #about_message .text_outer p {
        width: 90%;
        margin: 0 5% 2rem 5%;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        color: #333;
        font-family: "Klee One", cursive;
        font-weight: bold;
        font-style: normal;
    }
    #about_message .text_outer p.title{
        font-size: 2rem;
        color: #2048A8;
        text-align: center;
        margin: 5rem 5%;
    }
    #about_message .text_outer p.sign{
        text-align: right;
  font-family: "Zen Kurenaido", sans-serif;
  font-weight: 400;
  font-style: normal;
        font-size: 1.5rem;
        margin: 3rem 5% 2rem 5%;
        letter-spacing: 0.1rem;
    }
    #about_message .text_outer p.sign span{
        margin: 0 0 0 1rem;
    }
    
    
    #about_exam {
        width: 100%;
        margin: 0;
        padding: 3rem 0;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    #about_exam h3 {
        width: 90%;
        margin: 0 auto 4rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam h3 img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam .exam_outer{
        width: calc(90% - 4rem);
        margin: 4rem auto;
        padding: 2rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: center;
        position: relative;
        border-radius: 1rem;
        background: #F0F4FF;
        color: #2048A8;
    }
    #about_exam .exam_outer p{
        width: 49%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #about_exam .exam_outer p.title{
        width: 49%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
    }
    #about_exam .exam_outer p.title span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    #about_exam .exam_outer p.title i{
        margin: 1rem auto;
    }
    #about_exam .exam_outer p.title span.text_a{
        font-weight: bold;
        color: #FABD00;
    }
    #about_exam .exam_point_outer{
        width: 90%;
        margin: 0 auto;
        padding: 2rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        background: #FFF9E8;
    }
    #about_exam .exam_point_outer dl{
        width: 75%;
        margin: 0 auto 4rem auto;
        padding: 0 0 4rem 0;
        display: block;
        position: relative;
        background: #FFF9E8;
    }
    #about_exam .exam_point_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 2rem;
        line-height: 4rem;
        font-weight: bold;
    }
    #about_exam .exam_point_outer dl dt span.number{
        width: 20%;
        margin: 0;
        padding: 0 0 3rem 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        font-weight: normal;
        font-size: 4rem;
        line-height: 4rem;
        color: #FABD00;
    }
    #about_exam .exam_point_outer dl dt span.text{
        width: 80%;
        margin: 0;
        padding: 0 0 3rem 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
    }
    #about_exam .exam_point_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
    }
    #about_exam .exam_point_outer dl dd p{
        width: 80%;
        margin: 0 0 0 20%;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #about_exam .exam_point_outer img{
        width: 22.5%;
        margin: 0 2.5% 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    
    #about_exam .character{
        width: 90%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam .character img{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    #about_exam p.conclusion{
        width: 90%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        font-size: 2rem;
        line-height: 4rem;
        font-weight: bold;
    }
    #about_exam p.conclusion span {
    background: linear-gradient(transparent 70%, #FABD00 30%);
        color: #2048A8;
}
    
    #about_teaching{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: stretch;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #about_teaching h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #about_teaching h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #about_teaching .teaching_outer{
        width: 49%;
        margin: 0;
        padding: 0 0 2rem 0;
        display: flex;
        justify-content: flex-start;
        flex-direction: column;
        position: relative;
        background: #fff;
        box-shadow: 2px 2px 4px #ccc;
    }
    #about_teaching .small1{
        order: 2;
    }
    #about_teaching .one-to-two1{
        order: 3;
    }
    #about_teaching .small2{
        order: 4;
    }
    #about_teaching .one-to-two2{
        order: 5;
    }
    #about_teaching .teaching_outer h4{
        width: 95%;
        margin: 0 0 5rem 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #fff;
        background: #2048A8
    }
    #about_teaching .teaching_outer h4 i{
        font-size: 2.5rem;
        color: #FABD00;
        margin: 0 1rem 0 0;
    }
    
    #about_teaching .teaching_outer ul{
        width: auto;
        max-width: 95%;
        margin: 0 auto 2rem auto;
        padding: 0 2.5%;
        display: block;
        position: relative;
    }
    #about_teaching .teaching_outer ul li{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
    }
    #about_teaching .teaching_outer ul li::before {
        content: "\f14a";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 2rem;
        color: #FABD00;
    }
    #about_teaching .teaching_outer h5{
        width: 95%;
        margin: 3rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #about_teaching .teaching_outer h5::before {
        content: "\f0a6";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    #about_teaching .teaching_outer .point_outer{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #about_teaching .teaching_outer .point_outer dl{
        width: 49%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px solid #2048A8;
    }
    #about_teaching .teaching_outer .point_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    #about_teaching .teaching_outer .point_outer dl dt i{
        font-size: 1.8rem;
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    #about_teaching .teaching_outer .point_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #about_teaching .teaching_outer p.title{
        width: 95%;
        margin: 0 0 2rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
        text-align: center;
    }
    #about_teaching .teaching_outer p.title span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        color: #333;
    }
    #about_teaching .teaching_outer p.title span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    #about_teaching .teaching_outer p.title span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    #about_teaching .teaching_outer p{
        width: 95%;
        margin: 0 0 8rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #about_teaching .teaching_outer a{
        margin: auto auto 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    #about_teaching .teaching_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    #about_support{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #about_support h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #about_support h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #about_support .support_outer{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0 0 2rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        background: #fff;
        box-shadow: 2px 2px 4px #ccc;
    }
    #about_support .support_outer h4{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #fff;
        background: #2048A8
    }
    #about_support .support_outer h4 i{
        font-size: 2.5rem;
        color: #FABD00;
        margin: 0 1rem 0 0;
    }
    #about_support .support_outer h4 span{
        font-weight: normal;
        font-size: 1.2rem;
        margin: 0 0 0 1rem;
    }
    #about_support .support_outer h4 span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    #about_support .support_outer h4 span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    #about_support .support_outer p.title{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    #about_support .support_outer .text_outer{
        width: 60%;
        margin: 0 0 0 2.5%;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_support .support_outer .text_outer p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #about_support .support_outer .text_outer p span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    #about_support .support_outer img{
        width: 32.5%;
        margin: 0 2.5%;
    }
    
    
    
    #curriculum_fee{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #curriculum_fee h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #curriculum_fee h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #curriculum_fee .fee_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #curriculum_fee .fee_outer dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #curriculum_fee .fee_outer dl dt{
        max-width: calc(50% - 2rem);
        margin: 0;
        padding: 0 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        align-items: center;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    #curriculum_fee .fee_outer dl dd{
        max-width: calc(50% - 2rem);
        margin: 0;
        padding: 0 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
    }
    #curriculum_fee .fee_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0 0.5rem;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 3rem;
        font-weight: bold;
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    #curriculum_fee .discount_outer{
        width: 100%;
        margin: 8rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #curriculum_fee .discount_outer h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    #curriculum_fee .discount_outer h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #curriculum_fee .discount_outer dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #curriculum_fee .discount_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #2048A8;
        color: #fff;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
    }
    #curriculum_fee .discount_outer dl dt i{
        margin: 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #curriculum_fee .discount_outer dl dt i:last-of-type{
        margin: 0 1rem 0 0;
    }
    #curriculum_fee .discount_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 2rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #curriculum_fee .discount_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0 0.5rem;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
    }
    #curriculum_fee .discount_outer dl dd p.sub{
        margin: 1rem 0 0 0;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
        color: #2048A8;
    }
    #curriculum_fee .discount_outer dl dd p.free span{
        font-size: 2.5rem;
        line-height: 4rem;
        padding: 0 0.5rem;
    background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    
    
    #curriculum_small{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #curriculum_small h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #curriculum_small h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    .curriculum_point{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_point h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .curriculum_point h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_point dl{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    .curriculum_point dl dt{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #fff;
        background: #2048A8;
    }
    .curriculum_point dl dt i{
        margin: 0 0.5rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_point dl dd{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: left;
    }
    .curriculum_point dl dd p{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
    }
    .curriculum_point .img_outer{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_point .img_outer img{
        width: calc(100% / 2.05);
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .curriculum_content{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_content h4{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .curriculum_content h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_content dl{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .curriculum_content dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .curriculum_content dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .curriculum_content dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .curriculum_content dl dd p{
        width: calc(95% - 1.9rem);
        margin: 1rem auto;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
        text-indent: -1.9rem;
    }
    .curriculum_content dl dd p::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .curriculum_pricelist{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
    }
    .curriculum_pricelist h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .curriculum_pricelist h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_pricelist p.start{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .curriculum_pricelist p.title{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        color: #2048A8;
        font-weight: bold;
    }
    .curriculum_pricelist p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    .pricelist_outer{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #one-to-two_pricelist .pricelist_outer{
        width: 49%;
        align-items: flex-start;
        flex-direction: column;
    }
    .pricelist_outer h5{
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        border-radius: 0.5rem 0.5rem 0 0;
    }
    .pricelist_outer h5.jr{
        background: #FABD00;
    }
    .pricelist_outer h5.h1{
        background: #9FBBFF;
    }
    .pricelist_outer h5.h2{
        background: #3961c1;
        color: #fff;
    }
    .pricelist_outer h5.h3{
        background: #2048A8;
        color: #fff;
    }
    .pricelist_outer table{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
        box-sizing: content-box;
    }
    .pricelist_outer table.small_h2{
        margin: 0 0 3rem 0;
    }
    #one-to-two_pricelist table.one-to-two_jr_1,
    #one-to-two_pricelist table.one-to-two_jr_2{
        border: 2px solid #FABD00;
    }
    #one-to-two_pricelist table.one-to-two_h1_1,
    #one-to-two_pricelist table.one-to-two_h1_2{
        border: 2px solid #9FBBFF;
    }
    .pricelist_outer table.small_h2,
    #one-to-two_pricelist table.one-to-two_h2_1,
    #one-to-two_pricelist table.one-to-two_h2_2{
        border: 2px solid #3961c1;
    }
    .pricelist_outer table.small_h3,
    #one-to-two_pricelist table.one-to-two_h3_1,
    #one-to-two_pricelist table.one-to-two_h3_2{
        border: 2px solid #2048A8;
    }
    #one-to-two_pricelist table:first-of-type{
        border-bottom: none;
    }
    .pricelist_outer table caption{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
    .pricelist_outer table.small_h2 caption{
        background: #3961c1;
        color: #fff;
    }
    .pricelist_outer table.small_h3 caption{
        background: #2048A8;
        color: #fff;
    }
    .pricelist_outer table tbody{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .pricelist_outer table tbody tr{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-top: 1px solid #ccc;
    }
    .pricelist_outer table tbody tr th{
        width: 7rem;
        margin: 0;
        padding: 0.5rem 0.25rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td{
        width: calc(100% - 8rem);
        margin: 0;
        padding: 0.5rem 0.25rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.fees{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        color: #2048A8;
        font-weight: bold;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.materials{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.not{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #one-to-two_pricelist p.materials_info{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: right;
    }
    #one-to-two_pricelist p.materials_info::before{
        content: "\203B";
        margin: 0 0.5rem 0 0;
    }
        
    #curriculum_one-to-two{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #curriculum_one-to-two h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #curriculum_one-to-two h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    
    .curriculum_schedule{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_schedule h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .curriculum_schedule h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_schedule table.schedule{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    .curriculum_schedule table.schedule caption{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        background: #eee;
    }
    .curriculum_schedule table.schedule tbody{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #3961c1;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .curriculum_schedule table.schedule::after{
        content: "\f101";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 2rem;
        line-height: 2rem;
        color: #FABD00;
        position: absolute;
        bottom: 35%;
        right: 0;
        animation: blinking 1s ease-in-out infinite alternate;
    }
    .curriculum_schedule table.schedule tbody::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }
    .curriculum_schedule table.schedule tbody::-webkit-scrollbar-track {
        background: #eee;
    }
    .curriculum_schedule table.schedule tbody::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }

    .curriculum_schedule table.schedule tbody tr{
        width: max-content;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-top: 1px solid #ccc;
    }
    .curriculum_schedule table.schedule tbody tr:first-of-type{
        border: none;
    }
    .curriculum_schedule table.schedule tbody tr th{
        width: 5rem;
        margin: 0;
        padding: 1rem 0.5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #2048A8;
        color: #FABD00;
        flex-shrink: 0;
    }
    .curriculum_schedule table.schedule tbody tr.week td{
        font-weight: bold;
        color: #fff;
        background: #3961c1;
    }
    .curriculum_schedule table.schedule tbody tr.week td:nth-of-type(even){
        background: #2048A8;
    }
    .curriculum_schedule table.schedule tbody tr td{
        width: 10rem;
        margin: 0;
        padding: 1rem 0.25rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        flex-shrink: 0;
    }
    .curriculum_schedule table.schedule tbody tr td:nth-of-type(even){
        background: #F0F4FF;
    }
    .curriculum_schedule p{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    
    #curriculum .text_btn_outer{
        width: 100%;
        margin: 1rem auto 0 auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
    }
    #curriculum .text_btn_outer a{
        padding: 0.25rem 1rem;
        text-decoration: none;
        color: #2048A8;
        font-size: 1.1rem;
        line-height: 1.5rem;
    }
    #curriculum .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    #curriculum .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    
    #season_now{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #season_now h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #season_now h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #season_now p.title{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: normal;
        color: #666;
    }
    #season_now.on p.title{
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    #season_now.on p.title span{
        position: relative;
    }
    #season_now.on p.title span::before{
        content: "\53D7\4ED8\4E2D";
        display: block;
        position: absolute;
        top: -1rem;
        left: -3rem;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #fff;
        background: #f00;
        padding: 0 1rem;
        border-radius: 0.25rem;
        transform: rotateZ(-25deg);
    }
    
    .target_outer,
    .season_now_info,
    .season_now_price,
    .season_now_calendar,
    .season_feature_outer{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .target_outer h4,
    .season_now_info h4,
    .season_now_price h4,
    .season_now_calendar h4,
    .season_feature_outer h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    .target_outer h4 i,
    .season_now_info h4 i,
    .season_now_price h4 i,
    .season_now_calendar h4 i,
    .season_feature_outer h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .target_outer dl{
        width: calc(100% - 4px);
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;;
        border: 2px solid #2048A8;
    }
    .target_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .target_outer dl dd{
        width: 90%;
        margin: 0;
        padding: 1rem 5%;
        display: block;
        position: relative;
    }
    .target_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
    }
    .target_outer p.conclusion{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        text-align: center;
    }
    .target_outer p.conclusion span.marker {
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    #season_now .message_outer{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #season_now .message_outer .message_inner{
        width: 95%;
        margin: 0rem auto;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    #season_now .message_outer .message_inner p {
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.3rem;
        line-height: 3rem;
        font-family: "Klee One", cursive;
        font-style: normal;
    }
    #season_now .message_outer .message_inner p.conclusion{
        text-align: center;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
        font-weight: bold;
    }
    
    .season_now_info dl{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        background: #fff;
        border: 2px solid #2048A8;
    }
    .season_now_info dl dt{
        width: 8rem;
        margin: 0;
        padding: 1rem 0.25rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
        border-bottom: 1px solid #fff;
    }
    .season_now_info dl dd{
        width: calc(100% - 9rem);
        margin: 0;
        padding: 1rem 0.25rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: left;
        border-bottom: 1px solid #ccc;
    }
    .season_now_info dl dt:nth-of-type(4),
    .season_now_info dl dd:nth-of-type(4){
        border: none;
    }
    .season_now_info dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .season_now_info dl dd p.type{
        font-weight: bold;
        color: #2048A8;
        text-align: center;
        font-size: 1.5rem;
    }
    .season_now_info dl dd p span.day{
        font-weight: bold;
        color: #2048A8;
    }
    .season_now_price p{
        width: 100%;
        margin: 0 auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    .season_now_price p strong{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    .season_now_price .price_outer{
        width: calc(100% - 4px);
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        background: #fff;
        border: 2px solid #FABD00;
    }
    .season_now_price .price_outer dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-bottom: 1px solid #ccc;
    }
    .season_now_price .price_outer dl dt{
        width: 8rem;
        margin: 0;
        padding: 0.5rem 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        position: relative;
        background: #FABD00;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        color: #fff;
    }
    .season_now_price .price_outer dl dd{
        width: calc(100% - 12rem);
        margin: 0;
        padding: 0.5rem 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        position: relative;
        background: #fff;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
    }
    .season_now_price .price_outer p{
        width: calc(100% - 2rem - 2px);
        margin: 0;
        padding: 0.25rem 1rem;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .season_now_calendar{
        margin: 0 0 5rem 0;
    }
    .season_now_calendar p{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    .season_now_calendar .calendar_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
    }
    .season_now_calendar .calendar_outer dl{
        width: calc(100% / 3);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: space-between;
        position: relative;
        background: #fff;
    }
    .season_now_calendar .calendar_outer dl:nth-of-type(even){
        background: #F0F4FF;
    }
    .season_now_calendar .calendar_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.25rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
    }
    .season_now_calendar .calendar_outer dl:nth-of-type(even) dt{
        background: #2048A8;
    }
    .season_now_calendar .calendar_outer dl dt span{
        margin: 0 0 0 1rem;
    }
    .season_now_calendar .calendar_outer dl dt span.sat{
        color: #FABD00;
    }
    .season_now_calendar .calendar_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 0.25rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
    }
    .season_now_calendar .calendar_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px dashed #ccc;
        font-size: 1.1rem;
        line-height: 1.8rem;
    }
    .season_now_calendar .calendar_outer dl dd p:last-of-type{
        border: none;
    }
    .season_now_entry{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .season_now_entry a{
        margin: 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .season_now_entry a:hover{
        background: #2048A8;
        color: #fff;
    }
    .season_now_entry a i{
        margin: 0 1rem 0 0;
    }
    .season_now_entry p{
        width: 100%;
        margin: 1rem 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #season_now.not .target_outer,
#season_now.not .message_outer,
#season_now.not .season_now_info,
#season_now.not .season_now_price,
#season_now.not .season_now_calendar{
        display: none;
    }
    
    #season_info{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #season_info h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #season_info h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #season_info .text_outer{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 3rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #season_info .text_outer p {
        width: 90%;
        margin: 0 auto 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.3rem;
        line-height: 3rem;
        font-family: "Klee One", cursive;
        font-style: normal;
    }
    #season_info .message_outer .message_inner p.conclusion{
        text-align: center;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
        font-weight: bold;
    }
    .season_feature_outer dl{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        box-shadow: 2px 2px 4px #ccc;
        background: #fff;
    }
    .season_feature_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
    }
    .season_feature_outer dl dt span{
        font-weight: normal;
        font-size: 1.2rem;
        line-height: 2rem;
        margin: 0 0 0 0.5rem;
    }
    .season_feature_outer dl dt span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    .season_feature_outer dl dt span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    .season_feature_outer dl dt i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 2rem;
    }
    .season_feature_outer dl.spring dt{
        background: #FABD00;
        color: #2048A8;
    }
    .season_feature_outer dl.summer dt{
        background: #e8dd00;
        color: #333;
    }
    .season_feature_outer dl.winter dt{
        background: #2048A8;
        color: #fff;
    }
    .season_feature_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    .season_feature_outer dl dd p{
        width: calc(95% - 1.9rem);
        margin: 1rem auto;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: normal;
        text-indent: -1.9rem;
    }
    .season_feature_outer dl dd p::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .season_feature_outer dl dd.now{
        display: none;
    }
    .season_feature_outer dl.now dd.now{
        display: block;
    }
    .season_feature_outer dl dd.now p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        color: #2048A8;
        font-weight: bold;
        text-indent: 0;
    }
    .season_feature_outer dl dd.now p::before{
        content: "";
        margin: 0;
    }
    .season_feature_outer dl dd.now a{
        margin: 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .season_feature_outer dl dd.now a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    #season_entry{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #2048A8;
    }
    #season_entry h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    #season_entry h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
    }
    #season_entry .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        color: #fff;
        background: #2048A8;
    }
    
    
    
    .admission_entry{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    .admission_entry h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .admission_entry h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
    }
    .admission_entry h3 img{
        width: 83%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_entry .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: block;
        position: relative;
        background: #2048A8;
        border-radius: 0.5rem;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        color: #fff;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #FABD00;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #fff;
    }
    
    #admission_pre{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #admission_pre h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_pre h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #admission_pre p.title{
        width: 80%;
        margin: 0 auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    
    
    #admission_pre dl{
        width: calc(100% - 4px);
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
        border: 2px solid #2048A8;
    }
    #admission_pre dl:last-of-type{
        border: 2px solid #FABD00;
    }
    #admission_pre dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    #admission_pre dl dt span{
        margin: 0 1rem 0 0;
        color: #FABD00;
    }
    #admission_pre dl:last-of-type dt{
        background: #FABD00;
        color: #2048A8;
    }
    #admission_pre dl:last-of-type dt span{
        color: #fff;
    }
    #admission_pre dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    #admission_pre dl dd p{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: normal;
    }
    #admission_pre dl dd p span.marker{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    #admission_pre dl dd ul{
        width: 100%;
        margin: 1rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #admission_pre dl dd ul li{
        width: calc(100% - 1.9rem);
        margin: 0.5rem 0;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        text-indent: -1.9rem;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #admission_pre dl dd ul li::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .admission_pre_entry{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .admission_pre_entry a{
        margin: 0 auto;
        padding: 0.5rem 3rem;
        position: relative;
        text-decoration: none;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_pre_entry a:hover{
        background: #2048A8;
        color: #fff;
    }
    .admission_pre_entry a i{
        margin: 0 1rem 0 0;
    }
    .admission_pre_entry p{
        width: 100%;
        margin: 1rem 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    
    
    #admission_compare{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #admission_compare h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_compare h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    
    #admission_compare .compare_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #admission_compare .compare_outer dl{
        width: calc(100% / 2.05);
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #admission_compare .compare_outer input {
        display: none;
    }
    #admission_compare .compare_outer dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #admission_compare .compare_outer dl label dt{
        width: calc(95% - 2px);
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #fff;
        min-height: 5rem;
    }
    #admission_compare .compare_outer dl label dt i{
        font-size: 1.5rem;
        line-height: 2rem;
        margin: 0 0.5rem 0 0;
    }
    #admission_compare .compare_outer dl.small label dt,
    #admission_compare .compare_outer dl.other label dt{
        border-left: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label dt{
        border-left: 2px solid #FABD00;
    }
    #admission_compare .compare_outer dl label dd{
        width: calc(100% - 2px);
        margin: 0;
        padding: 0.25rem 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        transition: 0.3s;
    }
    #admission_compare .compare_outer dl label dd i{
        margin: 0 0.5rem 0 0;
    }
    #admission_compare .compare_outer dl.other label dd i{
        color: #Ff0;
    }
    #admission_compare .compare_outer dl.small label dd,
    #admission_compare .compare_outer dl.other label dd{
        background: #2048A8;
        color: #fff;
        font-weight: bold;
        border-left: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label dd{
        background: #FABD00;
        color: #2048A8;
        font-weight: bold;
        border-left: 2px solid #FABD00;
    }
    #admission_compare .compare_outer dl.small label:hover dd,
    #admission_compare .compare_outer dl.other label:hover dd{
        background: #fff;
        color: #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label:hover dd{
        background: #fff;
        color: #FABD00;
    }
    #admission_compare .compare_outer dl label dd::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 0;
        font-size: 1.5rem;
        line-height: 2.3rem;
        transition: 0.3s;
    }
    #admission_compare .compare_outer dl input:checked + label dd::after{
        transform: rotate(180deg);
    }
    #admission_compare .compare_outer dl dd.text{
        width: calc(95% - 4px);
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: left;
        border-left: 2px solid transparent;
        border-right: 2px solid transparent;
    }
    #admission_compare .compare_outer dl input:checked + label + dd.text{
        width: calc(95% - 4px);
        max-height: 20rem;
        padding: 1rem 2.5%;
    }
    #admission_compare .compare_outer dl.small input:checked + label + dd.text,
    #admission_compare .compare_outer dl.other input:checked + label + dd.text{
        border-left: 2px solid #2048A8;
        border-right: 2px solid #2048A8;
        border-bottom: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two input:checked + label + dd.text{
        border-left: 2px solid #FABD00;
        border-right: 2px solid #FABD00;
        border-bottom: 2px solid #FABD00;
    }
    
    #admission_compare p.title{
        width: 100%;
        margin: 0 auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    #admission_compare p.title span.marker{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    #admission_compare h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    #admission_compare h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #admission_compare table.cheat_sheet{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #admission_compare table.cheat_sheet tbody{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #3961c1;
    }
    #admission_compare table.cheat_sheet tbody tr{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-top: 1px solid #ccc;
    }
    #admission_compare table.cheat_sheet tbody tr.course{
        border: none;
    }
    #admission_compare table.cheat_sheet tbody tr.course::before{
        content: "";
        display: block;
        position: relative;
        width: 6.5rem;
    }
    #admission_compare table.cheat_sheet tbody tr th{
        width: 6rem;
        margin: 0;
        padding: 1rem 0.25rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        background: #2048A8;
        color: #fff;
    }
    #admission_compare table.cheat_sheet tbody tr.course th{
        width: calc(((100% - 6.5rem) / 2) - 0.5rem);
    }
    #admission_compare table.cheat_sheet tbody tr.course th.one-to-two{
        background: #FABD00;
        color: #2048A8;
    }
    
    .curriculum_schedule table.schedule tbody tr.week td:nth-of-type(even){
        background: #2048A8;
    }
    #admission_compare table.cheat_sheet tbody tr td{
        width: calc(((100% - 6.5rem) / 2) - 0.5rem);
        margin: 0;
        padding: 1rem 0.25rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #admission_compare table.cheat_sheet tbody tr td:nth-of-type(even){
        background: #F0F4FF;
    }
    #admission_compare .text_btn_outer{
        width: 100%;
        margin: 1rem auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
    }
    #admission_compare .text_btn_outer a{
        padding: 0.25rem 1rem;
        text-decoration: none;
        color: #2048A8;
        font-size: 1.1rem;
        line-height: 1.5rem;
    }
    #admission_compare .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    #admission_compare .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    #admission_flow{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #admission_flow h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_flow h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #admission_flow dl{
        width: 100%;
        margin: 0 auto;
        padding: 2rem 0;
        display: block;
        position: relative;
        background: #FFF9E8;
    }
    #admission_flow dl:last-of-type{
        margin: 0 auto 8rem auto;
    }
    #admission_flow dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 2rem;
        line-height: 4rem;
        font-weight: bold;
    }
    #admission_flow dl dt span.number{
        width: 20%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        font-weight: normal;
        font-size: 4rem;
        line-height: 4rem;
        color: #FABD00;
    }
    #admission_flow dl dt span.text{
        width: 80%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
    }
    #admission_flow dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
    }
    #admission_flow dl dd p{
        width: 80%;
        margin: 0 0 0 20%;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    
    #faq{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #faq h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #faq h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #faq .faq_list{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #faq .faq_list dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #faq .faq_list dl input {
        display: none;
    }
    #faq .faq_list dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #faq .faq_list dl label dt{
        width: calc(95% - 1.5rem);
        margin: 0;
        padding: 0.5rem calc(2.5% + 1.5rem) 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #F0F4FF;
        transition: 0.3s;
    }
    #faq .faq_list dl label dt i{
        font-size: 1.5rem;
        line-height: 2rem;
        margin: 0 0.5rem 0 0;
        color: #2048A8;
        transition: 0.3s;
    }
    #faq .faq_list dl label:hover dt{
        background: #2048A8;
        color: #fff;
    }
    #faq .faq_list dl label:hover dt i{
        color: #fff;
    }
    #faq .faq_list dl label dt::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 50%;
        font-size: 1.5rem;
        line-height: 0;
        transition: 0.3s;
    }
    #faq .faq_list dl input:checked + label dt::after{
        transform: rotate(180deg);
    }
    #faq .faq_list dl dd{
        width: 95%;
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
	counter-reset: listnum; /* カウンターをリセット */
	list-style: none; /* 標準のスタイルは消す */
    }
    #faq .faq_list dl dd p{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: left;
    }
    #faq .faq_list dl dd p a{
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
    }
    #faq .faq_list dl dd p a i{
        margin: 0 0 0 0.5rem;
    }
    #faq .faq_list dl dd p a:hover{
        color:#FABD00;
    }
    #faq .faq_list dl dd p.list{
        width: calc(100% - 2rem);
        padding: 0 0 0 2rem;
        text-indent: -2rem;
    }
    #faq .faq_list dl dd p.list::before{
	counter-increment: listnum;
	content: counter(listnum) "."; /* 半角スペースを入れて""の中にピリオドを追加 */
	color: #2048A8;
	vertical-align: middle;
	font-size: 1.5rem;
	font-weight: bold;
        margin: 0 0.5rem 0 0;
}
    #faq .faq_list dl input:checked + label + dd{
        max-height: 500vh;
        padding: 1rem 2.5%;
    }
    #faq .faq_list p.data{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
        font-size: 1rem;
        line-height: 1rem;
    }
    #faq .faq_list p.data::before{
        content: "\203B";
        margin: 0 0.5rem 0 0;
    }
    
    .admission_cta{
        width: 90%;
        margin: 0;
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #2048A8;
    }
    .admission_cta h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    .admission_cta h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
    }
    .admission_cta h3 img{
        width: 83%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_cta .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: block;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    
    #voices_outer{
        width: 90%;
        margin: 3rem 0 0 0; 
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #voices_outer h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #voices_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #voices_outer .voices_pickup{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_pickup dl{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #voices_outer .voices_pickup dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
        color: #2048A8;
    }
    #voices_outer .voices_pickup dl dt span.result{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_pickup dl dt span.year{
        margin: 0 1rem 0 0;
        padding: 0;
        position: relative;
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    #voices_outer .voices_pickup dl dt span.gender{
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    #voices_outer .voices_pickup dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    #voices_outer .voices_pickup dl dd input{
    display: none;
}
    #voices_outer .voices_pickup dl dd .voice_content{
    position: relative;
    max-height: 8rem;
    overflow: hidden;
    transition: max-height 0.4s ease;
}
    #voices_outer .voices_pickup dl dd .voice_content p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "Klee One", cursive;
    }
    #voices_outer .voices_pickup dl dd .voice_content p.note{
        margin: 0 0 1rem 0;
        font-size: 1.1rem;
        line-height: 2rem;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
    }
    #voices_outer .voices_pickup dl dd input:checked ~ .voice_content{
    max-height: 500vh;
}
    #voices_outer .voices_pickup dl dd .voice_content::after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3rem;
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
}
    #voices_outer .voices_pickup dl dd input:checked ~ .voice_content::after{
    display: none;
}
    #voices_outer .voices_pickup dl dd .more_btn{
        margin: 1rem 0 0 0;
        padding: 0.25rem 1rem;
        display: inline-block;
        position: relative;
        font-size: 1.1rem;
        line-height: 1.1rem;
        color: #fff;
        background: #2048A8;
        border-radius: 50vh;
        cursor: pointer;
        transition: 0.3s ease-in-out;
}
    #voices_outer .voices_pickup dl dd .more_btn:hover{
        opacity: 0.6;
    }
    #voices_outer .voices_pickup dl dd input:checked ~ .more_btn{
        background: #FABD00;
    }
    #voices_outer .voices_pickup dl dd .more_btn::before{
    content: "\7D9A\304D\3092\8AAD\3080";
}
    #voices_outer .voices_pickup dl dd input:checked ~ .more_btn::before{
    content: "\9589\3058\308B";
}
    #voices_outer .voices_other{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_other h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
    }
    #voices_outer .voices_other h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #voices_outer .voices_other dl{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_other dl input {
        display: none;
    }
    #voices_outer .voices_other dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #voices_outer .voices_other dl label dt{
        width: calc(95% - 1.5rem);
        margin: 0;
        padding: 0.5rem calc(2.5% + 1.5rem) 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        color: #fff;
        background: #2048A8;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl:nth-of-type(even) label dt{
        background: #4a74d7;
    }
    #voices_outer .voices_other dl label dt span{
        font-size: 1.2rem;
        line-height: 2rem;
        color: #fff;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl label dt span.result{
    font-weight: bold;
    color: #Ff0;
}
    #voices_outer .voices_other dl label dt span.year{
        margin: 0 1rem;
    }
    #voices_outer .voices_other dl label:hover dt{
        background: #fff;
    }
    #voices_outer .voices_other dl label:hover dt span{
        color: #2048A8;
    }
    #voices_outer .voices_other dl label dt::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 50%;
        font-size: 1.5rem;
        line-height: 0;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl input:checked + label dt::after{
        transform: rotate(180deg);
    }
    #voices_outer .voices_other dl dd{
        width: 95%;
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
    }
    #voices_outer .voices_other dl input:checked + label + dd{
        max-height: 500vh;
        padding: 1rem 2.5%;
    }
    #voices_outer .voices_other dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "Klee One", cursive;
    }
    
    
    #access_outer{
        width: 90%;
        margin: 3rem 0 0 0; 
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #access_outer h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #access_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #access_outer .access_inner{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner dl{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        background: #fff;
    }
    #access_outer .access_inner dl dt{
        width: 8rem;
        margin: 0;
        padding: 0.5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-weight: bold;
        border-bottom: 1px solid #ccc;
    }
    #access_outer .access_inner dl dd{
        width: calc(95% - 9rem);
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        border-bottom: 1px solid #ccc;
    }
    #access_outer .access_inner dl dt:last-of-type,
    #access_outer .access_inner dl dd:last-of-type{
        border: none;
    }
    #access_outer .access_inner dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
    }
    #access_outer .access_inner dl dd p span{
        margin: 0 0 0 1rem;
        word-break: keep-all;
    }
    #access_outer .access_inner dl dd ul{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner dl dd ul li{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
    }
    #access_outer .access_inner dl dd ul li::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        color: #333;
        font-size: 0.9rem;
    }
    #access_outer .access_inner dl dd ul li span{
        margin: 0 0 0 1rem;
    }
    #access_outer .access_inner .ggmap {
        width: 100%;
        position: relative;
        margin: 0;
        padding-bottom: 50%;
        padding-top: 0;
        height: 0;
        overflow: hidden;
        border: none !important;
    }
    .ggmap iframe,
    .ggmap object,
    .ggmap embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: none !important;
        -webkit-transition: all 0.7s ease;
        -moz-transition: all 0.7s ease;
        -o-transition: all 0.7s ease;
        transition: all 0.7s ease;
    }
    #access_outer .access_inner .gallery_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner .gallery_outer ul.gallery{
        display: none;
    }
    #access_outer .access_inner .gallery_outer ul.slider{
        width: 100%;
        margin: 5rem 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
    }
    #access_outer .access_inner .gallery_outer ul.slider li{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner .gallery_outer ul.slider li img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .cta_btn_outer{
        width: 100%;
        margin: 8rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: block;
        position: relative;
        background: #2048A8;
        border-radius: 0.5rem;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2.5rem;
        font-weight: bold;
        color: #fff;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #FABD00;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    #contact_outer{
        width: 90%;
        margin: 3rem 0 0 0; 
        padding: 10rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #contact_outer h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #contact_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #contact_outer p.title span.marker{
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    #contact_outer  .form_outer {
        width: calc(100% - 2rem);
        margin: 0;
        padding: 1rem;
        display: block;
        position: relative;
        background: #fff;
    }
    #contact_outer  .form_outer .text_inner {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #contact_outer  .form_outer .text_inner p{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2.5rem;
        text-align: left;
    }
    #contact_outer  .form_outer .text_inner p.title{
        margin: 5rem auto;
        font-size: 1.5rem;
        line-height: 3rem;
        text-align: center;
        font-weight: bold;
        color: #2048A8;
    }
    
    #contact_outer  .form_outer .form_inner{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #contact_outer  .form_outer .form_inner dl{
        width: 49%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px solid #a9a9a9;
    }
    #contact_outer  .form_outer .form_inner dl.checkbox,
    #contact_outer  .form_outer .form_inner dl.wide,
    #contact_outer  .form_outer .form_inner dl.text{
        width: 100%;
    }
    #contact_outer  .form_outer .form_inner dl dt {
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #333;
        text-align: left;
        font-weight: bold;
    }
    #contact_outer  .form_outer .form_inner dl dt.check::before {
        content: "\f00c";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #f00;
    }
    #contact_outer  .form_outer .form_inner dl dd {
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #333;
    }
    #contact_outer .form_outer .form_inner dl dd span{
        max-width: 100%;
        margin: 0 2rem 1rem 0;
        word-break: keep-all;
    }
    #contact_outer .form_outer .form_inner .conditional-area{
        width: calc(100% - 2rem);
        margin: 0;
        padding: 1rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        background: #FFF9E8;
    }
    #contact_outer .form_outer .form_inner .conditional-area p{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2.5rem;
        text-align: center;
        font-weight: bold;
        color: #2048A8;
    }
    
    #contact_outer  .form_outer .form_inner .formbutton {
        width: 100%;
        margin: 3rem 0;
        padding: 0;
        text-align: center;
        display: block;
        position: relative;
    }


    #contact_outer input[type=text],
    #contact_outer input[type=tel] {
        width: calc(100% - 1rem);
        margin: 0;
        padding: 0 0.5rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer select {
        width: 100%;
        margin: 0;
        padding: 0.3rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer textarea {
        width: calc(100% - 1rem);
        height: 10rem;
        margin: 0;
        padding: 0.5rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer input[type=text]:focus,
    #contact_outer textarea:focus {
        border: none;
        background: #fff;
    }


    #contact_outer input[type=checkbox] {
        margin: 0.5rem 0.5rem 0 0;
        position: relative;
        top: 0.2rem;
    }

    #contact_outer input[type=radio] {
        margin: 0.5rem 0.5rem 0 0;
        position: relative;
        top: 0.1rem;
    }



    #contact_outer input[type=file] {
        width: 100%;
        display: block;
        overflow: hidden;
        position: relative;
        padding: 0;
        margin-bottom: 0;
    }


    input[type=submit] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #2048A8;
        border: none;
        color: #ff0;
        font-weight: bold;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    input[type=submit]:hover{
        background: #FABD00;
        color: #2048A8;
    }

    input[type=reset] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #ccc;
        border: none;
        color: #333;
        font-weight: bold;
    }

    input[type=button] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #2048A8;
        border: none;
        color: #ff0;
        font-weight: bold;
    }
    #thanks_outer{
        width: 95%;
        min-height: 100vh;
        margin: 0;
        padding: 15rem 2.5%;
        display: block;
        position: relative;
        background: #F0F4FF;
        text-align: center;
    }
    #thanks_outer h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #thanks_outer h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #thanks_outer .thanks_inner{
        width: calc(100% - 4rem);
        margin: 0 auto;
        padding: 2rem;
        display: block;
        position: relative;
        background: #fff;
    }
    #thanks_outer .thanks_inner p{
        width: 100%;
        margin: 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        text-align: left;
    }
    #thanks_outer .thanks_inner  a{
        margin: 5rem auto 0 auto;
        padding: 0.5rem 2.5%;
        display: inline-block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #fff;
        background: #2048A8;
    }
    #thanks_outer #formWrap{
        width: calc(80% - 4rem);
        margin: 0 auto;
        padding: 2rem;
        display: block;
        position: relative;
        background: #fff;
        text-align: center;
    }
    #thanks_outer #formWrap h3{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: bold;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #thanks_outer #formWrap h4{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: bold;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #f00;
    }
    #thanks_outer #formWrap p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: normal;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #f00;
    }
    #thanks_outer #formWrap table{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #thanks_outer #formWrap table tr{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
    }
    #thanks_outer #formWrap table tr th{
        width: 10rem;
        margin: 0;
        padding: 0.5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
        border-bottom: 1px solid #F0F4FF;
    }
    
    #thanks_outer #formWrap table tr td{
        width: calc(100% - 12rem);
        margin: 0;
        padding: 0.5rem;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: normal;
        text-align: left;
        background: #fff;
        border-bottom: 1px solid #ccc;
    }

    .copyright_area{
        display: none;
    }

    
    /*背面動画
---------------------------------------------------------------------------*/
    .bgmovie {
        position: fixed;
        min-width: calc(100% - 10rem);
        min-height: 100%;
        width: 100%;
        height: auto;
        top: 0;
        left: 0rem;
        right: 0;
        bottom: 0;
        padding: 0;
        overflow: hidden;
        z-index: 0;
        display: block;
    }

    .bgmovie video {
        position: relative;
        z-index: 2;
        display: flex;
        justify-content: center;
        align-items: center;
        display: -ms-flexbox;
        -ms-flex-pack: center;
        -ms-flex-align: center;
        text-align: center;
        margin: auto;
        min-height: 100%;
        min-width: 100%;
        height: auto;
        background-color: #000;
    }

    @media all and (-ms-high-contrast: none) {
        .bgmovie video {
            position: relative;
            z-index: 2;
            display: flex;
            justify-content: center;
            align-items: center;
            display: -ms-flexbox;
            -ms-flex-pack: center;
            -ms-flex-align: center;
            text-align: center;
            margin: auto;
            min-height: 100%;
            min-width: 100%;
            width: 100%;
            height: auto;
            background-color: #000;
        }
    }

    .bgmovie video {
        position: absolute;
        display: block;
    }

    @media (aspect-ratio: 16/9),
    (min-aspect-ratio: 16/9) {
        video {
            width: 100%;
            top: 50%;
            transform: translateY(-50%);
        }
    }

    @media (max-aspect-ratio: 16/9) {
        .bgmovie video {
            height: 100%;
            left: 50%;
            transform: translateX(-50%);
        }
    }




    /*フッター
---------------------------------------------------------------------------*/
    footer {
        width: 100%;
        margin: 0;
        padding: 0;
        font-size: 1rem;
        line-height: 1rem;
        color: #fff;
        text-align: center;
        background: #FABD00;
    }

    footer .footer_menu_outer{
        width: 95%;
        margin: 0;
        padding: 2rem 2.5%;
        display: block;
        position: relative;
        background: #2048A8;
    }
    footer .footer_menu_outer ul {
    width: 90%;
    margin: 0 0 0 5%;
        padding: 0 10rem 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
    box-sizing: border-box;
  }
    footer .footer_menu_outer ul li{
        width: calc((100% / 3) - 1px);
        margin: 0 0 0.25rem 0;
        padding: 0;
        display: block;
        position: relative;
        border-right: 1px solid #fff;
    }
    footer .footer_menu_outer ul li:nth-of-type(1),
    footer .footer_menu_outer ul li:nth-of-type(4),
    footer .footer_menu_outer ul li:nth-of-type(7),
    footer .footer_menu_outer ul li:nth-of-type(10){
        width: calc((100% / 3) - 2px);
        border-left: 1px solid #fff;
    }
    footer .footer_menu_outer ul li a{
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        color: #fff;
        text-decoration: none;
    }


    footer p {
        font-size: 1rem;
        line-height: 1rem;
        margin: 0;
        padding: 0.5rem 0;
    }
    footer p a{
        margin: 0;
        padding: 0;
        position: absolute;
        left: 20%;
        text-decoration: none;
    }

    /*その他
---------------------------------------------------------------------------*/
    .pcnone {
        display: none !important;
    }

    .color1 {
        color: #FF0000;
    }

    .color2 {
        color: #0000FF;
    }

    .color3 {
        color: darkorange;
        font-weight: bold;
    }

    .color4 {
        color: #336699;
    }

    .color5 {
        color: #009edc;
        font-weight: bold;
    }

    .color6 {
        color: #FFFF00;
        font-weight: normal;
    }

    .strong {
        font-weight: bold;
    }

    .br:before {
        content: "\A";
        white-space: pre;
    }

    .pccounter {
        position: relative;
        top: 0rem;
        right: 0%;
        width: 100%;
        text-align: center;
        margin-bottom: 0rem;
        border: none;
        color: #ccc !important;
        z-index: 500;
        display: none;
    }

    .pccounter iframe {
        width: 10rem;
        height: 3rem;
        border: none;
        background: none;
        overflow: hidden;
        vertical-align: bottom;
        background-color: transparent;
        color: #ccc !important;
        z-index: 500;
    }

    .pccounter img {
        position: relative;
        top: 0;
        left: 5%;
    }

    /*戻るボタン
---------------------------------------------------------------------------*/

    .pagetop {
        display: none;
        position: fixed;
        bottom: 1rem;
        right: 0;
        z-index: 100;
        margin: 0;
    }

    .pagetop a {
        width: 10rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        background-color: none;
        text-align: center;
        color: #fff;
        font-size: 2rem;
        text-decoration: none;
        padding: 0.8rem;
        filter: alpha(opacity=50);
        -moz-opacity: 1;
        opacity: 1;
        margin: 0;
        line-height: 0rem;
    }

    .pagetop a:hover {
        opacity: 0.5;
    }
    .pagetop a img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .pagetop a i{
        display: block;
        position: absolute;
        top: 10%;
        margin: auto;
        animation: blinking 1s ease-in-out infinite alternate;
    }
    @keyframes blinking {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}


}



/*===============================================

画面の横幅が600pxまで（スマホ用）

===============================================*/

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

    html {
        height: 100%;
        font-size: 14px;
        line-height: 14px;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }


    body {
        font-family: "ヒラギノ角ゴ Pro W3", メイリオ, Osaka, Arial, Verdana, "ＭＳ Ｐゴシック", sans-serif;
        color: #000;
        margin: 0px;
        padding: 0px;
        text-align: center;
    }


    /*リンクカラー*/
    a {
        color: #002b55;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    /*カーソルオーバー時のリンクカラー*/
    a:hover {
        color: #A51A91;
        text-decoration: none;
        /*下線を消す設定。残したままがいいならこの１行を削除。*/
    }


    a.hover_img2 {
        width: 100%;
        background-color: #fff;
        /*背景に白を設定*/
        display: inline-block;
    }

    a.hover_img2 img {
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    a:hover.hover_img2 img {
        opacity: 0.6;
        filter: alpha(opacity=60);
    }



    a.hover_img3 img {
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }

    a:hover.hover_img3 img {
        opacity: 0.6;
        filter: alpha(opacity=60);
    }


    /*ヘッダー
---------------------------------------------------------------------------*/
    header {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        top: 0;
        left: 0;
        z-index: 100;
    }

    header #h_header_outer{
        width: 100%;
        height: 4rem;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        align-items: center;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 100;
        background: #FFF9E8;
        -webkit-transition: 1s ease-in-out;
        -moz-transition: 1s ease-in-out;
        -o-transition: 1s ease-in-out;
        transition: 1s ease-in-out;
    }
    
    header #h_header_outer h1{
        width: 8rem;
        height: 3rem;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        order: 1;
    }
    header #h_header_outer h1 img{
        max-width: 100%;
        height: 100%;
        margin: 0 auto 0 0;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    header #h_header_outer .menu_btn_outer{
        display: none;
    }
    header #h_header_outer .contact_btn_outer{
        width: calc(100% - 12rem);
        height: 100%;
        margin: 0;
        padding: 0 4rem 0 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        color: #fff;
        background: #2048A8;
        order: 2;
    }
    header #h_header_outer .contact_btn_outer p{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: bold;
        text-align: center;
    }
    
    
    

    #wrapper {
        overflow: hidden;
        height: auto;
        padding: 0;
        display: block;
        -webkit-transition: 1s ease-in-out;
        -moz-transition: 1s ease-in-out;
        -o-transition: 1s ease-in-out;
        transition: 1s ease-in-out;
        opacity: 1;
    }

    #wrapper.openmenu {
        display: block;
    }

    #navTgl:checked ~ .contents {
        -webkit-transform: translateX(250px);
        transform: translateX(250px);
    }

    /* :::::: toggle button :::::: */
    #navTgl {
        display: none;
        overflow: hidden;
    }

    label {
        cursor: pointer;
        position: fixed;
        top: 0;
        right: 0rem;
        text-align: center;
    }

    #wrapper.openmenu label {
        right: 0rem;
    }

    label span {
        display: block;
        font-size: 0.8rem;
    }

    .open {
        z-index: 5000;
        width: 4rem;
        height: 4rem;
        color: #ff0;
        font-size: 2rem;
        line-height: 1rem;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        text-align: center;
        -webkit-transition: background-color .6s, -webkit-transform .6s;
        transition: background-color .6s, transform .6s;
        background: none;
        -moz-transition: all 0.5s;
        -o-transition: all 0.5s;
        -webkit-transition: all 0.5s;
        transition: all 0.5s;
    }

    #navTgl:checked + .open {
        background: none;
        color: #ff0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        text-shadow: 2px 2px 4px #000;
    }


    .close {
        pointer-events: none;
        z-index: 100;
        width: calc(100% + 4rem);
        height: 100%;
        transition: .6s;
    }

    #navTgl:checked ~ .close {
        pointer-events: auto;
        background-color: rgba(0, 0, 0, 0.5);
    }

    /* :::::: drawer menu :::::: */
    #wrapper .menu {
        z-index: 1;
        position: fixed;
        overflow: auto;
        top: 0;
        right: -80%;
        width: 80%;
        height: calc(100% - 4rem);
        margin: 0;
        padding: 5rem 0 0 0;
        -webkit-transform: translateX(0);
        transform: translateX(0);
        -webkit-transition: -webkit-transform .6s;
        transition: transform .6s;
        background: #2048A8;
        z-index: 1000;
        text-align: center;
        color: #fff;
    }
    #wrapper .menu::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }
    #wrapper .menu::-webkit-scrollbar-track {
        background: #eee;
    }
    #wrapper .menu::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }


    #navTgl:checked ~ .menu {
        -webkit-transform: translateX(-100%);
        transform: translateX(-100%);
        margin: 0;
    }
#wrapper .menu .menu_btn_outer{
        width: 95%;
        margin: 0 0 2rem 0;
        padding: 0 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
#wrapper .menu .menu_btn_outer a{
        width: calc(48% - 1rem - 2px);
        margin: 0 0 0.5rem 0;
        padding: 0.5rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        flex-flow: column;
        position: relative;
        border: 1px solid #fff;
        border-radius: 0.5rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
        font-size: 1rem;
        line-height: 1.5rem;
        background: #fff;
    }
#wrapper .menu .menu_btn_outer a span{
        font-weight: normal;
        font-size: 0.9rem;
        line-height: 1.3rem;
    }
#wrapper .menu .menu_btn_outer a img{
        width: 30%;
        margin: 0 auto 0.5rem auto;
        padding: 0;
        display: block;
        position: relative;
    object-fit: contain;
    }
#wrapper .menu .menu_btn_outer a:hover{
        background: #ff0;
        color: #3961c1;
    }
#wrapper .menu .contact_btn_outer{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: center;
    }
#wrapper .menu .contact_btn_outer p{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
#wrapper .menu .contact_btn_outer a{
        width: calc(100% - 1rem);
        margin: 0 0 2rem 0;
        padding: 1rem 0.5rem;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 1.2rem;
        font-weight: bold;
        background: #ff0;
        color: #2048A8;
        border-radius: 0.5rem;
    }
#wrapper .menu .contact_btn_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
#wrapper .menu .contact_btn_outer a i{
        margin: 0 1rem 0 0;
    }
#wrapper .menu .character{
    width: 80%;
    margin: 0 auto;
    padding: 0;
    display: block;
    position: relative;
    }
    
    .modal_wrap input {
        display: none;
    }

    .modal_overlay {
        display: none;
    }

    .modal_trigger {
        display: none;
    }

    .modal_content {
        display: none;
    }

    .close_button {
        display: none;
    }

    .modal_wrap input:checked ~ .modal_overlay {
        display: none;
    }

    .modal_wrap input:checked ~ .modal_overlay .modal_content {
        display: none;
    }


    /*コンテナー
---------------------------------------------------------------------------*/
    #container {
        text-align: left;
        width: 100%;
        margin: 0;
        padding: 0;
        border: none;
        background-color: #fff;
    }



    /*全体を囲むボックス
---------------------------------------------------------------------------*/
    #contents {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }


    /*メインコンテンツ1
---------------------------------------------------------------------------*/

    .news {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .news h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }

    .news h2 span {
        display: block;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }

    .news h2 span::before,
    .news h2 span::after {
        content: "-";
        margin: 0 0.5rem;
    }

    .news .campaign_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news .campaign_outer img{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news .news_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .news dl {
        width: 100%;
        height: 25rem;
        margin: 0 auto;
        padding: 1rem 0;
        display: block;
        position: relative;
        overflow-y: auto;
        background: #fff;
    }

    .news dl::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }

    .news dl::-webkit-scrollbar-track {
        background: #eee;
    }

    .news dl::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }

    .news dl dt {
        width: 95%;
        margin: 0 0 0.5rem 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        font-style: italic;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        text-align: left;
        font-weight: bold;
        border-top: 1px dashed #ccc;
    }
    .news dl dt:first-of-type{
        border: none;
    }

    .news dl dt span {
        background: #2048A8;
        margin: 0 0 0 1rem;
        padding: 0 0.5rem;
        color: #fff;
        font-style: normal;
    }

    .news dl dd {
        width: 95%;
        margin: 0 0 1rem 0;
        padding: 0 2.5% 0.5rem 2.5%;
        text-align: left;
        font-size: 0.9rem;
        line-height: 1.5rem;
    }


    .news dl dd a.lightbox{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .news dl dd a.lightbox:hover{
        opacity: 0.6;
    }
    .news dl dd a.lightbox img{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }

    
    .message {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }

    .message h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .message h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    .message .text_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    .message .text_outer .text_inner{
        width: 80%;
        margin: 2rem auto;
        padding: 0 0 3rem 0;
        display: block;
        position: relative;
    }
    .message .text_outer .text_inner p {
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #2048A8;
        font-family: "Klee One", cursive;
        font-weight: bold;
        font-style: normal;
    }
    .message .text_outer .text_inner a {
        margin: 0;
        padding: 0.25rem 1rem;
        position: absolute;
        right: 0;
        bottom: 0;
        border: 1px solid #2048A8;
        font-size: 1rem;
        line-height: 1.2rem;
        color: #2048A8;
        text-decoration: none;
    }
    .message .text_outer .text_inner a:hover {
        background-color: #2048A8;
        color: #fff;
    }

    
    .message .gallery_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    .message .gallery_outer ul.slider{
        width: 100%!important;
        padding: 0!important;
    margin: 0!important;
    z-index: 0;
    background: none!important;
    position: relative!important;
        text-align: center!important;
    }
    .message .gallery_outer .slider li{
        margin: 0;
        padding: 0;
        display: block;
    position: relative;
        border: none!important;
    }
    .message .gallery_outer .slider li img{
        width: 100%;
        margin: 0!important;
        padding: 0!important;
        display: block!important;
        border: none!important;
        object-fit: cover;
    }

/*左右の矢印*/
    .message .gallery_outer .slider .slick-next {
    display: none!important;
}
    .message .gallery_outer .slider .slick-prev {
    display: none!important;
}
    .message .gallery_outer .slider .slick-dots{
        display: none!important;
        position: relative;
        bottom: -1rem!important;
        margin-top: 0rem!important;
    }

    .point {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .point h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .point h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    .point dl{
        width: calc(100% - 4px);
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .point dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .point dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
    }
    .point dl dd p{
        width: 100%;
        margin: 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .point dl dd p strong{
        color: #c00;
        font-size: 1.2rem;
        font-weight: bold;
    }
    .point p.title {
        width: 100%;
        margin: 3rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    .point p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    
    .courses {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }

    .courses h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .courses h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    
    .courses dl{
        width: calc(100% - 4px);
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .courses dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .courses dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .courses dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .courses dl dd:last-of-type{
        padding: 0rem 2.5% 2rem 2.5%;
    }
    .courses dl dd p{
        width: 95%;
        margin: 3rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1rem;
        line-height: 1.5rem;
        font-weight: normal;
    }
    .courses dl dd p.title{
        width: 100%;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2.5rem;
        margin: 2rem 0;
        font-weight: bold;
    }
    .courses dl dd p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    .courses dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.1rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #FABD00;
        color: #2048A8;
        border-radius: 50vh;
    }
    .courses dl dd a:hover{
        opacity: 0.6;
    }
    
    .season_info {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }

    .season_info h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .season_info h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    .season_info dl{
        width: calc(100% - 4px);
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #999;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
        order: 2;
    }
    .season_info dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #ddd;
        color: #333;
    }
    .season_info dl dt span{
        font-size: 1.1rem;
    }
    .season_info dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .season_info dl dd:last-of-type{
        padding: 0rem 2.5% 2rem 2.5%;
    }
    .season_info dl dd p{
        width: 95%;
        margin: 3rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1rem;
        line-height: 1.5rem;
        font-weight: normal;
    }
    .season_info dl dd p.title{
        width: 100%;
        text-align: center;
        font-size: 1.3rem;
        line-height: 2.5rem;
        margin: 3rem 0;
        font-weight: bold;
    }
    .season_info dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.1rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
        border-radius: 50vh;
    }
    .season_info dl dd a:hover{
        opacity: 0.6;
    }
    .season_info dl.pickup{
        width: calc(100% - 8px);
        margin: 0 0 5rem 0;
        padding: 0 0;
        display: block;
        position: relative;
        border-top: none;
        border-left: 4px solid #FABD00;
        border-right:  4px solid #FABD00;
        border-bottom: none;
        background: #fff;
        border-radius: 0;
        z-index: 10;
        order: 1;
    }
    .season_info dl.pickup::before{
        content: "";
        width: 100%;
        height: 1rem;
        display: block;
        background: #FABD00;
        border: 4px solid #FABD00;
        position: absolute;
        top: -1rem;
        left: -4px;
        z-index: 0;
    }
    .season_info dl.pickup::after{
        content: "";
        width: 100%;
        height: 2rem;
        display: block;
        background: #FABD00;
        border: 4px solid #FABD00;
        position: absolute;
        left: -4px;
        bottom: -2rem;
        border-radius: 0 0 0.5rem 0.5rem;
        z-index: 0;
    }
    .season_info dl.pickup dt{
        padding: 0.5rem 2.5%;
        background: #FABD00;
    }
    .season_info dl.pickup dt span{
        color: #c00;
    }
    .season_info dl.pickup dd a{
        color: #2048A8;
        background: #FABD00;
    }
    
        .voice_pickup {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }

    .voice_pickup h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .voice_pickup h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    .voice_pickup dl{
        width: calc(100% - 4px);
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .voice_pickup dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
        color: #2048A8;
    }
    .voice_pickup dl dt span.result{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .voice_pickup dl dt span.year{
        margin: 0 1rem 0 0;
        padding: 0;
        position: relative;
        color: #333;
        font-size: 1.2rem;
        font-weight: normal;
    }
    .voice_pickup dl dt span.gender{
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    .voice_pickup dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    .voice_pickup dl dd p{
        width: 95%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .voice_pickup dl dd a{
        width: 95%;
        margin: 0 2.5%;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.1rem;
        line-height: 1.5rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
        border-radius: 50vh;
    }
    .voice_pickup dl dd a:hover{
        opacity: 0.6;
    }    
    .voice_pickup .more_btn_outer{
        width: 100%;
        margin: 3rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .voice_pickup .more_btn_outer a{
        width: calc(100% - 1rem);
        margin: 0 auto;
        padding: 0.5rem;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .voice_pickup .more_btn_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    

        .cta {
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #2048A8;
    }

    .cta h2 {
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    .cta h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
    }

    .cta h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        color: #FABD00;
    }
    .cta dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    .cta dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        color: #333;
        border-bottom: 2px solid #2048A8;
    }
    .cta dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .cta dl dd{
        width: 80%;
        margin: 0;
        padding: 2rem 10%;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #333;
        text-align: left;
    }
    .cta .icon_outer{
        width: 100%;
        margin: 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .cta .icon_outer i{
        font-size: 3rem;
        color: #fff;
        transform: rotateZ(90deg);
    }
    .cta .text_btn_outer{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .cta .text_btn_outer a{
        width: 100%;
        margin: 0;
        padding: 0.25rem 0;
        display: block;
        text-decoration: none;
        color: #fff;
        font-size: 1rem;
        line-height: 1.5rem;
    }
    .cta .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    .cta .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    .cta .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    
    .cta .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 1rem);
        margin: 0 auto;
        padding: 1rem 0.5rem;
        display: block;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    .cta .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0 auto;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .cta .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        color: #fff;
        background: #2048A8;
    }
    
    
    
    .contents_bg{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .contents_bg .title_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
    }
    .contents_bg .title_outer img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .contents_bg .title_outer h2{
        width: 100%;
        margin: 0;
        padding: 1rem 2rem;
        display: block;
        position: relative;
        background: rgba(32,72,168,1);
        color: #fff;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        text-align: center;
    }
    .contents_bg .title_outer h2 span{
        display: block;
        font-size: 1rem;
        line-height: 2rem;
        font-style: italic;
    }
    .contents_bg .title_outer h2 span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    .contents_bg .title_outer h2 span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    
    .contents_bg .st_menu{
    position: fixed;
    right: calc(-50% + 2rem);
    width: calc(50% - 2rem);
  top: 4rem;
    background: #2048A8;
    transition: right 1s ease;
    z-index: 999;
    }
  .contents_bg .st_menu.active {
    right: 0;
  }
  .st_menu_toggle {
    position: absolute;
    top: 2.5rem;
    left: -2rem; /* ← メニューの外に出す */
    width: 2rem;
    height: 2.5rem;
    background: #2048A8;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 4px 0 0 4px;
    cursor: pointer;
  }

    .contents_bg .st_menu ul{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
    }
    .contents_bg .st_menu ul li{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        border-bottom: 1px solid #fff;
    }
    .contents_bg .st_menu ul li a{
        width: calc(100% - 1rem);
        margin: 0;
        padding: 0.5rem;
        display: block;
        position: relative;
        text-align: center;
        text-decoration: none;
        color: #fff;
        font-size: 1rem;
        line-height: 1.5rem;
    }
    .contents_bg .st_menu ul li a i{
        margin: 0 0 0 0.5rem;
    }
    .contents_bg .st_menu ul li a:hover{
        background: rgba(255,255,255,0.3);
    }
    
    
    #about_message{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #about_message h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #about_message h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #about_message .text_outer{
        width: 95%;
        margin: 0;
        padding: 1rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #about_message .text_outer p {
        width: 90%;
        margin: 0 5% 1rem 5%;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #333;
        font-family: "Klee One", cursive;
        font-weight: bold;
        font-style: normal;
    }
    #about_message .text_outer p.title{
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
        text-align: center;
        margin: 1rem 5% 3rem 5%;
    }
    #about_message .text_outer p.sign{
        text-align: right;
  font-family: "Zen Kurenaido", sans-serif;
  font-weight: 400;
  font-style: normal;
        font-size: 1.2rem;
        margin: 1rem 5% 0 5%;
        letter-spacing: 0.1rem;
    }
    #about_message .text_outer p.sign span{
        margin: 0;
        display: block;
    }
    
    
    #about_exam {
        width: 100%;
        margin: 0;
        padding: 3rem 0;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    #about_exam h3 {
        width: 90%;
        margin: 0 auto 4rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam h3 img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam .exam_outer{
        width: calc(90% - 2rem);
        margin: 4rem auto;
        padding: 1rem;
        display: block;
        align-items: center;
        position: relative;
        border-radius: 1rem;
        background: #F0F4FF;
        color: #2048A8;
    }
    #about_exam .exam_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    #about_exam .exam_outer p.title{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        align-items: center;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
    }
    #about_exam .exam_outer p.title span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    #about_exam .exam_outer p.title i{
        margin: 0.5rem auto;
        display: block;
        text-align: center
    }
    #about_exam .exam_outer p.title span.text_a{
        font-weight: bold;
        color: #FABD00;
        margin: 0 0 2rem 0;
    }
    #about_exam .exam_point_outer{
        width: 90%;
        margin: 0 auto;
        padding: 1rem 0;
        display: block;
        position: relative;
        background: #FFF9E8;
    }
    #about_exam .exam_point_outer dl{
        width: 100%;
        margin: 0 auto 2rem auto;
        padding: 0 0 1rem 0;
        display: block;
        position: relative;
        background: #FFF9E8;
    }
    #about_exam .exam_point_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
    }
    #about_exam .exam_point_outer dl dt span.number{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        font-weight: normal;
        font-size: 3rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #about_exam .exam_point_outer dl dt span.text{
        width: 100%;
        margin: 0;
        padding: 0 0 2rem 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
    }
    #about_exam .exam_point_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
    }
    #about_exam .exam_point_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    #about_exam .exam_point_outer img{
        width: 95%;
        margin: 0 2.5% 2rem 2.5%;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    
    #about_exam .character{
        width: 90%;
        margin: 2rem auto 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_exam .character img{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
        object-fit: contain;
    }
    #about_exam p.conclusion{
        width: 90%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
    }
    #about_exam p.conclusion span {
    background: linear-gradient(transparent 70%, #FABD00 30%);
        color: #2048A8;
}
    
    #about_teaching{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: stretch;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #about_teaching h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #about_teaching h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #about_teaching .teaching_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        justify-content: flex-start;
        flex-direction: column;
        position: relative;
        background: #fff;
        box-shadow: 2px 2px 4px #ccc;
    }
    #about_teaching .small1{
        order: 2;
    }
    #about_teaching .one-to-two1{
        order: 4;
    }
    #about_teaching .small2{
        order: 3;
        margin: 0 0 5rem 0;
    }
    #about_teaching .one-to-two2{
        order: 5;
    }
    #about_teaching .teaching_outer h4{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #fff;
        background: #2048A8
    }
    #about_teaching .teaching_outer h4 i{
        font-size: 2rem;
        color: #FABD00;
        margin: 0 0.5rem 0 0;
    }
    
    #about_teaching .teaching_outer ul{
        width:  95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
    }
    #about_teaching .teaching_outer ul li{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
    #about_teaching .teaching_outer ul li::before {
        content: "\f14a";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    #about_teaching .teaching_outer h5{
        width: 95%;
        margin: 2rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #about_teaching .teaching_outer h5::before {
        content: "\f0a6";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
        color: #FABD00;
    }
    #about_teaching .teaching_outer .point_outer{
        width: 95%;
        margin: 0 0 3rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
    }
    #about_teaching .teaching_outer .point_outer dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px solid #2048A8;
    }
    #about_teaching .teaching_outer .point_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    #about_teaching .teaching_outer .point_outer dl dt i{
        font-size: 1.8rem;
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    #about_teaching .teaching_outer .point_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    #about_teaching .teaching_outer p.title{
        width: 95%;
        margin: 0 0 1rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
        text-align: center;
    }
    #about_teaching .teaching_outer p.title span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #about_teaching .teaching_outer p.title span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    #about_teaching .teaching_outer p.title span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    #about_teaching .teaching_outer p{
        width: 95%;
        margin: 0 0 1rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    #about_teaching .teaching_outer a{
        width: 90%;
        margin: 3rem auto;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    #about_teaching .teaching_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    #about_support{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #about_support h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #about_support h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #about_support .support_outer{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0 0 2rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        background: #fff;
        box-shadow: 2px 2px 4px #ccc;
    }
    #about_support .support_outer h4{
        width: 95%;
        margin: 0 0 2rem 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #fff;
        background: #2048A8
    }
    #about_support .support_outer h4 i{
        font-size: 2rem;
        color: #FABD00;
        margin: 0 0.5rem 0 0;
    }
    #about_support .support_outer h4 span{
        font-weight: normal;
        font-size: 1rem;
        margin: 0 0 0 0.5rem;
    }
    #about_support .support_outer h4 span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    #about_support .support_outer h4 span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    #about_support .support_outer p.title{
        width: 95%;
        margin: 0 0 2rem 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #about_support .support_outer .text_outer{
        width: 95%;
        margin: 0 2.5%;
        padding: 0;
        display: block;
        position: relative;
    }
    #about_support .support_outer .text_outer p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    #about_support .support_outer .text_outer p span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    #about_support .support_outer img{
        width: 95%;
        margin: 0 2.5%;
    }
    
    
    
    #curriculum_fee{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #curriculum_fee h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #curriculum_fee h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #curriculum_fee .fee_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #curriculum_fee .fee_outer dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #curriculum_fee .fee_outer dl dt{
        max-width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
        color: #2048A8;
    }
    #curriculum_fee .fee_outer dl dd{
        max-width: 100%;
        margin: 1rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #curriculum_fee .fee_outer dl dd p{
        margin: 0;
        padding: 0 0.5rem;
        display: inline-block;
        position: relative;
        font-size: 2.5rem;
        line-height: 3rem;
        font-weight: bold;
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    #curriculum_fee .discount_outer{
        width: 100%;
        margin: 4rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #curriculum_fee .discount_outer h4{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #curriculum_fee .discount_outer h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #curriculum_fee .discount_outer dl{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #curriculum_fee .discount_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #2048A8;
        color: #fff;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
    #curriculum_fee .discount_outer dl dt i{
        margin: 0;
        font-size: 1.8rem;
        line-height: 2rem;
        color: #FABD00;
    }
    #curriculum_fee .discount_outer dl dt i:last-of-type{
        margin: 0 1rem 0 0;
    }
    #curriculum_fee .discount_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #curriculum_fee .discount_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0 0.5rem;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: bold;
    }
    #curriculum_fee .discount_outer dl dd p.sub{
        margin: 1rem 0 0 0;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: normal;
        color: #2048A8;
    }
    #curriculum_fee .discount_outer dl dd p.free span{
        padding: 0 0.5rem;
    background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    
    
    
    
    
    
    #curriculum_small{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #curriculum_small h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #curriculum_small h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    .curriculum_point{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_point h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    .curriculum_point h4 i{
        margin: 0 0.5rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_point dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    .curriculum_point dl dt{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        color: #fff;
        background: #2048A8;
    }
    .curriculum_point dl dt i{
        margin: 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
        display: block;
        text-align: center;
    }
    .curriculum_point dl dd{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        text-align: left;
    }
    .curriculum_point dl dd p{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    .curriculum_point .img_outer{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .curriculum_point .img_outer img{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .curriculum_content{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_content h4{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    .curriculum_content h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_content dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #2048A8;
        background: #fff;
        border-radius: 0 0 0.5rem 0.5rem;
    }
    .curriculum_content dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .curriculum_content dl dt i{
        margin: 0 0.5rem 0 0;
        color: #FABD00;
    }
    .curriculum_content dl dd{
        width: 95%;
        margin: 0;
        padding: 0rem 2.5%;
        display: block;
        position: relative;
    }
    .curriculum_content dl dd p{
        width: calc(100% - 1.9rem);
        margin: 1rem auto;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: normal;
        text-indent: -1.9rem;
    }
    .curriculum_content dl dd p::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .curriculum_pricelist{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
    }
    .curriculum_pricelist h4{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    .curriculum_pricelist h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_pricelist p.start{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: left;
    }
    .curriculum_pricelist p.title{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #2048A8;
        font-weight: bold;
        text-align: left;
    }
    .curriculum_pricelist p.title span.marker {
    background: linear-gradient(transparent 70%, #FABD00 30%);
}
    .pricelist_outer{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #one-to-two_pricelist .pricelist_outer{
        width: 100%;
        align-items: flex-start;
        flex-direction: column;
    }
    .pricelist_outer h5{
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        border-radius: 0.5rem 0.5rem 0 0;
    }
    .pricelist_outer h5.jr{
        background: #FABD00;
    }
    .pricelist_outer h5.h1{
        background: #9FBBFF;
    }
    .pricelist_outer h5.h2{
        background: #3961c1;
        color: #fff;
    }
    .pricelist_outer h5.h3{
        background: #2048A8;
        color: #fff;
    }
    .pricelist_outer table{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
        box-sizing: content-box;
    }
    .pricelist_outer table.small_h2{
        margin: 0 0 3rem 0;
    }
    #one-to-two_pricelist table.one-to-two_jr_1,
    #one-to-two_pricelist table.one-to-two_jr_2{
        border: 2px solid #FABD00;
    }
    #one-to-two_pricelist table.one-to-two_h1_1,
    #one-to-two_pricelist table.one-to-two_h1_2{
        border: 2px solid #9FBBFF;
    }
    .pricelist_outer table.small_h2,
    #one-to-two_pricelist table.one-to-two_h2_1,
    #one-to-two_pricelist table.one-to-two_h2_2{
        border: 2px solid #3961c1;
    }
    .pricelist_outer table.small_h3,
    #one-to-two_pricelist table.one-to-two_h3_1,
    #one-to-two_pricelist table.one-to-two_h3_2{
        border: 2px solid #2048A8;
    }
    #one-to-two_pricelist table:first-of-type{
        border-bottom: none;
    }
    .pricelist_outer table caption{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
    }
    #one-to-two_pricelist table caption::before{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 0rem;
        color: #FABD00;
    }
    .pricelist_outer table.small_h2 caption{
        background: #3961c1;
        color: #fff;
    }
    .pricelist_outer table.small_h3 caption{
        background: #2048A8;
        color: #fff;
    }
    .pricelist_outer table tbody{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .pricelist_outer table tbody tr{
        width: 95%;
        margin: 0;
        padding: 0 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        flex-direction: column;
        position: relative;
        border-top: 1px solid #ccc;
    }
    .pricelist_outer table tbody tr th{
        width: 100%;
        margin: 0;
        padding: 0.5rem 0 0 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    #one-to-two_pricelist table tbody tr th::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    #one-to-two_pricelist table tbody tr th::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    .pricelist_outer table tbody tr td{
        width: 100%;
        margin: 0;
        padding: 0 0 0.5rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.fees{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        color: #2048A8;
        font-weight: bold;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.materials{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    .pricelist_outer table tbody tr td p.not{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #one-to-two_pricelist p.materials_info{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        text-align: left;
    }
    #one-to-two_pricelist p.materials_info::before{
        content: "\203B";
        margin: 0 0.5rem 0 0;
    }
        
    #curriculum_one-to-two{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #curriculum_one-to-two h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #curriculum_one-to-two h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    
    .curriculum_schedule{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .curriculum_schedule h4{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    .curriculum_schedule h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .curriculum_schedule table.schedule{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    .curriculum_schedule table.schedule caption{
        width: 95%;
        margin: 0 0 2rem 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #eee;
    }
    .curriculum_schedule table.schedule tbody{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #3961c1;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    .curriculum_schedule table.schedule::after{
        content: "\f101";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 2rem;
        line-height: 2rem;
        color: #FABD00;
        position: absolute;
        bottom: 35%;
        right: 0;
        animation: blinking 1s ease-in-out infinite alternate;
    }
    .curriculum_schedule table.schedule tbody::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }
    .curriculum_schedule table.schedule tbody::-webkit-scrollbar-track {
        background: #eee;
    }
    .curriculum_schedule table.schedule tbody::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }

    .curriculum_schedule table.schedule tbody tr{
        width: max-content;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-top: 1px solid #ccc;
    }
    .curriculum_schedule table.schedule tbody tr:first-of-type{
        border: none;
    }
    .curriculum_schedule table.schedule tbody tr th{
        width: 5rem;
        margin: 0;
        padding: 0.5rem 0.5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        background: #2048A8;
        color: #FABD00;
        flex-shrink: 0;
    }
    .curriculum_schedule table.schedule tbody tr.week td{
        font-weight: bold;
        color: #fff;
        background: #3961c1;
    }
    .curriculum_schedule table.schedule tbody tr.week td:nth-of-type(even){
        background: #2048A8;
    }
    .curriculum_schedule table.schedule tbody tr td{
        width: 10rem;
        margin: 0;
        padding: 0.5rem 0.25rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        flex-shrink: 0;
    }
    .curriculum_schedule table.schedule tbody tr td:nth-of-type(even){
        background: #F0F4FF;
    }
    .curriculum_schedule p{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    
    #curriculum .text_btn_outer{
        width: 100%;
        margin: 1rem auto 0 auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
    }
    #curriculum .text_btn_outer a{
        padding: 0.25rem 0;
        text-decoration: none;
        color: #2048A8;
        font-size: 1rem;
        line-height: 1.5rem;
    }
    #curriculum .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    #curriculum .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    
    
    #season_now{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #season_now h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
        order: 1;
    }
    #season_now h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #season_now p.title{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 2rem;
        font-weight: normal;
        color: #666;
    }
    #season_now.on p.title{
        font-weight: bold;
        color: #2048A8;
    }
    #season_now.on p.title span{
        position: relative;
    }
    #season_now.on p.title span::before{
        content: "\53D7\4ED8\4E2D";
        display: block;
        position: absolute;
        top: -1.5rem;
        left: -2rem;
        font-size: 0.9rem;
        line-height: 1.5rem;
        color: #fff;
        background: #f00;
        padding: 0 0.5rem;
        border-radius: 0.25rem;
        transform: rotateZ(-25deg);
    }
    
    .target_outer,
    .season_now_info,
    .season_now_price,
    .season_now_calendar,
    .season_feature_outer{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    .target_outer h4,
    .season_now_info h4,
    .season_now_price h4,
    .season_now_calendar h4,
    .season_feature_outer h4{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    .target_outer h4 i,
    .season_now_info h4 i,
    .season_now_price h4 i,
    .season_now_calendar h4 i,
    .season_feature_outer h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    .target_outer dl{
        width: calc(100% - 4px);
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;;
        border: 2px solid #2048A8;
    }
    .target_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .target_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    .target_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
    }
    .target_outer p.conclusion{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        text-align: center;
    }
    .target_outer p.conclusion span.marker {
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    #season_now .message_outer{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #season_now .message_outer .message_inner{
        width: 95%;
        margin: 0rem auto;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
    }
    #season_now .message_outer .message_inner p {
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        font-family: "Klee One", cursive;
        font-style: normal;
    }
    #season_now .message_outer .message_inner p.conclusion{
        text-align: center;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
        font-weight: bold;
    }
    
    .season_now_info dl{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
        border: 2px solid #2048A8;
    }
    .season_now_info dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    .season_now_info dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: left;
    }
    .season_now_info dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    .season_now_info dl dd p.type{
        font-weight: bold;
        color: #2048A8;
        text-align: center;
        font-size: 1.3rem;
    }
    .season_now_info dl dd p span.day{
        font-weight: bold;
        color: #2048A8;
    }
    .season_now_price p{
        width: 100%;
        margin: 0 auto 8rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    .season_now_price p strong{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.25rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    .season_now_price .price_outer{
        width: calc(100% - 4px);
        margin: 0 0 8rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        background: #fff;
        border: 2px solid #FABD00;
    }
    .season_now_price .price_outer dl{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-bottom: 1px solid #ccc;
    }
    .season_now_price .price_outer dl dt{
        width: 8rem;
        margin: 0;
        padding: 0.25rem 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        position: relative;
        background: #FABD00;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        color: #fff;
    }
    .season_now_price .price_outer dl dd{
        width: calc(100% - 12rem);
        margin: 0;
        padding: 0.25rem 1rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        position: relative;
        background: #fff;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
    .season_now_price .price_outer p{
        width: calc(100% - 2rem - 2px);
        margin: 0;
        padding: 0.25rem 1rem;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .season_now_calendar{
        margin: 0 0 3rem 0;
    }
    .season_now_calendar p{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    .season_now_calendar .calendar_outer{
        width: 100%;
        height: 25rem;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
        overflow-y: auto;
        background: #fff;
    }
    .season_now_calendar .calendar_outer::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }
    .season_now_calendar .calendar_outer::-webkit-scrollbar-track {
        background: #eee;
    }
    .season_now_calendar .calendar_outer::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }
    .season_now_calendar .calendar_outer dl{
        width: calc(100% / 2);
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        flex-direction: column;
        justify-content: space-between;
        position: relative;
        background: #fff;
    }
    .season_now_calendar .calendar_outer dl:nth-of-type(even){
        background: #F0F4FF;
    }
    .season_now_calendar .calendar_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.25rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #3961c1;
        color: #fff;
    }
    .season_now_calendar .calendar_outer dl:nth-of-type(even) dt{
        background: #2048A8;
    }
    .season_now_calendar .calendar_outer dl dt span{
        margin: 0 0 0 1rem;
    }
    .season_now_calendar .calendar_outer dl dt span.sat{
        color: #FABD00;
    }
    .season_now_calendar .calendar_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 0.25rem 2.5%;
        display: block;
        position: relative;
        text-align: center;
    }
    .season_now_calendar .calendar_outer dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px dashed #ccc;
        font-size: 1.1rem;
        line-height: 1.8rem;
    }
    .season_now_calendar .calendar_outer dl dd p:last-of-type{
        border: none;
    }
    .season_now_entry{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .season_now_entry a{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 0.5rem 1rem;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .season_now_entry a:hover{
        background: #2048A8;
        color: #fff;
    }
    .season_now_entry a i{
        margin: 0 1rem 0 0;
    }
    .season_now_entry p{
        width: 100%;
        margin: 1rem 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
    }
    #season_now.not .target_outer,
#season_now.not .message_outer,
#season_now.not .season_now_info,
#season_now.not .season_now_price,
#season_now.not .season_now_calendar{
        display: none;
    }
    
    #season_info{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #season_info h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #season_info h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #season_info .text_outer{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 1rem 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
    }
    #season_info .text_outer p {
        width: 90%;
        margin: 0 auto 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
        font-family: "Klee One", cursive;
        font-style: normal;
    }
    #season_info .message_outer .message_inner p.conclusion{
        text-align: center;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
        font-size: 1.5rem;
        line-height: 3rem;
        color: #2048A8;
        font-weight: bold;
    }
    .season_feature_outer dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        box-shadow: 2px 2px 4px #ccc;
        background: #fff;
    }
    .season_feature_outer dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
    }
    .season_feature_outer dl dt span{
        font-weight: normal;
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 0 0 0.5rem;
    }
    .season_feature_outer dl dt span::before{
        content: "\2015";
        margin: 0 0.5rem 0 0;
    }
    .season_feature_outer dl dt span::after{
        content: "\2015";
        margin: 0 0 0 0.5rem;
    }
    .season_feature_outer dl dt i{
        margin: 0 0.5rem 0 0;
        font-size: 1.5rem;
        line-height: 2rem;
    }
    .season_feature_outer dl.spring dt{
        background: #FABD00;
        color: #2048A8;
    }
    .season_feature_outer dl.summer dt{
        background: #e8dd00;
        color: #333;
    }
    .season_feature_outer dl.winter dt{
        background: #2048A8;
        color: #fff;
    }
    .season_feature_outer dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
    }
    .season_feature_outer dl dd p{
        width: calc(95% - 1.9rem);
        margin: 0.5rem auto;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: normal;
        text-indent: -1.9rem;
    }
    .season_feature_outer dl dd p::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .season_feature_outer dl dd.now{
        display: none;
    }
    .season_feature_outer dl.now dd.now{
        display: block;
    }
    .season_feature_outer dl dd.now p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
        color: #2048A8;
        font-weight: bold;
        text-indent: 0;
    }
    .season_feature_outer dl dd.now p::before{
        content: "";
        margin: 0;
    }
    .season_feature_outer dl dd.now a{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 0.5rem 1rem;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .season_feature_outer dl dd.now a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    #season_entry{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #2048A8;
    }
    #season_entry h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    #season_entry h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
    }
    #season_entry .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.8rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #season_entry .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        color: #fff;
        background: #2048A8;
    }
    
    .admission_entry{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #fff;
    }
    .admission_entry h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    .admission_entry h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
    }
    .admission_entry h3 img{
        width: 100%;
        margin: 0 auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_entry .cta_btn_outer{
        width: 100%;
        margin: 3rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: block;
        position: relative;
        background: #2048A8;
        border-radius: 0.5rem;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        color: #fff;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #FABD00;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_entry .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #fff;
    }
    
    #admission_pre{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #admission_pre h3 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_pre h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #admission_pre p.title{
        width: 100%;
        margin: 0 auto 4rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2.5rem;
        text-align: left
    }
    
    
    #admission_pre dl{
        width: calc(100% - 4px);
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
        border: 2px solid #2048A8;
    }
    #admission_pre dl:last-of-type{
        border: 2px solid #FABD00;
    }
    #admission_pre dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        background: #2048A8;
        color: #fff;
    }
    #admission_pre dl dt span{
        margin: 0 1rem 0 0;
        color: #FABD00;
    }
    #admission_pre dl:last-of-type dt{
        background: #FABD00;
        color: #2048A8;
    }
    #admission_pre dl:last-of-type dt span{
        color: #fff;
    }
    #admission_pre dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
    }
    #admission_pre dl dd p{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2.5rem;
        font-weight: normal;
    }
    #admission_pre dl dd p span.marker{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    #admission_pre dl dd ul{
        width: 100%;
        margin: 1rem 0 0 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #admission_pre dl dd ul li{
        width: calc(100% - 1.9rem);
        margin: 0.5rem 0;
        padding: 0 0 0 1.9rem;
        display: block;
        position: relative;
        text-align: left;
        text-indent: -1.9rem;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    #admission_pre dl dd ul li::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #FABD00;
    }
    .admission_pre_entry{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    .admission_pre_entry a{
        width: 95%;
        margin: 0 auto;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
        text-decoration: none;
        font-size: 1.3rem;
        line-height: 2.5rem;
        font-weight: bold;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_pre_entry a:hover{
        background: #2048A8;
        color: #fff;
    }
    .admission_pre_entry a i{
        margin: 0 1rem 0 0;
    }
    .admission_pre_entry p{
        width: 100%;
        margin: 1rem 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: left;
    }
    
    
    #admission_compare{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #admission_compare h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_compare h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    
    #admission_compare .compare_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #admission_compare .compare_outer dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #admission_compare .compare_outer input {
        display: none;
    }
    #admission_compare .compare_outer dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #admission_compare .compare_outer dl label dt{
        width: calc(95% - 2px);
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #fff;
    }
    #admission_compare .compare_outer dl label dt i{
        font-size: 1.5rem;
        line-height: 2rem;
        margin: 0 0.5rem 0 0;
    }
    #admission_compare .compare_outer dl.small label dt,
    #admission_compare .compare_outer dl.other label dt{
        border-left: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label dt{
        border-left: 2px solid #FABD00;
    }
    #admission_compare .compare_outer dl label dd{
        width: calc(100% - 2px);
        margin: 0;
        padding: 0.25rem 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        transition: 0.3s;
    }
    #admission_compare .compare_outer dl label dd i{
        margin: 0 0.5rem 0 0;
    }
    #admission_compare .compare_outer dl.other label dd i{
        color: #Ff0;
    }
    #admission_compare .compare_outer dl.small label dd,
    #admission_compare .compare_outer dl.other label dd{
        background: #2048A8;
        color: #fff;
        font-weight: bold;
        border-left: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label dd{
        background: #FABD00;
        color: #2048A8;
        font-weight: bold;
        border-left: 2px solid #FABD00;
    }
    #admission_compare .compare_outer dl.small label:hover dd,
    #admission_compare .compare_outer dl.other label:hover dd{
        background: #fff;
        color: #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two label:hover dd{
        background: #fff;
        color: #FABD00;
    }
    #admission_compare .compare_outer dl label dd::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 0;
        font-size: 1.5rem;
        line-height: 2.3rem;
        transition: 0.3s;
    }
    #admission_compare .compare_outer dl input:checked + label dd::after{
        transform: rotate(180deg);
    }
    #admission_compare .compare_outer dl dd.text{
        width: calc(95% - 4px);
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: left;
        border-left: 2px solid transparent;
        border-right: 2px solid transparent;
    }
    #admission_compare .compare_outer dl input:checked + label + dd.text{
        width: calc(95% - 4px);
        max-height: 20rem;
        padding: 1rem 2.5%;
    }
    #admission_compare .compare_outer dl.small input:checked + label + dd.text,
    #admission_compare .compare_outer dl.other input:checked + label + dd.text{
        border-left: 2px solid #2048A8;
        border-right: 2px solid #2048A8;
        border-bottom: 2px solid #2048A8;
    }
    #admission_compare .compare_outer dl.one-to-two input:checked + label + dd.text{
        border-left: 2px solid #FABD00;
        border-right: 2px solid #FABD00;
        border-bottom: 2px solid #FABD00;
    }
    
    #admission_compare p.title{
        width: 100%;
        margin: 0 auto 4rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2.5rem;
        text-align: left;
    }
    #admission_compare p.title span.marker{
        color: #2048A8;
        font-weight: bold;
        margin: 0 0.5rem;
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    
    #admission_compare h4{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #admission_compare h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #admission_compare table.cheat_sheet{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #admission_compare table.cheat_sheet tbody{
        width: calc(100% - 4px);
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        border: 2px solid #3961c1;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }
    #admission_compare table.cheat_sheet::after{
        content: "\f101";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 2rem;
        line-height: 2rem;
        color: #FABD00;
        position: absolute;
        bottom: 35%;
        right: 0;
        animation: blinking 1s ease-in-out infinite alternate;
    }
    #admission_compare table.cheat_sheet tbody::-webkit-scrollbar {
        width: 5px;
        height: 5px;
    }
    #admission_compare table.cheat_sheet tbody::-webkit-scrollbar-track {
        background: #eee;
    }
    #admission_compare table.cheat_sheet tbody::-webkit-scrollbar-thumb {
        background: rgba(200, 200, 200, 1);
        border-radius: 2.5px;
    }
    
    
    #admission_compare table.cheat_sheet tbody tr{
        width: max-content;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: space-between;
        position: relative;
        border-top: 1px solid #ccc;
    }
    #admission_compare table.cheat_sheet tbody tr.course{
        border: none;
    }
    #admission_compare table.cheat_sheet tbody tr.course::before{
        content: "";
        display: block;
        position: relative;
        width: 6.5rem;
    }
    #admission_compare table.cheat_sheet tbody tr th{
        width: 6rem;
        margin: 0;
        padding: 0.5rem 0.25rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #2048A8;
        color: #fff;
    }
    #admission_compare table.cheat_sheet tbody tr.course th{
        width: 20rem;
    }
    #admission_compare table.cheat_sheet tbody tr.course th.one-to-two{
        background: #FABD00;
        color: #2048A8;
    }
    
    .curriculum_schedule table.schedule tbody tr.week td:nth-of-type(even){
        background: #2048A8;
    }
    #admission_compare table.cheat_sheet tbody tr td{
        width: 20rem;
        margin: 0;
        padding: 0.5rem 0.25rem;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
    }
    #admission_compare table.cheat_sheet tbody tr td:nth-of-type(even){
        background: #F0F4FF;
    }
    #admission_compare .text_btn_outer{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
    }
    #admission_compare .text_btn_outer a{
        padding: 0.25rem 1rem;
        text-decoration: none;
        color: #2048A8;
        font-size: 1.1rem;
        line-height: 1.5rem;
    }
    #admission_compare .text_btn_outer a i{
        margin: 0 0 0 0.5rem;
    }
    #admission_compare .text_btn_outer a:hover{
        color: #FABD00;
    }
    
    #admission_flow{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #admission_flow h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #admission_flow h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #admission_flow dl{
        width: 100%;
        margin: 0 auto;
        padding: 2rem 0;
        display: block;
        position: relative;
        background: #FFF9E8;
    }
    #admission_flow dl:last-of-type{
        margin: 0 auto 4rem auto;
    }
    #admission_flow dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        text-align: center;
        font-size: 1.5rem;
        line-height: 3rem;
        font-weight: bold;
    }
    #admission_flow dl dt span.number{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        font-weight: normal;
        font-size: 3rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #admission_flow dl dt span.text{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: center;
    }
    #admission_flow dl dd{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        align-items: flex-start;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
    }
    #admission_flow dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.2rem;
        line-height: 3rem;
    }
    
    #faq{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #faq h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #faq h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #faq .faq_list{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        position: relative;
    }
    #faq .faq_list dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #faq .faq_list dl input {
        display: none;
    }
    #faq .faq_list dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #faq .faq_list dl label dt{
        width: calc(95% - 1.5rem);
        margin: 0;
        padding: 0.5rem calc(2.5% + 1.5rem) 0.5rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        font-size: 1.2rem;
        line-height: 2rem;
        background: #F0F4FF;
        transition: 0.3s;
    }
    #faq .faq_list dl label dt i{
        font-size: 1.5rem;
        line-height: 2rem;
        margin: 0 0.5rem 0 0;
        color: #2048A8;
        transition: 0.3s;
    }
    #faq .faq_list dl label:hover dt{
        background: #2048A8;
        color: #fff;
    }
    #faq .faq_list dl label:hover dt i{
        color: #fff;
    }
    #faq .faq_list dl label dt::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 50%;
        font-size: 1.5rem;
        line-height: 0;
        transition: 0.3s;
    }
    #faq .faq_list dl input:checked + label dt::after{
        transform: rotate(180deg);
    }
    #faq .faq_list dl dd{
        width: 95%;
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
	counter-reset: listnum;
	list-style: none;
    }
    #faq .faq_list dl dd p{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 1.8rem;
        text-align: left;
    }
    #faq .faq_list dl dd p a{
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
    }
    #faq .faq_list dl dd p a i{
        margin: 0 0 0 0.5rem;
    }
    #faq .faq_list dl dd p a:hover{
        color:#FABD00;
    }
    #faq .faq_list dl dd p.list{
        width: calc(100% - 2rem);
        padding: 0 0 0 2rem;
        text-indent: -2rem;
    }
    #faq .faq_list dl dd p.list::before{
	counter-increment: listnum;
	content: counter(listnum) ".";
	color: #2048A8;
	vertical-align: middle;
	font-size: 1.5rem;
	font-weight: bold;
        margin: 0 0.5rem 0 0;
}
    #faq .faq_list dl input:checked + label + dd{
        max-height: 500vh;
        padding: 1rem 2.5%;
    }
    #faq .faq_list p.data{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: right;
        font-size: 1rem;
        line-height: 1rem;
    }
    #faq .faq_list p.data::before{
        content: "\203B";
        margin: 0 0.5rem 0 0;
    }
    
    .admission_cta{
        width: 90%;
        margin: 0;
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #2048A8;
    }
    .admission_cta h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #fff;
    }
    .admission_cta h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
    }
    .admission_cta .cta_btn_outer{
        width: 100%;
        margin: 5rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: block;
        position: relative;
        background: #fff;
        border-radius: 0.5rem;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.5rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #2048A8;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    .admission_cta .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    
    #voices_outer{
        width: 90%;
        margin: 0; 
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #voices_outer h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #voices_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #voices_outer .voices_pickup{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_pickup dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        background: #fff;
    }
    #voices_outer .voices_pickup dl dt{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        position: relative;
        text-align: center;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
        color: #2048A8;
    }
    #voices_outer .voices_pickup dl dt span.result{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_pickup dl dt span.year{
        margin: 0 1rem 0 0;
        padding: 0;
        position: relative;
        color: #333;
        font-size: 1.2rem;
        font-weight: normal;
    }
    #voices_outer .voices_pickup dl dt span.gender{
        color: #333;
        font-size: 1.3rem;
        font-weight: normal;
    }
    #voices_outer .voices_pickup dl dd{
        width: 95%;
        margin: 0;
        padding: 0.5rem 2.5%;
        display: block;
        position: relative;
    }
    #voices_outer .voices_pickup dl dd input{
    display: none;
}
    #voices_outer .voices_pickup dl dd .voice_content{
    position: relative;
    max-height: 6rem;
    overflow: hidden;
    transition: max-height 0.4s ease;
}
    #voices_outer .voices_pickup dl dd .voice_content p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: normal;
        font-family: "Klee One", cursive;
    }
    #voices_outer .voices_pickup dl dd .voice_content p.note{
        margin: 0 0 1rem 0;
        font-size: 1.1rem;
        line-height: 2rem;
        font-family: "メイリオ", "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3";
    }
    #voices_outer .voices_pickup dl dd input:checked ~ .voice_content{
    max-height: 500vh;
}
    #voices_outer .voices_pickup dl dd .voice_content::after{
    content: "";
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 3rem;
    background: linear-gradient(to bottom, rgba(255,255,255,0), #fff);
}
    #voices_outer .voices_pickup dl dd input:checked ~ .voice_content::after{
    display: none;
}
    #voices_outer .voices_pickup dl dd .more_btn{
        margin: 0.5rem 0 0 0;
        padding: 0.25rem 1rem;
        display: inline-block;
        position: relative;
        font-size: 1.1rem;
        line-height: 1.1rem;
        color: #fff;
        background: #2048A8;
        border-radius: 50vh;
        cursor: pointer;
        transition: 0.3s ease-in-out;
}
    #voices_outer .voices_pickup dl dd .more_btn:hover{
        opacity: 0.6;
    }
    #voices_outer .voices_pickup dl dd input:checked ~ .more_btn{
        background: #FABD00;
    }
    #voices_outer .voices_pickup dl dd .more_btn::before{
    content: "\7D9A\304D\3092\8AAD\3080";
}
    #voices_outer .voices_pickup dl dd input:checked ~ .more_btn::before{
    content: "\9589\3058\308B";
}
    #voices_outer .voices_other{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_other h4{
        width: 100%;
        margin: 0 0 5rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #voices_outer .voices_other h4 i{
        margin: 0 1rem 0 0;
        font-size: 2rem;
        line-height: 3rem;
        color: #FABD00;
    }
    #voices_outer .voices_other dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #voices_outer .voices_other dl input {
        display: none;
    }
    #voices_outer .voices_other dl label {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        cursor: pointer;
        transition: 0.3s;
        background: #fff;
    }
    #voices_outer .voices_other dl label dt{
        width: calc(95% - 1.5rem);
        margin: 0;
        padding: 0.5rem calc(2.5% + 1.5rem) 0.5rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-weight: bold;
        text-align: left;
        color: #fff;
        background: #2048A8;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl:nth-of-type(even) label dt{
        background: #4a74d7;
    }
    #voices_outer .voices_other dl label dt span{
        font-size: 1.2rem;
        line-height: 2rem;
        color: #fff;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl label dt span.result{
    font-weight: bold;
    color: #Ff0;
        display: block;
        width: 100%;
        text-align: center
}
    #voices_outer .voices_other dl label dt span.year{
        margin: 0 0.5rem 0 0;
    }
    #voices_outer .voices_other dl label:hover dt{
        background: #fff;
    }
    #voices_outer .voices_other dl label:hover dt span{
        color: #2048A8;
    }
    #voices_outer .voices_other dl label dt::after{
        content: "\f0d7";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        position: absolute;
        right: 0.5rem;
        top: 50%;
        font-size: 1.5rem;
        line-height: 0;
        transition: 0.3s;
    }
    #voices_outer .voices_other dl input:checked + label dt::after{
        transform: rotate(180deg);
    }
    #voices_outer .voices_other dl dd{
        width: 95%;
        max-height: 0;
        margin: 0;
        padding: 0 2.5%;
        display: block;
        position: relative;
        overflow: hidden;
        background: #fff;
        transition: all 0.4s ease;
    }
    #voices_outer .voices_other dl input:checked + label + dd{
        max-height: 500vh;
        padding: 1rem 2.5%;
    }
    #voices_outer .voices_other dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: normal;
        font-family: "Klee One", cursive;
    }
    
    
    #access_outer{
        width: 90%;
        margin: 0; 
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #FFF9E8;
    }
    #access_outer h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #access_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #access_outer .access_inner{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner dl{
        width: 100%;
        margin: 0 0 3rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        background: #fff;
    }
    #access_outer .access_inner dl dt{
        width: 95%;
        margin: 0;
        padding: 0.25rem 2.5%;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
        font-weight: bold;
        background: #F0F4FF;
    }
    #access_outer .access_inner dl dd{
        width: 95%;
        margin: 0;
        padding: 0.25rem 2.5%;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
    }
    #access_outer .access_inner dl dd p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
    }
    #access_outer .access_inner dl dd p span{
        word-break: keep-all;
        display: block;
    }
    #access_outer .access_inner dl dd ul{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner dl dd ul li{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        text-align: left;
    }
    #access_outer .access_inner dl dd ul li::before{
        content: "\f111";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        color: #333;
        font-size: 0.9rem;
    }
    #access_outer .access_inner dl dd ul li span{
        margin: 0 0 0 0.5rem;
    }
    #access_outer .access_inner .ggmap {
        width: 100%;
        position: relative;
        margin: 0;
        padding-bottom: 100%;
        padding-top: 0;
        height: 0;
        overflow: hidden;
        border: none !important;
    }
    .ggmap iframe,
    .ggmap object,
    .ggmap embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border: none !important;
        -webkit-transition: all 0.7s ease;
        -moz-transition: all 0.7s ease;
        -o-transition: all 0.7s ease;
        transition: all 0.7s ease;
    }
    #access_outer .access_inner .gallery_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .access_inner .gallery_outer ul.gallery{
        display: none;
    }
    
    #access_outer .access_inner .gallery_outer ul.slider{
        width: 100%!important;
        padding: 0!important;
    margin: 5rem 0!important;
    z-index: 0;
    background: none!important;
    position: relative!important;
        text-align: center!important;
    }
    #access_outer .access_inner .gallery_outer ul.slider li{
        margin: 0;
        padding: 0;
        display: block;
    position: relative;
        border: none!important;
    }
    #access_outer .access_inner .gallery_outer ul.slider li img{
        width: 100%;
        margin: 0!important;
        padding: 0!important;
        display: block!important;
        border: none!important;
        object-fit: cover;
    }

/*左右の矢印*/
    #access_outer .access_inner .gallery_outer ul.slider .slick-next {
    display: none!important;
}
    #access_outer .access_inner .gallery_outer ul.slider .slick-prev {
    display: none!important;
}
    #access_outer .access_inner .gallery_outer ul.slider .slick-dots{
        display: none!important;
    }
    
    
    #access_outer .cta_btn_outer{
        width: 100%;
        margin: 4rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: block;
        position: relative;
        background: #2048A8;
        border-radius: 0.5rem;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer p{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        font-weight: bold;
        color: #fff;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer p.sub{
        font-size: 1rem;
        line-height: 2rem;
        font-weight: normal;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer a{
        width: 100%;
        margin: 0.5rem 0;
        padding: 0;
        display: block;
        position: relative;
        pointer-events: none;
        font-size: 1.5rem;
        line-height: 3rem;
        text-decoration: none;
        font-weight: bold;
        color: #FABD00;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .tel_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer{
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        position: relative;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a{
        width: 95%;
        margin: 0;
        padding: 1rem 2.5%;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #2048A8;
        background: #FABD00;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a i{
        margin: 0 0.5rem 0 0;
    }
    #access_outer .cta_btn_outer .cta_btn_inner .mail_outer a:hover{
        background: #2048A8;
        color: #fff;
    }
    
    
    
    #contact_outer{
        width: 90%;
        margin: 0; 
        padding: 5rem 5%;
        display: block;
        position: relative;
        text-align: center;
        background: #F0F4FF;
    }
    #contact_outer h3 {
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2rem;
        line-height: 3rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #contact_outer h3 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        color: #333;
    }
    #contact_outer p.title span.marker{
        background: linear-gradient(transparent 70%, #FABD00 30%);
    }
    #contact_outer  .form_outer {
        width: calc(100% - 2rem);
        margin: 0;
        padding: 1rem;
        display: block;
        position: relative;
        background: #fff;
    }
    #contact_outer  .form_outer .text_inner {
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #contact_outer  .form_outer .text_inner p{
        width: 100%;
        margin: 1rem auto;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1rem;
        line-height: 2rem;
        text-align: left;
    }
    #contact_outer  .form_outer .text_inner p.title{
        margin: 5rem auto;
        font-size: 1.3rem;
        line-height: 2.5rem;
        text-align: center;
        font-weight: bold;
        color: #2048A8;
    }
    
    #contact_outer  .form_outer .form_inner{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #contact_outer  .form_outer .form_inner dl{
        width: 100%;
        margin: 0 0 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        border-bottom: 1px solid #a9a9a9;
    }
    #contact_outer  .form_outer .form_inner dl.checkbox,
    #contact_outer  .form_outer .form_inner dl.wide,
    #contact_outer  .form_outer .form_inner dl.text{
        width: 100%;
    }
    #contact_outer  .form_outer .form_inner dl dt {
        width: 100%;
        margin: 0;
        padding: 0.5rem 0;
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-start;
        align-items: center;
        position: relative;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #333;
        text-align: left;
        font-weight: bold;
    }
    #contact_outer  .form_outer .form_inner dl dt.check::before {
        content: "\f00c";
        font-weight: 600;
        font-family: "Font Awesome 5 Free";
        margin: 0 0.5rem 0 0;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #f00;
    }
    #contact_outer  .form_outer .form_inner dl dd {
        width: 100%;
        margin: 0;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
        font-size: 1rem;
        line-height: 1.5rem;
        color: #333;
    }
    #contact_outer .form_outer .form_inner dl dd span{
        width: 100%;
        margin: 0 0 0.5rem 0;
        text-align: left;
    }
    #contact_outer .form_outer .form_inner .conditional-area{
        width: calc(100% - 2rem);
        margin: 0;
        padding: 1rem;
        display: block;
        position: relative;
        background: #FFF9E8;
    }
    #contact_outer .form_outer .form_inner .conditional-area p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        text-align: center;
        font-weight: bold;
        color: #2048A8;
    }
    
    #contact_outer  .form_outer .form_inner .formbutton {
        width: 100%;
        margin: 3rem 0;
        padding: 0;
        text-align: center;
        display: block;
        position: relative;
    }


    #contact_outer input[type=text],
    #contact_outer input[type=tel] {
        width: calc(100% - 1rem);
        margin: 0;
        padding: 0 0.5rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer select {
        width: 100%;
        margin: 0;
        padding: 0.3rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer textarea {
        width: calc(100% - 1rem);
        height: 10rem;
        margin: 0;
        padding: 0.5rem;
        line-height: 2rem;
        border-radius: 0;
        -moz-border-radius: 0;
        -webkit-border-radius: 0;
        -o-border-radius: 0;
        -ms-border-radius: 0;
        border: none;
        -moz-box-shadow: none;
        -webkit-box-shadow: none;
        box-shadow: none;
        background: rgba(204, 229, 255, 0.3);
    }

    #contact_outer input[type=text]:focus,
    #contact_outer textarea:focus {
        border: none;
        background: #fff;
    }


    #contact_outer input[type=checkbox] {
        margin: 0.5rem 0.5rem 0 0;
        position: relative;
        top: 0.2rem;
    }

    #contact_outer input[type=radio] {
        margin: 0.5rem 0.5rem 0 0;
        position: relative;
        top: 0.1rem;
    }



    #contact_outer input[type=file] {
        width: 100%;
        display: block;
        overflow: hidden;
        position: relative;
        padding: 0;
        margin-bottom: 0;
    }


    input[type=submit] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #2048A8;
        border: none;
        color: #ff0;
        font-weight: bold;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out;
    }
    input[type=submit]:hover{
        background: #FABD00;
        color: #2048A8;
    }

    input[type=reset] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #ccc;
        border: none;
        color: #333;
        font-weight: bold;
    }

    input[type=button] {
        font-size: 1.1rem;
        line-height: 2rem;
        margin: 0 auto;
        padding: 0.5rem 1rem;
        background: #2048A8;
        border: none;
        color: #ff0;
        font-weight: bold;
    }
    #thanks_outer{
        width: 95%;
        min-height: 100vh;
        margin: 0;
        padding: 15rem 2.5%;
        display: block;
        position: relative;
        background: #F0F4FF;
        text-align: center;
    }
    #thanks_outer h2 {
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 2.5rem;
        line-height: 4rem;
        font-weight: normal;
        font-family: "游明朝", "Yu Mincho", "游明朝体", "YuMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "HiraMinProN-W3", "HGS明朝E", "ＭＳ Ｐ明朝", "MS PMincho", serif;
        color: #2048A8;
    }
    #thanks_outer h2 span{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.3rem;
        line-height: 2.5rem;
        color: #333;
    }
    #thanks_outer .thanks_inner{
        width: calc(100% - 4rem);
        margin: 0 auto;
        padding: 2rem;
        display: block;
        position: relative;
        background: #fff;
    }
    #thanks_outer .thanks_inner p{
        width: 100%;
        margin: 2rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2.5rem;
        text-align: left;
    }
    #thanks_outer .thanks_inner  a{
        margin: 5rem auto 0 auto;
        padding: 0.5rem 2.5%;
        display: inline-block;
        position: relative;
        font-size: 1.2rem;
        line-height: 2rem;
        font-weight: bold;
        text-decoration: none;
        color: #fff;
        background: #2048A8;
    }
    #thanks_outer #formWrap{
        width: calc(100% - 2rem);
        margin: 0 auto;
        padding: 1rem;
        display: block;
        position: relative;
        background: #fff;
        text-align: center;
    }
    #thanks_outer #formWrap h3{
        width: 100%;
        margin: 0 0 8rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: bold;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #2048A8;
    }
    #thanks_outer #formWrap h4{
        width: 100%;
        margin: 0 0 4rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: bold;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #f00;
    }
    #thanks_outer #formWrap p{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
        font-weight: normal;
        font-size: 1.1rem;
        line-height: 2rem;
        color: #f00;
    }
    #thanks_outer #formWrap table{
        width: 100%;
        margin: 3rem auto;
        padding: 0;
        display: block;
        position: relative;
    }
    #thanks_outer #formWrap table tr{
        width: 100%;
        margin: 0 0 1rem 0;
        padding: 0;
        display: block;
        position: relative;
    }
    #thanks_outer #formWrap table tr th{
        width: calc(100% - 0.5rem);
        margin: 0;
        padding: 0.25rem;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: bold;
        background: #F0F4FF;
    }
    
    #thanks_outer #formWrap table tr td{
        width: calc(100% - 0.5rem);
        margin: 0;
        padding: 0.25rem;
        display: block;
        position: relative;
        font-size: 1.1rem;
        line-height: 2rem;
        font-weight: normal;
        text-align: left;
        background: #fff;
        border-bottom: 1px solid #ccc;
    }

    .copyright_area{
        display: none;
    }



    
    /*背面動画
---------------------------------------------------------------------------*/
    .bgmovie {
        position: relative;
        width: 100%;
        padding: 0;
        overflow: hidden;
        z-index: 0;
        display: block;
        margin: 4rem 0 0 0;
    }

    .bgmovie::before {
        content: "";
        display: block;
        padding: 56.25% 0 0 0;
    }

    .bgmovie video {
        position: absolute;
        top: 0;
        z-index: 2;
        display: block;
        margin: auto;
        background-color: #fff;
    }

    @media all and (-ms-high-contrast: none) {
        .bgmovie video {
            position: relative;
            z-index: 2;
            display: flex;
            justify-content: center;
            align-items: center;
            display: -ms-flexbox;
            -ms-flex-pack: center;
            -ms-flex-align: center;
            text-align: center;
            margin: auto;
            min-height: 100%;
            min-width: 100%;
            width: 100%;
            height: auto;
            background-color: #000;
        }
    }

    @media (aspect-ratio: 16/9),
    (min-aspect-ratio: 16/9) {
        video {
            width: 100%;
            top: 50%;
            transform: translateY(-50%);
        }
    }

    @media (max-aspect-ratio: 16/9) {
        .bgmovie video {
            height: 100%;
            left: 50%;
            transform: translateX(-50%);
        }
    }


    .bgmovie .pattern {
        width: 100%;
        height: 100%;
        background: url(images/pattern.png);
        background-size: 8px;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 100;
        display: none;
    }




    /*フッター
---------------------------------------------------------------------------*/
    footer {
        width: 100%;
        margin: 0;
        padding: 0;
        font-size: 1rem;
        line-height: 1rem;
        color: #fff;
        text-align: center;
        background: #FABD00;
    }

    footer .footer_menu_outer{
        width: 95%;
        margin: 0;
        padding: 2rem 2.5%;
        display: block;
        position: relative;
        background: #2048A8;
    }
    footer .footer_menu_outer ul {
    width: 90%;
    margin: 0 5% 4rem 5%;
        padding: 0;
        display: flex;
        flex-wrap: wrap;
        justify-content: flex-start;
        position: relative;
  }
    footer .footer_menu_outer ul li{
        width: calc((100% / 2) - 1px);
        margin: 0 0 0.25rem 0;
        padding: 0;
        display: block;
        position: relative;
        border-right: 1px solid #fff;
    }
    footer .footer_menu_outer ul li:nth-of-type(odd){
        width: calc((100% / 2) - 2px);
        border-left: 1px solid #fff;
    }
    footer .footer_menu_outer ul li a{
        width: 100%;
        margin: 0;
        padding: 0.25rem 0;
        display: block;
        position: relative;
        color: #fff;
        text-decoration: none;
        font-size: 0.9rem;
    }


    footer p {
        font-size: 1rem;
        line-height: 1rem;
        margin: 0;
        padding: 0.5rem 0;
    }
    footer p a{
        margin: 0;
        padding: 0;
        position: absolute;
        left: 20%;
        text-decoration: none;
    }
    /*その他
---------------------------------------------------------------------------*/
    .spnone {
        display: none !important;
    }

    .color1 {
        color: #FF0000;
    }

    .color2 {
        color: #0000FF;
    }

    .color3 {
        color: darkorange;
        font-weight: bold;
    }

    .color4 {
        color: #336699;
    }

    .color5 {
        color: #009edc;
        font-weight: bold;
    }

    .color6 {
        color: #FFFF00;
        font-weight: normal;
    }

    .strong {
        font-weight: bold;
    }

    .look {
        background-color: #E4E4E4;
    }

    .mb1em {
        margin-bottom: 1em;
    }

    .clear {
        clear: both;
    }

    .clear hr {
        display: none;
    }

    .clearsp {
        display: none;
    }

    .br01 {
        margin-bottom: 1rem;
        clear: both;
    }

    .br01 hr {
        display: none;
    }


    .br03 {
        margin-bottom: 3rem;
        clear: both;
    }

    .br03 hr {
        display: none;
    }


    .pcbr03 {
        margin-bottom: 3rem;
        clear: both;
    }

    .pcbr03 hr {
        display: none;
    }


    .spbr03 {
        display: none;
    }

    .spbr03 hr {
        display: none;
    }


    .br-03 {
        margin-bottom: -3rem !important;
        clear: both;
    }

    .br-03 hr {
        display: none;
    }

    .br06 {
        margin-bottom: 6rem;
        clear: both;
    }

    .br06 hr {
        display: none;
    }

    .br40 {
        margin-bottom: 40rem;
        clear: both;
    }

    .br40 hr {
        display: none;
    }

    span.no-robots-2 {
        display: none;
    }

    .br:before {
        content: "\A";
        white-space: pre;
    }

    .pccounter {
        position: relative;
        top: 0rem;
        left: 0;
        width: 100%;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 0px;
        border: none;
        color: #333;
        display: none;
    }

    .pccounter iframe {
        width: 100%;
        height: 3rem;
        border: none;
        background: none;
        overflow: hidden;
        vertical-align: bottom;
        background-color: transparent;
    }

    .pccounter img {
        position: relative;
        top: 0;
        left: 5%;
    }


    /*戻るボタン
---------------------------------------------------------------------------*/

     .pagetop {
        display: none;
        position: fixed;
        bottom: 1rem;
        right: 0;
        z-index: 100;
        margin: 0;
    }

    .pagetop a {
        width: 5rem;
        display: flex;
        flex-wrap: nowrap;
        justify-content: center;
        align-items: center;
        background-color: none;
        text-align: center;
        color: #fff;
        font-size: 1.5rem;
        text-decoration: none;
        padding: 0.8rem;
        filter: alpha(opacity=50);
        -moz-opacity: 1;
        opacity: 1;
        margin: 0;
        line-height: 0rem;
    }

    .pagetop a:hover {
        opacity: 0.5;
    }
    .pagetop a img{
        width: 100%;
        margin: 0;
        padding: 0;
        display: block;
        position: relative;
    }
    .pagetop a i{
        display: block;
        position: absolute;
        top: 10%;
        margin: auto;
        animation: blinking 1s ease-in-out infinite alternate;
    }
    @keyframes blinking {
  0%   { opacity: 0; }
  100% { opacity: 1; }
}

}