@charset "shift-jis";
/* --------------------------------------------------------------------
	Financial Academy

	Style Info: cart setting

-------------------------------------------------------------------- */
*{ box-sizing: border-box;}
#tab5_left,
.style1607_inyo li{ box-sizing: content-box;}
body{
    counter-reset: vol 0;
    overflow-x: hidden;
    font-size: 17px;
}

.tac { text-align: center;}
.tar { text-align: right;}
.txt_orange { color: #ea5413;}
.txt_red { color: #ff0000;}
.txt_blue { color: #2c4198;}
.txt_lblue { color: #0091d7;}
.mb50 { margin-bottom: 60px;}
.mb60 { margin-bottom: 60px;}
.mb70 { margin-bottom: 70px;}
.ml10 { margin-left: 10px;}
.ml20 { margin-left: 20px;}
.ml35 { margin-left: 35px;}

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

.kitei_sp{ display: none;}

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

a:hover{ opacity: .75;}

#contents { padding: 0 0 5px 0;}

section h2{
    font-size: 2rem;
    letter-spacing: .15em;
    font-weight: normal;
    line-height: 1.7;
    text-align: center;
    position: relative;
}
section h2::after{
    content: "";
    display: block;
    border-bottom: 2px solid #1e236e;
    width: 115px;
    margin: 20px auto 85px;
}
section h3{
    text-align: center;
    font-size: 23px;
}
section h3.line{
    position: relative;
    margin: 50px 0 80px;
    color: #1e236e;
    border-top: 1px solid #1e236e;
}
section h3.line > span{
    position: absolute;
    top: -1em;
    background: #f3f3f2;
    padding: 0 .6em;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    white-space: nowrap;
    font-size: 22px;
}
h3 .sub{
    display: block;
    font-size: .7em;
    font-weight: bold;
    padding-top: 30px;
}

.bg-beige { background-color: #f3f3f2;}

.lead{
    font-size: 20px;
    text-align: center;
}
.lead .color{
    font-size: 1.35em;
    color: #3193d5;
}
.caution{ font-size: .8em;}
.text_l{ font-size: 18px;}

img.per{ width: 86px;}
img.per02{ width: 133px;}
img.plus{ width: 112px;}
img.number{ width: 1.55em;}
img.no01{ width: 1.1em;}
img.per,
img.per02,
img.plus,
img.number,
img.no01{
    vertical-align: baseline;
    padding: 0 5px;
}


section .inner{
    width: 96%;
    max-width: 1000px;
    margin: 0 auto;
    padding: 90px 0;
}

.btn01{ text-align: center;}
.btn01 a{
    background: #c6272d url(/images/common/arrow02.svg) 96% center/18px no-repeat;
    color: #fff;
    padding: 10px 60px;
    font-size: 27px;
    width: 55%;
    max-width: 540px;
    display: block;
    margin: 60px auto;
    font-weight: normal;
    border-radius: 2.8px;
    box-shadow: 0 1.5px 0 #782332;
    letter-spacing: .175em;
}
.btn01 a:hover{
    text-decoration: none;
    opacity: .7;
}
.btn01.closing{
    background: #e0e0e0;
    color: #fff;
    padding: 10px 60px;
    font-size: 27px;
    width: 55%;
    max-width: 540px;
    display: block;
    margin: 60px auto 0;
    font-weight: normal;
    border-radius: 2.8px;
    box-shadow: 0 1.5px 0 #b7b7b7;
    letter-spacing: .175em;
}

.btn02 {
    text-align: center;
    background: #c6272d url(/images/common/arrow02.svg) 97% center/21px no-repeat;
    width: 100%;
/*    max-width: 410px;*/
    color: #fff;
    border: none;
    border-radius: 5px;
    font-size: 22px;
    padding: 15px;
    position: relative;
    letter-spacing: .1em;
    box-shadow: 0 1.5px 0 #782332;
}
a.btn02 {
    display: block;
    text-decoration: none;
    color: #fff;
}
/*.btn02::before{
    font-family: "Font Awesome 5 Free";
    content: '\f138';
    font-weight: 900;
    color: #fff;
    position: absolute;
    left: 20px;
    top: 25px;
}*/
.btn02:hover{
    cursor: pointer;
    opacity: .7;
}

#breadcrumbs{
    float: left;
    margin: 20px 0;
}
nav#breadcrumbs ol li{ font-size: .7em;}

#mv {
    text-align: center;
    position: relative;
    margin: 0 auto;
}
#mv > div{
    color: #fff;
    text-align: left;
    align-self: stretch;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    align-content: center;
}
#mv .img{
    padding: 75px 5%;
    background: url(/event/190514/img/mv.jpg) center center/cover no-repeat;
}
#mv .img .inner{
    position: relative;
    text-align: center;
    max-width: 650px;
    padding: 65px;
}
#mv .img .inner .bg{
    display: block;
    background: #1e236e;
    width: 100%;
    height: 100%;
    /* position: relative; */
    mix-blend-mode: multiply;
    position: absolute;
    left: 0;
    top: 0;
}
#mv h1 {
    font-family: Georgia,游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
    font-size: 80px;
    font-weight: normal;
    line-height: 1;
    margin-bottom: 10px;
    letter-spacing: .1em;
    z-index: 1;
    position: relative;
}
#mv p,
#mv .lead{
    font-size: 19px;
    /*    color: #333;
    font-weight: bold;*/
    margin-bottom: 30px;
    letter-spacing: .15em;
    z-index: 1;
    position: relative;
}
#mv .lead{ font-weight: normal;}
#mv .marker{
    background: #fff;
    display: inline-block;
    color: #1e236e;
    padding: 0 .5em;
}
#mv .title {
    width: 100%;
    height: 350px;
    overflow: hidden;
}
#mv .title video{ width: 100%;}
ul.type li{
    display: inline-block;
    font-size: 28px;
    background: #fff;
    color: #008fd9;
    padding: 0 30px;
    border-radius: 10px;
    margin-right: 20px;
}
#mv .catch{
    padding: 0;
    background: #e8e9f0;
/*    width: 100%;*/
    color: #1e236e;
    text-align: center;
}
#mv .catch .inner{ padding: 60px 0 0;}
#mv .catch .inner p{ font-size: 20px;}

#mv .catch .closing{
    background: #fff;
    padding: 10px 20px;
    border: 2px solid #d7063a;
    border-radius: 5px;
    margin-bottom: 2em;
}
#mv .catch .closing h2{
    color: #d7063a;
    text-align: left;
    font-size: 1.2em;
}
#mv .catch .closing h2::after{ content: none;}
#mv .catch .closing p{
    font-size: 1em;
    text-align: left;
    margin-bottom: 0;
    color: #000;
    letter-spacing: 0;
}


.ul_list01 > li{
    padding-left: 28px;
    background: url(/images/common/check_fabl.svg) left 4px/21px no-repeat;
    margin-bottom: 15px;
    line-height: 1.6;
}

.ol_list01{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.ol_list01 > li{
    background: #e8e9f0;
    color: #1e236e;
    text-align: center;
    font-size: 22px;
    position: relative;
}
.ol_list01 > li::before{
    content : "";
    padding: .7em;
    position: absolute;
    top: -.7em;
    left: 0;
    right: 0;
}
.ol_list01 > li:first-child::before{ background: url(/images/common/number/fabl/no01.svg)center center/contain no-repeat;}
.ol_list01 > li:nth-child(2)::before{ background: url(/images/common/number/fabl/no02.svg)center center/contain no-repeat;}
.ol_list01 > li:nth-child(3)::before{ background: url(/images/common/number/fabl/no03.svg)center center/contain no-repeat;}
.ol_list01 > li:nth-child(4)::before{ background: url(/images/common/number/fabl/no04.svg)center center/contain no-repeat;}
.ol_list01 > li:nth-child(5)::before{ background: url(/images/common/number/fabl/no05.svg)center center/contain no-repeat;}
.ol_list01 > li:nth-child(6)::before{ background: url(/images/common/number/fabl/no06.svg)center center/contain no-repeat;}
.ol_list01 > li:nth-child(7)::before{ background: url(/images/common/number/fabl/no07.svg)center center/contain no-repeat;}
.ol_list01 > li:nth-child(8)::before{ background: url(/images/common/number/fabl/no08.svg)center center/contain no-repeat;}
.ol_list01 > li a{
    color: #1e236e;
    text-decoration: underline;
}

.strong{
    background: #e8e9f0;
    color: #1e226e;
    text-align: center;
    padding: 30px;
}
.strong p{ font-size: 25px;}

.melit .ol_list01 li{
    width: 30%;
    padding: 50px 40px;
}

.join .ol_list01{ margin-bottom: 35px;}
.join .ol_list01 li{
    width: 100%;
    padding: 50px 35px 35px;
    font-size: 20px;
}
.join .ol_list01 li + li{ margin-top: 45px;}
.join .ul_list01{
    column-count: 2;
    margin-bottom: 50px;
}
.join .strong{ margin-bottom: 30px;}
.join .txt_m{
    margin-bottom: 1em;
    font-size: 16px;
}

.wrap_figure{
    position: relative;
    height: 670px;
    width: 100%;
    max-width: 920px;
    margin: 0 auto;
}
.wrap_figure h3{
    width: 300px;
    height: 300px;
    background: #1c236d;
    color: #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    border-radius: 100%;
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    margin: auto;
}
.wrap_figure .num li{
    width: calc(50% - 125px);
    max-width: 340px;
    text-align: center;
    font-size: 20px;
    color: #1c236d;
    position: absolute;
    margin: auto;

}
.wrap_figure .num li:first-child{
    left: 0;
    right: 0;
    top: 0;
}
.wrap_figure .num li:nth-child(2){
    right: 0;
    top: 110px;
}
.wrap_figure .num li:nth-child(3){
    right: 0;
    top: 320px;
}
.wrap_figure .num li:nth-child(4){
    right: 65px;
    bottom: 0;
}
.wrap_figure .num li:nth-child(5){
    left: 85px;
    bottom: 0;
}
.wrap_figure .num li:nth-child(6){
    left: 0;
    top: 320px;
}
.wrap_figure .num li:nth-child(7){
    left: 0;
    top: 110px;
}
.wrap_figure .num li::before{
    content: "";
    display: block;
    width: 30px;
    padding-top: 52px;
    background-position: center top;
    background-size: auto 80%;
    background-repeat: no-repeat;
    border-bottom: 4px solid #1c236d;
    margin: 0 auto 10px;
}
.wrap_figure .num li:first-child::before{ background-image: url(/images/common/number/fabl/no01.svg);}
.wrap_figure .num li:nth-child(2)::before{ background-image: url(/images/common/number/fabl/no02.svg);}
.wrap_figure .num li:nth-child(3)::before{ background-image: url(/images/common/number/fabl/no03.svg);}
.wrap_figure .num li:nth-child(4)::before{ background-image: url(/images/common/number/fabl/no04.svg);}
.wrap_figure .num li:nth-child(5)::before{ background-image: url(/images/common/number/fabl/no05.svg);}
.wrap_figure .num li:nth-child(6)::before{ background-image: url(/images/common/number/fabl/no06.svg);}
.wrap_figure .num li:nth-child(7)::before{ background-image: url(/images/common/number/fabl/no07.svg);}

.ttl01{
    background-image: url(/event/190514/img/bg_ttl01.jpg);
    background-position: left top;
    background-size: 100%;
    background-repeat: no-repeat;
}
.ttl02{
    background-image: url(/event/190514/img/bg_ttl02.jpg);
    background-position: left top;
    background-size: 100%;
    background-repeat: no-repeat;
}


section[class^="ttl"] .inner{
    max-width: 1200px;
    padding-top: 125px;
}
section[class^="ttl"] h2{
    color: #fff;
    margin-bottom: 200px;
    letter-spacing: 0;
}
section[class^="ttl"] h2::after{ border-bottom-color: #fff;}
section[class^="ttl"] p{
    max-width: 1000px;
    margin: 0 auto;
}

.teacher > p{ line-height: 2;}
.teacher .message{
    background: #f3f3f2;
    margin-top: 65px;
    padding: 70px;
}
.teacher .message h3{ margin-bottom: 50px;}
.teacher .message h3 span{
    padding: 15px 25px;
    position: relative;
}
.teacher .message h3 span::before,
.teacher .message h3 span::after {
    content: "";
    position: absolute;
    width: 15px;
    height: 15px;
    border-top: 2px solid #1e236e;
    border-left: 2px solid #1e236e;
}
.teacher .message h3 span::before {
    top: 0;
    left: 0;
}
.teacher .message h3 span::after {
    bottom: 0px;
    right: 0px;
    -webkit-transform: rotate(180deg);
    -moz-transform: rotate(180deg);
    transform: rotate(180deg);
}
.teacher .message p{ line-height: 2;}

.curi h3{
    line-height: 3;
    font-size: 28px;
    font-weight: bold;
    color: #1e226e;
    margin-bottom: 70px;
}
.curi h3 .day{
    background: #1e236e;
    padding: 15px;
    border-radius: 8px;
    line-height: 1;
}
.curi h3 .day img{
    height: 1.2em;
    width: auto;
}
.curi .ol_list01 > li{
    width: 45%;
    padding: 50px 25px;
    margin-bottom: 50px;
}
.curi .ol_list01 > li h4{
    margin-bottom: .5em;
    font-weight: normal;
}
.curi .ol_list01 > li .detail li{
    text-align: left;
    list-style: disc outside;
    color: #000;
    font-size: 16px;
    margin-left: 1em;
}
.curi .ol_list01 + h3{ margin-top: 100px;}

.consent{ margin-bottom: 160px;}
.consent > *{ font-size: 16px;}
.consent > h2{
    margin-bottom: 55px;
    letter-spacing: 0;
}
.consent > h2::after{ content: none;}

#moushikomi .gaiyou{
    width: 100%;
    table-layout: fixed;
    border-top: 1px solid #1e236e;
    border-left: 1px solid #1e236e;
}
#moushikomi .gaiyou th,
#moushikomi .gaiyou td{
    padding: 25px 20px;
    border-right: 1px solid #1e236e;
    border-bottom: 1px solid #1e236e;
}
#moushikomi .gaiyou th{
    width: 14.5%;
    font-weight: normal;
    background: #e8e9f0;
    color: #1e236e;
}
#moushikomi .gaiyou td a{ text-decoration: underline;}
#moushikomi .gaiyou td .map{
    display: inline-block;
    margin-left: 1em;
    background: #1c236d;
    color: #fff;
    padding: 0 5px;
    border-radius: 3px;
    text-decoration: none;
}

#moushikomi .gaiyou td .check{
    margin-top: 1em;
    margin-bottom: 3em;
}
#moushikomi .gaiyou td .check li input{ display: none;}
#moushikomi .gaiyou td .check li .list{
    padding-left: 20px;
    position: relative;
    display: block;
}
#moushikomi .gaiyou td .check li .list::before {
    content: "";
    display: block;
    position: absolute;
    top: .5em;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #aaa;
    background: #fff;
}
#moushikomi .gaiyou td .check li input:checked + .list::before {
    border: 1px solid #e35369;
    background: #fbf3f0;
}
#moushikomi .gaiyou td .check li input:checked + .list::after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 3px;
    width: 8px;
    height: 16px;
    transform: rotate(40deg);
    border-bottom: 3px solid #d7063a;
    border-right: 3px solid #d7063a;
}

.youtube {
    max-width: 950px;
    margin: 0 auto;
    width: 100%;
    position:relative;
    padding-top:56.25%;
}
.youtube iframe {
    position:absolute;
    top:0;
    right:0;
    width:100%;
    height:100%;
}

dt.accordion{
    border: 1px solid #0091d7;
    padding: 10px;
    font-size: 23px;
}
dt.accordion::after{
    content: "";
    padding: 15px;
    background: url(/images/common/arrow_fudo.svg) right 15px/25px no-repeat;
    display: inline-block;
    margin-left: 20px;
}
dt.accordion.active::after{
    transform: rotate(180deg);
    background-position: right 3px;
}

.text01{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    position: relative;
    margin-top: 60px;
    margin-bottom: 25px;
}
.text01 .photo01{
    width: 50%;
    height: 50%;
    mix-blend-mode: multiply;
}
.text01 .photo02{
    width: 48%;
    height: 48%;
}
.text01 p{
     position: absolute;
    bottom: 50px;
}
.text02{
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
}
.text02 > div{ width: 50%;}
.text02 > img{ width: 23%; height: 23%;}
.text02 h3{
    text-align: left;
    color: #0091d7;
    margin-bottom: 40px;
}

h3.name{
    margin-bottom: 1em;
    font-size: 30px;
}
h3.name .position{
    display: block;
    font-size: .4em;
}
h3.entry{
    display: inline-block;
    vertical-align: middle;
    width: 23%;
}
h3.entry + ul{
    width: 76%;
    display: inline-flex;
    justify-content: space-between;
    flex-wrap: wrap;
    vertical-align: middle;
}
h3.entry + ul li{
    border-left: 1px solid #0091d7;
    width: 33%;
    text-align: center;
}
h3.entry + ul li h4{
    font-size: 22px;
    font-weight: normal;
    margin-bottom: 130px;
    position: relative;
}
h3.entry + ul li:first-child h4::after{
    content: "";
    padding: 40px;
    background: url(/school/image/fudo/flow_icn05.svg) center top/78px no-repeat;
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
}
h3.entry + ul li:nth-child(2) h4::after{
    content: "";
    padding: 40px;
    background: url(/school/image/fudo/flow_icn06.svg) center top/63px no-repeat;
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
}
h3.entry + ul li:nth-child(3) h4::after{
    content: "";
    padding: 40px;
    background: url(/school/image/fudo/flow_icn07.svg) center top/59px no-repeat;
    position: absolute;
    top: 70px;
    left: 0;
    right: 0;
}
h3.entry + ul li .btn_mail a{
    background: #0091d7 url(/images/common/arrow.svg) 96% center/20px no-repeat;
    color: #fff;
    padding: 5px;
    font-size: 19px;
    width: 80%;
    display: block;
    margin: 0 auto;
}
h3.entry + ul li .phone{
    font-family: 'Josefin Slab', serif;
    font-size: 37px;
    color: #2d4198;
    font-weight: bold;
    line-height: 1.2;
}

#modal-close{ display: none;}


/*-----------------------.experienceLearning---------------------------*/
.experienceLearning {
/*    border: 2px solid #0091d7;*/
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
/*    overflow: hidden;*/
    padding: 30px;
/*    margin: 230px 0 80px;
    margin: 80px 0;*/
    background: #fff;
    width: 80% ;
    margin: auto;
    background: #fff ;
    position: fixed ;
    display: none ;
    z-index: 2 ;
}
.experienceLearning h3 {
    color: #0091d7;
    text-align: center;
    font-size: 34px;
    border-bottom: 1px dashed #0091d7;
    margin: 40px auto 30px;
}
.experienceLearning h4 {
    font-size: 18px;
    color: #FFF;
    background-color: #FD9827;
    text-align: center;
    margin-right: 10px;
    display: inline;
    padding: 5px;
}
.experienceLearning p {
    font-size: 12px;
    margin-bottom: 10px;
}
.experienceLearning table {
    border: 1px solid #b6b6b6;
    width: 100%;
    left: 0;
    right: 0;
    margin: 10px 0 25px 0;
    font-size: 14px;
    table-layout: fixed;
}

.experienceLearning .web_dvd table tr {
    border-bottom: 1px solid #b6b6b6;
}
/*.experienceLearning .formular table tbody th,
.experienceLearning .formular table tbody td{
    display: block;
    width: 100%;
    border-right: 0;
    border-bottom: 1px solid #b6b6b6;
    text-align: center;
}*/
.experienceLearning .formular table tbody th{ width: 25%;}
.experienceLearning .formular table tbody th .step {
    display: inline-block;
    color: #fff;
    background: #0091d7;
    border-radius: 10px;
    padding: 0 15px;
}
/*.experienceLearning table th,
.experienceLearning table.courseInfo tbody th*/
.experienceLearning .web_dvd table th{
    /*    width: 320px;
    background: none;
    background-image:none;
    background-color: #fff;*/
    border-right: 1px dotted #b6b6b6;
    text-align: center;
    padding: 10px 0;
}
.experienceLearning table td {
    padding: 10px;
    background-color: #fff;
    width: 75%;
}
.experienceLearning table th.title03 {
    font-size: 23px;
    background-color: #1eb4dc;
    color: #fff;
    border: solid 1px #1eb4dc;
}
.orangeFont {
    color: #ff6500;
}
.experienceLearning p.free {
    text-align: center;
}
.experienceLearning table p.fontore {
    color: #FD9827;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 0;
}

.experienceLearning p.web {
    padding-top: 10px;
    float: left;
}
.experienceLearning p.dvd {
    padding-top: 10px;
    float: right;
}
.experienceLearning p.homeLearning {
    margin: 50px 0 20px;
    font-weight: bold;
    text-align: center;
    font-size: 22px;
}
.experienceLearning p.homeLearning strong {
    color: #1eb4dc;
    font-size: 30px;
}

#modal-overlay {
    z-index: 1 ;
    display: none ;
    position: fixed ;
    top: 0 ;
    left: 0 ;
    width: 100% ;
    height: 120% ;
    background-color: rgba( 0,0,0, 0.75 ) ;
}
#modal-overlay:before{
    content:"";
    position:absolute;
    display:inline-block;
    top:106px;
    right:15%;
    width:2px;
    height:32px;
    border:0;
    margin:0;
    padding:0;
    background-color:white;
    -moz-transform:rotate(45deg);
    -webkit-transform:rotate(45deg);
    transform:rotate(45deg);
}
#modal-overlay:after{
    content:"";
    position:absolute;
    display:inline-block;
    top:106px;
    right:15%;
    width:2px;
    height:32px;
    border:0;
    margin:0;
    padding:0;
    background-color:white;
    -moz-transform:rotate(-45deg);
    -webkit-transform:rotate(-45deg);
    transform:rotate(-45deg);
}

.tsushin-tsugaku {
    border: 1px solid #0091d7;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    overflow: hidden;
    margin-top: 80px;
/*    margin-bottom:75px;*/
}
.tsushin-tsugaku h3 {
    color: #0091d7;
    text-align: center;
    font-size: 33px;
    border-bottom: 1px dashed #0091d7;
    width: 90%;
    margin: 40px auto 30px;
}
.tsushin-tsugaku > img{
    width: 100%;
    margin-bottom: 50px;
}
.courseList > li {
    width: 50%;
    float: left;
    padding: 30px 30px 0;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    font-size: 16px;
}
.courseList > li:last-child{ border-left: 1px solid #0091d7;}
.courseList li img{
    max-width: 100%;
    margin-bottom: 1em;
}
.courseList li h4 {
    font-size: 30px;
    color: #008fd9;
    text-align: center;
    font-weight: normal;
    margin-bottom: 20px;
}
/*.courseList li p {
    font-size: 19px;
    color: #2d4196;
    line-height: 1.4;
    font-weight: bold;
    border-left: 5px solid #0091d7;
    padding-left: 15px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    margin: 10px 0 15px 0;
}
.courseList li p.recommend02{ font-size: 1.1em;}*/
.courseList li .top_txt{ margin-bottom: 30px;}
.courseList li .top_txt .price{
    color: #3193d5;
    letter-spacing: .2em;
}

.courseList li a {
    display: block;
    text-align: center;
}
.courseList li table {
    margin-bottom: 40px;
    border-top: 1px solid #3193d5;
    border-left: 1px solid #3193d5;
}
.courseList li table span {
    font-weight: bold;
}
.courseList li table th {
    background-color: #eef6fd;
    width: 33%;
    padding: 15px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border-bottom: 1px solid #3193d5;
    border-right: 1px solid #3193d5;
    font-weight: normal;
    color: #3193d5;
}
.courseList li table td {
    background-color: #fff;
    padding: 15px;
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    border-bottom: 1px solid #3193d5;
    border-right: 1px solid #3193d5;
}
.courseList li table td .list li{
    margin-right: .3em;
    display: inline-block;
}
.courseList li table td .dates{
    display: inline-block;
    text-align: left;
    color: #3193d5;
    line-height: 1;
    padding-top: .3em;
}
.courseList li table td .dates::after{
    content: "〉〉";
    letter-spacing: -.5em;
    padding-left: .3em;
}
.courseList li table td .dates:hover{ text-decoration: underline;}
dl.kitei { margin-top: 35px;}
dl.kitei dt.accordion{ text-align: center;}
.kitei_sp{ display: none;}

/* 安心の受講制度 */
.cls-1,.cls-2,.cls-3{stroke:#0091d7;}
.about h3{ color: #0091d7 !important;}
.about li{
    width: 21%;
    border: 1px solid #0091d7;
    margin-bottom: 1em;
}
.about li:nth-child(odd){ margin-right: 0;}
.about li > p{ font-size: 16px;}
.about li .caution{ top: calc(100% + 1em);}
.about li h4{
    color: #0091d7;
    font-weight: normal;
    letter-spacing: .1em;
    line-height: 1.5;
}
.about .henkin{
    width: 100%;
    margin-bottom: 75px;
}
.about .henkin h4{ font-size: 27px;}
.about li.double > svg{
    max-width: 100%;
    margin: 0 auto;
}
.about li.keizoku > svg{ margin: 15px auto 0;}
.about li.family > svg{ margin: 20px auto;}
.about li.kyugaku > svg{ margin: 15px auto;}

/* 体験学習会 */
.taiken .inner{ padding-bottom: 0;}
.taiken ul.course{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    margin-top: 80px;
}
.taiken ul.course li{
    width: 47.5%;
    border: 1px solid #3193d5;
    text-align: center;
    font-size: 20px;
}
.taiken ul.course li h3{
    font-size: 30px;
    line-height: 1.5;
    color: #3193d5;
    padding: 20px;
    border-bottom: 1px solid #3193d5;
    margin-bottom: 20px;
}
.taiken ul.course li .point{
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    margin: 20px 0;
}
.taiken ul.course li .point > p{
    width: 113px;
    height: 113px;
    border: 1px solid #3193d5;
    border-radius: 100%;
    color: #3193d5;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    align-content: center;
    font-size: 28px;
    line-height: 1.2;
    margin: 0 15px;
}
.taiken ul.course li .point > p span{
    display: block;
    width: 100%;
}
.taiken ul.course li .point > p .txt_s{ font-size: .8em;}
.taiken ul.course li .btn02{
    margin: 0 8.5% 35px;
    width: 83%;
}
.taiken ul.course li .btn02 > a{ color: #fff;}

/* .info 問い合わせ先 */
.info .school_info{
    border-top: 3px solid #0092d8;
    border-bottom: 3px solid #0092d8;
    background: #eaf6fd;
    padding: 40px 50px;
    box-sizing: border-box;
    margin-bottom: 30px;
}
.info .school_info h3{
    width: 70%;
    margin-right: auto;
    margin-bottom: 30px;
    position: relative;
    color: #0092d8;
    font-size: 28px;
    border-top: 1px dashed #0092d8;
    border-bottom: 1px dashed #0092d8;
    text-align: left;
    padding: 25px 0;
    letter-spacing: .1em;
}
.info .school_info h3 figure{
    position: absolute;
    top: -15px;
    right: -246px;
}
.info .school_info .school_info_question li{
    padding-left: 25px;
    padding-bottom: 25px;
    background: url(/vod/img2017/icn_q.svg) left top/24px no-repeat;
    text-align: left;
    font-size: 21px;
    line-height: 1.5;
}
.info .school_info .school_info_question{
    position: relative;
    margin-bottom: 85px;
}
.info .school_info .school_info_question:after{
    content: "";
    border: 14px solid transparent;
    border-top: 24px solid #0092d8;
    position: absolute;
    left: 50%;
    bottom: -65px;
}
.info .school_info > p{
    text-align: center;
    font-size: 18px;
    line-height: 3;
}
.info .school_info + .btn_wrap{
    display: flex;
    margin: 0 auto;
    justify-content: space-between;
    flex-wrap: wrap;
}
.info .school_info + .btn_wrap li{ width: 47%;}
.info .school_info + .btn_wrap li a{
    display: block;
    color: #fff;
    font-size: 26px;
    width: 100%;
/*    height: 60px;*/
    padding: 15px 0 15px 20px;
    position: relative;
    text-decoration: none;
    box-sizing: border-box;
    text-align: left;
    border: 1px solid #0092d8;
    color: #0092d8;
    background: url(/vod/img2017/arrow03.svg) 95% center/35px no-repeat;
}

/* 「受講生の声」スライダー */
.comment_slick.slick-initialized .slick-slide{ padding: 30px;}
.comment_slick .slick-dots li button:before{
    font-family: inherit;
    content: "\025cf";
    font-size: 15px;
}
.comment_slick .slick-prev {
    left: 30px;
    z-index: 10;
}
.comment_slick .slick-prev::before{
    content: "";
    color: #008fd9;
    border-left: 2px solid;
    border-bottom: 2px solid;
    width: 10px;
    height: 10px;
    padding: 8px;
    transform: rotate(45deg);
    display: block;
}
.comment_slick .slick-next { right: 30px;}
.comment_slick .slick-next::before{
    content: "";
    color: #008fd9;
    border-left: 2px solid;
    border-bottom: 2px solid;
    width: 10px;
    height: 10px;
    padding: 8px;
    transform: rotate(225deg);
    display: block;
}

/* slider部分 */

#students_wrap {
font-size: 10px;
}

#students_wrap p {
	  margin-bottom: 1em;
}

#students_wrap .comment {
  padding: 30px 0; }
  
#students_wrap .comment li {
    float: left;
    width: 550px;
    text-align: left; }
	
#students_wrap .comment li .title {
      font-size: 20px;
      font-size: 2.0em;
      color: #eb7846;
      text-align: left;
      line-height: 1.7;
      letter-spacing: .35em;
	  }
#students_wrap .comment li .name {
      font-size: 15px;
      font-size: 1.5em;
	  }
#students_wrap .comment li small {
      display: block;
      font-size: 11px;
      font-size: 1.1em; }
#students_wrap .comment li:last-child {
      /*width: 150px; */
	  width: 400px;
    /* background: yellow; */
    text-align: right;
	  }
#students_wrap .multi-2col {
  /*height: 260px;*/
  height: 290px;
  font-size: 14px;
  line-height: 1.7;
  -moz-column-count: 2;
  -webkit-column-count: 2;
  column-count: 2;
  -moz-column-gap: 2em;
  -webkit-column-gap: 2em;
  column-gap: 2em;
  margin-bottom: 40px; }

section#intro .voice .slick-dots{ bottom: 80px;}

section#policy { padding-bottom: 90px;}

section#intro p,
section#policy p {
    font-size: 18px;
    line-height: 1.7;
    /*letter-spacing: .05em;*/
    text-align: center;
    margin-bottom: 30px;
}

section#intro .voice{
    background: #f3f3f2;
    padding: 50px 50px 100px;
}
section#intro .voice .width48{
    background: #fff;
    border: 15px solid #f3f3f2;
}
section#intro .voice .width48 p{ text-align: left;}
section#intro .voice .width48 .img{
    position: relative;
    min-height: 100px;
}
section#intro .voice .width48 .img::before{
    content: "";
    width: 100px;
    height: 100px;
    box-sizing: border-box;
    padding-right: 100px;
    background-image: url(/school/image/icn_students.png);
    background-repeat: no-repeat;
    position: absolute;
    right: 0;
    top: 0;
}
section#intro .voice .width48 .img.man01::before{ background-position: left top;}
section#intro .voice .width48 .img.man02::before{ background-position: -100px top;}
section#intro .voice .width48 .img.man03::before{ background-position: -200px top;}
section#intro .voice .width48 .img.man04::before{ background-position: -300px top;}
section#intro .voice .width48 .img.woman01::before{ background-position: left bottom;}
section#intro .voice .width48 .img.woman02::before{ background-position: -100px bottom;}
section#intro .voice .width48 .img.woman03::before{ background-position: -200px bottom;}
section#intro .voice .width48 .img.woman04::before{ background-position: -300px bottom;}
section#intro .voice .width48 .name{
    color: #008fd9;
    font-weight: bold;
    margin-bottom: 10px;}
section#intro .voice .width48 .names{
    font-size: 15px;
    color: #008fd9;
    font-weight: bold;
    margin-bottom: 10px;}
section#intro .voice .width48 span.nameb{
    font-size: 17px;
    color: #008fd9;
    font-weight: bold;
    margin-bottom: 10px;}

section#intro .voice .width48 .txt{ font-size: 1.4em;}

/* 顔写真用 */

.naphfl{
    display: flex;
    justify-content: space-between;}
.naphfl p{
    width: 50%;}
.naphfl p.pho{
    padding-left: 80px;}

/* 顔写真用ここまで */

.ar_img {
    display: flex;
    flex-wrap: wrap;
}

.ar_img img {
    width: 33.3%;
    height: 33.3%;
}

#policy ul {
    padding-bottom: 70px;
    display: flex;
    justify-content: space-between;
    width: 87%;
    max-width: 870px;
    margin: 0 auto;
}
#policy ul li:first-child{ width: 38%;}
#policy ul li:first-child img { width: 100%;}
#policy ul li:last-child {
    width: 55%;
    padding-top: 2em;
}
#policy ul li:last-child p {
    font-size: 16px;
    line-height: 1.9;
    letter-spacing: inherit;
    text-align: left;
}

.sp_br{ display:none;}

@media screen and (min-width: 1500px) {
    .ttl01{
        background-position: center top;
        background-size: 1500px;
    }
    .ttl02{
        background-position: center top;
        background-size: 1500px;
    }
}

/* タブレット以下 */
@media screen and (max-width: 1024px) {
    #head2{ height: 85px !important;}

    #container{
        margin-top: 80px;
        overflow: hidden;
        width: 100%;
    }
    .lead{ font-size: 20px;}
    
    #mv{ letter-spacing: 0;}
    #mv > div { padding: 20px 10px;}
    #mv h1 {
        margin: 0 0 15px;
        font-size: 2.5em;
    }
    #mv p,
    #mv .lead{ font-size: 16px;}
    #mv .title h1{ top: 20%;}
    #mv ul.type li{
        font-size: 16px;
        margin-right: 10px;
    }
    
    h2 > .icn{ right: 0;}
    ol.curriculum > li{ width: 32%;}
    
    section[class^="ttl"] .inner{ padding-top: 30px;}
    section[class^="ttl"] h2{ margin-bottom: 70px;}
    
    .btn01{ max-width: 100%;}
    .btn01 a,
    .btn01.closing{ width: 80%;}
    
    .youtube{ max-width: 100%;}
    
    .text01 p {
        left: 0;
        bottom: 5px;
    }
    .text02{ padding-top: 10px;}
}

@media screen and (max-width: 889px) and (min-width: 768px){
    ul.canLearn.circle li{
        width: 180px;
        height: 180px;
    }
}
@media screen and (max-width: 767px){
    ul.canLearn.circle li{
        width: 125px;
        height: 125px;
        font-size: 12px;
        margin: 10px;
    }
}

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

.coverimg_wrap {
    position: relative;
    margin: 0;
    width: 100%;
    overflow: hidden;
}

    #policy ul{
        margin-bottom: 40px;
        display: block;
    }
    #policy ul li:first-child{ width: 100%;}
    #policy ul li:last-child{ text-align: left;}
    #policy h3{ 
        margin-bottom: 15px;
        font-size: 1.7rem;
    }
    
    #policy ul li {
        width: 100%;
        text-align: center; }
    #policy ul li img {
        width: 42%;
		width: 60%;
		margin: auto;
		}
    #policy ul li:last-child {
        width: 100%;
        padding-left: 0; }
    #policy ul li:last-child p{ font-size: 14px;
	    padding: 0 10px;}

    section#intro  h2 {
        font-size: 20px;
    }
	
	section p {
    font-size: 14px;}
	
	section#policy {
    padding-bottom: 20px;
}

}

/* スマホ */
@media screen and (max-width: 599px) {
    #breadcrumbs{ display: none;}

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

    .br_pc::before{ content: none;}
    .br_sp::before{
        content: "\A" ;
        white-space: pre ;
    }

    .snsBtn { margin: 0}
    #breadcrumbs{ display: none;}

    .text_l{ font-size: 1.15em;}

    section .inner{ padding: 40px 0;}
    section h2 {
        font-size: 19px;
        letter-spacing: 0;
    }
    section h2::after {
        width: 80px;
        margin: 15px auto 25px;
    }
    section h3{ font-size: 1.2rem}
    .lead{
        font-size: 12px;
        text-align: left;
    }
    .btn01 a{
        font-size: 16px;
        padding: 10px 5px;
        background: #ca2828 url(/images/common/arrow02.svg) 97% center/12px no-repeat;
        letter-spacing: .1em;
        margin: 30px auto;
        width: 100%;
        text-align: center;
    }
    .btn01.closing{
        font-size: 16px;
        padding: 10px 5px;
        letter-spacing: .1em;
        margin: 30px auto 0;
        width: 95%;
        text-align: center;
    }
    .btn02::before{ left: 5px;}

    #mv > div,
    #mv > img{ width: 100%;}
    #mv > img{
        height: 160px;
        object-fit: cover;
        object-position: 0 80%;
    }
    #mv .title{
        height: auto;
        position: absolute;
        top: 0;
        display: block;
        z-index: -1;
    }
    ul.type li {
        padding: 0 10px;
        border-radius: 5px;
        font-size: 13px;
    }
    #mv .title p.sp img{ width: 100%;}

    #mv p{
/*        font-size: 3.5vw;*/
        margin-bottom: 0;
        text-align: left;
        letter-spacing: 0;
    }
    #mv .lead{
        color: inherit;
        padding: 0 0 1em;
        font-size: 11px;
        letter-spacing: 0.1em;
        margin-bottom: 0;
        order: 0;
    }
    
    #mv .img{
        padding: 0;
        background: none;
    }
    #mv .img .inner{
        width: 100%;
/*        margin-top: 100%;*/
        padding: 1.2em;
    }
    #mv .marker{ font-size: 13px;}
    #mv .catch{ padding-bottom: 25px;}
    #mv .catch .inner p{ font-size: 16px;}
    
    .ol_list01 > li{ font-size: 18px;}
    
    .melit .ol_list01 li {
        width: 80%;
        padding: 25px;
        margin: 20px auto;
    }
    .join .ol_list01 li {
        padding: 25px;
        font-size: 16px;
        margin-top: 30px;
    }
    .join .ul_list01{ column-count: 1;}
    
    .wrap_figure{ height: auto;}
    .wrap_figure h3 {
        width: auto;
        height: auto;
        border-radius: 10px;
        position: static;
        margin-bottom: 1.5em;
    }
    .wrap_figure .num li {
        width: calc(100% - 2em);
        max-width: inherit;
        font-size: 17px;
        position: static;
        margin: 0 0 1em 2.5em;
        text-align: left;
        text-indent: -2em;
    }
    .wrap_figure .num li::before {
        display: inline-block;
        width: 20px;
        padding-top: 25px;
        background-position: center center;
        background-size: contain;
        border-bottom: 0;
        margin: 0 1em 0 0;
        vertical-align: middle;
    }
    
    section[class^="ttl"] h2{ color: #000;}
    section[class^="ttl"] h2::after{ border-bottom-color: #1d226f;}
    .ttl01{
        background-position: center 8em;
        background-size: 95%;
    }
    .ttl02{
        background-position: center 5em;
        background-size: 95%;
    }
    section.ttl01 h2::after,
    section.ttl02 h2::after{ margin-bottom: 120px;}

    .strong{ padding: 15px;}
    .strong p{ font-size: 17px;}

    section h3.line{ margin: 50px 0 20px;}
    section h3.line > span{
        white-space: normal;
        font-size: 17px;
    }
    section h3.line > span.w75{ width: 75%;}
    
    .join .caution + h3.line{ margin: 100px auto 50px;}

    ol.curriculum > li{
        width: 49%;
        margin-bottom: 15px;
    }
    ol.curriculum li::before{ left: 0;}
    ol.curriculum > li h3{
        margin-bottom: 0;
        font-size: 12px;
    }
    ol.curriculum > li > ol{ display: none;}

    ul.find{ display: block;}
    ul.find li{
        width: 100%;
        line-height: 1.5;
        margin-bottom: 15px;
    }

    .kitei{ display: none;}
    .kitei_sp{ display: block;}
    .about .kitei_sp h3 {
        border: 1px solid #0091d7;
        font-size: 15px !important;
    }

    .teacher .message {
        margin-top: 35px;
        padding: 25px;
        width: 95%;
        margin: 35px auto 0;
    }
    .teacher .message h3{ margin-bottom: 30px;}
    
    .curi h3 {
        line-height: 3;
        font-size: 18px;
        margin-bottom: 35px;
    }
    .curi h3 .day{ padding: 10px;}
    
    .curi .ol_list01 > li {
        width: 95%;
        padding: 30px 15px;
        margin: 0 auto 50px;
    }
    .curi .ol_list01 > li .detail li{ font-size: 14px;}
    .curi .ol_list01 + h3{ margin-top: 0px;}
    
    .consent{ margin-bottom: 50px;}
    .consent > *{ font-size: 13px;}
    .consent > h2{ margin-bottom: 30px;}
    
    #moushikomi .gaiyou th,
    #moushikomi .gaiyou td {
        padding: 10px;
        display: block;
        width: 100%;
    }
    
    #students_wrap .comment {
        padding: 30px 0;
    }

    .contentBlock.contentBlock02 {
        margin-top: 170px;
    }

#students_wrap .comment {
        padding: 30px 0;
    }

.contentBlock.contentBlock02 {
        margin-top: 170px;
    }

section#intro .voice .width48 .name{
    font-size: 12px;
    color: #008fd9;
    font-weight: bold;
    margin-bottom: 10px;}
    
section#intro .voice .width48 .names{
    font-size: 7px;
    color: #008fd9;
    font-weight: bold;
    margin-bottom: 10px;}
    
section#intro .voice .width48 span.nameb{
    font-size: 12px;
    color: #008fd9;
    font-weight: bold;
    margin-bottom: 10px;}
    
.naphfl p.pho{
    padding-left: 0px;}

}