:root{
    --linkc: #639af6;
    --juniorc: #2f9344;
    --highc: #17214c;
    --clubc: #294aa0;
}

.wrapper{
    max-width: 988px;
    margin: 0 auto;
}

.pc{
    display: block;
}

.sp{
    display: none;
}

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

    .pc{
        display: none;
    }

    .sp{
        display: block;
    }

}

/*****************
header
*****************/

/* businesspresscss 上書き */
.main-header{
    padding: 15px 0 15px;
}

.main-navigation{
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

.site-header{
    background: #fff;
}

/* 追加 */
.header_tiitle .caption{
    display: block;
    font-size: 12px;
    margin-top: -10px;
}
.header_tiitle h1{
    margin: 10px 0 0 0;
}

.header_tiitle h1 a{
    display: block;
    width: 257px;
    height: 37px;
    overflow: hidden;
    background-image: url(images/common/logo.png);
    background-repeat: no-repeat;
    background-size: contain;
    text-indent: -9999px;
}


.header_sub{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: flex-end;
    -webkit-box-pack: flex-end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    list-style: none;
    margin: 0 0 5px;
}

.header_sub_sp{
    display: block;
    margin-top: -30px;
}

.header_sub li{
    margin-left: 25px;
}

.header_sub_sp li{
    padding: 10px 0 !important;
}

.header_sub li a, .header_sub_sp li a{
    color: #000;
    text-decoration: none;
    font-size: 13px;
}


a.sub01{
    display: block;
    padding-left: 21px;
    background-image: url(images/common/icon_out.png);
    background-repeat: no-repeat;
    background-size: 17px;
    background-position: 0 2px;
}

a.sub02{
    display: block;
    padding-left: 21px;
    background-image: url(images/common/icon_book.png);
    background-repeat: no-repeat;
    background-size: 17px;
    background-position: 0 2px;
}

a.sub03{
    display: block;
    padding-left: 21px;
    background-image: url(images/common/icon_geo.png);
    background-repeat: no-repeat;
    background-size: 17px;
    background-position: 0 2px;
}

a.sub04{
    display: block;
    padding-left: 21px;
    background-image: url(images/common/icon_en.png);
    background-repeat: no-repeat;
    background-size: 17px;
    background-position: 0 2px;
}

@media screen and (max-width: 1100px){
    .main-header{
        padding: 15px 0 15px;
    }

    .header_tiitle .caption{
        display: none;
    }

    .header_options{
        display: none;
    }

    .header_tiitle h1{
        margin: 0;
    }

    .header_tiitle h1 a{
        display: block;
        width: 230px;
        height: 33px;
        overflow: hidden;
        background-image: url(images/common/logo.png);
        background-repeat: no-repeat;
        background-size: contain;
        text-indent: -9999px;
    }
}

/*****************
footer
*****************/

.footer_inq a{
    display: block;
    text-decoration: none;
    color: #000000;
    text-align: center;
    background: #dce1e8;
    font-size: 21px;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    padding: 20px 0;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.footer_inq a:hover{
    background: #eee;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.footer_inq a:before{
    content: "";
    width: 45px;
    height: 30px;
    background-image: url(images/common/footer_mail.png);
    background-repeat: no-repeat;
    background-size: contain;
    display: inline-block;
    vertical-align: -7px;
    margin-right: 15px;
}


.footer_sitemap{
    padding-top: 40px;
    color: #000;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.footer_sitemap .item{
    flex-basis: 24%;
}

.footer_sitemap .item a{
    color: #000;
    text-decoration: none;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.footer_sitemap .item a:hover{
    color: var(--linkc);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.footer_sitemap .item .primary{
    display: block;
    font-size: 16px;
    font-weight: bold;
    margin-bottom: 5px;
}

.footer_sitemap .item a.primary{
    margin-bottom: 20px;
}

.footer_sitemap .item a.primary:after{
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    display: inline-block;
    margin-left: 10px;
}

.footer_sitemap .item a.outlink:after{
    content: "\f24d";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    display: inline-block;
    margin-left: 10px;
}

.footer_sitemap .item .secondary{
    display: block;
    font-size: 14px;
    font-weight: bold;
    margin-bottom: 5px;
}

.footer_sitemap .item a.tertiary:after{
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    display: inline-block;
    margin-left: 10px;
}


.footer_sitemap .item ul{
    list-style: none;
    margin: 0 0 20px;
    padding: 0;
}

.footer_sitemap .item ul li{
    line-height: 1.2em !important;
}

.footer_sitemap .item ul li a{
    font-size: 12px;
    font-weight: bold;
}

.footer_btn{
    padding: 30px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.footer_btn .item{
    flex-basis: 48%;
}

.footer_btn .item a{
    position: relative;
    font-size: 16px;
    font-weight: bold;
    display: block;
    padding: 10px 20px;
    background: #fff;
    color: #18204e;
    border: 1px solid #18204e;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.footer_btn .item a:after{
    position: absolute;
    top: 50%;
    right: 20px;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.footer_btn .item a:hover{
    background: #18204e;
    color: #fff;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.footerbody{
    background: #17214c;
    color: #fff;
}

.footerbody address{
    margin: 0;
    border-top: 1px solid #535975;
    font-size: 10px;
    color: #535975;
    padding: 20px 0;
    display: block;
    text-align: center;
}

.footerbody .layout{
    padding: 30px 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.footerbody .layout .item:nth-of-type(1){
    flex-basis: 30%;
}

.footerbody .layout .item:nth-of-type(1) .footer_logo img{
    max-width: 220px;
    height: auto;
    margin-bottom: 20px;
}

.footerbody .layout .item:nth-of-type(1) p{
    color: #fff;
    font-size: 14px;
    line-height: 1.6em;
    margin: 0;
    padding: 0;
}

.footerbody .layout .item:nth-of-type(2){
    flex-basis: 60%;
}

.footerbody .layout .item:nth-of-type(2) a{
    font-size: 12px;
    color: #fff;
    text-decoration: none;
    white-space: nowrap;
}

.footerbody .layout .item:nth-of-type(2) a:after{
    content: "｜";
    display: inline-block;
    margin: 0 5px;
}

.footerbody .layout .item:nth-of-type(2) a:hover{
    text-decoration: underline;
}


@media screen and (max-width: 980px){
    .footer_inq a{
        font-size: 18px;
        padding: 15px 0;
    }

    .footer_inq a:before{
        content: "";
        width: 35px;
        height: 20px;
        vertical-align: -5px;
        margin-right: 10px;
    }


    .footer_sitemap{
        padding-top: 20px;
        color: #000;
        display: block;
    }

    .footer_sitemap .item{
        display: none;
    }

    .footer_sitemap .item:nth-of-type(1){
        display: block;
        padding: 0 5%;
    }

    .footer_sitemap .item .primary{
        font-size: 14px;
        margin-bottom: 5px;
    }

    .footer_sitemap .item a.primary{
        margin-bottom: 10px;
    }

    .footer_btn{
        padding: 10px 5%;
        display: block;
    }

    .footer_btn .item{
        margin-bottom: 10px;
    }

    .footer_btn .item a{
        font-size: 14px;
    }

    .footerbody{
        background: #17214c;
        color: #fff;
    }

    .footerbody address{
        padding: 10px 0;
    }

    .footerbody .layout{
        padding: 30px 5%;
        display: block;
    }

    .footerbody .layout .item:nth-of-type(1) .footer_logo img{
        max-width: 200px;
    }

    .footerbody .layout .item:nth-of-type(1) p{
        font-size: 12px;
    }

    .footerbody .layout .item:nth-of-type(2){
        display: none;
    }

}

/*****************
bxslider_custom
*****************/
.bx-wrapper{
    box-shadow: none !important;
    border: 0 !important;
    background: none !important;
}

.home main{
    margin-top: -65px;
    position: relative;
    z-index: 0;
}

.home main img{
    width: 100vw;
    height: auto;
}


.entype{
    font-size: 40px;
    font-family: 'Arapey', serif;
}


/*****************
home
*****************/

#top_news .layout{
    padding-bottom: 80px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

#top_news .layout .item:nth-of-type(1){
    flex-basis: 68%;
}

#top_news .layout .item:nth-of-type(2){
    flex-basis: 25%;
}

/* top_leftside */
.top_news_list p{
    margin: 0;
    margin-bottom: 20px;
}

.top_news_list ul{
    list-style: none;
    padding: 0;
    margin: 0 0 30px;
}

.top_news_list ul li a{
    display: block;
    position: relative;
    padding: 12px 30px 12px 0;
    text-decoration: none;
    color: #000;
    border-bottom: 1px solid #ccc;
}

.top_news_list ul li a:after{
    font-size: 13px;
    color: #ccc;
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.top_news_list ul li a .date{
    color: #ccc;
    font-size: 14px;
}

.top_news_list ul li a span.high{
    margin-left: 10px;
    display: inline-block;
    font-size: 12px;
    text-align: center;
    min-width: 80px;
    background: #294aa0;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.top_news_list ul li a span.junior{
    margin-left: 10px;
    display: inline-block;
    font-size: 12px;
    text-align: center;
    min-width: 80px;
    background: #2f9344;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.top_news_list ul li a span.title{
    font-size: 14px;
    display: block;
    padding-top: 3px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.top_news_list ul li a:hover span.title{
    color: var(--linkc);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.top_news_list .link_btn{
    text-align: right;
}

.top_news_list .link_btn a{
    display: inline-block;
    font-size: 14px;
    color: #000;
    padding: 15px 30px;
    border: 1px solid #17214c;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.top_news_list .link_btn a:hover{
    background: #17214c;
    color: #fff;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.top_news_list .link_btn a:before{
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    display: inline-block;
    margin-right: 10px;
}

/* top_rightside */
#top_news .layout .item:nth-of-type(2) .skyview{
    margin-bottom: 30px;
}

#top_news .layout .item:nth-of-type(2) .skyview a{
    position: relative;
    display: block;
    background: #87c7e1;
    color: #fff;
    text-align: center;
    text-decoration: none;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.4em;
    padding: 10px 10px 30px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_news .layout .item:nth-of-type(2) .skyview a:hover{
    opacity: 0.7;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;

}

#top_news .layout .item:nth-of-type(2) .skyview a:after{
    content: "";
    width: 23px;
    height: 9px;
    background-image: url(images/common/arrow_w.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 15px;
    right: 15px;
}

#top_news .layout .item:nth-of-type(2) .skyview a img{
    width: 100%;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    margin-bottom: 15px;
}

#top_news .layout .item:nth-of-type(2) .top_bloglink{
    text-align: center;
    margin-bottom: 30px;
}

#top_news .layout .item:nth-of-type(2) .top_bloglink p{
    text-align: left;
    font-size: 20px;
    padding: 5px 0 5px 15px;
    margin: 0 0 10px;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    border-left: 3px solid #17214c;
    border-bottom: 1px solid #17214c;
}

#top_news .layout .item:nth-of-type(2) .top_bloglink a{
    color: #000;
    font-size: 14px;
    font-weight: bold;
}

#top_news .layout .item:nth-of-type(2) .top_bloglink a:hover{
    color: var(--linkc);
}

#top_news .layout .item:nth-of-type(2) .top_bloglink a:after{
    content: "\f24d";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    display: inline-block;
    margin-left: 10px;
}

#top_news .layout .item:nth-of-type(2) .top_bloglink_layout{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

#top_news .layout .item:nth-of-type(2) .top_bloglink_layout span{
    width: 15px;
    margin: 0 20px;
}

#top_news .layout .item:nth-of-type(2) .top_links_w, #top_news .layout .item:nth-of-type(2) .top_links_b{
    list-style: none;
    margin: 0;
    padding: 0;
}

#top_news .layout .item:nth-of-type(2) .top_links_w a{
    position: relative;
    font-size: 16px;
    font-weight: bold;
    display: block;
    padding: 10px 15px;
    margin-bottom: 10px;
    background: #fff;
    color: #18204e;
    border: 1px solid #18204e;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_news .layout .item:nth-of-type(2) .top_links_w a:after{
    position: absolute;
    top: 50%;
    right: 10px;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#top_news .layout .item:nth-of-type(2) .top_links_w a:hover{
    background: #18204e;
    color: #fff;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_news .layout .item:nth-of-type(2) .top_links_b a{
    position: relative;
    font-size: 16px;
    font-weight: bold;
    display: block;
    padding: 10px 15px;
    margin-bottom: 10px;
    background: #18204e;
    color: #fff;
    border: 1px solid #18204e;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_news .layout .item:nth-of-type(2) .top_links_b a:after{
    position: absolute;
    top: 50%;
    right: 10px;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#top_news .layout .item:nth-of-type(2) .top_links_b a:hover{
    opacity: 0.7;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}


@media screen and (max-width: 782px){
    .entype{
        font-size: 32px;
    }

    #top_news .layout{
        display: block;
        padding: 0 5% 60px;
    }

    #top_news .layout .item:nth-of-type(1){
        margin-bottom: 30px;
    }

    /* top_leftside */
    .top_news_list ul li a .date{
        color: #ccc;
        font-size: 12px;
    }

    .top_news_list ul li a span.high{
        margin-left: 5px;
        font-size: 11px;
    }

    .top_news_list ul li a span.junior{
        margin-left: 5px;
        font-size: 11px;
    }

    .top_news_list ul li a span.title{
        font-size: 13px;
    }

    .top_news_list .link_btn a{
        display: inline-block;
        padding: 10px 30px;
    }

    /* top_rightside */
    #top_news .layout .item:nth-of-type(2) .skyview a{
        font-size: 16px;
    }

}


/* top_exam */

#top_exam{
    padding-bottom: 100px;
}

#top_exam .top_exam_title{
    text-align: center;
    font-size: 36px;
    letter-spacing: .1em;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    margin-bottom: 30px;
}

#top_exam .layout, #top_exam .layout_btn{
    padding-top: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

#top_exam .layout, #top_exam .layout_btn .item{
    flex-basis: 49%;
}

#top_exam .layout .item:nth-of-type(1){
    position: relative;
    flex-basis: calc(49% - 30px);
    padding: 0 15px 20px;
    background: #ecf4e8;
}

#top_exam .layout .item:nth-of-type(2){
    position: relative;
    flex-basis: calc(49% - 30px);
    padding: 0 15px 20px;
    background: #e7e9f2;
}

#top_exam .layout .item:nth-of-type(1) .title{
    padding-top: 40px;
    font-size: 18px;
    font-weight: bold;
    color: #153a02;
    display: block;
}

#top_exam .layout .item:nth-of-type(2) .title{
    padding-top: 40px;
    font-size: 18px;
    font-weight: bold;
    color: #18214d;
    display: block;
}

#top_exam .layout .item span.high{
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    font-size: 16px;
    text-align: center;
    min-width: 80px;
    background: #294aa0;
    color: #fff;
}

#top_exam .layout .item span.junior{
    position: absolute;
    top: 0;
    left: 0;
    display: inline-block;
    font-size: 16px;
    text-align: center;
    min-width: 80px;
    background: #2f9344;
    color: #fff;
}

#top_exam .layout .item ul{
    list-style: none;
    margin: 0;
    padding-top: 15px;
    margin-bottom: 20px;
}

#top_exam .layout .item ul li{
    margin-bottom: 5px;
}

#top_exam .layout .item ul li a{
    display: block;
    position: relative;
    text-decoration: none;
    background: #fff;
    color: #000;
    padding: 15px;
    font-size: 14px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;

}

#top_exam .layout .item ul li a:hover{
    opacity: 0.7;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;

}

#top_exam .layout .item ul li a:after{
    font-size: 13px;
    color: #ccc;
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#top_exam .layout .item .link_btn{
    text-align: right;
    display: block;
}

#top_exam .layout .item .link_btn a{
    display: inline-block;
    font-size: 14px;
    color: #000;
    padding: 10px 30px;
    border: 1px solid #17214c;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_exam .layout .item .link_btn a:hover{
    background: #17214c;
    color: #fff;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_exam .layout .item .link_btn a:before{
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    display: inline-block;
    margin-right: 10px;
}

#top_exam .layout .item .link_btn_o{
    padding-top: 20px;
}

#top_exam a.exam_link_junior{
    position: relative;
    font-size: 16px;
    font-weight: bold;
    display: block;
    padding: 15px 20px;
    margin-bottom: 10px;
    background: #2f9344;
    color: #fff;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_exam a.exam_link_junior:after{
    position: absolute;
    top: 50%;
    right: 10px;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#top_exam a.exam_link_junior:hover{
    opacity: 0.7;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_exam a.exam_link_high{
    position: relative;
    font-size: 16px;
    font-weight: bold;
    display: block;
    padding: 15px 20px;
    margin-bottom: 10px;
    background: #294aa0;
    color: #fff;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_exam a.exam_link_high:after{
    position: absolute;
    top: 50%;
    right: 10px;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#top_exam a.exam_link_high:hover{
    opacity: 0.7;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

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

    #top_exam{
        padding-bottom: 60px;
    }

    #top_exam .top_exam_title{
        font-size: 28px;
        margin-bottom: 20px;
    }

    #top_exam .layout{
        padding-top: 15px;
        display: block;
    }

    #top_exam .layout_btn{
        display: none;
    }

}


/* top_club */
#top_club{
    padding-bottom: 100px;
}

#top_club .top_club_title{
    text-align: center;
    font-size: 36px;
    letter-spacing: .1em;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    margin-bottom: 60px;
}

#top_club .top_club_body{
    padding: 30px 0;
    background-image: url(images/top/club_bg.jpg);
    background-size: cover;
    background-repeat: no-repeat;
}

#top_club .top_club_body ul{
    list-style: none;
    margin: 0;
    padding: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

#top_club .top_club_body ul li{
    position: relative;
    flex-basis: 31%;
    margin-right: 3.5%;
    background: #fff;
}

#top_club .top_club_body ul li:after{
    content: "";
    width: 23px;
    height: 9px;
    background-image: url(images/common/arrow_b.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    bottom: 15px;
    right: 15px;
}

#top_club .top_club_body ul li:nth-child(3n){
    margin-right: 0;
}

#top_club .top_club_body ul li a{
    display: block;
    position: relative;
    text-decoration: none;
    font-size: 16px;
    color: #000;
    padding-bottom: 25px;
}

#top_club .top_club_body ul li a:hover{
    color: var(--linkc);
}

#top_club .top_club_body ul li a .date{
    position: absolute;
    top: 25px;
    left: 42px;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    transform-origin: left top;
    font-size: 12px;
    color: #ccc;
}

#top_club .top_club_body ul li a .img{
    display: inline-block;
    position: relative;
    width: 80%;
    padding-top: 59%;
    margin-left: 20%;
    margin-top: -60px;
    overflow: hidden;
}

#top_club .top_club_body ul li a .img img{
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_club .top_club_body ul li a:hover .img img{
    -moz-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_club .top_club_body ul li a .wrap{
    display: block;
    padding: 10px 25px;
}

#top_club .top_club_body ul li a .wrap span.high{
    display: inline-block;
    font-size: 12px;
    text-align: center;
    min-width: 80px;
    background: #294aa0;
    color: #fff;
    margin-top: 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

#top_club .top_club_body ul li a .wrap span.junior{
    display: inline-block;
    font-size: 12px;
    text-align: center;
    min-width: 80px;
    background: #2f9344;
    color: #fff;
    margin-top: 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

#top_club .top_club_body .link_btn{
    text-align: right;
    padding-top: 20px;
}

#top_club .top_club_body .link_btn a{
    display: inline-block;
    font-size: 14px;
    color: #000;
    padding: 10px 30px;
    border: 1px solid #17214c;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_club .top_club_body .link_btn a:hover{
    background: #17214c;
    color: #fff;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_club .top_club_body .link_btn a:before{
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    display: inline-block;
    margin-right: 10px;
}

@media screen and (max-width: 782px){
    #top_club{
        padding-bottom: 60px;
    }

    #top_club .top_club_title{
        font-size: 28px;
        margin-bottom: 30px;
    }

    #top_club .top_club_body ul{
        list-style: none;
        margin: 0;
        padding: 0 5%;
        display: block;
    }

    #top_club .top_club_body ul li{
        margin-bottom: 40px;
        margin-right: 0;
    }

    #top_club .top_club_body ul li a .img{
        display: inline-block;
        position: relative;
        width: calc(100% - 60px);
        padding-top: 59%;
        margin-left: 60px;
        margin-top: -20px;
        overflow: hidden;
    }

    #top_club .top_club_body .link_btn{
        text-align: right;
        padding-top: 0px;
        padding-right: 5%;
    }
}


/* top_hj */
#top_hj{
    margin-bottom: 100px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

#top_hj a{
    position: relative;
    display: block;
    width: 50%;
    padding-top: 48%;
    overflow: hidden;
    color: #000;
}

#top_hj a .title_area:after{
    content: "";
    width: 23px;
    height: 9px;
    background-image: url(images/common/arrow_b.png);
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 30px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#top_hj a:nth-of-type(1) .title_area{
    position: absolute;
    bottom: 0;
    left: 0;
    z-index: 2;
    background: #fff;
    width: calc(65% - 40px);
    padding: 30px;
    -webkit-border-radius: 0 15px 0 0;
    -moz-border-radius: 0 15px 0 0;
    border-radius: 0 15px 0 0;
}

#top_hj a:nth-of-type(2) .title_area{
    position: absolute;
    bottom: 0;
    right: 0;
    z-index: 2;
    background: #fff;
    width: calc(65% - 40px);
    padding: 30px;
    -webkit-border-radius: 15px 0 0 0;
    -moz-border-radius: 15px 0 0 0;
    border-radius: 15px 0 0 0;
}

#top_hj a .title_area .title{
    display: block;
    font-size: 48px;
    line-height: 1em;
    letter-spacing: .1em;
    margin-bottom: 10px;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

#top_hj a .title_area .text{
    font-size: 14px;
    line-height: 1.4em;
}

#top_hj a .bg img{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_hj a:hover .bg img{
    -moz-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

@media screen and (max-width: 782px){
    /* top_hj */
    #top_hj{
        margin-bottom: 60px;
        display: block;
    }

    #top_hj a{
        position: relative;
        display: block;
        width: 100%;
        padding-top: 90%;
        overflow: hidden;
        color: #000;
    }

    #top_hj a .title_area:after{
        right: 15px;
    }

    #top_hj a:nth-of-type(1) .title_area{
        width: calc(80% - 40px);
        padding: 20px 40px 20px 20px;
    }

    #top_hj a:nth-of-type(2) .title_area{
        width: calc(80% - 40px);
        padding: 20px 40px 20px 20px;
    }

    #top_hj a .title_area .title{
        font-size: 28px;
    }

    #top_hj a .title_area .text{
        font-size: 13px;
        line-height: 1.4em;
    }
}


/* top_intro */
#top_intro{
    margin-bottom: 100px;
}

#top_intro ul{
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

#top_intro ul li{
    flex-basis: 32%;
}

#top_intro ul li a{
    display: block;
    position: relative;
    padding-top: 66.6%;
    overflow: hidden;
    color: #fff;
    font-size: 24px;
    font-weight: bold;
    line-height: 1em;
}

#top_intro ul li a .text{
    position: absolute;
    bottom: 20px;
    left: 20px;
    z-index: 2;
}

#top_intro ul li a .text:after{
    content: "";
    width: 23px;
    height: 9px;
    background-image: url(images/common/arrow_w.png);
    background-size: contain;
    background-repeat: no-repeat;
    display: inline-block;
    margin-left: 10px;
    vertical-align: 5px;
}

#top_intro ul li a .bg img{
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    -moz-transform: scale(1);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    transform: scale(1);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_intro ul li a:hover .bg img{
    -moz-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

@media screen and (max-width: 782px){
    #top_intro{
        margin-bottom: 60px;
    }

    #top_intro ul{
        list-style: none;
        display: block;
        margin: 0;
        padding: 0;
    }

    #top_intro ul li{
        margin-bottom: 15px;
    }

}


/* top_other */
#top_other{
    margin-bottom: 80px;
}

#top_other .top_other_title{
    border-bottom: 1px solid #17214c;
    border-left: 3px solid #17214c;
    text-align: left;
    font-size: 20px;
    padding: 5px 0 5px 15px;
    margin: 0 0 30px;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

#top_other ul{
    list-style: none;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

#top_other ul li{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-basis: 23%;
    margin-right: 2.666%;
    margin-bottom: 20px;
}

#top_other ul li:nth-child(4n){
    margin-right: 0;
}

#top_other ul li a{
    position: relative;
    color: #000;
    font-size: 14px;
    font-weight: bold;
    text-decoration: none;
    width: calc(100% - 30px);
    padding: 5px 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    background: #e9e9e9;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_other ul li a:hover{
    opacity: 0.6;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

#top_other ul li a:after{
    content: "\f24d";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    position: absolute;
    top: 50%;
    right: 15px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

#top_other ul li a.banner{
    width: 100%;
    padding: 0;
}

#top_other ul li a.banner:after{
    display: none;
}

@media screen and (max-width: 782px){
    #top_other{
        margin-bottom: 40px;
        padding: 0 5%;
    }

    #top_other .top_other_title{
        font-size: 18px;
    }

    #top_other ul{
        list-style: none;
        display: block;
        margin: 0;
        padding: 0;
    }

    #top_other ul li{
        display: block;
        margin-right: 0;
        margin-bottom: 20px;
    }

    #top_other ul li:nth-child(4n){
        margin-right: 0;
    }

    #top_other ul li a{
        font-size: 14px;
        font-weight: bold;
        text-decoration: none;
        width: calc(100% - 30px);
        padding: 10px 15px;
    }

    #top_other ul li a.banner{
        width: 100%;
        padding: 0;
    }

    #top_other ul li a.banner img{
        width: 100%;
        height: auto;
    }

}


/*****************
archives
*****************/
.archive h2{
    border-bottom: 1px solid #17214c;
    border-left: 3px solid #17214c;
    text-align: left;
    font-size: 32px;
    line-height: 1em;
    padding: 5px 0 15px 20px;
    margin: 0 0 30px;
}

.archive_list{
    list-style: none;
    margin: 0;
    padding: 0;
}

.archive_list li a{
    display: block;
    text-decoration: none;
    color: #000;
    border-bottom: 1px solid #ccc;
    padding-bottom: 30px;
    padding-top: 30px;
}

.archive_list li a .date{
    color: #ccc;
    font-size: 14px;
}

.archive_list li a span.high{
    margin-left: 10px;
    display: inline-block;
    font-size: 12px;
    text-align: center;
    min-width: 80px;
    background: #294aa0;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.archive_list li a span.junior{
    margin-left: 10px;
    display: inline-block;
    font-size: 12px;
    text-align: center;
    min-width: 80px;
    background: #2f9344;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.archive_list li a span.title{
    font-size: 20px;
    font-weight: bold;
    display: block;
    padding-top: 3px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.archive_list li a:hover span.title{
    color: var(--linkc);
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.archive_list li a span.title:after{
    font-size: 18px;
    color: #333;
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    display: inline-block;
    margin-left: 20px;
}


.archive_list .has_img{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.archive_list .has_img .item:nth-of-type(1){
    flex-basis: 55%;
}

.archive_list .has_img .item:nth-of-type(2){
    flex-basis: 40%;
}

@media screen and (max-width: 782px){
    .archive h2{
        font-size: 24px;
    }

    .archive_list li a{
        padding-bottom: 20px;
        padding-top: 20px;
    }

    .archive_list li a span.title{
        font-size: 16px;
    }

    .archive_list li a span.title:after{

        margin-left: 5px;
    }

    .archive_list .has_img{
        display: block;
    }

    .archive_list .has_img .item:nth-of-type(1){
        display: block;
        margin-bottom: 20px;
    }

}


/*search archives*/
.search-results h2{
    border-bottom: 1px solid #17214c;
    border-left: 3px solid #17214c;
    text-align: left;
    font-size: 32px;
    line-height: 1em;
    padding: 5px 0 15px 20px;
    margin: 0 0 30px;
}

.archive_list li a span.disc{
    font-size: 13px;
    display: block;
    padding-top: 3px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

/*.archive_list li a:hover span.disc{
color:var(--linkc);
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
}*/


/* ページャー
---------------------------------------------------- */

.pager{
    padding: 80px 0 20px;
    text-align: center;
    margin: 0px 0 30px 0;
}

a.page-numbers,
.pager .current{
    text-decoration: none;
    background: #f0f0f0;
    padding: 10px 15px;
    margin: 0 2px;
}

.pager .current{
    background: #17214c;
    color: #fff;
}


/*****************
single
*****************/
.single h2{
    display: block;
    margin: 0 0 40px;
    padding: 20px 0;
    border-bottom: 1px solid #666;
}

.single .date{
    color: #ccc;
    font-size: 14px;
}
.single span.high{
    margin-left: 10px;
    display: inline-block;
    font-size: 12px;
    text-align: center;
    min-width: 80px;
    background: #294aa0;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.single span.junior{
    margin-left: 10px;
    display: inline-block;
    font-size: 12px;
    text-align: center;
    min-width: 80px;
    background: #2f9344;
    color: #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}


.single_pn{
    margin-top: 80px;
    border-top: 1px solid #ccc;
    border-bottom: 1px solid #ccc;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.single_pn .item{
    flex-basis: calc(50% - 30px);
}

.single_pn .item:nth-of-type(1){
    padding: 30px 30px 30px 0;
    text-align: left;
    border-right: 1px solid #ccc;
}

.single_pn .item:nth-of-type(2){
    padding: 30px 0 30px 30px;
    text-align: right;
    border-left: 1px solid #ccc;
    margin-left: -1px;
}

.single_pn .item a{
    text-decoration: none;
    color: #000;
    font-size: 16px;
    font-weight: bold;
}
.single_pn .item a:hover{
    color: var(--linkc);
}

.single_pn .item a span{
    display: block;
    font-size: 13px;
    font-weight: bold;
    margin-bottom: 5px;
}


.single_back{
    text-align: center;
    padding-top: 40px;
}

.single_back a{
    display: inline-block;
    font-size: 14px;
    color: #000;
    padding: 10px 30px;
    border: 1px solid #17214c;
    text-decoration: none;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.single_back a:hover{
    background: #17214c;
    color: #fff;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.single_back a:before{
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    display: inline-block;
    margin-right: 10px;
}

@media screen and (max-width: 782px){
    .single_pn{
        margin-top: 80px;
        border-top: 0;
        border-bottom: 0;
        display: block;
    }

    .single_pn .item{
        flex-basis: auto;
    }

    .single_pn .item:nth-of-type(1){
        padding: 15px;
        text-align: left;
        border: 1px solid #ccc;
    }

    .single_pn .item:nth-of-type(2){
        padding: 15px;
        text-align: left;
        border: 1px solid #ccc;
        margin-top: -1px;
        margin-left: 0;
    }

    .single_pn .item a{
        font-size: 14px;
    }

    .single_pn .item a span{
        font-size: 11px;
    }
}


/*****************
404
*****************/
.error-404 .page-title{
    font-size: 34px;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
}

.error-404 .page-title img{
    width: 320px;
    height: auto;
    margin-bottom: 30px;
}

.error-404 .page-content p{
    font-weight: bold;
}

.error-404 .page-content form{
    background: #c3ced5;
    width: 70%;
    margin: 0 15%;
    padding: 15px 0;
    -webkit-border-radius: 50px;
    -moz-border-radius: 50px;
    border-radius: 50px;
}

.error-404 .page-content form input{
    width: calc(90% - 30px);
    background: none;
    border: 0;
    margin: 0;
    padding: 5px 0;
}

.error-404 .page-content form button{
    background: none;
    margin: 0;
    padding: 0;
}

.error-404 .page-content form button img{
    width: 25px;
    height: auto;
    vertical-align: -5px;
}


@media screen and (max-width: 782px){
    .error-404 .page-title{
        font-size: 16px;
        font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    }

    .error-404 .page-title img{
        width: 80%;
        height: auto;
        margin-bottom: 30px;
    }

    .error-404 .page-content p{
        font-size: 13px;
        font-weight: bold;
    }

    .error-404 .page-content form{
        background: #c3ced5;
        width: 94%;
        margin: 0 3%;
        padding: 5px 0;
        -webkit-border-radius: 50px;
        -moz-border-radius: 50px;
        border-radius: 50px;
    }

    .error-404 .page-content form input{
        width: calc(90% - 30px);
        background: none;
        border: 0;
        margin: 0;
        padding: 5px 0;
    }
}


/*****************
固定sidebar
*****************/
.side_web_btn{
    background-image: url(images/common/side_webbnrbg.jpg) !important;
    background-repeat: no-repeat !important;
    background-size: cover !important;
    margin-bottom: 5px !important;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.side_web_btn a{
    display: block !important;
    background: none !important;
    text-decoration: none;
    text-align: left;
    font-size: 21px;
    color: #000 !important;
    padding: 25px 15px;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;

}

.side_web_btn:hover{
    opacity: 0.6;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;

}

.side_web_btn a:before{
    content: "";
    display: inline-block;
    width: 25px;
    height: 25px;
    background-image: url(images/common/side_webbnricon.png);
    background-repeat: no-repeat;
    background-size: contain;
    margin-right: 5px;
    vertical-align: -4px;
}

.side_w_btn, .side_b_btn{
    list-style: none;
    margin: 0;
    padding: 0;
}

.side_w_btn a{
    position: relative;
    font-size: 16px;
    font-weight: bold;
    display: block;
    padding: 10px 15px;
    margin-bottom: 5px !important;
    text-align: left;
    background: #fff !important;
    color: #18204e !important;
    border: 1px solid #18204e !important;
    text-decoration: none;
    -webkit-border-radius: 5px !important;
    -moz-border-radius: 5px !important;
    border-radius: 5px !important;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.side_w_btn a:after{
    position: absolute;
    top: 50%;
    right: 10px;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.side_w_btn a:hover{
    background: #18204e !important;
    color: #fff !important;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.side_b_btn a{
    position: relative;
    font-size: 16px;
    font-weight: bold;
    display: block;
    text-align: left;
    padding: 10px 15px;
    margin-bottom: 5px !important;
    background: #18204e !important;
    color: #fff !important;
    border: 1px solid #18204e !important;
    text-decoration: none;
    -webkit-border-radius: 5px !important;
    -moz-border-radius: 5px !important;
    border-radius: 5px !important;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.side_b_btn a:after{
    position: absolute;
    top: 50%;
    right: 10px;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.side_b_btn a:hover{
    opacity: 0.7;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.side_bloglink{
    text-align: center;
    margin-bottom: 0px;
    margin-top: -20px;
}

.side_bloglink p{
    text-align: left;
    font-size: 20px;
    padding: 5px 0 5px 15px;
    margin: 0 0 10px;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    border-left: 3px solid #17214c;
    border-bottom: 1px solid #17214c;
}

.side_bloglink a{
    color: #000;
    font-size: 14px;
    font-weight: bold;
}

.side_bloglink a:hover{
    color: var(--linkc);
}

.side_bloglink a:after{
    content: "\f24d";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    display: inline-block;
    margin-left: 10px;
}

.side_bloglink .side_bloglink_layout{
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.side_bloglink .side_bloglink_layout span{
    width: 15px;
    margin: 0 20px;
}

.side_clublink a{
    text-decoration: none;
    border: 1px solid #ccc;
    -webkit-border-radius: 5px !important;
    -moz-border-radius: 5px !important;
    border-radius: 5px !important;
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    font-size: 18px;
    overflow: hidden;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: space-between;
    -webkit-box-pack: space-between;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.side_clublink a:hover{
    opacity: 0.7;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.side_clublink a span:nth-of-type(1){
    width: 140px;
}

.side_clublink a span:nth-of-type(2){
    width: calc(100% - 140px);
    text-align: center;
}

.side_clublink a span:nth-of-type(2):after{
    content: "";
    width: 23px;
    height: 9px;
    background-image: url(images/common/arrow_b.png);
    background-size: contain;
    background-repeat: no-repeat;
    display: block;
    margin: 3px auto 0;
}


/*****************
sidebar
*****************/

.sidebar-area .menu > li > a{
    position: relative;
    display: block;
    padding: 10px;
    color: #000;
    border-top: 1px solid #17214c;
    border-bottom: 1px solid #17214c;
}

.sidebar-area .menu > li > a:hover{
    color: var(--linkc);
}
.sidebar-area .menu > li > a:after{
    font-size: 13px;
    color: #ccc;
    content: "\f105";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    position: absolute;
    top: 50%;
    right: 10px;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
}

.sidebar-area .menu .sub-menu{
    margin-bottom: 30px !important;
}

.sidebar-area .menu .sub-menu a:hover{
    color: var(--linkc);
}


/*****************
page_custom
*****************/

/*under_header_design*/
.jumbotron-content .subheader{
    color: #fff;
    background: #17214c;
    display: inline-block;
    padding: 0 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;

}

.junior .jumbotron-content .subheader, .junior-child .jumbotron-content .subheader{
    color: #fff;
    background: var(--juniorc);
    display: inline-block;
    padding: 0 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.high .jumbotron-content .subheader, .high-child .jumbotron-content .subheader{
    color: #fff;
    background: var(--highc);
    display: inline-block;
    padding: 0 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.club .jumbotron-content .subheader, .club-child .jumbotron-content .subheader{
    color: #fff;
    background: var(--clubc);
    display: inline-block;
    padding: 0 10px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
}

.jumbotron-title{
    font-family: 'YuMincho', 'Yu Mincho', '游明朝体', 'ＭＳ Ｐ明朝', 'MS PMincho', serif;
    font-size: 48px;
    line-height: 1em;
    letter-spacing: .05em;
    font-weight: normal;
}

@media screen and (max-width: 782px){
    .jumbotron-title{
        font-size: 28px;
    }
}


.junior .content-area .wp-block-button__link, .junior-child .content-area .wp-block-button__link{
    background: var(--juniorc);
    color: #fff !important;
}

.high .content-area .wp-block-button__link, .high-child .content-area .wp-block-button__link{
    background: var(--highc);
    color: #fff !important;
}


.club .content-area .wp-block-button__link{
    background: var(--clubc);
    color: #fff !important;
}

.junior .su-tabs{
    background: var(--juniorc);
}

.junior .su-tabs span{
    color: #fff;
}

.junior .su-tabs span.su-tabs-current, .junior .su-tabs-nav span:hover{
    color: #000;
}


/*scphp_custom*/
.top_news_list.sc{
    margin-bottom: 20px;
}
.top_news_list.sc.event{
    margin-bottom: 60px;
}

.top_news_list .under_tit{
    padding-top: 40px;
    font-size: 21px;
    font-weight: bold;
    margin-bottom: 0;
}
.top_news_list.sc .link_btn{
    text-align: left;
}
.top_news_list.sc .link_btn a{
    padding-top: 10px;
    padding-bottom: 10px;
}


/*form_custom*/

.mw_wp_form table{
    width: 100%;
}

.mw_wp_form table tr th{
    width: 30% !important;
    background: #dbe0e8;
}

.mw_wp_form table tr th .must{
    background: #e90002;
    color: #fff;
    display: inline-block;
    font-size: 11px;
    line-height: 1em;
    padding: 3px 5px;
    margin-left: 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    vertical-align: 1px;
}

.mw_wp_form table tr td input, .mw_wp_form table tr td textarea{
    width: 100%;
    background: #eee;
}

.mw_wp_form table tr td textarea{
    height: 120px;
}

.mw_wp_form table tr td input[type="checkbox"], .mw_wp_form table tr td input[type="radio"]{
    width: auto;
}

.mw_wp_form input.submitbtn{
    min-width: 50% !important;
    background: var(--juniorc) !important;
    color: #fff !important;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
}
.mw_wp_form input.backbtn{
    min-width: 25% !important;
    color: #fff !important;
    -webkit-border-radius: 30px;
    -moz-border-radius: 30px;
    border-radius: 30px;
}


@media screen and (max-width: 782px){
    .mw_wp_form table{
        width: 100%;
    }

    .mw_wp_form table tr th{
        display: block;
        width: calc(100% - 30px) !important;
        background: #dbe0e8;
        height: auto !important;
    }

    .mw_wp_form table tr td{
        display: block;
        width: calc(100% - 30px) !important;
        height: auto !important;

    }

}

/*　大学合格実績　*/
.page-id-172 table th,
.page-id-172 table td{
    text-align: center;
    padding: 0.1em;
    border: 1px solid #000;
}

.page-id-172 table tr.tableHead td{
    background: #d2fffd;
    position: sticky;
    top: 0;
    z-index: 1;
}
.page-id-172 table tr.tableHead:nth-child(2) td{
    top: 32px;
    z-index: 1;

}
.page-id-172 table tr.tableHead td:nth-of-type(1){

    text-align: center !important;
}

.page-id-172 table tr td:nth-of-type(1){
    background: #d2fffd;
    text-align: left;
    padding-left: 10px;


}

/*top_linebanner*/
.line_banner_wrap{
    text-align: center;
}

a.line_banner{
display: -webkit-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-box-align: center;
-ms-flex-align: center;
-webkit-align-items: center;
align-items: center;
border: 4px solid #4CC764;
margin-bottom: 70px;
text-decoration: none;
text-align: left;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;
border-radius: 10px;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
}
a.line_banner:hover{
background:#4CC764 ;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
}

a.line_banner span.item:nth-of-type(1){
flex-basis: calc(40% - 90px);
background-color:#4CC764 ;
background-image: url(images/common/line_w.svg);
background-repeat: no-repeat;
background-size: 57px;
background-position: left 20px center;
padding-top: 30px;
padding-bottom: 30px;
padding-left: 90px;
color: #fff;
font-size: 20px;
line-height: 1.4em;
-webkit-border-radius: 0 5px 5px 0;
-moz-border-radius: 0 5px 5px 0;
border-radius: 0 5px 5px 0;
}

a.line_banner span.item:nth-of-type(1) span{
font-size: 30px;
line-height: 1.4em;
font-weight: 700;
display: block;
}

a.line_banner span.item:nth-of-type(2){
flex-basis: calc(40% - 70px);
padding: 0 35px;
font-size: 15px;
color: #000;
}

a.line_banner:hover span.item:nth-of-type(2){
    color: #fff;
}

a.line_banner span.item:nth-of-type(3){
flex-basis: calc(20% - 70px);
padding: 0 35px;
color: #4CC764;
font-size: 18px;
font-weight: 700;
border-left: 1px dashed #4CC764;
}

a.line_banner span.item:nth-of-type(3)::after{
display: inline-block;
content: "\f138";
font-family: "FontAwesome";
font-weight: 900;
font-weight: bold;
font-style: normal;
}

a.line_banner:hover span.item:nth-of-type(3){
    color: #fff;
    border-left: 1px dashed #fff;

}

.footer_snsbanner{
    text-align: center;
    padding-top: 50px;
    margin-bottom: 30px;
}

a.f_min_line{
    position: relative;
    min-width: calc(320px - 80px);
    text-align: left;
    border: 1px solid #DCE1E5;
    color: 000;
    display: inline-block;
    padding: 20px 20px 20px 60px;
    text-decoration: none;
    color: #000;
    font-size: 16px;
    font-weight: 700;
    background-image: url(images/common/line_logo.svg);
    background-repeat: no-repeat;
    background-size: 36px;
    background-position: left 20px center;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

a.f_min_line::after{
    display: inline-block;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    position: absolute;
    top: calc(50% - 15px);
    right: 15px;
}

a.f_min_line:hover{
    background-color: #4CC764;
    color: #fff;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}


.header_sp_snsbanner{
    display: block;
}

.header_sp_snsbanner a.f_min_line{
    position: relative;
    width: 180px;
    max-width: 180px;
    min-width: auto!important;
    text-align: left;
    border: 1px solid #DCE1E5;
    display: block;
    padding: 10px 20px 10px 40px;
    text-decoration: none;
    font-size: 13px;
    font-weight: 400;
    background-image: url(images/common/line_logo.svg);
    background-repeat: no-repeat;
    background-size: 30px;
    background-position: left 10px center;
    -webkit-transition: 0.5s;
    -moz-transition: 0.5s;
    -ms-transition: 0.5s;
    transition: 0.5s;
}

.header_sp_snsbanner a.f_min_line::after{
    display: inline-block;
    content: "\f138";
    font-family: "FontAwesome";
    font-weight: 900;
    font-weight: bold;
    font-style: normal;
    position: absolute;
    top: calc(50% - 13px);
    right: 15px;
}

@media screen and (max-width: 782px){
a.line_banner{
display: inline-block;
max-width: 400px;
border: 2px solid #4CC764;
margin-bottom: 50px;
margin-left: 5%;
margin-right: 5%;
text-decoration: none;
}

a.line_banner:hover{
background:#fff;
}

a.line_banner span.item:nth-of-type(1){
display: block;
background-size: 57px;
background-position: left 20px center;
padding-top: 25px;
padding-bottom: 25px;
padding-left: 90px;
color: #fff;
font-size: 16px;
line-height: 1.4em;
-webkit-border-radius: 0 0 5px 5px;
-moz-border-radius: 0 0 5px 5px;
border-radius: 0 0 5px 5px;
}

a.line_banner span.item:nth-of-type(1) span{
font-size: 24px;
line-height: 1.4em;
font-weight: 700;
display: block;
}

a.line_banner span.item:nth-of-type(2){
display: block;
padding: 20px 35px;
font-size: 14px;
color: #000;
}

a.line_banner:hover span.item:nth-of-type(2){
    color: #000;
}

a.line_banner span.item:nth-of-type(3){
display: block;
text-align: center;
padding: 0 35px 25px;
font-size: 14px;
border-left: none;
}

a.line_banner:hover span.item:nth-of-type(3){
color: #4CC764;
border-left: none;
}

a.f_min_line:hover{
    background-color:inherit!important;
    color:inherit!important;
}
}
