@charset "utf-8";
/* CSS Document */

.fv-page{
	background: url(/img/programsp_bk.png) no-repeat ;
	background-size: cover;
	    background-position: 50%;
}
h1{
	text-shadow: 
0 0 25px #edf8ff, 
0 0 20px #edf8ff, 
0 0 0.40px #edf8ff;
}
@media screen and (min-width: 1024px) {
	.fv-page{
	background: url(/img/program_bk.png) no-repeat ;
			background-size: cover;
		background-position: right center;
	}
	h1{
	text-shadow: 
0 0 100px #edf8ff, 
0 0 80px #edf8ff, 
0 0 3px #edf8ff;
}
}

.wrap-page,.wrap-page2{
	max-width: 1200px;
	width: 90%;
	margin: 30px auto;
}
.wrap-page h2{
	font-size: 1.3rem;
	line-height: 1.5;
	color: #212a54;
	text-align:center;
	position: relative;
	margin-top: 50px;
	margin-bottom: 20px;
}
@media screen and (max-width: 375px) {
.f2br{
	display: block;
}
}
.wrap-page p {
    line-height: 1.8;
}
.attention{
	font-size: .7rem;
	line-height: 1.6;
	letter-spacing: .5px;
}
table.pricetable{
	border-collapse:  collapse; /* セルの線を重ねる */
	width: 100%;
	margin-top: 20px;
	margin-bottom: 20px;
}
.pricetable th,.pricetable td {
	font-weight: normal;
    border: solid 1px;  /* 枠線指定 */
    padding: 10px;      /* 余白指定 */
	background: #fff;
	vertical-align: middle;
	color: #000;
}
.pricetable th{
	background-color: #dae3e7;
	
}
h2.pfh{
	margin-top: 60px;
	line-height: 1.5;
}
@media screen and (min-width: 414px) {
	h2.pfh{
	line-height: 1;
}
	.wrap-page h2{
	font-size: 1.2rem;
	line-height: 1;
	margin-top: 50px;
	margin-bottom: 30px;
}
}

@media screen and (min-width: 768px) {
.wrap-page h2,#main_cat h2,#special_cat h2 {
	font-size: 1.5rem;
}
	#main_cat h2 span,#special_cat h2 span{
		font-size: 1.3rem;
	}
}
@media screen and (min-width: 1024px) {
.wrap-page h2,#main_cat h2,#special_cat h2 {
	font-size: 1.9rem;
	margin-bottom: 30px;
}
#main_cat h2 span,#special_cat h2 span{
		font-size: 1.1rem;
	}

.wrap-page{
	width: 96%;
	margin: 100px auto 100px;
	text-align: center;
}
.wrap-page2{
	width: 96%;
	margin: 50px auto 100px;
	text-align: center;
}
	.wrap-page p{
		line-height: 2;
		text-align: left;
		font-size:1rem;
	}
	.wrap-page p.center{
		text-align:center;
	}
	h2.pfh{
	margin-top: 100px;
}
}

.program_ank{
	width: 90%;
	padding:20px 5%;
	margin: 30px auto;
	background: #cad7dd;
	text-align: center;
}
.main_ank{
width: 100%;
background: #85b1c5;
	padding-top: 20px;
	padding-bottom:  20px;
	margin-bottom: 20px;
}
.special_ank{
	width: 100%;
background: #231c5c;
	padding-top: 20px;
	padding-bottom:  20px;
	margin-bottom: 20px;
}
.level_ank::after{
	content: "\e64b";
	font-family: 'themify';
font-style: normal;
font-weight: normal;
font-variant: normal;
text-transform: none;
line-height: 1;
}
.main_ank h3,.special_ank h3{
	color: #fff;
	font-family: 游ゴシック, YuGothic, ヒラギノ角ゴ ProN W3, Hiragino Kaku Gothic ProN, メイリオ, Meiryo, sans-serif;
	text-align: center;
	font-size: .9rem
}
h3 span{
	font-size: .7rem;
}
.program_ank ul li a{
	background: #fff;
	width: 90%;
	display: block;
	height: auto;
	margin: 15px auto 0;
	padding: 10px 0 10px 5%;
	border-radius: 10px;
	position: relative;
	text-align: left;
	font-size: .8rem;
}
.program_ank ul li a::before{
	position: absolute;
	content: "\e64b";
	font-family: 'themify';
font-style: normal;
font-weight: bold;
font-variant: normal;
text-transform: none;
line-height: 1;
	color: #fff;
	width: 1rem;
	height: auto;
	top:52%;
	right: 10px;
	transform: translateY(-52%); 
	z-index: 2;
font-size: 12px
}
.program_ank ul li a::after{
	position: absolute;
	content: "";
	top:50%;
	right: 10px;
	width: 20px;
	height: 20px;
	transform: translateY(-50%); 
	background: #f5800d;
	border-radius: 50%;
	z-index: 1;
}
.level_ank{
	text-decoration: underline;
	text-align: center;
}
@media screen and (min-width: 1024px) {
	.program_ank{
	width: 92%;
		padding:20px 4%;
	margin: 50px auto 30px;
}
	.main_ank h3,.special_ank h3{
	font-size: 1.2rem
}
h3 span{
	font-size: 1rem;
}
.program_ank ul li a{
	font-size:1rem;
}
	ul.komoku li {
    font-size: 1rem;
}
.main_ank{
width: 48%;
			height: 300px;
	padding-top: 20px;
	padding-bottom:  20px;
	margin-bottom: 20px;
	margin-right: 4%;
	float: left;
}
.special_ank{
width: 48%;
	height: 300px;
	
	padding-top: 20px;
	padding-bottom:  20px;
	margin-bottom: 20px;
		float: left;
}
	.program_ank::after{
		content:"";
		display: block;
		clear: both;
	}
}

#main_cat h2{
	background: #85b1c5;
	color: #fff;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-top: 60px
}
#special_cat h2{
	background: #231c5c;
	color: #fff;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-top: 60px
}
#program-level h2{
	background: #cad7dd;
	color: #231c5c;
	text-align: center;
	padding-top: 20px;
	padding-bottom: 20px;
	margin-top: 60px
}
.program-single{
	margin-bottom: 60px;
}
#generalenglish,#examoruented{
	margin-top: 20px;
}
#main_cat img,#special_cat img{
	width: 100%;
	height: auto;
	margin-bottom: 10px;
}

#main_cat h3,#special_cat h3{
	color:#231c5c;
	font-size: 1.2rem;
	line-height: 1.4;
}
#main_cat h3 span,#special_cat h3 span{
	display: block;
	font-size: 1rem;
}
ul.level_icon{
	margin-top: 15px;
}
ul.level_icon li{
	display: inline-block;
		color: #fff;
	margin-right: 4px;
	padding: 3px 6px;
	font-size: .65rem;
	letter-spacing: 0;
}
ul.level_icon li:first-child{
	background: #85b1c5;
	border-radius: 4px;
}
ul.level_icon li:nth-child(2){
	background: #1e4d7d;
	border-radius: 4px;
}
ul.level_icon li:last-child{
	background: #231c5c;
	border-radius: 4px;
}
ul.komoku{
	margin-top: 20px;
}
ul.komoku li{
	position: relative;
	padding-left: 2rem;
	text-align: left;
line-height:1.8;
}

ul.komoku li::before{
	position: absolute;
	top: 5px;
left: -1rem;
	content: "";
    line-height: 1;
width: 13px;
height: 13px;
background: #231c5c;
margin: 3px 0 0 30px;
-webkit-transform: rotate(-45deg);
-moz-transform: rotate(-45deg);
-ms-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg);
-webkit-transform-origin: 0 100%;
-moz-transform-origin: 0 100%;
-ms-transform-origin: 0 100%;
-o-transform-origin: 0 100%;
transform-origin: 0 100%;
}
@media screen and (min-width: 768px) {
	#main_cat h3, #special_cat h3 {
    font-size: 1.5rem;
}
#main_cat h3 span,#special_cat h3 span{
	display: inline-block;
	font-size: 1.2rem;
	padding-left: 1rem;
}
}
@media screen and (min-width: 1024px) {
	#main_cat img,#special_cat img{
	width: 50%;
	max-width: 720px;
}
	.img-right{
		float: right
	}
	.img-left{
		float: left
	}
	.right-tx,.left-tx{
		width: 45%;
		text-align: left
	}
	.right-tx{
		float: right
	}
	.left-tx{
		float: left;
	}
	.program-single{
		margin-bottom: 100px;
	}
	#generalenglish,#examoruented{
	margin-top: 40px;
}
	.program-single::after{
		content: "";
		clear: both;
		display: block;
	}
	ul.level_icon li{
		padding: 3px 10px;
	font-size: .8rem;
	letter-spacing: 1px;
}
#main_cat h2,#special_cat h2,#program-level h2{
	font-size:1.8rem;
	margin-top: 100px;
	line-height: 1.4;
	padding-top: 30px;
padding-bottom: 30px;
}
	#main_cat h2 span,#special_cat h2 span{
		font-size: 1.1rem;
	}
#main_cat h3,#special_cat h3{
	font-size: 1.4rem;
	line-height: 1.3;
}
	#main_cat h3 span,#special_cat h3 span{
	display: block;
	font-size: 1rem;
		padding-left: 0;
}
}

.over{
	width: 95%;
	margin-left: 5%;
	overflow-x: scroll;
margin-bottom: 60px;
}
.over-attention{
	padding: 5px 0 5px 8px;
	background: #cee1e9;
	margin-top: 10px;

}
.over::-webkit-scrollbar {
  height: 10px;

}
.over::-webkit-scrollbar-track {
  margin: 0 2px;
  background: #ccc;
  border-radius: 5px;
}
.over::-webkit-scrollbar-thumb {
  border-radius: 5px;
  background: #666;
}
#program-level table{
	border-collapse:  collapse; /* セルの線を重ねる */
	width: 900px;
	margin-top: 20px;
	margin-bottom: 20px;
	
margin-left: auto;
	margin-right: auto;
}
#program-level th,#program-level td {
	font-weight: normal;
    border: solid 1px;  /* 枠線指定 */
    padding: 10px;      /* 余白指定 */
	background: #fff;
	vertical-align: middle;
	color: #000;
	font-size: .8rem
}
#program-level th{
	background-color: #dae3e7;
	
}
#program-level td {
color: #18114c;
padding: 6px;
text-align: center;

}
	.td1{
	background-color:#d0e2ea;
	padding-top: 5px;
		padding-bottom: 5px;
	width: 100%;
display: block;
}
.td2{
	background-color:#b0c9d7;
	padding-top: 5px;
		padding-bottom: 5px;
	width: 100%;
display: block;
}
.td3{
	background-color:#8aaac1;
	padding-top: 5px;
		padding-bottom: 5px;
	width: 100%;
display: block;
}
.td4{
	background-color:#6c92af;
	padding-top: 5px;
		padding-bottom: 5px;
	width: 100%;
display: block;
}
.td5{
	color: #fff;
	background-color:#4f7a9d;
	padding-top: 6px;
		padding-bottom: 6px;
	width: 100%;
display: block;
}
.td6{
	color: #fff;
	background-color:#2e5d89;
	padding-top: 6px;
		padding-bottom: 6px;
	width: 100%;
display: block;
}
.td7{
	color: #fff;
	background-color:#21507f;
	padding-top: 6px;
		padding-bottom: 6px;
	width: 100%;
display: block;
}
.td8{
	color: #fff;
	background-color:#1e4275;
	padding-top: 6px;
		padding-bottom: 6px;
	width: 100%;
display: block;
}
.td9{
	color: #fff;
	background-color:#1e3069;
	padding-top: 6px;
		padding-bottom: 6px;
	width: 100%;
display: block;
}
.td10{
	color: #fff;
	background-color:#231c5c;
	padding-top: 6px;
		padding-bottom: 6px;
	width: 100%;
display: block;
}
.cefra1{
	background: linear-gradient(-135deg, #4f7a9d ,#d0e2ea);
	padding-top: 6px;
		padding-bottom: 6px;
	width: 100%;
display: block;
}
.ielts1{
	background: linear-gradient(-135deg, #8aaac1 ,#d0e2ea);
	padding-top: 6px;
		padding-bottom: 6px;
	width: 100%;
display: block;
}
.eiken1{
	color: #fff;
	background: linear-gradient(-135deg, #1e4275 ,#21507f);
	padding-top: 10px;
		padding-bottom: 10px;
	width: 100%;
display: block;
}
.all{
	background: linear-gradient(-135deg, #f57f0c ,#ffe6ce);
	padding-top: 10px;
		padding-bottom: 10px;
	width: 99%;
	margin-left: 1%;
display: block;
}
.tdskill{
	background: linear-gradient(-135deg, #f57f0c ,#fcc187);
	padding-top: 10px;
	margin-left: 1%;
		padding-bottom: 10px;
	width: 99%;
display: block;
}
.generalicon,.businessicon,.skillicon,.examicon,.espicon{
	position: relative;
	text-align: left;
}
.generalicon::before,.businessicon::before,.skillicon::before,.examicon::before,.espicon::before{
	content: "";
	display: block;
	width: 60px;
	height: 60px;
	position: absolute;
	left: -1%;
	top: -14px;
	border-radius: 50%;
	
}
.generalicon::before{
	background: url(/img/generalicon.png) 0 0 no-repeat;
	border: 5px solid #ffe6ce;
	background-size: contain;
}
.businessicon::before{
	background: url(/img/businessicon.png) 0 0 no-repeat;
	border: 5px solid #ffe6ce;
	background-size: contain;
}
.skillicon::before{
	background: url(/img/skillicon.png) 0 0 no-repeat;
	border: 5px solid #fcc187;
	background-size: contain;
}
.examicon::before{
	background: url(/img/examicon.png) 0 0 no-repeat;
	border: 5px solid #ffe6ce;
	background-size: contain;
}
.espicon::before{
	background: url(/img/espicon.png) 0 0 no-repeat;
	border: 5px solid #ffe6ce;
	background-size: contain;
}
#program-level td.tptd{
	height: 86px;
	border-top:0;
	border-bottom: 0;
	border-left: 0;
}
#program-level td.tptd2{
	height: 86px;
	border: 0 !important;
}
.tptx{
	margin-left: 75px;
}
@media screen and (min-width: 1024px) {
	#program-level table{
	border-collapse:  collapse; /* セルの線を重ねる */
	width: 1200px;
	margin-top: 60px;
	margin-bottom: 20px;
margin-left: auto;
	margin-right: auto;
}
	#program-level th,#program-level td {
	font-size: .9rem;
		font-weight: 600;
}
	.all{
		width: 98%;
	padding-top: 18px;
		padding-bottom: 18px;
		margin-left: 2%;
}
.tdskill{
	width: 98%;
	padding-top: 18px;
		padding-bottom: 18px;
	margin-left: 2%;
}
	.generalicon::before,.businessicon::before,.skillicon::before,.examicon::before,.espicon::before{
	width: 78px;
	height: 78px;
	position: absolute;
	left: -2%;
	top: -14px;
	border-radius: 50%;
}
	.tptx{
	margin-left: 95px;
}
	.over{
	width:100%;
	margin-left:0;
	overflow-x:inherit;
	margin-bottom: 100px;
}
	.over-attention{
		display: none;
	}
}
@media screen and (max-width: 768px) {
.wrap-page p.center{
	text-align:left
}
}
@media screen and (min-width: 768px) {
.ank
{
 margin-top: -180px;
padding-top: 180px;
}
}