@charset "UTF-8";
/********************************
DEFAULT
*********************************/
html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    outline: 0;
}
article,aside,details,figcaption,figure,footer,header,main,menu,nav,section {
    display: block;
}
h1,h2,h3,h4,h5,h6,caption,address,th {
    font-weight: normal;
    margin: 0;
    padding: 0;
    font-size: 100%;
}
ul,ol,li,dl,dt,dd {
    list-style: none;
}
img,iframe {
    vertical-align: middle;
    border: 0;
}
img {
    line-height: 0;
    font-size: 0;
    -webkit-backface-visibility: hidden;
}
table {
    border-collapse: collapse;
}
th {
    font-weight: normal;
    text-align: left;
}
button,fieldset,form,input,label,legend,select,textarea {
    font-style: inherit;
    font-weight: inherit;
    font-size: 100%;
    margin: 0;
    padding: 0;
    vertical-align: baseline;
}
select {
    padding: 2px;
}
select::-ms-expand {
    display: none;
}
input,select {
    font-size: 100%;
    vertical-align: middle;
}
input[type="text"],input[type="password"],textarea,select {
    outline: none;
}
textarea {
    font-size: 100%;
}
input {
    vertical-align: middle;
}
input[type="text"] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    padding: 0;
    border: 0;
    border-radius: 0;
    outline: none;
    background: none;
    box-sizing: border-box;
    width: 100%;
    background: #fff;
}
::-webkit-input-placeholder {
    color: #B3B3B4;
}
::-webkit-input-placeholder {
    color: #B3B3B4;
}
:placeholder-shown {
    color: #B3B3B4;
}
::-webkit-input-placeholder {
    color: #B3B3B4;
}
:-moz-placeholder {
    color: #B3B3B4; opacity: 1;
}
::-moz-placeholder {
    color: #B3B3B4; opacity: 1;
}
:-ms-input-placeholder {
    color: #B3B3B4;
}
label {
    padding: 0 0 0 2px;
}
hr {
    display: none;
}
a {
    transition: opacity 0.05s ease-in-out , all 0.05s ease-in-out;
}
a,a:link {
    color: #000;
    text-decoration: none;
    word-break: break-all;
}
a:visited {
    color: #000;
}
@media (min-width: 896px) {
    a:hover,a:active {
        color: #004fa7;
        text-decoration: underline;
    }
}
*:focus {
    outline: none;
}
.m_b0 {
    margin-bottom: 0 !important;
}
.m_b1 {
    margin-bottom: 1px !important;
}
.m_b2 {
    margin-bottom: 2px !important;
}
.m_b3 {
    margin-bottom: 2px !important;
}
.m_b5 {
    margin-bottom: 5px !important;
}
.m_b7 {
    margin-bottom: 7px !important;
}
.m_b8 {
    margin-bottom: 8px !important;
}
.m_b10 {
    margin-bottom: 10px !important;
}
.m_b11 {
    margin-bottom: 11px !important;
}
.m_b12 {
    margin-bottom: 12px !important;
}
.m_b13 {
    margin-bottom: 13px !important;
}
.m_b15 {
    margin-bottom: 15px !important;
}
.m_b20 {
    margin-bottom: 20px !important;
}
.m_b25 {
    margin-bottom: 25px !important;
}
.m_b30 {
    margin-bottom: 30px !important;
}
.m_b35 {
    margin-bottom: 35px!important;
}
.m_b40 {
    margin-bottom: 40px !important;
}
.m_b45 {
    margin-bottom: 45px !important;
}
.m_b50 {
    margin-bottom: 50px !important;
}
.m_b55 {
    margin-bottom: 55px !important;
}
.a_center {
    text-align: center;
}
.a_left {
    text-align: left;
}
.a_right {
    text-align: right;
}
.f_bold {
    font-weight: bold;
}
.f_line {
    background-image: linear-gradient(#ffee00, #ffee00);
    background-position: 0 100%;
    background-size: 100% 8px;
    background-repeat: repeat-x;
    text-decoration: none;
}
.f_yugo {
    font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", sans-serif;
}
.f_yumin {
    font-family: "游明朝体", YuMincho, "游明朝", "Yu Mincho", "Noto Serif JP", serif;
}
.f_cg {
    font-family: Century Gothic, CenturyGothic, AppleGothic, serif;
}
.f_arial {
    font-family: Arial, Helvetica Neue, Helvetica, serif;
}
.c_fix:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    font-size: .01em;
    height: 0;
    overflow: hidden;
}
.c_fix {
    min-height: 1px;
}
html {
    height: 100%;
}
body {
    font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴシック', 'Hiragino Sans', 'Arial', 'メイリオ', sans-serif;
    line-height: 1.8;
    color: #000;
    font-size: 16px;
    font-weight: normal;
    text-align: left;
    min-width: 1160px;
    min-height: 100%;
    height: auto !important;
    position: relative;
    -webkit-text-size-adjust: none;
    -webkit-font-smoothing: antialiased;
    background: #ffffff;
    box-sizing: border-box;
    padding: 153px 0 0;
}
body.form_entry {
    padding: 64px 0 0 0;
}
body.is-non {
    padding-top: 129px;
}
/********************************
C系CSS
*********************************/
.c-pc {
    display: block;
}
.c-pc-in {
    display: inline;
}
.c-sp {
    display: none;
}
.c-sp-in {
    display: none;
}
.c-wrap {
    width: 1000px;
    margin: 0 auto;
    box-sizing: border-box;
}
.c_btn {
    width: 260px;
    margin: 10px 0 0 0;
}
.c-btn a {
    display: table;
    table-layout: fixed;
    letter-spacing: -.4em;
    width: 100%;
    height: 50px;
    box-sizing: border-box;
    -ms-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    font-size: 14px;
    font-weight: bold;
    color: #fff;
    line-height: 1;
    text-decoration: none;
    background: #004098 url(../svg/icn_arw_right_w.svg) no-repeat center left 20px;
    background-size: 8px auto;
    border: 1px solid #004098;
}
.c-btn.is-none a {
    pointer-events: none;
    color: #666;
    background-color: #eee;
    background-image: url(../svg/icn_arw_right_g2.svg);
    background-size: 8px auto;
    border: 1px solid #eee;
}
.c-btn.is-ver2 a {
    color: #004098;
    background: #fff url(../svg/icn_arw_right.svg) no-repeat center left 20px;
    background-size: 8px auto;
    border: 1px solid #004098;
}
.c-btn.is-ver3 a {
    color: #000;
    background: #ffee00 url(../svg/icn_arw_right_b.svg) no-repeat center left 10px;
    background-size: 8px auto;
    border: 1px solid #ffee00;
}
.c-btn a .is-btn {
    display: table-cell;
    letter-spacing: normal;
    vertical-align: middle;
    text-align: center;
    padding: 0 0 0 20px;
}
@media (min-width: 896px) {
    .c-btn a:hover {
        background: #fff url(../svg/icn_arw_right.svg) no-repeat center left 20px;
        background-size: 8px auto;
        color: #004098;
    }
    .c-btn.is-ver2 a:hover {
        background: #004098 url(../svg/icn_arw_right_w.svg) no-repeat center left 20px;
        background-size: 8px auto;
        color: #ffffff;
        opacity: 1;
    }
    .c-btn.is-ver3 a:hover {
        opacity: 0.7;
        background: #ffee00 url(../svg/icn_arw_right_b.svg) no-repeat center left 10px;
        background-size: 8px auto;
        color: #000;
    }
}
.c-breadcrumbs {
    background: #f2f2f2;
    margin: 60px 0 0 0;
    border-bottom: 1px solid #004098;
}
.c-breadcrumbs_in {
    width: 1000px;
    margin: 0 auto;
    line-height: 1.3;
    white-space: nowrap;
    overflow-x: auto;
    padding: 14px 0;
}
.c-breadcrumbs ul {
    line-height: 1;
}
.c-breadcrumbs li {
    display: inline;
    position: relative;
    font-size: 10px;
}
.c-breadcrumbs li:after {
    content: '';
    width: 6px;
    height: 10px;
    margin: 0 14px;
    background: url(../svg/icn_arw_right_dg.svg) no-repeat center center;
    background-size: 100% auto;
    display: inline-block;
}
.c-breadcrumbs li:last-child::after {
    content: none;
}
.c-breadcrumbs a {
    color: #7e7e7e;
    font-weight: bold;
    font-size: 10px;
    text-decoration: none;
}
.c-breadcrumbs li:first-child a {
    padding: 0 0 0 25px;
    position: relative;
}
.c-breadcrumbs li:first-child a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    z-index: 9;
    width: 14px;
    height: 14px;
    margin: -7px 0 0 0;
    background: url(../svg/icn_home.svg) no-repeat center center;
    background-size: 100% auto;
}
@media (min-width: 896px) {
    .c-breadcrumbs a:hover {
        color: #004098;
    }
}
/********************************
header
*********************************/
header {
    width: 100%;
    z-index: 1000;
    background: #fff;
    position: fixed;
    top: 0;
    border-top: 4px solid #004098;
    box-shadow: 0 0 5px 5px rgb(35 74 104 / 6%);
}
.h1_ttl {
    width: 100%;
    padding-top: 6px;
    z-index: 9999;
}
.h1_ttl h1 ,
.h1_ttl p {
    font-size: 10px;
    color: #004098;
}
.h_top {
    width: 100%;
    top: 0;
    left: 0;
    z-index: 99;
    background: #fff;
}
@media (min-width: 896px) {
    .h_top {
        height: 64px;
    }
    .h1_ttl h1 ,
    .h1_ttl p {
        width: 1000px;
        margin: 0 auto;
    }
}
body.form_entry .h_top {
    position: inherit;
    margin: 0;
}
.hTop_logo a {
    display: block;
}
.hTop_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
@media (min-width: 896px) {
    body.form_entry .hTop_wrap {
        height: 64px;
    }
}
.hTop_cv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.hTop_tel {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.hTop_tel .is-tel {
    font-size: 20px;
    font-weight: bold;
    line-height: 1;
    position: relative;
    padding: 0 0 0 18px;
    margin: 0 10px 0 0;
}
.hTop_tel .is-tel:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    background: url(../svg/icn_phone_ye.svg) no-repeat 0 0;
    background-size: 100% auto;
}
.hTop_tel .is-reco {
    font-size: 10px;
    font-weight: bold;
    line-height: 1.4;
    padding: 0 15px 0 0;
    position: relative;
}
.hTop_tel .is-reco span {
    margin-left: -5px;
}
.hTop_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.h_scl_search {
    display: none;
}
.h_scl_req {
    display: none;
}
@media (min-width: 896px) {
    .hTop_btn {
        padding: 7px 0 0 0;
    }
    .hTop_btn .cv-btn a {
        border-bottom: 3px solid #c3b600;
        height: 46px;
    }
}
.cv-btn {
    border-right: 1px solid #fff;
}
.cv-btn a {
    width: 124px;
    height: 60px;
    box-sizing: border-box;
    display: table;
    table-layout: fixed;
    letter-spacing: -.4em;
    background: #ffee00;
    text-decoration: none;
}
.cv-btn.ver2 a {
    width: 250px;
    border-right: none;
}
.cv-btn span {
    display: block;
    color: #000;
    font-size: 16px;
    line-height: 1;
    font-weight: bold;
    display: table-cell;
    letter-spacing: normal;
    vertical-align: middle;
    text-align: center;
    padding: 0 0 0 10px;
}
.cv-btn.is-siryo span{
    background: url(../svg/icn_siryo.svg) no-repeat left 10px center;
    background-size: 12px auto;
}
.cv-btn.is-siryo.ver2 span{
    background: url(../svg/icn_siryo.svg) no-repeat left 32px center;
    background-size: 16px auto;
}
.cv-btn.is-sodan span{
    background: url(../svg/icn_sodan.svg) no-repeat left 10px center;
    background-size: 18px auto;
}
.h_btm {
    background: #004098;
    border-bottom: 1px solid #fff;
}
@media (min-width: 896px) {
    .h_btm {
        width: 100%;
        z-index: 99;
    }
}
.hBtm_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    border-left: 1px solid #fff;
}
.hBtm_wrap li {
    width: 14.28%;
    height: 60px;
    box-sizing: border-box;
    display: table;
    table-layout: fixed;
    letter-spacing: -.4em;
    border-right: 1px solid #fff;
    background: #fff;
}
.hBtm_wrap li.ver2 {
    display: table;
}
.hBtm_wrap li a {
    display: block;
    color: #fff;
    font-size: 14px;
    line-height: 1.5;
    font-weight: bold;
    display: table-cell;
    letter-spacing: normal;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    background: #004098;
}
.hBtm_wrap li:nth-child(6) a,
.hBtm_wrap li:nth-child(7) a,
.hBtm_wrap li:nth-child(8) a {
    color: #004098;
    background: #eeeeee;
}
.hBtm_wrap li.is-sc a {
    background:#004098 url(../svg/icn_search_ye.svg) no-repeat left 15px center;
    background-size: 18px auto;
    padding: 0 0 0 18px;
}
.hBtm_wrap li span {
    display: block;
    font-size: 12px;
}
.hBtm_wrap li a span {
    display: none;
}
.menu_btn {
    display: none;
}
.hMenu_cv {
    display: none;
}
@media (min-width: 896px) {
    .hBtm_wrap li a:hover {
        opacity: 0.8;
    }
    .hTop_logo a:hover {
        opacity: 0.8;
    }
    .cv-btn a:hover {
        opacity: 0.8;
    }
}
.hMenu_nav {
    display: none;
}
/********************************
footer
*********************************/
footer {
    background: #f2f2f2;
}
.ft_wrap {
    padding: 0 0 60px;
}
.fTop_logo {
    text-align: center;
    padding: 40px 0;
}
.fTop_logo a {
    display: inline-block;
}
.fBtm_wrap {
    padding: 40px 0 0;
    text-align: center;
    background: url(../img/line.png) repeat-x top left;
}
.fBtm_map {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    padding: 0 0 20px;
}
.fBtm_map li {
    line-height: 1;
    border-right: 1px solid #4e4e4e;
    padding: 0 5px;
}
.fBtm_map li:last-child {
    border-right: none;
}
.fBtm_map li a {
    font-size: 14px;
    line-height: 1;
    color: #4e4e4e;
    display: inline-block;
    position: relative;
}
.fBtm_map li.is-blnk a {
    padding: 0 1em 0 0;
}
.fBtm_map li.is-blnk a:before {
    content: '';
    display: block;
    position: absolute;
    right: 0;
    top: 0;
    width: 8px;
    height: 8px;
    background: url(../svg/icn_window.svg) no-repeat 0 0;
    background-size: 100% auto;
}
.fBtm_copy {
    font-size: 10px;
    line-height: 1;
    color: #4e4e4e;
}
@media (min-width: 896px) {
    .fTop_logo a:hover {
        opacity: 0.8;
    }
}
/********************************
CONTETS
*********************************/
.c-pagetop {
    position: fixed;
    bottom: 50px;
    right: 30px;
    z-index: 9;
    display: none;
}
.c-pagetop a {
    width: 40px;
    height: 40px;
    display: block;
    position: relative;
    background: rgba(204,204,204,0.8);
    border-radius: 50%;
}
.c-pagetop a:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    margin: -6px 0 0 -8px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 0 8px 10px 8px;
    border-color: transparent transparent #ffffff transparent;
}
@media (min-width: 896px) {
    .c-pagetop a:hover {
        opacity: 0.7;
    }
}
.mvbs_wrap {
    background: #f2f5fa;
    width: 100%;
}
body.faq_index .mvbs_wrap {
    background: url(../img/faq_bg.jpg) no-repeat center center / cover;
}
.mvbs_in {
    width: 1000px;
    height: 180px;
    margin: 0 auto;
    background: url(../img/main_base_mv.png) no-repeat right bottom;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
body.faq_index .mvbs_in {
    background: none;
}
.mvbs-ttl {
    font-family: "游明朝体", "Yu Mincho", YuMincho, serif;
    font-size: 50px;
    line-height: 1.2;
    color: #004098;
    font-weight: 500;
}
.mvbs-ttl.is-fss {
    font-size: 44px;
}
.mvbs-ttl .is-fs {
    font-size: 30px;
}
.mv_warp {
    background: #f2f2f2;
    width: 100%;
    height: 230px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
}
.mv_ttl {
    font-size: 26px;
    line-height: 1;
    font-weight: bold;
    text-align: center;
    color: #004098;
}
body.info .mv_warp,
body.info_detail .mv_warp {
    background: #f2f2f2 url(../img/mv_imfo.jpg) center center / cover no-repeat;
}
.cnt_ttl {
    text-align: center;
    font-size: 26px;
    line-height: 1.4;
    font-weight: 600;
    position: relative;
    padding: 0 0 24px;
}
.cnt_ttl:after {
    content: '';
    display: block;
    width: 60px;
    height: 3px;
    position: absolute;
    left: 50%;
    bottom: 0;
    margin-left: -30px;
    background: #004098;
}
.cnt_ttl span {
    font-size: 16px;
    display: block;
    padding: 0 0 10px;
}
/*emergency*/
.emergency_box {
    width: 1000px;
    margin: 20px auto;
    /*
    padding: 20px 0;
    */
    box-sizing: border-box;
    border: 1px solid #d95e62;
}
.emergency_btn a {
    display: block;
    font-size: 14px;
    line-height: 1.4;
    font-weight: bold;
    color: #d95e62;
    background: url(../svg/icn_arw_down_pk.svg) no-repeat center right 10px;
    background-size: 10px auto;
    padding: 5px 30px 5px 10px;
    /*
    border: 1px solid #d95e62;
    */
}
.emergency_btn span {
    position: relative;
    display: inline-block;
    padding: 0 0 0 1.5em;
}
.emergency_btn span:after {
    content: '';
    display: block;
    width: 14px;
    height: 25px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(../svg/icn_add.svg) no-repeat center;
    background-size: 100% auto;
}
.emergency_news {
    display: none;
    padding: 5px 10px 15px 10px;
}
.emergency-news {
    font-size: 14px;
    line-height: 1.8;
}
.emergency-news a {
    color: #004098;
    text-decoration: underline;
}
.emergency-news a:hover {
    text-decoration: none;
}
.emergency_btn.on a {
    background: url(../svg/icn_arw_up_pk.svg) no-repeat center right 10px;
    background-size: 10px auto;
}
.emergency_news.active {
    display: block;
}
@media (min-width: 896px) {
    .emergency_btn a:hover {
        opacity: 0.8;
    }
}
/*成績が伸びる3つの理由*/
.charm_bg {
    position: relative;
}
.charm_bg:before {
    content: '';
    display: block;
    width: -webkit-calc(420px + (100% - 1000px) / 2);
    width: calc(420px + (100% - 1000px) / 2);
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    background: url(../img/charm_img2.jpg?date=20231222) top right / cover no-repeat;
}
body.o-elementary .charm_bg:before {
    background: url(../img/charm_img_ele2.jpg?date=20231215) top right / cover no-repeat;
}
body.o-junior .charm_bg:before {
    background: url(../img/charm_img_jnr2.jpg?date=20231222) top right / cover no-repeat;
}
body.o-high .charm_bg:before {
    background: url(../img/charm_img_hgh2.jpg) top right / cover no-repeat;
}
body.o-ikkankou .charm_bg:before {
    background: url(../img/charm_img_ikk3.jpg?date=20231222) top right / cover no-repeat;
}
.charm_warp {
    padding: 0 0 0 480px;
    box-sizing: border-box;
}
.charm_ttl {
    text-align: center;
    color: #004098;
    margin: 0 0 60px;
}
.charm-sbttl {
    font-size: 24px;
    line-height: 1.4;
    font-weight: bold;
    display: block;
}
.charm-ttl {
    font-size: 42px;
    line-height: 1.4;
    font-weight: bold;
}
.charm-ttl .is-bg {
    font-size: 50px;
}
.charm-ttl .is-line {
    background-image: linear-gradient(#ffee00, #ffee00);
    background-position: 0 100%;
    background-size: 100% 22px;
    background-repeat: repeat-x;
    text-decoration: none;
}
.charm_lst {
    margin: 0 0 50px;
}
.charm_lst li {
    margin: 0 0 30px;
}
.charm_lst li:last-child {
    margin: 0;
}
.charm_box {
    position: relative;
    padding: 0 0 0 80px;
}
.charm_box:after {
    content: '';
    display: block;
    width: 50px;
    height: 50px;
    box-sizing: border-box;
    position: absolute;
    left: 0;
    top: 0;
}
.charm_lst li:nth-child(1) .charm_box:after {
    background: url(../img/reasons_icn01.png) no-repeat center;
    background-size: 100% auto;
}
.charm_lst li:nth-child(2) .charm_box:after {
    background: url(../img/reasons_icn02.png) no-repeat center;
    background-size: 100% auto;
}
.charm_lst li:nth-child(3) .charm_box:after {
    background: url(../img/reasons_icn03.png) no-repeat center;
    background-size: 100% auto;
}
.charm_box dt {
    font-size: 20px;
    line-height: 1;
}
.charm_box dd {
    font-size: 14px;
    line-height: 1.8;
    padding: 15px 0 0;
}
.charm_btnWrap {
    display: flex;
    align-items: center;
    justify-content: space-between;
}
.charm_btn {
    width: 260px;
    margin: 0 auto;
}
.charm_btnWrap .charm_btn {
    width: 240px;
}
/*search*/
.c-src_wrap {
    padding: 60px 0 0 0;
}
.search_warp {
    background: #f2f2f2;
    padding: 20px 90px;
    margin: 0 0 60px;
    text-align: center;
}
.c-src_wrap .search_warp {
    margin: 0 0 0;
}
.search_warp.is-ver2 {
    margin: 60px 0 0;
}
.scPref_ttl {
    font-size: 18px;
    line-height: 1;
    position: relative;
    padding: 0 0 0 1.5em;
    display: inline-block;
}
.scRece_ttl {
    font-size: 18px;
    line-height: 1;
    position: relative;
    padding: 0 0 0 1.8em;
    display: inline-block;
}
.scPref_ttl:before,
.scRece_ttl:before {
    content: '';
    display: block;
    width: 20px;
    height: 20px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
}
.scPref_ttl:before {
    background: url(../svg/icn_map.svg) no-repeat center;
    background-size: 100% auto;
}
.scRece_ttl:before {
    background: url(../svg/icn_history.svg) no-repeat center;
    background-size: 100% auto;
}
.search_ttl {
    text-align: center;
    font-size: 26px;
    line-height: 1.4;
    font-weight: 600;
    position: relative;
    padding: 0 0 24px;
    margin: 0 0 40px;
}
.search_ttl:before{
    content: '';
    display: block;
    width: 60px;
    height: 3px;
    position: absolute;
    left: 50%;
    bottom: 0;
    margin-left: -30px;
    background: #004098;
}
.scPref_ttl,
.scRece_ttl {
    font-size: 14px;
    padding-right: 30px;
}
.scPref_ttl:before{
    width: 16px;
    height: 20px;
}
.scPref_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
    padding: 10px 20px;
    margin: 0 0 20px;
    border:1px solid #dadada;
    text-align: left;
}
.search_warp.is-ver2 .scPref_box {
    margin: 0;
}
.scPref_lst {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
}
.scPref_lst li {
    padding-right: 20px;
}
.scPref_lst li:last-child {
    padding-right: 0;
}
.scPref_lst li a {
    font-size: 14px;
    line-height: 1;
    color: #004098;
    text-decoration: underline;
}
.scRece_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
    padding: 10px 20px;
    border:1px solid #dadada;
    text-align: left;
}
.scStat_box {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 0 20px;
    text-align: left;
}
.scStat_btn {
    width: 190px;
    height: 50px;
    box-sizing: border-box;
    display: table;
    table-layout: fixed;
    letter-spacing: -.4em;
    background: #fff;
    margin: 0 10px 0 0;
}
.scStat_btn a {
    color: #004098;
    font-size: 14px;
    line-height: 1;
    font-weight: bold;
    display: table-cell;
    letter-spacing: normal;
    vertical-align: middle;
    text-align: center;
    padding: 0 10px 0 0;
    background:#fff url(../svg/icn_arw_r_right.svg) no-repeat center right 10px;
    background-size: 12px auto;
    text-decoration: none;
    border: 1px solid #004098;
}
.scStat_btn a span {
    display: inline-block;
    position: relative;
    padding: 0 0 0 2em;
}
.scStat_btn.is-ver2 a span {
    padding: 0 0 0 2.5em;
}
.scStat_btn a span:before {
    content: '';
    display: block;
    width: 16px;
    height: 22px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background:url(../svg/icn_train.svg) no-repeat center;
    background-size: 100% auto;
}
.scStat_btn.is-map a span:before {
    width: 17px;
    height: 20px;
    background:url(../svg/icn_map3.svg) no-repeat center;
    background-size: 100% auto;
}
.scStat_btn.is-ver2 a span:before {
    width: 23px;
    height: 25px;
    background:url(../svg/icn_station.svg) no-repeat center;
    background-size: 100% auto;
}
.scStat_inp {
    width: 620px;
    position: relative;
}
.scStat_inp input {
    height: 50px;
    padding: 0 60px 0 10px;
    font-size: 14px;
    border:1px solid #dadada;
    box-shadow: 0 2px 4px rgba(35,74,104,0.06) inset;
}
.scStat_inp .is-btn {
    position: absolute;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
}
.scStat_inp .is-btn a {
    background: #004098;
    padding: 16px 16px 17px;
}
.scStat_inp .is-btn a img {
    width: 18px;
    height: 18px;
}
.scRece_lst {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    box-sizing: border-box;
}
@media (min-width: 896px) {
    .scRece_lst {
        width: calc(100% - 170px);
    }
}
.scRece_lst li {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    box-sizing: border-box;
}
@media (min-width: 896px) {
    .scRece_lst li {
        margin-right: 20px;
    }
}
.scRece_scl {
    margin-right: 0.6em;
}
.scRece_scl a {
    font-size: 14px;
    line-height: 1;
    font-weight: bold;
    color: #004098;
    text-decoration: underline;
}
.scRece_tel a {
    font-size: 14px;
    line-height: 1;
    font-weight: bold;
    pointer-events: none;
}
.scRece_tel a span {
    position: relative;
    padding: 0 0 0 1.2em;
}
.scRece_tel a span:before {
    content: '';
    display: block;
    width: 14px;
    height: 14px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(../svg/icn_phone_ye.svg) no-repeat center;
    background-size: 100% auto;
}
.scPref_box.is-solo {
    width: 550px;
    margin: 80px auto 0;
    box-sizing: border-box;
}
.scPref_box.is-solo.n2 {
    width: 1000px;
}
.scPref_box.is-solo .scPref_lst li {
    padding-right: 15px;
}
/*cv*/
.cv_cover {
    margin: 0 0 60px;
}
body.summer .cv_cover,
body.winter .cv_cover,
body.spring .cv_cover {
    margin: 0 0 0;
}
body.summer.o-elementary .cv_cover ,
body.summer.o-junior .cv_cover ,
body.summer.o-high .cv_cover {
    margin: 60px 0 0;
}
.cv_cover.ver2 {
    margin: 60px 0;
}
.cv_wrap {
    background: #004098;
    padding: 30px 0;
    box-sizing: border-box;
}
.cv_wrap.is-ver2 {
    padding: 25px 0;
}
.cv_ttl {
    font-size: 32px;
    font-weight: bold;
    line-height: 1;
    color: #fff;
    text-align: center;
    margin: 0 0 36px;
}
.cv_wrap.is-ver2 .cv_ttl {
    margin: 0 0 10px;
}
.cv_wrap.is-ver3 .pageCv_wrap {
    display:-webkit-box;
  	display:-ms-flexbox;
  	display:flex;
    -ms-flex-wrap: wrap;
  	flex-wrap: wrap;
    -webkit-box-orient: vertical;
  	-webkit-box-direction: reverse;
  	-ms-flex-direction: column-reverse;
  	flex-direction: column-reverse;
    -webkit-box-pack: center;
	-ms-flex-pack: center;
	justify-content: center;
}
.cv-txt {
    display: none;
}
.cv_tel {
    margin: 0 0 30px;
}
.cv_wrap.is-ver2 .cv_tel {
    margin: 0 0 20px;
}
.cv_wrap.is-ver3 .cv_tel {
    margin: 36px 0 0;
}
.cvTel_tx {
    font-size: 16px;
    line-height: 1.5;
    color: #fff;
    padding: 5px 0 0 0;
    text-align: center;
}
.cv_wrap.is-ver2 .cvTel_tx {
    padding: 10px 0 0 0;
}
.cvTel_btn {
    text-align: center;
}
.cvTel_btn a {
    font-size: 60px;
    line-height: 1;
    font-weight: bold;
    pointer-events: none;
    color: #fff;
    pointer-events: none;
}
.cv_wrap.is-ver3 .cvTel_btn a {
    font-size: 36px;
}
.cvTel_btn a span {
    position: relative;
    padding: 0 0 0 1em;
}
.cvTel_btn a span:before {
    content: '';
    display: block;
    width: 46px;
    height: 46px;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    background: url(../svg/icn_phone_ye.svg) no-repeat center;
    background-size: 100% auto;
}
.cv_wrap.is-ver3 .cvTel_btn a span:before {
    width: 30px;
    height: 30px;
}
.pageCv_btn {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: center;
    -ms-flex-pack: center;
    justify-content: center;
}
.pageCv_btn li {
    width: 320px;
    margin: 0 15px;
}
.pageCv_btn li.is-one {
    width: 360px;
    margin: 0;
}
.pageCv-btn {
    width: 100%;
    height: 60px;
    box-sizing: border-box;
    display: table;
    table-layout: fixed;
    letter-spacing: -.4em;
    background: #fff;
}
.pageCv-btn a {
    color: #000;
    font-size: 20px;
    line-height: 1;
    font-weight: bold;
    display: table-cell;
    letter-spacing: normal;
    vertical-align: middle;
    text-align: center;
    text-decoration: none;
    border-bottom: 4px solid #c3b600;
    background: #ffee00 url(../svg/icn_arw_r_right_g.svg) no-repeat center right 10px;
    background-size: 16px auto;
}
.pageCv-btn a span {
    display: inline-block;
    position: relative;
    padding: 0 0 0 1.6em;
}
.pageCv-btn a span:before {
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 50%;
    width: 24px;
    height: 24px;
    transform: translateY(-50%);
}
.pageCv-btn.is-siryo a span:before {
    background: url(../svg/icn_siryo.svg) no-repeat center;
    background-size: auto 100%;
}
.pageCv-btn.is-sodan a span:before {
    background: url(../svg/icn_sodan.svg) no-repeat center;
    background-size: 100% auto;
}
.pageCv-btn.is-info a span:before {
    background: url(../svg/icn_phone_ye.svg) no-repeat center;
    background-size: 100% auto;
    left: 2px;
}
.cv_wrap.ver2 {
    background: #dee9fa url(../img/cv_bg.jpg) no-repeat center;
    padding: 42px 50px;
}
.cv_wrap.ver2 .cv_ttl {
    font-size: 32px;
    color: #000;
    text-align: left;
    margin: 0 0 20px;
}
.cv_wrap.ver2 .cv_tel {
    margin: 0 0 20px;
}
.cv_wrap.ver2 .cvTel_btn {
    text-align: left;
}
.cv_wrap.ver2 .cvTel_btn a {
    font-size: 56px;
    color: #004098;
}
.cv_wrap.ver2 .cvTel_btn a span:before {
    width: 38px;
    height: 38px;
}
.cv_wrap.ver2 .cvTel_tx {
    font-size: 14px;
    color: #000;
    padding: 10px 0 0 0;
    text-align: left;
}
.cv_wrap.ver2 .pageCv_btn {
    -webkit-box-pack: start;
    -ms-flex-pack: start;
    justify-content: flex-start;
}
.cv_wrap.ver2 .pageCv_btn li {
    margin: 0 10px 0 0;
    width: 260px;
}
.cv_wrap.ver2 .pageCv-btn {
    height: 50px;
}
@media (min-width: 896px) {
    .pageCv-btn a:hover {
        opacity: 0.8;
    }
}
/*gdc*/
.gdc_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: nowrap;
    flex-wrap: nowrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin: 0 0 40px;
}
.gdc_list li {
    width: 235px;
}
.gdc_btn {
    display: table;
    table-layout: fixed;
    letter-spacing: -.4em;
    width: 100%;
    height: 70px;
}
.gdc_btn.is-or a {
    background-color: #e2980e;
}
.gdc_btn.is-gr a {
    background-color: #4fa6a9;
}
.gdc_btn.is-bl a {
    background-color: #167eb9;
}
.gdc_btn.is-pl a {
    background-color: #6070cc;
}
.gdc_btn a {
    display: table-cell;
    letter-spacing: normal;
    vertical-align: middle;
    text-align: center;
    font-size: 16px;
    font-weight: bold;
    line-height: 1.6;
    color: #fff;
    text-decoration: none;
    background-image: url(../svg/icn_arw_r_right_w.svg);
    background-repeat: no-repeat;
    background-position: center right 10px;
    background-size: 15px auto;
    padding: 0 26px;
}
.gdc_btn a span {
    display: inline-block;
    font-size: 12px;
    max-width: 120px;
    width: 100%;
    height: 20px;
    line-height: 20px;
    background: #ffffff;
}
.gdc_btn.is-or a span {
    color: #e2980e;
}
.gdc_btn.is-gr a span {
    color: #4fa6a9;
}
.gdc_btn.is-bl a span {
   color: #167eb9;
}
.gdc_btn.is-pl a span {
    color: #6070cc;
}
.gdc_dtl {
    padding-top: 10px;
}
.gdc_dtl li {
    width: auto;
    display: inline-block;
    padding-right: 1.5em;
}
.gdc_dtl li:last-child {
    padding-right: 0;
}
.gdc_dtl a {
    display: block;
    color: #004098;
    font-size: 14px;
    line-height: 1;
    font-weight: bold;
    padding-right: 1em;
    background: url(../svg/icn_arw_r_right.svg) no-repeat center right;
    background-size: 12px auto;
}
/*linklist*/
.linklist_wrap {
    padding: 80px 0;
}
.linklist_wrap.is-onl {
    padding: 60px 0 0 0;
}
.linklist_wrap .gdc_list {
    margin: 0;
}
.lnkLst_warp {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between;
}
.lnkLst_box {
    width: 180px;
}
.lnkLst_ttl {
    font-size: 13px;
    line-height: 1;
    font-weight: bold;
    border-bottom: 1px solid #004098;
}
.lnkLst_ttl span {
    display: block;
    padding: 12px 0;
}
.lnkLst_ttl a {
    display: block;
    padding: 13px 0;
    background: url(../svg/icn_tgl_plus.svg) no-repeat center right;
    background-size: 14px auto;
}
.lnkLst_ttl.on a {
    background: url(../svg/icn_tgl_minus.svg) no-repeat center right;
    background-size: 14px auto;
}
.lnkLst_mds {
    font-size: 14px;
    line-height: 1;
    font-weight: bold;
    padding: 13px 0;
}
.lnkLst_box li {
    background: url(../img/line.png) repeat-x bottom left;
}
.lnkLst_box li a {
    display: block;
    position: relative;
    color: #004098;
    font-size: 12px;
    line-height: 1.25;
    font-weight: bold;
    padding: 13px 0 12px 1em;
    background: url(../svg/icn_arw_right.svg) no-repeat top 16px left;
    background-size: 6px auto;
}
.lnkLst_box li.is-non a {
    pointer-events: none;
    color: #666;
    background: #eee url(../svg/icn_arw_right_g2.svg) no-repeat top 16px left;
    background-size: 6px auto;
}
.lnkLst_sidou .lnkLst_box {
    width: 240px;
}
.lnkLst_sidou ul {
    display: none;
}
/*floating*/
.flowCv_btn {
    display: none;
}

@media (min-width: 896px) {
    .gdc_btn a:hover,
    .scStat_inp .is-btn a:hover {
        opacity: 0.8;
    }
    .scStat_btn a:hover{
        color: #fff;
        background: #004098 url(../svg/icn_arw_r_right_w.svg) no-repeat center right 10px;
        background-size: 12px auto;
    }
    .scStat_btn a:hover span:before {
        background: url(../svg/icn_train_w.svg) no-repeat center;
        background-size: 100% auto;
    }
    .scStat_btn.is-ver2  a:hover span:before {
        background: url(../svg/icn_station_w.svg) no-repeat center;
        background-size: 100% auto;
    }
    .scPref_lst li a:hover,
    .scRece_scl a:hover {
        text-decoration: none;
    }
}
@media only screen and (max-width: 896px) {
    body {
        font-size: 13px;
        line-height: 1.7;
        min-width: 320px;
        width: 100%;
        padding: 0 0 70px;
    }
    body.onfix {
        padding: 70px 0 70px;
    }
    body.form_entry {
        padding: 0 0 0;
    }
    body.is-on {
        /*position: fixed;*/
    }
    body.is-non {
        padding: 70px 0 70px;
    }
    /********************************
    C系CSS
    *********************************/
    .c-pc {
        display: none;
    }
    .c-pc-in {
        display: none;
    }
    .c-sp {
        display: block;
    }
    .c-sp-in {
        display: inline;
    }
    .c-wrap {
        width: 100%;
        margin: 0;
    }
    .c_btn {
        width: 100%;
        margin: 10px auto 0 auto;
    }
    .c-btn a {
        height: 45px;
        font-size: 14px;
        background: #004098 url(../svg/icn_arw_right_w.svg) no-repeat center left 15px;
        background-size: 5px auto;
    }
    .c-btn.is-none a {
        background-size: 5px auto;
    }
    .c-btn.is-ver2 a {
        background: #fff url(../svg/icn_arw_right.svg) no-repeat center left 15px;
        background-size: 5px auto;
    }
    .c-breadcrumbs {
        width: 100%;
        padding: 20px 15px;
        box-sizing: border-box;
    }
    .c-breadcrumbs {
        margin: 30px 0 0 0;
        padding: 0 15px;
    }
    .c-breadcrumbs_in {
        width: 100%;
        padding: 15px 0;
    }
    .c-breadcrumbs ul {
        line-height: 1;
    }
    .c-breadcrumbs li {
        display: inline;
        position: relative;
        font-size: 10px;
    }
    .c-breadcrumbs li:after {
        content: '';
        width: 6px;
        height: 10px;
        margin: 0 14px;
        background: url(../svg/icn_arw_right_dg.svg) no-repeat center center;
        background-size: 100% auto;
        display: inline-block;
    }
    .c-breadcrumbs li:last-child::after {
        content: none;
    }
    .c-breadcrumbs a {
        color: #7e7e7e;
        font-weight: bold;
        font-size: 10px;
        text-decoration: none;
    }
    .c-breadcrumbs li:first-child a {
        padding: 0 0 0 25px;
        position: relative;
    }
    .c-breadcrumbs li:first-child a:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;
        z-index: 9;
        width: 14px;
        height: 14px;
        margin: -7px 0 0 0;
        background: url(../svg/icn_home.svg) no-repeat center center;
        background-size: 100% auto;
    }
    /********************************
    header
    *********************************/
    header {
        position: relative;
        border-top: none;
        box-shadow: none;
    }
    .h1_ttl {
        padding: 10px 15px 0 10px;
        box-sizing: border-box;
    }
    .h1_ttl h1 ,
    .h1_ttl p {
        line-height: 1.2;
    }
    .h_top {
        width: 100%;
        /*position: relative;
        top: auto;*/
        margin: 0;
        box-shadow: 0 8px 5px -5px rgb(35 74 104 / 6%);
    }
    .h_top.on_fix {
        position: fixed;
        top: 0;
    }
    .h_top.onfix {
        position: fixed;
        top: 0;
    }
    .hTop_wrap {
        padding: 0 10px 0 0;
        height: 70px;
    }
    body.form_entry .hTop_wrap {
        height: 50px;
    }
    .hTop_logo {
        padding: 0 0 0 10px;
    }
    .hTop_btn {
        display: none;
    }
    .hTop_tel {
        display: none;
    }
    .h_btm {
        width: 100%;
    }
    .hBtm_wrap {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        border-left: none;
    }
    .hBtm_wrap li {
        width: 17%;
        height: 55px;
        border-right: none;
        border-top: 1px solid #fff;
    }
    .hBtm_wrap li.ver2 {
        display: none;
    }
    .hBtm_wrap li.ver2.is-feat {
        display: table;
    }
    .hBtm_wrap li.ver2.is-feat a {
        background: #004098;
        color: #fff;
    }
    .hBtm_wrap li:nth-child(4) {
        width: 26%;
    }
    .hBtm_wrap li.ver2.is-feat {
        width: 23%;
    }
    .hBtm_wrap li a {
        font-size: 13px;
        border-right: 1px solid #fff;
    }
    .hBtm_wrap li a span {
        display: inline;
        font-size: 13px;
    }
    .hBtm_wrap li.is-sc {
        display: none;
    }
    .hBtm_wrap li.is-sc a {
        background:#004098 url(../svg/icn_search_ye.svg) no-repeat left 8px center;
        background-size: 14px auto;
        padding: 0 0 0 14px;
        font-size: 11px;
    }
    .h_right {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
    }
    .h_scl_search {
        display: block;
        line-height: 1;
        margin-right: 10px;
    }
    .h_scl_search a {
        text-align: center;
        font-size: 11px;
        width: 100%;
        height: 54px;
        padding-top: 24px;
        box-sizing: border-box;
        line-height: 1.2;
        display: flex;
        align-items: center;
        justify-content: center;
        background: url(../svg/h_icn_scl_b.svg) no-repeat top 7px center / 25px auto;
        font-weight: bold;
        color: #004098;
    }
    .h_scl_req {
        display: block;
        line-height: 1;
        margin-right: 10px;
    }
    .h_scl_req a {
        text-align: center;
        font-size: 11px;
        width: 100%;
        height: 54px;
        padding-top: 24px;
        box-sizing: border-box;
        line-height: 1.2;
        display: flex;
        align-items: center;
        justify-content: center;
        background: url(../svg/icn_phone_ye.svg) no-repeat top 8px center / 20px auto;
        font-weight: bold;
        color: #004098;
    }
    /*body.is-non*/
    body.is-non .h_top {
        position: fixed;
        top: 0;
    }
    .menu_btn {
        display: block;
        width: 18px;
        height: 16px;
        z-index: 99;
        padding: 0;
        cursor: pointer;
        padding: 10px 14px 20px;
        position: relative;
        border: solid 2px #004098;
    }
   
    .menu_btn:after {
        content: "メニュー";
        position: absolute;
        bottom: 7px;
        right: 0;
        z-index: 9999;
        width: 48px;
        text-align: center;
        line-height: 1;
        color: #004098;
        font-weight: bold;
        font-size: 10px;
    }
    .menu_btn.active:after {
        content: "閉じる";
        position: absolute;
        bottom: 7px;
        right: 0;
        z-index: 9999;
        width: 48px;
        text-align: center;
        line-height: 1;
        color: #004098;
        font-weight: bold;
        font-size: 10px;
    }
    .menu_btn span,
    .menu_btn span:before,
    .menu_btn span:after {
        display: block;
        width: 100%;
        height: 3px;
        background: #004098;
        transition: all 0.5s;
        -ms-transition: all 0.5s;
        -moz-transition: all 0.5s;
        -webkit-transition: all 0.5s;
        backface-visibility: hidden;
        -ms-backface-visibility: hidden;
        -moz-backface-visibility: hidden;
        -webkit-backface-visibility: hidden;
    }
    .menu_btn span {
        position: relative;
        margin: 6px 0 0;
    }
    .menu_btn span:before,
    .menu_btn span:after {
        position: absolute;
        content: "";
    }
    .menu_btn span:before {
        top: -6px;
    }
    .menu_btn span:after {
        top: 6px;
    }
    .menu_btn.active span {
        transform: rotate(-45deg);
    }
    .menu_btn.active span:before {
        top: 0;
        transform: rotate(90deg);
    }
    .menu_btn.active span:after {
        top: 0;
    }
    .hMenu_cv.active {
        display: block;
    }
    .hMenu_cv {
        background: rgba(0, 0, 0, 0.4);
        height: 100vh;
        width: 100%;
        z-index: 9999;
        display:none;
        position: absolute;
        top: 50px;
        left: 0;
        right: 0;
        margin: auto;
        width: 100%;
    }
    .hMenu_in {
        margin: 0 0 0 20%;
        height: 100%;
        background: #fff;
    }
    .hMenu_nav {
        height: calc(100% - 70px);
        max-height: 597px;
        overflow-y: auto;
        width: 90%;
        z-index: 9999;
        position: fixed;
        top: 70px;
        left: auto;
        right: 0;
        margin: auto;
        /*background: #eeeeee;*/
        display: none;
    }
    .hMenu_bg {
        height: calc(100% - 70px);
        z-index: 9998;
        position: fixed;
        top: 70px;
        left: 0;
        width: 100%;
        background: rgba(0,0,0,0.4);
        display: none;
    }
    .hMenu_bg.is-active {
        display: block;
    }
    body.onfix .hMenu_nav {
        height: calc(100% - 70px);
        top: 70px;
    }
    .hMenu_nav.is-active {
        display: block;
    }
    .hMenu_nav .search_warp {
        background: #ffffff;
        margin: 0;
    }
    .spNav_wrap > ul {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .spNav_wrap > ul > li {
        width: 100%;
        box-sizing: border-box;
        background: #eeeeee;
    }
    .spNav_wrap > ul > li.ver2 {
        width: 33.3333333%;
        border-right: solid 1px #fff;
    }
    .spNav_wrap > ul > li.ver2.is-br0 {
        border-right: 0;
    }
    .spNav_wrap > ul > li.is-half {
        width: 50%;
        border-right: 1px solid #ffffff;
    }
    .spNav_wrap > ul > li.is-half.is-no {
        border-right: 0;
    }
    .hMenu-lnk {
        border-bottom: 1px solid #fff;
        box-sizing: border-box;
    }
    .hMenu-lnk.is-src {
        background: url(../svg/icn_search_ye.svg) no-repeat left 15px center;
        background-size: 13px auto;
    }
    .hMenu-lnk a {
        display: table;
        width: 100%;
        height: 50px;
        line-height: 1.2;
        text-decoration: none;
        font-size: 13px;
        font-weight: bold;
        box-sizing: border-box;
        padding: 0 25px 0 15px;
        background: url(../svg/icn_arw_right.svg) no-repeat right 15px center;
        background-size: 4px auto;
    }
    .hMenu-lnk.is-src a {
        padding: 0 25px 0 40px;
    }
    .spNav_wrap li.ver2.is-faq a {
        padding-left: 10px;
        padding-right: 20px;
    }
    .spNav_wrap li.ver2 .hMenu-lnk a {
        background: url(../svg/icn_arw_right.svg) no-repeat right 5px center;
        background-size: 4px auto;
        padding: 0 10px 0 10px;
        font-size: 12px;
    }
    .spNav_wrap li.ver2 .hMenu-lnk.is-src {
        background: url(../svg/icn_search_ye.svg) no-repeat left 10px center;
        background-size: 13px auto;
    }
    .spNav_wrap li.ver2 .hMenu-lnk.is-src a {
        padding-left: 28px;
    }
    .hMenu-lnk.js-tab a {
        background: url(../svg/icn_solo_plus.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    .hMenu-lnk.js-tab.is-on a {
        background: url(../svg/icn_solo_minus.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    .hMenu-lnk.js-tab.is-el a {
        color: #ffffff;
        background: #e2980e url(../svg/icn_solo_plus_wh.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    .hMenu-lnk.js-tab.is-el.is-on a {
        background: #e2980e url(../svg/icn_solo_minus_wh.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    .hMenu-lnk.js-tab.is-jn a {
        color: #ffffff;
        background: #4fa6a9 url(../svg/icn_solo_plus_wh.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    .hMenu-lnk.js-tab.is-jn.is-on a {
        background: #4fa6a9 url(../svg/icn_solo_minus_wh.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    .hMenu-lnk.js-tab.is-hg a {
        color: #ffffff;
        background: #167eb9 url(../svg/icn_solo_plus_wh.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    .hMenu-lnk.js-tab.is-hg.is-on a {
        background: #167eb9 url(../svg/icn_solo_minus_wh.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    /*
    .hMenu-lnk.js-tab.is-ik a {
        color: #ffffff;
        background: #6070cc url(../svg/icn_solo_plus_wh.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    .hMenu-lnk.js-tab.is-ik.is-on a {
        background: #6070cc url(../svg/icn_solo_minus_wh.svg) no-repeat right 15px center;
        background-size: 7px auto;
    }
    */
    .hMenu-lnk.is-ik a {
        color: #ffffff;
        background: #6070cc url(../svg/icn_arw_right_w.svg) no-repeat right 15px center;
        background-size: 4px auto;
    }
    .hMenu-lnk .is-btn {
        display: table-cell;
        text-align: left;
        vertical-align: middle;
    }
    .hMenu_lnks {
        background:  #fff;
    }
    .hMenu_lnks.is-half {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .hMenu_lnks.is-half .hMenu-lnks {
        width: 50%;
        box-sizing: border-box;
        border-right: 1px solid #eeeeee;
    }
    .hMenu_lnks.is-half .hMenu-lnks:nth-child(2n) {
        border-right: 0;
    }
    .hMenu-lnks {
        box-sizing: border-box;
        border-bottom: 1px solid #eeeeee;
    }
    .hMenu-lnks a {
        display: table;
        width: 100%;
        height: 50px;
        line-height: 1.2;
        text-decoration: none;
        font-size: 12px;
        font-weight: bold;
        box-sizing: border-box;
        padding: 0 20px 0 10px;
        background: url(../svg/icn_arw_right.svg) no-repeat right 15px center;
        background-size: 4px auto;
    }
    .hMenu-lnks.is-non a {
        pointer-events: none;
        background: url(../svg/icn_arw_right_g2.svg) no-repeat right 15px center;
        background-size: 4px auto;
        background-color: #eee;
        color: #666;
    }
    .hMenu-lnks .is-btn {
        display: table-cell;
        text-align: left;
        vertical-align: middle;
    }
    .subNav_wrap {
        background: #ffffff;
        padding: 15px 15px;
    }
    .subNav_wrap ul {
        text-align: center;
        letter-spacing: -.40em;
    }
    .subNav_wrap ul li {
        display: inline-block;
        letter-spacing: normal;
        margin: 0 5px 0 0;
        padding: 0 5px 0 0;
        border-right: 1px solid #4e4e4e;
        line-height: 1.2;
    }
    .subNav_wrap ul li:last-child {
        margin: 0 0 0 0;
        padding: 0 0 0 0;
        border-right: 0;
    }
    .subNav_wrap ul li a {
        color: #4e4e4e;
        font-size: 12px;
        font-weight: bold;
        text-decoration: none;
    }
    .subNav_wrap ul li.is-blnk a {
        padding: 0 1em 0 0;
        position: relative;
    }
    .subNav_wrap ul li.is-blnk a:before {
        content: '';
        display: block;
        position: absolute;
        right: 0;
        top: 0;
        width: 8px;
        height: 8px;
        background: url(../svg/icn_window.svg) no-repeat 0 0;
        background-size: 100% auto;
    }
    .js-openTab {
        display: none;
    }
    .js-openTab.is-on {
        display: block;
    }
    /********************************
    footer
    *********************************/
    .ft_wrap {
        padding: 0 0 50px;
    }
    .fTop_logo {
        padding: 30px 0 20px;
    }
    .fBtm_wrap {
        padding: 20px 0 0;
        text-align: center;
        background: url(../img/line.png) repeat-x top left;
    }
    .fBtm_map {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
        padding: 0 0 10px;
    }
    .fBtm_map li {
        padding: 0 3px;
    }
    .fBtm_map li a {
        font-size: 12px;
        font-feature-settings: "palt";
        -webkit-font-feature-settings: "palt";
    }
    .fBtm_copy {
        line-height: 1.4;
        letter-spacing: -0.04em;
    }
    /********************************
    CONTETS
    *********************************/
    .c-pagetop {
        bottom: 80px;
        right: 15px;
    }
    .c-pagetop a {
        width: 36px;
        height: 36px;
    }
    .c-pagetop a:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50%;
        margin: -5px 0 0 -7px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 0 7px 9px 7px;
        border-color: transparent transparent #ffffff transparent;
    }
    body.faq_index .mvbs_wrap {
        background: url(../img/sp/faq_bg.jpg) no-repeat center center / cover;
    }
    .mvbs_in {
        width: auto;
        height: 130px;
        margin: 0;
        background: url(../img/sp/main_base_mv.png) no-repeat right bottom;
        background-size: 202px auto;
    }
    .mvbs-ttl {
        font-size: 32px;
        padding: 0 15px 0 15px;
    }
    .mvbs-ttl.is-fss {
        font-size: 24px;
    }
    .mvbs-ttl .is-fs {
        font-size: 18px;
    }
    .mv_warp {
        height: 115px;
    }
    .mv_ttl {
        font-size: 18px;
    }
    body.info .mv_warp,
    body.info_detail .mv_warp {
        background: #f2f2f2 url(../img/sp/mv_imfo.jpg) center center / cover no-repeat;
    }
    .cnt_ttl {
        font-size: 18px;
        padding: 0 0 18px;
    }
    .cnt_ttl:after {
        width: 46px;
        height: 3px;
        margin-left: -23px;
    }
    .cnt_ttl span {
        font-size: 12px;
        padding: 0 0 5px;
    }
    /*emergency*/
    .emergency_box {
        width: calc(100% - 30px);
        margin: 15px 15px;
        /*
        padding: 15px 15px;
        */
        display: inline-block;
    }
    .emergency_btn a {
        font-size: 12px;
        padding: 5px 20px 5px 10px;
        background: url(../svg/icn_arw_down_pk.svg) no-repeat center right 10px;
        background-size: 10px auto;
    }
    .emergency_btn span {
        padding: 0 0 0 1.5em;
    }
    .emergency_btn span:after {
        width: 12px;
        height: 12px;
    }
    /*
    .emergency_news {
        padding: 10px 0 0;
    }
    */
    .emergency-news {
        font-size: 12px;
        line-height: 1.6;
    }
    .emergency_btn.on a {
        background: url(../svg/icn_arw_up_pk.svg) no-repeat center right 10px;
        background-size: 10px auto;
    }
    /*成績が伸びる3つの理由*/
    .charm_bg:before {
        width: -webkit-calc(100%);
        width: calc(100%);
        height: 335px;
        top: -225px;
        background: url(../img/sp/charm_img2.jpg?date=20231222) top center / cover no-repeat;
        z-index: -1;
    }
    body.o-elementary .charm_bg:before {
        background: url(../img/sp/charm_img_ele.jpg) top center / cover no-repeat;
    }
    body.o-junior .charm_bg:before {
        background: url(../img/sp/charm_img_jnr2.jpg?date=20231222) top center / cover no-repeat;
    }
    body.o-high .charm_bg:before {
        background: url(../img/sp/charm_img_hgh.jpg) top center / cover no-repeat;
    }
    body.o-ikkankou .charm_bg:before {
        background: url(../img/sp/charm_img_ikk3.jpg?date=20231222) top center / cover no-repeat;
    }
    .charm_warp {
        padding: 0 15px;
    }
    .charm_ttl {
        padding: 50px 0 0;
        background: #fff;
        margin: 0 0 30px;
    }
    .charm-sbttl {
        font-size: 12px;
        margin: 0 0 15px;
    }
    .charm-ttl {
        font-size: 30px;
        line-height: 1;
    }
    .charm-ttl .is-bg {
        font-size: 40px;
    }
    .charm-ttl .is-line {
        background-size: 100% 15px;
    }
    .charm_lst {
        display: block;
        margin: 0 0 25px;
    }
    .charm_lst li {
        margin: 0 0 20px;
    }
    .charm_lst li:last-child {
        margin: 0;
    }
    .charm_box {
        padding: 65px 20px 0;
    }
    .charm_box:after {
        left: 50%;
        margin-left: -25px;
    }
    .charm_box dt {
        font-size: 22px;
        text-align: center;
    }
    .charm_box dd {
        font-size: 13px;
        padding: 15px 0 0;
    }
    .charm_btn {
        width: 100%;
        box-sizing: border-box;
    }
    .charm_btnWrap {
        display: block;
    }
    .charm_btnWrap .charm_btn {
        width: 100%;
        box-sizing: border-box;
        margin-top: 20px;
    }
    /*search*/
    .c-src_wrap {
        padding: 30px 15px 0 15px;
    }
    .search_warp {
        background: #f2f2f2;
        padding: 15px 15px 20px;
        margin: 0 0 30px;
    }
    .search_warp.is-ver2 {
        margin: 30px 0 0;
    }
    .scPref_ttl,
    .scRece_ttl {
        font-size: 13px;
    }
    .scPref_ttl:before,
    .scRece_ttl:before {
        width: 15px;
        height: 15px;
    }
    .scRece_ttl {
        margin: 0 0 15px;
    }
    .search_ttl {
        font-size: 18px;
        padding: 0 0 18px;
        margin: 0 0 15px;
    }
    .search_ttl:before{
        width: 46px;
        height: 3px;
        margin-left: -23px;
    }
    .scPref_ttl,
    .scRece_ttl {
        font-size: 13px;
        padding-right: 0;
        margin: 0 0 8px;
    }
    .scRece_ttl {
        padding: 0 0 0 1.5em;
    }
    .scPref_ttl:before{
        width: 16px;
        height: 20px;
    }
    .scPref_box {
        display: block;
        padding: 10px 15px;
        margin: 0 0 15px;
    }
    .scPref_lst li {
        padding-right: 10px;
    }
    .scPref_lst li a {
        font-size: 13px;
    }
    .scPref_lst.is-tri {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    }
    .scRece_box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 10px 15px;
    }
    .scStat_box {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
        margin: 0 0 15px;
    }
    .scStat_btn {
        /*
        width: 48%;
        */
        width: 100%;
        height: 45px;
        margin: 0;
    }
    .scStat_btn a {
        font-size: 14px;
        padding: 0 8px 0 0;
        background:#fff url(../svg/icn_arw_r_right.svg) no-repeat center right 8px;
        background-size: 12px auto;
    }
    .c-src_wrap .scStat_btn a {
        font-size: 13px;
    }
    .scStat_btn a span {
        padding: 0 0 0 1.5em;
    }
    .scStat_btn.is-ver2 a span {
        padding: 0 5px 0 2em;
    }
    .scStat_btn a span:before {
        width: 15px;
        height: 20px;
    }
    .scStat_btn.is-ver2 a span:before {
        width: 22px;
        height: 24px;
    }
    .scStat_inp {
        margin: 15px 0 0;
    }
    .scStat_inp input {
        height: 45px;
        padding: 0 55px 0 15px;
        font-size: 12px;
    }
    .scStat_inp .is-btn a {
        padding: 15px 15px;
    }
    .scStat_inp .is-btn a img {
        width: 14px;
        height: 14px;
    }
    .scRece_lst {
        width: 100%;
    }
    .scRece_lst li {
        width: 50%;
    }
    .scRece_scl {
        margin-right: 0.2em;
    }
    .scRece_scl a {
        font-size: 12px;
        padding: 0;
    }
    .c-src_wrap .scRece_scl a {
        font-size: 11px;
    }
    .scRece_tel a {
        font-size: 12px;
        pointer-events: painted;
    }
    .c-src_wrap .scRece_tel a {
        font-size: 11px;
    }
    .scRece_tel a span {
        position: relative;
        padding: 0 0 0 1em;
    }
    .scRece_tel a span:before {
        width: 10px;
        height: 10px;
    }
    .scPref_box.is-solo {
        width: 100%;
        margin: 30px auto 0;
    }
    .scPref_box.is-solo.n2 {
        width: 100%;
    }
    .scPref_box.is-solo .scPref_lst li {
        padding-right: 10px;
    }
    /*cv*/
    .cv_cover {
        margin: 0 0 30px;
    }
    body.summer.o-elementary .cv_cover ,
    body.summer.o-junior .cv_cover ,
    body.summer.o-high .cv_cover {
        margin: 30px 0 0;
    }
    .cv_cover.ver2 {
        margin: 30px 15px;
    }
    .cv_wrap {
        padding: 30px 15px;
    }
    .cv_wrap.is-ver2 {
        padding: 20px 15px;
        margin: 0 15px;
    }
    body.results .cv_wrap.is-ver2 {
        margin: 0 0;
    }
    .cv_wrap.is-s {
        padding: 20px 15px;
    }
    header .cv_wrap.is-s {
        padding: 20px 10px;
    }
    .cv_ttl {
        font-size: 18px;
        margin: 0 0 20px;
    }
    .cv_wrap.is-ver2 .cv_ttl {
        margin: 0 0 15px;
    }
    .cv_tel {
        display: block;
        margin: 0 0 15px;
    }
    .cv_wrap.is-ver2 .cv_tel {
        margin: 0 0 10px;
    }
    .cv_wrap.is-ver3 .cv_tel {
        margin: 20px 0 0;
    }
    .cvTel_tx {
        font-size: 10px;
        line-height: 1.6;
        text-align: center;
        padding: 10px 0 0;
    }
    .cvTel_btn {
        width: 100%;
        max-width: 335px;
        margin: 0 auto;
    }
    .cv_wrap.is-ver3 .cvTel_btn {
        max-width: 220px;
    }
    .cvTel_btn a {
        font-size: 34px;
        color: #000;
        display: block;
        text-align: center;
        background: #fff;
        padding: 4px 0 4px;
        border-bottom: 3px solid #c8c7c3;
        border-radius: 70px;
        position: relative;
        pointer-events: painted;
    }
    .cv_wrap.is-ver3 .cvTel_btn a {
        font-size: 24px;
        padding: 8px 0 5px;
    }
    .cv_wrap.is-ver3 .cvTel_btn a span:before {
        width: 18px;
        height: 18px;
        left: 22px;
    }
    .cvTel_btn a:after {
        display: block;
        font-size: 10px;
        line-height: 1;
        color: #000;
        position: absolute;
        left: 50%;
        transform: translateY(-50%);
        margin-left: -55px;
        font-family: 'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴシック', 'Hiragino Sans', 'Arial', 'メイリオ', sans-serif;
    }
    .cvTel_btn a span {
        display: block;
        padding: 0 0 0 30px;
    }
    .cv_wrap.is-ver3 .cvTel_btn a span {
        padding: 0 0 0 25px;
    }
    .cvTel_btn a span:before {
        width: 30px;
        height: 30px;
        left: 40px;
        background: url(../svg/icn_phone_ye.svg) no-repeat center;
        background-size: 100% auto;
    }
    header .cvTel_btn a span:before {
        left: 50%;
        margin-left: -125px;
    }
    .cv_wrap.is-ver2 .cvTel_btn a span:before {
        left: 25px;
    }
    .pageCv_btn li {
        width: 100%;
        max-width: 160px;
        margin: 0 7px;
    }
    header .pageCv_btn li {
        margin: 0 5px 0 0;
    }
    header .pageCv_btn li:last-child {
        margin: 0 0 0 5px;
    }
    .pageCv_btn li.is-one {
        width: 100%;
        max-width: 100%;
        margin: 0 5px;
    }
    .pageCv-btn {
        height: 40px;
    }
    .pageCv-btn a {
        font-size: 14px;
        border-bottom: 3px solid #c3b600;
        background: #ffee00 url(../svg/icn_arw_r_right_g.svg) no-repeat center right 5px;
        background-size: 12px auto;
    }
    .pageCv-btn a span {
        display: inline-block;
        position: relative;
        padding: 0 0 0 1.8em;
    }
    .cv_wrap.is-ver2 .pageCv-btn a span {
        padding: 0 0.8em 0 1.8em;
    }
    .ver2 .pageCv-btn a span {
        padding: 0 0 0 1.8em;
    }
    .pageCv-btn a span:before {
        width: 16px;
        height: 16px;
    }
    .cv_wrap.ver2 {
        background: #dee9fa url(../img/sp/cv_bg.jpg) no-repeat bottom right;
        background-size: 345px auto;
        padding: 15px 15px;
    }
    .cv_wrap.ver2 .cv_ttl {
        font-size: 18px;
        text-align: center;
        margin: 0 0 10px;
    }
    .cv_wrap.ver2 .cv_tel {
        margin: 0 0 15px;
    }
    .cv_wrap.ver2 .cvTel_btn {
        text-align: center;
    }
    .cv_wrap.ver2 .cvTel_btn a {
        font-size: 37px;
    }
    .cv_wrap.ver2 .cvTel_btn a span:before {
        width: 30px;
        height: 30px;
        left: 20px;
    }
    .cv_wrap.ver2 .cvTel_tx {
        font-size: 10px;
        padding: 10px 0 0 0;
        text-align: center;
    }
    .cv_wrap.ver2 .pageCv_btn {
        display: block;
    }
    .cv_wrap.ver2 .pageCv_btn li {
        margin: 10px 0 0 0;
        width: 100%;
        max-width: 170px;
    }
    .cv_wrap.ver2 .pageCv_btn li:first-child {
        margin: 0;
    }
    .cv_wrap.ver2 .pageCv-btn {
        height: 35px;
    }
    .pageCv-btn a {
        font-size: 13px;
    }
    /*gdc*/
    .gdc_list {
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 0;
        padding: 0 15px;
    }
    .gdc_list li {
        width: 48%;
        margin: 15px 0 0;
    }
    .gdc_list li:nth-child(1) ,
    .gdc_list li:nth-child(2) {
        margin: 0 0 0;
    }
    .gdc_btn {
        height: 55px;
    }
    .gdc_btn a {
        font-size: 12px;
        background-image: url(../svg/icn_arw_r_right_w.svg);
        background-position: center right 5px;
        background-size: 12px auto;
        padding: 0 15px 0 3px;
    }
    body.Android .gdc_btn a {
        line-height: 1.7;
    }
    .gdc_btn a span {
        max-width: 110px;
        height: 15px;
        line-height: 15px;
        font-size: 10px;
    }
    body.Android .gdc_btn a span {
        padding: 1px 0 0 0;
    }
    .gdc_dtl {
        padding-top: 5px;
    }
    .gdc_dtl li {
        width: auto;
        padding-right: .5em;
    }
    .gdc_dtl a {
        font-size: 12px;
        padding-right: 1em;
        background: url(../svg/icn_arw_r_right.svg) no-repeat center right;
        background-size: 10px auto;
    }
    /*linklist*/
    .linklist_wrap {
        padding: 0 0 30px 0;
    }
    .linklist_wrap.is-onl {
        padding: 30px 0 0 0;
    }
    .linklist_wrap .gdc_list {
        margin: 0;
    }
    .lnkLst_flx {
        margin: 15px 0 0 0;
    }
    .lnkLst_flx:first-child {
        margin: 0 0 0 0;
    }
    .lnkLst_warp {
        display: block;
        padding: 0 15px;
    }
    .lnkLst_box {
        width: 100%;
    }
    .lnkLst_sidou .lnkLst_box {
        width: 100%;
    }
    .lnkLst_ttl {
        font-size: 15px;
    }
    .lnkLst_ttl a {
        padding: 14px 0;
    }
    .lnkLst_ttl span {
        padding: 14px 0;
    }
    .lnkLst_mds {
        font-size: 15px;
        padding: 15px 0;
    }
    .lnkLst_box li {
        background: url(../img/line.png) repeat-x bottom left;
    }
    .lnkLst_box li:last-child {
        background: none;
        border-bottom: 1px solid #004098;
    }
    .lnkLst_box li a {
        font-size: 14px;
        padding: 15px 0 15px 1.5em;
        background: url(../svg/icn_arw_right.svg) no-repeat top 19px left 5px;
        background-size: 6px auto;
    }
    .lnkLst_box li.is-non a {
        background: #eee url(../svg/icn_arw_right_g2.svg) no-repeat top 19px left 5px;
        background-size: 6px auto;
    }
    /*floating*/
    .flowCv_btn {
        background: #004098;
        padding: 15px 10px;
        position: fixed;
        bottom: 0;
        left: 0;
        right: 0;
        z-index: 99;
    }
    .flowCv_btn.active {
        display: block;
    }
    .flowCv_btn .pageCv_btn {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .flowCv_btn .pageCv_btn li {
        width: 32%;
        margin: 0;
    }
    .flowCv_btn .pageCv_btn li.ver2 {
        width: 66%;
        max-width: 100%;
    }
    .flowCv_btn .pageCv-btn a {
        font-size: 13px;
        padding: 0 10px 0 0;
    }
    body.Android .flowCv_btn .pageCv-btn a {
        padding: 1px 10px 0 0;
    }
    body.Android .flowCv_btn .pageCv-btn.is-info a {
        padding: 1px 0 0 0;
    }
    .flowCv_btn .pageCv-btn.is-info a {
        border-bottom: 3px solid #c8c7c3;
        background: #fff;
        padding: 0 0 0 0;
        /*
        background: #fff url(../svg/icn_arw_r_right_ye.svg) no-repeat center right 5px;
        background-size: 12px auto;
        */
    }
    .hTop_logo a img {
        width: 155px;
        height: auto;
    }
}/*@media*/
@media only screen and (max-width: 374px) {
    .spNav_wrap li.ver2.is-faq a {
        padding-left: 8px;
    }
    .spNav_wrap > ul > li.ver2 a {
        font-size: 11px;
    }
    .spNav_wrap li.ver2 .hMenu-lnk.is-src a {
        padding-left: 23px;
    }
    .spNav_wrap li.ver2 .hMenu-lnk.is-src {
        background: url(../svg/icn_search_ye.svg) no-repeat left 7px center;
        background-size: 13px auto;
    }
    .scPref_lst li a {
        font-size: 11px;
    }
    .c-src_wrap .scStat_btn a {
        font-size: 11px;
    }
    .scStat_btn a span {
        padding: 0 5px 0 1.9em;
    }
    .scStat_btn.is-ver2 a span {
        padding: 0 12px 0 2em;
    }
    .scStat_btn.is-ver2 a span:before {
        width: 18px;
        height: 21px;
    }
    .scRece_lst li {
        display: block;
    }
    .hBtm_wrap li a {
        font-size: 11px;
    }
    .fBtm_map li a {
        font-size: 10px;
    }
    .pageCv-btn a {
        font-size: 11px;
    }
    .flowCv_btn .pageCv-btn a {
        font-size: 11px;
    }
    .cvTel_btn a span:before {
        left: 16px;
    }
    .cv_wrap.ver2 {
        background-size: 310px auto;
    }
    .cv_wrap.ver2 .cvTel_btn a {
        font-size: 30px;
    }
    .cv_wrap.ver2 .pageCv_btn li {
        max-width: 138px;
    }
    .gdc_btn a {
        font-size: 10px;
        padding: 0 10px 0 5px;
    }
    .gdc_btn a span {
        max-width: 100px;
    }
    .cv_wrap.is-ver2 .cvTel_btn a span:before {
        width: 20px;
    }
    .hTop_logo a img {
        width: 120px;
        height: auto;
    }
}/*@media*/
@media only screen and (max-width: 350px) {
    .h_scl_search {
        margin-right: 5px;
    }
    .h_scl_search a {
        font-size: 10px;
    }
    .h_scl_req {
        margin-right: 5px;
    }
    .h_scl_req a {
        font-size: 10px;
    }
}
