/*************************************
common.css
*************************************/
.sp,.tablet{display:none;}
a{color:#0f7dc5;text-decoration: none;}
a:hover{text-decoration:none;color:#aaaaaa;}
.font01{font-size: 280%;}.font02{font-size: 200%;}.font03{font-size: 160%;}.font04{font-size: 140%;}.font05{font-size: 120%;}.font06{font-size: 90%;}.font07{font-size: 80%;}
.bold{font-weight: bold;}
.strike {text-decoration: line-through;}
.indent{padding-left:1em;text-indent:-1em;}
a.underline{text-decoration:underline;}

.main_keyvisual{width: 100%; margin-bottom: 2em;}
.main_keyvisual img{width: 100%;vertical-align: bottom;}
.top_key_txt {
	 color: #00b9ef;
    line-height: 1.6;
    font-size: 46px;
    margin: 0.3em auto;
    text-align: center;
}
.top_key_txt span{
	display: block;
    font-size: 28px;
}
.key_txt {
	line-height: 1.6;
    font-size: 32px;
    text-align: center;
    margin: 1em;
    color: #333;
}
/*title*/
.seasonal_top .h1ttl {
 font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  font-size: 280.571%;
  color: #84060D;
  margin: 40px 0;
}
.seasonal_top .h2ttl {
 font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  font-size: 201.142%;
  margin: 35px 0 20px;
  display: table;
  color: #84060D;
}
.seasonal_top .h2ttl .sub_ttl {
	display: block;
 font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  font-size: 84.142%;
  margin: 5px 0 0;
  color: #666;
}
.seasonal_top .h3ttl {
 font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  font-size: 150%;
  color: #84060D;
  margin:35px 0 15px;
  display: table;
}
.h2section{margin-top:4.4rem;}



#feature{font-size: 1.2em;}
#feature .ttl{color: #00b9ef;font-size: 1.38em;margin-bottom: 1em;line-height: 1.4;}
#feature .maru {position: relative;display: block;height:66px;width:66px;border-radius:50%;line-height:50px;text-align:center;background: #00b9ef; color: #fff;margin-right: .8em;}
#feature .maru::before{position: absolute;top: 0;left: 33%; content: '特長';font-size: .7em;line-height: 3;}
#feature .maru span{font-size: 1.4em;line-height: 74px;}

#feature .h2ttl {display: block;line-height: 1.3;margin-bottom: 2em;}
#feature .h2ttl span.ttlcopy{display: block;margin-bottom: .8em;width: 60%;}
#feature .kome{font-size:60%; vertical-align:top; position:relative; top: 0.3em;}
.feature_list{width: 100%; display: flex;}
.feature_info + .feature_info{margin-top: 3em;}
/*.feature_list li:nth-child(1){width: 80px;}
.feature_list li:nth-child(2){width: calc(100% - 80px);}*/
.feature_list li {margin-left: }
/*.feature_info > .txt{margin-left: 80px;}*/
.feature_info > .txt p.hdr_txt {font-size: 110%;margin-bottom: 0.5em}
/*.arrow_right2::after{content: '';display: inline-block;width: 20px;height: 18px;background: url('../../common/images/link_arrow_right_yellow.png') 2px 0 no-repeat; vertical-align: middle;margin-left: 20px;}
.arrow_right2:hover::after{background: url('../../common/images/link_arrow_right_white.png') 2px 0 no-repeat;}*/
.pagelink_list{display:flex;justify-content:space-between;flex-wrap: wrap;margin-bottom: 50px;}
.pagelink_list li{border:2px solid #84060D;padding: 28px 35px;width: 300px;margin-bottom: 2%;font-size: 135%;}
.pagelink_list li a {color: #84060D;position: relative;display: block;}
.pagelink_list._col2 li{width:49%;}
.pagelink_list._col2 li.link_course{width: 100%;background:#84060D; }
.pagelink_list._col2 li.link_course a{color: #FFF;}
.pagelink_list._col2 li a.link_arrow_right::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #84060D;
    border-right: 2px solid #84060D;
    transform: rotate(45deg);
    display: block;
    position: absolute;
    top: 45%;
    right: 2%;
}
.pagelink_list._col2 li.link_course a.link_arrow_right::after {
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
}
.pagelink_list._col2 li a.link_arrow_down::after {
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #84060D;
    border-right: 2px solid #84060D;
    transform: rotate(135deg);
    display: block;
    position: absolute;
    top: 45%;
    right: 2%;
}

/*設置講座一覧*/
.common_table.rsp{margin-bottom: 0.5rem;border-left: 1px solid #eeeeee;width: 100%;font-size: 78.57143%;}
.common_table.rsp td{clear: both;padding:8px 5px;}
.common_table.rsp td[class^="cell_"]{text-align: center;vertical-align: top !important;}
.common_table.rsp td:not(.cell_ff,.cell_f8){vertical-align: middle;text-align:left;}
.common_table.rsp thead .subject{text-align:center;}
.common_table.rsp thead tr.bg_dark_gray td{background-color:#777777;color:#ffffff;}
.common_table.rsp tbody tr.firstline td:nth-child(3){text-align: left;}
.common_table.rsp tbody td:nth-child(3),
.common_table.rsp tbody td:nth-child(4),
.common_table.rsp tbody td:nth-child(5){text-align: center;}
.coursename, .outline{text-align: left;vertical-align: middle;}
.common_table.rsp tr.firstline{border-top: 2px solid #dddddd;}
.common_table.rsp a {color:#84060D; }
.subject{width: 3%;}
.coursename{width: 41%;}
.outline{width: 44%;}
.remote{width: 8%; white-space: nowrap;}
.personal{width: 4%; white-space: nowrap;}
.label {float: right;overflow: hidden; }
.label li{border: 1px solid #ccc;color: #999;padding: 2px 3px;display: inline-block;box-sizing: border-box;}
.label li.time {border: 1px solid #000;color: #000; margin-right: 1em;}
.label li.on {border: 1px solid #8b0910;color: #8b0910;}
#g_h2 .label li.on{border: 1px solid #e56861;color: #e56861;}
#g_h1 .label li.on{border: 1px solid #0058ad;color: #0058ad;}
.label_tit{width: 96px; text-align: center;float: right;background: #bebebe;font-size: 92%;color: #fff;}
.label_tit.l{width: 110px; }
.label_list_wrap{display: flex;justify-content: space-between; margin-bottom: .2em;}
.label_list{font-size: 77.5%;align-items:center;}.label_list li{display: inline-block;}
/*.label_list li + li:not(:nth-child(2)){margin-left:.8em}*/
.label_list li {margin-right:.8em}
.label_list .ttl{width:60px;text-align: center;background: #bebebe;font-size: 92%;color: #fff;padding: 2px 3px;display: inline-block;}
.label_index{border: 1px solid #84060D;color: #84060D;padding: 1px 3px;display:inline-block;margin: 0 .2em;}


/*料金のご案内*/
.fee_wrap{border: 2px solid #00b9ef;padding:0;margin-bottom:20px; line-height: 1.6;}
.fee-col2{display: flex;flex-direction: column;}
.fee-col2 {text-align: center}
/*.fee-col2 > li:nth-child(1){width: 44%; }.fee-col2 > li:nth-child(2){width: 53%; }.fee-col2 > li + li{margin-left: 3%}*/
.fee-col2 > li:nth-child(2) {background: #00b9ef; color: #fff; padding: 1em;}
.fee-col2 li:nth-child(2) .ttl {
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  font-size: 138%;
}
.fee-col2 > li:nth-child(2) .invitation_course_table  .font03 {
  text-align: center;
}
.fee-col2 > li:nth-child(2) .invitation_course_table .sub_txt {
  display: block;
  font-size: 75%;
}
.fee-col2 li:nth-child(2) .campaign_item {
  display: table;
  margin: 1.5em auto;
  padding: 0 2em;
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  font-size: 138%;
}
.fee-col2 li:nth-child(2) .campaign_item li {text-align: left;}
.fee-col2 li:nth-child(2) .campaign_item span {
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  color: #fae606;
  
}
.fee-col2 li:nth-child(2) .n_acd-label2 {
  background: #4472c4;
  color: #fff;
}

.fee_box{  padding: 1.6rem ;}
.fee_box ul.note {
  display: table;
  margin: 0 auto;
}
.fee_box ul.note li{text-align: left;}
.fee_box ul.note li span{border-bottom: #fae606 2px solid;}
.fee_box .h3ttl{border: 1px solid #fff; padding: .5em 2em; margin: 0 0 1em; display: block;text-align: center;}
.price_l{display: inline-block;font-size:150%;margin: 0 .2em;letter-spacing: .1em; }
.list_circl li::before{content:'';width:10px;height:  10px;display:  inline-block; background-color: #e68912;border-radius:  50%;position:  relative; top: -1px; margin-right: 5px;}
.ttl{font-size: 120%;margin: .5em 0 ;}
.ttl.ttl_graph {
  text-align: left;
  border-top: solid 2px #666;
  border-bottom: solid 2px #666;
  background: #666;
  color: #fff;
  padding-left: 0.5em;
}
.ttl.ttl_oen {
  font-size: 220%;
}
.p_oen {
  font-size: 140%;
}
.ttl_graph_box {
  width: 70%;
  margin: 0 auto;
/*  border-right: solid 2px white;
  border-left: solid 2px white;  
  border-bottom: solid 2px white;*/
  background: #FFF;
  color: #666;
  margin-bottom: 1em;
}
.ttl_graph_box .note.emphasis02 {
  text-align: left;
}
.ttl_graph_box .note.emphasis02 span {
  border-bottom: 2px solid #fae606;
}

.sbjprice_box {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*display: table;*/
  margin: 0 0.5em 1em;

}
.sbjprice_box p {
  text-align: left;
  margin-bottom: 0;
/*  display: table-cell;
  vertical-align: middle;
*/
}


/*志望大おすすめ講座*/
.rcmnd_table{border-collapse:collapse;border-spacing:0;}
/*.rcmnd_table tr{border-bottom:solid 2px #eee;}*/
.rcmnd_table th{padding: 2em; background-color:#00b9ef;border:2px solid #fff;;color: #FFF;}
.rcmnd_table th,.rcmnd_table td{padding:15px 30px;border:solid 1px #ddd; }
.rcmnd_table th{text-align: center; width: 38%;}
.rcmnd_table th:first-child {background-color:#FFF; width: 21%;border: none;}
.rcmnd_table td:first-child {background-color:#c2e3ed;color: #333;}
.rcmnd_table.gr2 th{text-align: center; width: 28%;}
.rcmnd_table.gr2 th:first-child {background-color:#FFF; width: 10%;border: none;}
.rcmnd_table.gr2 td:first-child {background-color:#c2e3ed; color: #333;padding:15px 5px;}

.rcmnd_table td ul.rcmnd_sjlist li {
	display: block;
	text-indent: -3em;
	padding-left: 3em;
}
/*type01*/
.rcmnd_table.type01 {width: 100%;}
.rcmnd_table.type01 th {width: calc(100% - 230px);}
.rcmnd_table.type01  td.bg_w {background-color:#fff;color: #333;}
.rcmnd_table.type01 td.tc {vertical-align: middle;}
/*pass_voice*/
.pass_voice .h3ttl {
 font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  font-size: 150%;
  color: #84060D;
  margin:35px 0 15px;
  display: table;
}
.pass_voice .pass_voice_list {
  display: flex;
  justify-content: space-between;
}
.pass_voice .pass_voice_list > li {
  width: calc(100% / 3);
  border-right: 1px solid #ddd;
  padding: 8px 16px;
  box-sizing: border-box;
}
.pass_voice .pass_voice_list > li:first-child {
  border-left: 1px solid #ddd;
}
.pass_voice .pass_voice_list > li .pass_info {
  padding-bottom: 1em;
  border-bottom: 1px solid #00b9ef;
}
.pass_voice .pass_voice_list > li .pass_info span {
  display: block;
  line-height: 1.4;
}
.pass_voice .pass_voice_list > li .pass_info span.univ {
  font-size: 30px;
}
.pass_voice .pass_voice_list > li .pass_info span.department {
  font-size: 20px;
}
.pass_voice .pass_voice_list > li .pass_info span.name {
  font-size: 20px;
}

.pass_voice .pass_voice_list > li .course_list li {
  position: relative;
  padding-left:20px;
}
.pass_voice .pass_voice_list > li .course_list li:before {
  position: absolute;
  top: 0;
  left: 0;
  content: "●";
  width: 16px;
  height: 16px;
  color: #00b9ef;
}

/* tablet=========================== */
@media screen and (min-width: 737px) and (max-width:768px){

#wrapper{width: 100%; overflow: hidden;}
#main_content {width: 100%;}
.fit{width: 100%;}
.tablet{display: block;}
.inr{padding: 2.727vw;}
#breadcrumb ul{width: 100%;}
.mainvisual_wrap{width: 100%;margin-bottom: 4rem;}

.top_key_txt {font-size:  6.2vw; margin: 1em auto;display: table;}
.top_key_txt span{font-size:  4.8vw;}
.key_txt {font-size: 6.2vw;}
.seasonal_top .h1ttl {
font-size: 7.8vw;
margin: 4.727vw 2.727vw;
}
.seasonal_top .h2ttl {
  font-size:  6.327vw;
  margin: 4.727vw 0;
}
.seasonal_top .h2ttl .sub_ttl{font-size:  4.327vw;}
.seasonal_top .h3ttl {
  font-size:  4.327vw;
  margin: 4.727vw 0;
}
	
.label_list_wrap{flex-wrap: wrap;}
.label_list_wrap div{width: 100%;}

.h2section{margin-top:2.4rem;}
}



/* SP============================ */
@media screen and (max-width:768px){

.sp_left{text-align: left;}
.fit{width: 100%;}
.inr{padding: 2.727vw;}
.pc,.tablet{display:none;}
.sp{display:block;}
.sp_l{display:block;}
#wrapper{width:100%;position:relative;overflow:hidden;}
	
.font01{font-size: 200%;}.font02{font-size: 180%;}.font03{font-size: 160%;}.font04{font-size: 140%;}.font05{font-size: 120%;}.font06{font-size: 96%;}.font07{font-size: 88%;}
	
.main_keyvisual{width: 100%; margin-bottom: 2em;}
.main_keyvisual img{width: 100%;}
.top_key_txt {font-size:  6.2vw; margin: 4.727vw 2.727vw;　display: block;}
.top_key_txt span{font-size:  4.8vw;}
.key_txt {font-size: 6.2vw;}
	
#content_col1 #main_content {width: 100%;margin: 0 auto;}

/*title*/
.seasonal_top .h1ttl {
font-size: 7.8vw;
margin: 4.727vw 2.727vw;
}
.seasonal_top .h2ttl {
  font-size:  6.327vw;
  margin: 4.727vw 0;
}
.seasonal_top .h2ttl .sub_ttl{font-size:  4.327vw;}
.seasonal_top .h3ttl {
  font-size:  4.327vw;
  margin: 4.727vw 0;
}
.h2section{margin-top:1.4rem;}
	
#feature{font-size: 1em;}
#feature .h2ttl span.ttlcopy{display: block;margin-bottom: .5em;width: 100%;}
#feature .maru {height: 56px;width: 56px;border-radius:50%;line-height:50px;margin-right: 0;margin-bottom: 0;}
#feature .ttl {font-size: 4.5vw;}
.feature_info{justify-content: space-between;}
.feature_list{margin-bottom: .5em;}
/*.feature_list li:nth-child(1){width: 66px;}
.feature_list li:nth-child(2){width: calc(100% - 72px);}
.feature_info > .txt{margin-left: 66px;}*/
.pagelink_list{margin-bottom: 50px;}
.pagelink_list li{padding: 18px;width: 100%;margin-bottom: 2%;font-size: 110%;}
.pagelink_list._col2 li{width:100%;}

.link_pdf {background-size: contain;}
	
p.invite_link a{padding:1rem;line-height:1.8;}
.common_table{width:100%;}

.label {float: none;overflow: hidden;margin: 0.5rem 0;}
.label_tit{display: block;width:80px; float: none;margin: 0.2rem 0;}
.label_tit.l{width: 80px; }
	
.common_table.rsp tbody::-webkit-scrollbar {width: 15px;}
.common_table.rsp tbody::-webkit-scrollbar-track {border-radius: 10px;background: #f2f2f2;}
.common_table.rsp tbody::-webkit-scrollbar-thumb {border-radius: 10px;background:#AC6F72;}
.common_table.rsp{width: 100%;margin-bottom: 0.5rem;}
.common_table.rsp thead,.common_table.rsp tbody {display: block;}
.common_table.rsp tbody {overflow-x: hidden;overflow-y: scroll;height: 400px;}
.common_table.rsp.noscroll tbody {overflow-y: visible;height: auto;} /* スクロールさせたくない講座一覧 */
.common_table.rsp td:not(.cell_ff){vertical-align: top;}
.subject, .cell_ff{width:22px;min-width: 22px;}
.common_table.rsp tbody tr:not(.firstline) td:nth-child(1),.coursename{width:144px;min-width: 144px;}
.outline{width: 99999px;}
.remote{white-space: normal;}
.personal{white-space: normal;}
.grade-j2-j1_top .flex_wrap .common_table tbody td{height: auto;min-height: inherit;}

/*料金のご案内*/
.fee_wrap{padding:10px 10px 15px;margin-bottom:20px; }
.fee-col2{flex-wrap: wrap;}
.fee-col2 > li:nth-child(1){width: 100%; }.fee-col2 > li:nth-child(2){width: 100%; }.fee-col2 > li + li{margin-left: 0;}
.fee_box{  padding: 0.6rem 0 ;}

.price_l{font-size:138%; }

/*料金のご案内　モーダルウインドウ*/
.modal_content{width: 100%;}
.catalog_btn { width: 92%;}
	
/*志望大おすすめ講座*/
.rcmnd_table{width: 100%;}
.rcmnd_table .thead{display: none;}
.rcmnd_table tr:nth-child(2){border-top: 2px solid #eee;}
.rcmnd_table td{display: block;position: relative;padding:10px;width: 100%;}
/*.rcmnd_table td:nth-child(2),.rcmnd_table td:nth-child(3){padding-left: 20%;}
.rcmnd_table td:nth-child(2)::before {content: "文系";background: #22aaa1;color:#fff;display:flex;justify-content: center; align-items: center; position: absolute; top: 0; left: 0;height: 100%; width: 15%;}
.rcmnd_table td:nth-child(3)::before {content: "理系";;background: #22aaa1;color:#fff;display:flex;justify-content: center; align-items: center; position: absolute; top: 0; left: 0;height: 100%; width: 15%;}*/
.rcmnd_table.gr2 td:nth-child(2),.rcmnd_table td:nth-child(3),.rcmnd_table td:nth-child(4){padding-left: 30%;}
.rcmnd_table.gr2 td:nth-child(2)::before {content: "東大・早慶・医学科等のトップレベルを目指す方";background: #00b9ef;color:#fff;display:flex;justify-content: center; align-items: center; position: absolute; top: 0; left: 0;height: 100%; width: 25%; padding: 0 5px;}
.rcmnd_table.gr2 td:nth-child(3)::before {content: "難関国公立大やMARCHなどの難関私大を目指す方";;background: #00b9ef;color:#fff;display:flex;justify-content: center; align-items: center; position: absolute; top: 0; left: 0;height: 100%; width: 25%; padding: 0 5px;}
.rcmnd_table.gr2 td:nth-child(4)::before {content: "基礎から力をつけレベルアップを目指す方";;background: #00b9ef;color:#fff;display:flex;justify-content: center; align-items: center; position: absolute; top: 0; left: 0;height: 100%; width: 25%; padding: 0 5px;}


/*type01*/
.rcmnd_table.type01 th {width: calc(100% - 105px);}
.rcmnd_table.type01 td {display: table-cell; width:105px;}
/*pass_voice*/

.pass_voice .pass_voice_list > li .pass_info span.univ {
  font-size: 3.5vw;
}
.pass_voice .pass_voice_list > li .pass_info span.department {
  font-size: 2.1vw;
}
.pass_voice .pass_voice_list > li .pass_info span.name {
  font-size: 2.1vw;
}
.pass_voice .pass_voice_list > li .pass_info span.hs {
  font-size: 0.9vw;
}
.label_list li + li {margin-left:0 !important;}
.label_index {margin: .2em;}

.label_list_wrap{flex-wrap: wrap;}
.label_list_wrap div{width: 100%;}
.label_list_wrap div + div{margin-top: .5em;}
.label_list li:first-child{display:block;}
}


@media screen and (max-width:320px){
.sp_l{display:none;}
.mainvisual_box_seasonal .sub_ttl {font-size: 178%; letter-spacing: -0.03em;}
.common_table.rsp td{clear: both;padding:5px;}
.common_table.rsp tbody tr:not(.firstline) td:nth-child(1),.coursename{width:124px;min-width: 124px;}

/*料金のご案内*/
.fee_autumn_box_l{width:100%;margin-bottom: 1em;height: 100%;}
.fee_autumn_box_r{width:100%;height: 100%;}

.label_list_wrap{flex-wrap: wrap;}
.label_list_wrap div{width: 100%;}

}


@media screen and (min-width: 735px) {  
  .pc_none { display: none !important; }
  .invite_link_form a {
    background: #84060d;
    border: 2px solid #84060d;
    color: #fff;
    width: 100%;
    height: 56px;
    line-height: 52px;
    padding: 0 28px;
    font-size: 140%;
    margin: 32px 0 0 0;
    display: block;
    position: relative;
  }
  .invite_link_form a::after {
    content: "";
    width: 10px;
    height: 10px;
    border-top: 2px solid #fff;
    border-right: 2px solid #fff;
    transform: rotate(45deg);
    display: block;
    position: absolute;
    top: 20px;
    right: 20px;
  }
  .invite_link_form a:hover {
    background: #fff;
    color: #84060d;
  }
  .invite_link_form a:hover::after {
    border-top: 2px solid #84060d;
    border-right: 2px solid #84060d;
  }
}

@media screen and (max-width: 768px) {  
  .sp_none { display: none !important; }
  .invite_link_form a {
    background: #84060d;
    color: #fff;
    width: 89.67vw;
    height: 22vw;
    line-height: 22vw;
    padding: 0 4.34vw;
    font-size: 128%;
    margin: 8.68vw auto 0 auto;
    display: block;
    position: relative;
  }
  .invite_link_form a::after {
    content: "";
    width: 2.6vw;
    height: 2.6vw;
    border-top: 0.54vw solid #fff;
    border-right: 0.54vw solid #fff;
    transform: rotate(45deg);
    display: block;
    position: absolute;
    top: 9.43vw;
    right: 4.34vw;
  }
}
@media screen and (max-width:520px){
  .pass_voice .pass_voice_list > li .pass_info {
    height: 96px;
  }
}

/* common link、common school icon
============================ */
.link_new_window {
  background: url(../../../summer%20-%20Copy/common/images/icon_link_new_window.png) no-repeat right center;
  padding-right: 13px;
  margin-right: 3px;
}
.tokyo, .shibuya, .ikebukuro, .kichijoji, .minamiurawa {
  background-repeat: no-repeat;
  background-position: left center;
  padding: 3px 0 3px 25px;
}
.tokyo { background-image: url(../../../summer%20-%20Copy/common/images/icon_tokyo.png); }
.shibuya { background-image: url(../../../summer%20-%20Copy/common/images/icon_shibuya.png); }
.ikebukuro { background-image: url(../../../summer%20-%20Copy/common/images/icon_ikebukuro.png); }
.kichijoji { background-image: url(../../../summer%20-%20Copy/common/images/icon_kichijoji.png); }
.minamiurawa { background-image: url(../../../summer%20-%20Copy/common/images/icon_minamiurawa.png);}



/* Breadcrumb
============================ */
#breadcrumb {
  border-bottom: 1px solid #FFF;
  padding: 10px 0;
  margin-bottom: 18px;
}
#breadcrumb ul {
  width: 960px;
  margin: 0 auto;
}
#breadcrumb ul li {
  float: left;
  margin-right: 25px;
  font-size: 85.71429%;
  background-image: none;
  padding-left: 0;
}
#breadcrumb ul li:first-child {
  background-image: none;
  padding-left: 0;
}
#breadcrumb ul li::before {
	content: "＞";
	padding-right: 25px;
}
#breadcrumb ul li:first-child::before {
	content: none;
}
#breadcrumb ul li.current { font-weight: bold; }
#breadcrumb a { color: #666; }

@media screen and (max-width: 768px) {
  #breadcrumb { display: none; }
}

/* Contact Info
============================ */



.top_tel_content {
	background: #3370ba;
}
	

.top_tel{
  text-align: center;
  max-width: 1000px;
  width: 100%;
  margin: 50px auto;
  padding: 35px 0;
  font-size: 18px;
}

.top_tel .top_tel_txt{
  color: #FFF;
  font-size: 26px;
  margin-bottom: 15px;
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
}


.top_tel .top_tel_btn a{
	background:url(/common/images/arrow_right_green.svg) 95% center / 7px no-repeat #FFF;
	font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
	color: #3370ba;
	font-size: 21px;
	padding: 20px 45px;
	border-radius: 8px;
	display: table;
	margin: 20px auto;
}

.top_tel .top_tel_link a{
  color: #FFF;
  font-size: 20px;
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  border-bottom: #FFF 1px solid;
  display: table;
    margin: 0 auto 2.5em;
}

.top_tel .top_tel_tit{
  color: #FFF;
  font-size: 22px;
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  margin-bottom: 0;
}


.top_tel .top_tel_num a{
  color: #FFF;
  font-size: 60px;
  letter-spacing: 3px;
  pointer-events: none;
  font-family: "Roboto",sans-serif;
	font-weight: 500;
  margin-bottom: 10px;
}
.top_tel .top_tel_reception{
	color: #FFF;
	font-size: 16px;
	line-height: 1.5;
	margin-bottom: 0;
}

@media screen and (max-width: 768px){
  .top_tel{
    margin-top: 10px;
  }
  .top_tel_content{
    padding: 0 2.727vw;
  }
  .top_tel .top_tel_txt{
    line-height: 1.5;
	  	  font-size: 22px;
  }
  .top_tel .top_tel_tit{
    font-size: 20px;
  }
  .top_tel .top_tel_num{
    margin-bottom: 16px;
  }
  .top_tel .top_tel_num a{
    font-size: 30px;
    pointer-events: auto;
  }
  .top_tel .top_tel_reception{
    font-size: 14px;
    line-height: 1.8;
  }
.top_tel .top_tel_reception span{
	display: none;
}
}

/* 申し込みボタン
============================ */
.seasonal_top p.invite_link {
	width: 70%;
	border: none;
    font-size: 28px;
    margin: 2em auto 5px;
	text-align: center;
}
.seasonal_top p.invite_link a{
	display: block;
	color: #FFF;
	line-height: 3em;
    font-weight: bold;
    margin-top: 1.5em;
	background: #00b9ef;
}
.seasonal_top p.invite_link a:hover {
	background: #57A7A0;
	opacity: 0.6
}
.invite_link_note {
	display: table;
	margin: 0 auto 1em;
}
@media screen and (max-width: 768px) {
.seasonal_top p.invite_link {
	width: 100%;
	border: none;
    font-size: 6.5vw;
    margin: 4.727vw 0;
	padding:  2.727vw;
}
.invite_link_note {
	margin: 0 2em 1em;
}
}


/* Topへ戻るボタン
============================ */
@media screen and (max-width: 768px){
#sp_fixed_nav a {font-family: "こぶりなゴシック W3 JIS2004","Koburina Gothic W3 JIS2004",Sans-Serif;}
}



/* ////////// 志望大学別夏期講習プラン ////////// */
@media only screen and (min-width: 737px) {
	.recommend_wrapper::after { content: ""; display: block; clear: both; }
	.plan_by_aspiring_university {
		width: 468px;
		float: left;
		padding-top: 24px;
	}
	.plan_by_aspiring_university:nth-of-type(even) { float: right; }
	.plan_by_aspiring_university h3 {
		font-size: 24px !important;
		font-weight: normal;
		letter-spacing: 2px;
		line-height: 1.2em;
		display: table-cell !important;
		vertical-align: middle !important;
		padding-bottom: 8px;
	}
	.plan_by_aspiring_university h3 span {
		font-size: 16px;
		letter-spacing: normal;
	}
	.plan_by_aspiring_university table,
	.plan_by_aspiring_university table th,
	.plan_by_aspiring_university table td {
		border: 1px solid #ccc;
		border-collapse: collapse;
	}
	.plan_by_aspiring_university table {
		width: 100%;
		margin-bottom: 8px;
	}
	.plan_by_aspiring_university table th {
		width: calc(6em + 16px);
		background: #00b9ef;
		font-weight: normal;
		padding: 8px;
		vertical-align: middle;
		color: #fff;
		border-bottom-color: #fff;
	}
	.plan_by_aspiring_university table th.th_row {
		width: calc(1em + 16px);
		border-right-color: #fff;
	}
	.plan_by_aspiring_university table td {
		background: #fafafa;
		padding: 8px;
	}
}
@media only screen and (max-width: 768px) {
  .ttl_graph_box {
    width: 100%;
  }
  .sbjprice_box p span {
    display: none;
  }
  .sbjprice_box p {
    max-width: 75%;
  }
  .sbjprice_box p.price {
    min-width: 116px;
    text-align: right;
  }
	.plan_by_aspiring_university {
		width: 100%;
		display: block;
	}
	.plan_by_aspiring_university h3 {
		width: 100%;
		font-size: 5.43vw !important;
		font-weight: normal;
		border: 0.27vw solid #ccc;
		padding: 4.34vw 4.34vw 4.34vw 2.17vw;
		margin: 0;
		position: relative;
		line-height: 1.2em;
		letter-spacing: 0.54vw;
	}
	.plan_by_aspiring_university h3::after {
		content: "";
		width: 2.17vw;
		height: 2.17vw;
		border-right: 1.08vw solid #84060D;
		border-bottom: 1.08vw solid #84060D;
		transform: rotate(45deg);
		position: absolute;
		right: 2.17vw;
		top: calc(50% - 1.625vw);
		transition: all 0.4s;
	}
	.plan_by_aspiring_university.open h3::after { transition: all 0.4s; transform: rotate(-135deg);	}
	.plan_by_aspiring_university h3 span {
		font-size: 3.8vw;
		font-weight: normal;
	}
	.plan_by_aspiring_university .plan_block { display: none; }
	.plan_by_aspiring_university table,
	.plan_by_aspiring_university table th,
	.plan_by_aspiring_university table td {
		border: 0.27vw solid #ccc;
		border-collapse: collapse;
	}
	.plan_by_aspiring_university table {
		width: 100%;
		margin-bottom: 2.17vw;
	}
	.plan_by_aspiring_university table th {
		width: calc(6em + 2.17vw);
		background: #00b9ef;
		color: #fff;
		font-weight: normal;
		padding: 1.085vw;
		vertical-align: middle;
		border-bottom-color: #fff;
	}
	.plan_by_aspiring_university table th.th_row {
		width: calc(1em + 2.17vw);
		border-right-color: #fff;
	}
	.plan_by_aspiring_university table td {
		background: #fafafa;
		padding: 1.085vw;
	}
}
.plan_by_aspiring_university .rotate {
	transform: rotate(90deg);
	display: inline-block;
}
.plan_by_aspiring_university .b {
	font-weight: bold;
	position: relative;
}
.plan_by_aspiring_university .b::after {
	content: "・";
	position: absolute;
	top: -1em;
}
.plan_by_aspiring_university table .th_row.last,
.plan_by_aspiring_university table tr:last-of-type th { border-bottom-color: #ccc; }

/*other_class_link*/
.other_class_link {
    margin-bottom: 50px;
}
.other_class_link li {
    background: #104164;
    font-size: 1.2rem;
    margin-bottom: 15px;
}
.other_class_link li.bg_or {
  background:#ff6600;
  font-size: 1.2rem;
}
.other_class_link li .emphasis01{
  color: #fae606;
  font-size: 1rem;
}
.other_class_link li:last-child {
  margin-bottom: 50px;
}
.other_class_link li a {
    display: block;
    color: #fff;
    font-size: 128%;
    padding: 8px 15px;
    background: url(/common/images/arrow_right_white.png) 98% center / 7px no-repeat;
}
@media screen and (max-width:768px){
.other_class_link {margin: 0 2.727vw 4.8vw}
}

/*タイプ別おすすめ講座*/
.type {
  margin-bottom: 1em;
}
.type .type_list {
  display: flex;
  margin-bottom: 8px;
}
.type .type_list li {
  margin-right: 3em;
}
i.icon {
  display: inline-block;
  width: 30px;
  min-width: 30px;
  margin-right: 0.3em;
  text-align: center;
  color: #fff;
  font-style: normal;
  font-weight: bold;
}
i.rglr_ico {
  background: #00396a;
}
i.optn_ico {
  background: #df7a4c;
}
.type_table {
  width: 100%;
  margin-bottom: 3em;
}
.type_table:last-child {
  margin-bottom: 0;
}
.type_table th {
  width: 100px;
  margin-bottom: 3em;
  vertical-align: middle;
  text-align: center;
  text-indent: 0.5em;
  color: #fff;
}
.type_table th.eng {
  background: #5e8bb4;
}
.type_table th.math {
  background: #7aaaa8;
}
.type_table td {
  padding-left: 16px;
}
.type_table td div {
  display: flex;
  justify-content: space-between;
  margin-bottom: 2em;
}
.type_table td div p{
  position: relative;
  display: flex;
  align-items: center;
  width: calc((100% - 38px) / 2);
  margin-bottom: 0;
  padding: 1.085vw;
  box-sizing: border-box;
  word-break: break-all;
}
.type_table td div p:after{
  position: absolute;
  content: "+";
  top: 50%;
  right: -44px;
  width: 30px;
  height: 30px;
  font-size: 20px;
  transform: translateY(-50%);
}
.type_table td div p:last-child:after{
  content: "";
}
.type_table td div.h_center p {
  width: calc((100% - 76px) / 3);
}
.type_table td div p i {
  min-width: 30px;
}  

.type_table td div.mgn_none{
  margin-bottom: 4px;
}
.type_table td div p.regular{
  border: 1px solid #00396a;
} 
.type_table td div p.option{
  border: 1px solid #df7a4c;
} 
.type_table td div > span {
  font-size: 20px;
}
.type_table td p > span {
  display: block;
  margin-left: 16px;
  font-size: 0.8rem;
}
.type_table td > p {
  margin-bottom: 0.5em;
}
.type_table td > span {
  display: block;
  font-size: 0.8rem;
}
.type_table td .mgn_btm{
  margin-bottom: 2em;
}
@media screen and (max-width: 768px) {
  .type_table {
    margin-bottom: 1.5em;
  }
  .type_table td > p {
    margin-bottom: .5em;
  }
  .type_table td div p {
    padding: 1vw;
  }
  .type_table th {
    width: 18%;
  }
  .type_table td div p {
    width: calc((100% - 30px)/2);
  }
  .type_table td div.h_center p {
    width: calc((100% - 60px) / 3);
  }
  .type_table td div p:after{
    right: -40px;
  }
}
/* ========== JMC 20201020 追加 ========== */
#jmc h3 {
  color: #666;
}
.jmctable_box_wrapper {
  display: flex;
  flex-direction: row;  
}
.jmctable_label_box {
  font-size: 90%;
}
.jmctable_chart_box {
  width: 40%;
  position: relative;
}
.jmctable_label_box.jmcg {
  display: none;
}
.jmctable_chart_box.jmcg {
  border-left: #aaa 1px solid;
}
.jmctable_label, .jmctable_chart {
  border-collapse: collapse;
  width:100%;
}
.jmctable_label th{
  color: #FFF;
  border: #333 1px solid;
  border-right: #FFF 1px solid;
  background: #666;
  text-align: center;
  white-space: nowrap;
  padding: 5px;
}
.jmctable_label td:nth-child(odd) {
  background: #efefef;
}
.jmctable_label th:last-child{
  border-right: #333 1px solid;
}
.jmctable_label tr td {
  border: #333 1px solid;
  text-align: center;
  white-space: nowrap;
  height: 80px;
  padding: 5px;
}
.jmctable_chart th {
  padding: 5px;
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
}
.jmctable_chart td {
  background: #e2eded;
  border-bottom: #FFF 1px solid;
  height: 80px;
  padding: 5px;
}

.jmc_target {
  padding: 1em 3em;
}
.jmc_target p:first-of-type {
  color: #25b7aa;
  margin-bottom: 0;
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
}
.jmc_target p:last-of-type {
  border: #25b7aa 2px solid;
  padding: 5px;
  margin-bottom: 0;
}
.panel_jmc1,.panel_jmc2,.panel_jmc3 {
  display: table;
  position: absolute;
  background: #25b7aa;
  color: #fff;
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  text-align: center;
  padding: 20px 5px;
  vertical-align: middle;
  width:25%;
}
.panel_jmc1 span,.panel_jmc2 span,.panel_jmcg1 span,.panel_jmcg2 span,.panel_jmc3  span{
  font-size: 85%;
}
.panel_jmc1 {
  height: 125px;
  top: 320px; 
  left:5%;
}
.panel_jmc2 {
  height: 150px;
  top: 230px; 
  left:35%;
}
.panel_jmc3 {
  height: 150px;
  top: 190px; 
  left:65%;
}
.panel_jmcg1,.panel_jmcg2 {
  display: table;
  position: absolute;
  background: #18978c;
  color: #fff;
  font-family: "こぶりなゴシック W6 JIS2004","Koburina Gothic W6 JIS2004",Sans-Serif;
  text-align: center;
  padding: 30px 5px;
  vertical-align: middle;
  width:35%;
}
.panel_jmcg1 {
  height: 180px;
  top: 250px; 
  left:10%;
}
.panel_jmcg2 {
  height: 150px;
  top: 220px; 
  left:55%;
}
@media screen and (max-width: 768px) {
  .jmctable_box_wrapper {
    flex-wrap: wrap;
  }
  .jmctable_label_box {
    width: 42%;
    font-size: 60%;
  }
  .jmctable_chart_box {
    width: 58%;
  }
  .jmctable_label_box.jmcg {
    display: block;margin-top: 50px;
  }
  .jmctable_chart_box.jmcg {
    border-left: none;
    margin-top: 50px;
  }
  .jmctable_label th{
    white-space: nowrap;
    padding: 5px 2px;
    height: 50px;
  }
  .jmctable_label th .sup {
    display: block;
  }
  .jmctable_label tr td {
      padding: 5px 2px;
  }
  .jmctable_chart th {
      padding:2px;
      font-size: 80%;
      height: 50px;
  }
  .jmc_target {
    padding: 1em 0.5em;
  }
  .panel_jmc1,.panel_jmc2,.panel_jmc3 {
    padding: 15px 2px;
  }
  .panel_jmcg1,.panel_jmcg2 {
    padding: 25px 5px;
  }
  .panel_jmc1 span,.panel_jmc2 span,.panel_jmcg1 span,.panel_jmcg2 span,.panel_jmc3  span{
    font-size: 80%;
  }
  .panel_jmc1 {
    height: 115px;
  }
  .panel_jmcg1 {
    height: 180px;
    top: 250px; 
    left:10%;
  }
  .panel_jmcg2 {
    height: 140px;
    top: 220px; 
    left:55%;
  }
}



.main_message{
	width: 960px;
	margin-bottom: 2em;
	padding: 24px 72px;
	border: #fff 2px solid;
}
.main_message_ttl {
	line-height: 1.6;
	text-align: center;
	font-size: 26px;
	margin: 0 auto 24px;
	color: #333;
}
.main_message_txt {
	font-size: 16px;
	line-height: 1.6;
	letter-spacing: 1px;
	margin: 0 0 16px 0;
	color: #666;
}
.main_message_txt:last-of-type { margin: 0; }

@media screen and (max-width:768px){
	.main_message{
		width: 94.546vw;
		margin: 4.727vw 2.727vw;
		padding: 4.8vw;
	}
	.main_message_ttl {
		font-size: 4.26vw;
		margin: 0 auto 2.4vw auto;
		font-weight: bold;
	}
	.main_message_txt {
		font-size: 3.46vw;
		margin: 0 0 4.26vw 0;
	}
}
