@charset "UTF-8";
/*********************************************
common parts
*********************************************/
.bg_blue{
	background:#f3f6f9;
}
/*btn*/
.btn{
	border:2px solid #54c48a;
	border-radius:10px;
	display:inline-block;
	font-weight:bold;
	padding:15px 40px;
}
@media screen and (max-width:768px){
	.btn{
		padding:10px;
	}
}
.btn_white{
	background:#fff;
	color:#54c48a;
}
.btn_green{
	background:#54c48a;
	color:#fff;
}
.btn_icon{
	height:18px;
	margin-left:10px;
}
@media screen and (max-width:768px){
	.btn_icon{
		height:10px;
	}
}
/*sec*/
.sec{
	margin-top:70px;
}
@media screen and (max-width:768px){
	.sec{
		margin-top:40px;
	}
}
.sec_mt0{
	margin-top:0;
}
.sec_pd{
	padding:80px 0;
}
@media screen and (max-width:768px){
	.sec_pd{
		padding:40px 0;
	}
}
.sec_titles{
	text-align:center;
}
.sec_title{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+50,f6dcb8+51,f6dcb8+100 */
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffffff 0%, #ffffff 50%, #f6dcb8 51%, #f6dcb8 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 50%,#f6dcb8 51%,#f6dcb8 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 50%,#f6dcb8 51%,#f6dcb8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f6dcb8',GradientType=0 ); /* IE6-9 */
	
	display:inline-block;
	font-size:30px;
}
@media screen and (max-width:768px){
	.sec_title{
		font-size:24px;
	}
}
.sec_title_gradi_blue{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#f3f6f9+0,f3f6f9+50,f6dcb8+51,f6dcb8+100 */
	background: #f3f6f9; /* Old browsers */
	background: -moz-linear-gradient(top,  #f3f6f9 0%, #f3f6f9 50%, #f6dcb8 51%, #f6dcb8 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #f3f6f9 0%,#f3f6f9 50%,#f6dcb8 51%,#f6dcb8 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #f3f6f9 0%,#f3f6f9 50%,#f6dcb8 51%,#f6dcb8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#f3f6f9', endColorstr='#f6dcb8',GradientType=0 ); /* IE6-9 */
}
.sec_subtitle{
	color:#ed8e0c;
	font-size:18px;
	font-weight:bold;
}
@media screen and (max-width:768px){
	.sec_subtitle{
		font-size:14px;
	}
}
/*********************************************
header
*********************************************/
.header{
	padding:1em;
	position:fixed;
	top:0;
	width:100%;
	z-index:99;
}
.header_logo{
	height:40px;
}
@media screen and (max-width:768px){
	.header_logo{
		height:30px;
	}
}
.header_btn .btn{
	padding: 6px 20px;
}
@media screen and (max-width:768px){
	.header_btn .btn span{
		display:none;
	}
	.header_btn .btn_icon{
		height:15px;
		margin:0;
	}
}

/*********************************************
footer
*********************************************/
.footer{
	color:#666;
	font-size:12px;
	padding:2em;
}
/*********************************************
common cv
*********************************************/
@media screen and (min-width:769px){
	.cv{
		background:url(../images/cv_bg.jpg) center center/cover;
	}
}
.cv_cnt{
	background:rgba(237,142,12,0.8);
	color:#fff;
	margin-left:auto;
	padding:100px 20px;
	text-align:center;
	width:38%;
}
@media screen and (max-width:768px){
	.cv_cnt{
		padding:20px;
		width:100%;
	}
}
.cv_cnt_text{
	font-size:calc(1.4vw);
	font-weight:bold;
}
@media screen and (max-width:768px){
	.cv_cnt_text{
		font-size:18px;
	}
}
.cv_cnt_title{
	font-size:calc(2.2vw);
}
@media screen and (max-width:768px){
	.cv_cnt_title{
		font-size:24px;
	}
}
/*********************************************
fv
*********************************************/
.fv{
	position:relative;
}
.fv_cnt{
	margin-left:auto;
	position:relative;
	width:90%;
}
@media screen and (max-width:768px){
	.fv_cnt{
		width:100%;
	}
}
.fv_cnt_box{
	background:rgba(237,142,12,0.8);
	border-radius:10px;
	color:#fff;
	line-height:1.2;
	padding:1em;
	text-align:center;
	width:90%;
}
@media screen and (min-width:769px){
	.fv_cnt_box{
		bottom:2em;
		left:5%;
		position:absolute;
	}
}
@media screen and (max-width:768px){
	.fv_cnt_box{
		margin:-60px auto 0;;
		position:relative;
	}
}
.fv_cnt_box_title{
	font-size:calc(2.6vw);
}
@media screen and (max-width:768px){
	.fv_cnt_box_title{
		font-size:24px;
	}
}
.fv_cnt_box_title span{
	color:#fff100;
}
.fv_cnt_box_subtitle{
	font-size:calc(1.5vw);
	font-weight:bold;
}
@media screen and (max-width:768px){
	.fv_cnt_box_subtitle{
		font-size:16px;
	}
}
.fv_scroll{
	bottom:0;
	left:5%;
	position:absolute;
	transform:translatex(-50%);
}
/*********************************************
contact
*********************************************/
.contact_box{
	border:2px solid #54c48a;
	border-radius:10px;
	padding:2em;
}
@media screen and (max-width:1350px){
	.contact_box{
		display:block;
	}
}
.contact_box .pc{
	display:block;
}
@media screen and (max-width:1350px){
	.contact_box .pc{
		display:none;
	}
}
.contact_box .sp{
	display:none;
}
@media screen and (max-width:1350px){
	.contact_box .sp{
		display:block;
	}
}
.contact_box_title{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+50,9cffcc+51,9cffcc+100 */
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffffff 0%, #ffffff 50%, #9cffcc 51%, #9cffcc 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 50%,#9cffcc 51%,#9cffcc 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 50%,#9cffcc 51%,#9cffcc 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#9cffcc',GradientType=0 ); /* IE6-9 */

	display:inline-block;
	font-size:30px;
}
@media screen and (max-width:1350px){
	.contact_box_title{
		font-size:24px;
	}
}
@media screen and (max-width:1350px){
	.contact_box .btn_wrap{
		margin-top:2em;
	}
	.contact_box .btn{
		text-align:center;
		width:100%;
	}
}

/*********************************************
service
*********************************************/
#service .read_strong{
	color:#ed8e0c;
	font-size:150%;
}
.service_text_box{
	border:2px dashed #ed8e0c;
	border-radius:10px;
	color:#ed8e0c;
	font-weight:bold;
	padding:1em;
}
.service_feature_box{
	border:2px solid #ed8e0c;
	border-radius:10px;
	overflow:hidden;
}
.service_feature_box_cnt{
	padding:1em;
}
.service_feature_box_cnt_title{
	/* Permalink - use to edit and share this gradient: https://colorzilla.com/gradient-editor/#ffffff+0,ffffff+50,f6dcb8+51,f6dcb8+100 */
	background: #ffffff; /* Old browsers */
	background: -moz-linear-gradient(top,  #ffffff 0%, #ffffff 50%, #f6dcb8 51%, #f6dcb8 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(top,  #ffffff 0%,#ffffff 50%,#f6dcb8 51%,#f6dcb8 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  #ffffff 0%,#ffffff 50%,#f6dcb8 51%,#f6dcb8 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#ffffff', endColorstr='#f6dcb8',GradientType=0 ); /* IE6-9 */
	
	display:inline-block;
	font-size:24px;
}
@media screen and (max-width:768px){
	.service_feature_box_cnt_title{
		font-size:18px;
	}
}
.reason_box_upper_title{
	font-size:24px;
}
@media screen and (max-width:768px){
	.reason_box_upper_title{
		font-size:18px;
	}
}
.reason_box {
	background: #f3f6f9;
	padding: 2em;
}
.reason_box_title {
	color: #54c48a;
	font-size: 30px;
}
@media screen and (max-width:768px){
	.reason_box_title {
		font-size: 24px;
		text-align: center;
	}
}
.reason_box .btn{
	border-radius:99em;
}
/*********************************************
method
*********************************************/
#method{
	padding-bottom:80px;
}
@media screen and (max-width:768px){
	#method{
		padding-bottom:40px;
	}
}
.method_header{
	position:relative;
}
.method_header_title{
	color:#fff;
	font-size:calc(3vw);
	left:50%;
	position:absolute;
	top:50%;
	transform:translate(-50%,-50%);
}
@media screen and (max-width:768px){
	.method_header_title{
		font-size:24px;
		text-align:center;
	}
}
.method_box{
	background:#fff;
	border-radius:10px;
	margin-top:-60px;
	padding:40px 80px;
	position:relative;
}
@media screen and (max-width:768px){
	.method_box{
		margin-top:-40px;
		padding:20px;
	}
}
.method_box .pc{
	display:block;
}
@media screen and (max-width:1201px){
	.method_box .pc{
		display:none;
	}
}
.method_box .sp{
	display:none;
}
@media screen and (max-width:1200px){
	.method_box .sp{
		display:block;
	}
}
.teacher_items{
	margin-top:140px;
}
@media screen and (max-width:768px){
	.teacher_items{
		margin-top:70px;
	}
}
.teacher_item{
	background:#fff;
	border-radius:10px;
	padding:20px;
	position:relative;
}
@media screen and (min-width:769px){
	.teacher_item{
		padding-bottom:5em;
	}
	.teacher_item:nth-child(n+4){
		margin-top:6em;
	}
}
@media screen and (max-width:768px){
	.teacher_item:nth-child(n+2){
		margin-top:4em;
	}
}
.teacher_item_img{
	margin-top:-75px;
	position:relative;
	text-align:center
}
@media screen and (max-width:768px){
	.teacher_item_img{
		margin-top:-50px;
	}
}
.teacher_item_img img{
	height:150px;
}
@media screen and (max-width:768px){
	.teacher_item_img img{
		height:100px;
	}
}
.teacher_item_title{
	color:#ed8e0c;
	font-size:24px;
	text-align:center;
}
@media screen and (max-width:768px){
	.teacher_item_title{
		font-size:18px;
	}
}
.teacher_item_labels{
	border-bottom:2px solid #ed8e0c;
	padding-bottom:1em;
}
@media screen and (min-width:769px){
	.teacher_item_labels{
		min-height:108px;
	}
}
.teacher_item_label{
	border:2px solid #ed8e0c;
	border-radius:99em;
	color:#ed8e0c;
	display:inline-block;
	font-size:10px;
	margin:5px;
	padding:0 10px;
}
@media screen and (min-width:769px){
	.teacher_item p{
		font-size:14px;
	}
}
.teacher_item .btn{
	border-radius:99em;
	padding:10px 40px;
	width:100%;
}
@media screen and (min-width:769px){
	.teacher_item .btn{
		bottom:2em;
		left:10%;
		position:absolute;
		width:80%;
	}
}
/*********************************************
lesson
*********************************************/
.lesson_text{
	color:#ed8e0c;
	font-size:24px;
	font-weight:bold;
}
@media screen and (max-width:768px){
	.lesson_text{
		font-size:18px;
	}
}
.lesson_box{
	background:#fff;
	border-radius:10px;
	padding:40px;
}
@media screen and (max-width:768px){
	.lesson_box{
		padding:20px;
	}
}
/*********************************************
learning
*********************************************/
.learning_title{
	color:#ed8e0c;
	font-size:24px;
}
@media screen and (max-width:768px){
	.learning_title{
		font-size:18px;
	}
}
/*********************************************
price_box
*********************************************/
.price_box{
	background:#fff;
	border:2px solid #ed8e0c;
	color:#ed8e0c;
	font-weight:bold;
	padding:40px;
}
@media screen and (max-width:768px){
	.price_box{
		padding:20px;
	}
}
.price_box_text1{
	font-size:48px;
}
@media screen and (max-width:768px){
	.price_box_text1{
		font-size:36px;
	}
}
.price_box_text2{
	font-size:30px;
}
@media screen and (max-width:768px){
	.price_box_text2{
		font-size:24px;
	}
}
.price_box li{
	list-style:disc;
	margin-left:10px;
}
table.type_price {
	width:100%;
    min-width:960px;
	box-sizing:border-box;
	border-collapse:collapse;
	margin:20px auto;
	padding:0px;
	border-top:1px solid #333;
	border-bottom:1px solid #333;
	/*border-left:1px solid #fff;
	border-right:1px solid #fff;*/

}
table.type_price tr th,table.type_price tr td {
	padding:20px ;
	text-align:center;
	vertical-align:middle;
	border-right:1px dashed #999;
	box-sizing:border-box;
	/*height:120px;*/
}

table.type_price tr th:last-child,table.type_price tr td:last-child {
	border-right:1px solid #333;
}

table.type_price tr th:first-child,table.type_price tr td:first-child {
	border-left:1px solid #333;
}

table.type_price tr {
	/*background-color:#f9f9f9;
	border-bottom:1px solid #fff;*/
}

table.type_price td.title {
	text-align:left;
	font-weight:bold;
	
}

table.type_price td span.small {
	font-size: 80%;
	font-weight: normal;
}

table.type_price tr th.two {
	width:13%;
	background-color:#ffffff;
	font-weight: bold;
}

table.type_price tr th.left {
	width:20%;
}

table.type_price tr td span.red {
	color:#CC3366;
/*	font-size:2.0rem;*/
}

table.type_price tr th strong {
	font-size:1.2em;
}

table.type_price tr:hover {
	background-color:#F3F1D5;
}

table.type_price tr th {
	border-right:1px dashed #999;
/*border-right:1px solid #fff;*/
font-weight:normal;
vertical-align:middle;
background-color:#f9f9f9
}

table.type_price tr td {
	border-top:1px dashed #999;
}

table.type_price .sub {
	font-size:0.9em;
	line-height:100%;
}

table.type_price .yen {
	font-size:2.0em;
}

.price {
	font-size: 1rem;
	font-weight: bold;
}

.award{
	padding:10px;
	text-align: center;
}

/*********************************************
flow
*********************************************/
.flow_item_label{
	background:#ed8e0c;
	border-radius:99em;
	color:#fff;
	display:inline-block;
	font-size:12px;
	padding:5px 20px;
}
.flow_item_title{
	color:#ed8e0c;
	font-size:24px;
}
@media screen and (min-width:769px){
	.flow_item_title{
		min-height:76px;
	}
}
@media screen and (max-width:768px){
	.flow_item_title{
		font-size:14px;
		min-height:44px;
	}
}