@charset "utf-8";

/* =============================================
	style
============================================= */
.small_header_list li{
	display: inline-block;
}
#site_header{
	padding-right: 0;
}
.content_wrap p,
.content_wrap li,
.content_wrap td{
	font-size: 1.4rem;
}

#header_ttl{
	padding: 35px 0;
	box-sizing: border-box;
	height: 334px;
	background: url(../img/bg.jpg) no-repeat center top;

	text-align: center;
	position: relative;
}
#header_ttl:before{
	content: ' ';
	width: 50%;
	height: 334px;
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	z-index: -1;
	background-color: #4f9c91;
}
#header_ttl:after{
	content: ' ';
	width: 50%;
	height: 334px;
	display: block;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	z-index: -1;
	background-color: #78b299;
}


.sub_ttl{
	margin: 0 auto 10px;
	overflow: hidden;
	width: 844px;
	height: 88px;
	background: url(../img/lead.png) no-repeat center top;
	text-indent: 100%;
	white-space: nowrap;
}
.content_ttl{
	margin: 15px auto 0;
	overflow: hidden;
	width: 893px;
	height: 163px;
	background: url(../img/ttl.png) no-repeat center top;
	text-indent: 100%;
	white-space: nowrap;
}
.apply_cont{
	margin: 0;
	padding: 25px 0 0;
	height: 500px;
	background: url(../img/header_bg2.png) repeat left top, -webkit-linear-gradient(top, #eaeaea 0%,#fff 100%);
	background: url(../img/header_bg2.png) repeat left top, linear-gradient(to bottom, #eaeaea 0%,#fff 100%);
	text-align: center;
  border: none;
}
.bottom_apply_cont{
	padding: 35px 0 35px;
	height: auto;
	background: none;
	background: #efefef url(../img/header_bg2.png) repeat left top;
}
.price_cont{
	margin: 0 auto 10px;
	padding-bottom: 0%;
	overflow: hidden;
	width: 830px;
	height: 134px;
	background: url(../img/price.png) no-repeat 2px top;
	text-indent: 100%;
	text-align: center;
	vertical-align: middle;
	white-space: nowrap;
}
.apply_info{
	padding: 10px 0 20px;
	color: #333;
	font-size: 1.5rem;
	text-align: center;
}
.apply_btn{
	margin: 0 auto 0;
	position: relative;
	width: 694px;
	width: 970px;
	background-color: #fff;
}
.apply_btn a{
	margin: 0;
	padding: 17px 20px 17px 0;
	display: block;
	box-sizing: border-box;
	border: 5px solid #fff;
	background: url(../img/request_ico.png) no-repeat 4% center, linear-gradient(to bottom, #fadb53 0%,#fed111 100%);
	box-shadow: 1px 1px 3px rgba(0,0,0,0.4);
	text-shadow: 1px 1px 0 rgba(255, 255, 255, 0.85);
	color: #6f6a62;
	font-size: 3.0rem;
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
}
.apply_btn:hover{
	top: 1px;
	left: 1px;
}
.apply_btn a:hover{
	opacity: 0.8;
	text-decoration: none;
}
.apply_btn a span{
	display: block;
	font-size: 1.6rem;
}
#content_wrap{
	padding: 0;
}

/* ポイント */
.point_cont{
	margin: -90px 0 40px;
}
.point_list li{
	display: flex;
	border: 1px solid rgba(199, 199, 199, 0.65);
	background-color: #fff;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.1);
	font-weight: bold;
	text-align: center;
	line-height: 1.4;
}
.point_ttl{
	margin: 0 0 10px;
}
.point_img{
	margin: 0 0 0 10px;
}
.point_list li p{
	font-size: 1.8rem;
}
.point_list li strong{
	color: #e9373b;
}
.point_wrap{
	margin-right: -10px;
	flex: 1;
}
.point_wrap_img{
	width: 235px;
}


/* 講座概要 */
/* table */
.outline_table{
	margin: 10px 0 15px;
	width: 100%;
	border-collapse: separate;
	border-spacing: 0px;
	background-color: #fff;
	border: 1px solid #c9c9c9;
}
.outline_table th{
	padding: 10px;
	width: 180px;
	font-size: 1em;
	vertical-align: middle;
	/* background-color: #e2eff2; */
	border-top: 1px solid #eff7f8;
	border-left: 1px solid #eff7f8;
	/* border-bottom: 1px solid #bec8d1; */
	color: #5c5c5c;
	text-align: left;
	vertical-align: top;
}
.outline_table td{
	padding: 10px 5px 10px 10px;
	border-bottom: 1px solid #d8d8d8;
}
.outline_table tr:last-child th,
.outline_table tr:last-child td{ border-bottom: none; }
.outline_link{ margin: 5px 0 0; }
.outline_table .price{
	margin: 0 0 5px;
	text-align: left;
}
.outline_table .price li{ font-size: 1.6rem; }
.outline_table .price li span{ font-size: 1.3rem; }
.outline_table .price li .price_type{
	margin-right: 5px;
	padding: 3px 5px;
	border: 1px solid #ccc;
	font-size: 1.2rem;
	vertical-align: middle;
}
.table_basic th{ vertical-align: middle; }

.anchor_path a{
	padding-left: 13px;
	background: url(../img/anchor_path_arrow.png) no-repeat left center;
}


.content_list li{
	display: inline-block;
}
.content_list li:after{
	content: '/';
	padding: 0 0 0 5px;
	display: inline-block;
}
.content_list li:last-child:after{
	content: none;
	padding: 0 0 0 5px;
}


/* カリキュラム */
.curriculum .ttl_lv2{
	margin: 0 0 20px;
	background-color: #cc1b1b;
	color: #fff;
	font-size: 1.6rem;
	text-align: center;
}
.curriculum .c_ttl_lv3{
	margin: 0 0 10px;
	padding: 10px 0 10px 13px;
	position: relative;
	background-color: #e0eaea;
	color: #575f64;
	font-size: 1.55rem;
	line-height: 1.4;
}
.curriculum .c_ttl_lv3 span{
	display: block;
	font-size: 1.3rem;
	font-weight: normal;
}
.curriculum_outline{
	margin: 0 0 10px;
	border-bottom: 1px dotted #ccc;
}
.curriculum_outline dt{
	margin: 0 0 3px;
	padding-left: 5px;
	border-left: 5px solid #da3631;
	font-weight: bold;
}
.curriculum_outline dd{
	padding: 0 0 10px 0.8em;
	font-size: 1.3rem;
	line-height: 1.5;
}
.curriculum_outline .theme{
	margin-left: -0.6em;
	font-size: 1.5rem;
}
.curriculum li{
	margin-bottom: 5px;
	font-size: 1.3rem;
	line-height: 1.35;
}
.curriculum li:last-child{
	margin-bottom: 0;
}
.step_arrow{
	margin: 15px 0 -5px;
	position: relative;
	z-index: 10;
	text-align: center;
}
.testday{
	margin: 0 0 15px;
	padding: 15px;
	position: relative;
	border: 2px solid #ffa0a5;
	color: #606060;
	font-size: 1.8rem;
	font-weight: bold;
	text-align: center;
}


/* 教材 */
.tool_ttl_lv2{
	margin: 0 0 10px;
	padding: 10px;
	background-color: #da3631;
	color: #fff;
	font-size: 1.5rem;
}


/* cmn */
.point_lead{
	margin: 20px 0 15px;
	color: #333;
	font-size: 2.5rem;
	font-weight: 600;
	text-align: center;
}
.point_lead strong{
	color: #e9373b;
}
.lead{
	margin: 0 0 25px;
	font-size: 1.5rem;
}
.lead p{
	margin: 0 0 10px;
	font-size: 1.5rem;
}
.nikken_info{
	margin: 40px 0;
	text-align: center;
}
.course_info{
	text-align: center;
}
.course_info li{
	margin-right: 15px;
	display: inline-block;
}
.course_info li:last-child{
	margin-right: 0;
}
/* .link_arrow{
	padding: 0 10px;
	background: url(../img/btn_arrow.png) no-repeat left center;
}
 */

/* cmn */
.basic_section{
	margin: 0 0 40px;
}
.curriculum_cont p{
	margin: 0 0 15px;
}
.curriculum_cont .curriculum_term{
	margin: 0 0 10px;
	padding: 0 0 5px;
	border-bottom: 1px dotted #ccc ;
}
.curriculum_cont .curriculum_lead{
	margin: 0 0 5px;
	color: #f22828;
	font-size: 1.5rem;
	font-weight: bold;
}
.curriculum_info{
	margin: 0 0 15px;
}


/* ===========================================
	MediaQueries
=========================================== */
/* PC----------------------------- */
@media screen and (min-width: 768px){
	/* ポイント */
	.point_list{
		display: flex;
		justify-content: center;
	}
	.point_list li{
		margin: 0 1% 0 0;
		padding: 15px 10px 15px;
		width: 48%;
	}
	.point_list li:last-child{ margin: 0; }

	/* カリキュラム */
	.curriculum_cont{ display: flex; }
	.curriculum_cont div{
		margin: 0 20px 0 0;
		flex-grow: 1;
	}
	.curriculum_cont div:last-child{ margin: 0; }
	.col_wrap{
		margin: 0 0 40px;
		display: flex;
		flex-wrap: wrap;
	}
	.two_col{
		margin: 0 4% 15px 0;
		width: 48%;
	}
	.two_col:nth-child(2n){ margin-right: 0; }
}


/* スマホ----------------------------- */
@media screen and (max-width: 767px){
	#small_header_logo_cont{ display: block; }
	.small_header_menu{ padding: 5px 5px 0 0; }
	#header_ttl{
		padding: 8% 4%;
		height: auto;
		background-size: auto 100%, auto;
	}
	#header_ttl:before,
	#header_ttl:after{
		content: none;
	}
	.sub_ttl{
		padding-bottom: 17%;
		width: 90%;
		height: 0;
		background: url(../img/s/lead.png) no-repeat left top;
		background-size: 100% auto;
	}
	.content_ttl{
		margin: 0;
		padding-bottom: 23%;
		width: 100%;
		height: 0;
		background: url(../img/s/ttl.png) no-repeat left top;
		background-size: 100% auto;
	}
	#header_ttl img{
		width: 100%;
	}
	.apply_cont{
		margin: 0;
		padding: 20px 15px 20px;
		height: auto;
	}
	.apply_info{
		padding-top: 10px;
		font-size: 1.4rem;
		line-height: 1.2;
	}
	.apply_info strong{
		font-size: 1.8rem;
	}
	.apply_info strong:before{
		bottom: 0;
	}
	.apply_info strong span{
		font-size: 1.5rem;
	}
	.apply_btn{
		margin: 0 auto 0;
		width: 100%;
	}
	.apply_btn a{
		padding: 15px;
		background-position: 4% center, 96% center;
		background-size: 35px auto, 35px auto, auto;
		font-size: 2.0rem;
	}
	.price_cont{
		margin-bottom: 10px;
		padding-bottom: 15%;
		width: 100%;
		height: 0;
		background: url(../img/s/price.png) no-repeat left top;
		background-size: 100% auto;
	}

	/* ポイント */
	.point_cont{
		margin: 10px 0 50px;
	}
	.point_list li{
		margin: 0 10px 10px;
		padding: 12px 12px 10px;
		display: block;
		overflow: hidden;
	}
	.point_ttl img{
		width: 40%;
	}
	.point_list li div{
		display: block;

		align-items: center;
		justify-content: center;
	}
	.point_list p{
		flex: 1;
	}
	.point_list p.point_img{
		margin: 0 auto;
	}
	.point_list li p.point_text{
		margin: 0 0 10px;
		font-size: 1.6rem;
	}
	.info_cont{
		padding: 0 15px;
	}
	.point_lead{
		margin: 15px 0 15px;
		font-size: 1.9rem;
		line-height: 1.3;
	}
	.point_wrap_img{
		width: auto;
	}

	/* 概要 */
	.outline_table th{
		width: 100%;
	}

	/* カリキュラム */
	.curriculum_cont div{
		margin: 0 0 25px;
	}
	.tool_ttl_lv2{
		margin-top: 15px;
		clear: both;
	}
	.two_col{
		margin: 0 0 15px;
		overflow: hidden;
	}
	.two_col img{
		margin: 0 0 5px 10px;
		width: 30%;
	}
	.note_indent1 li{
		margin: 0 0 5px;
		line-height: 1.3;
	}
	.nikken_info{
		margin: 20px 0;
		text-align: center;
	}
	.course_info li{
		margin: 0 0 10px 0;
		display: block;
	}
	.content_list li{
		padding-left: 1em;
		display: block;
		text-indent: -1em;
	}
	.content_list li:after{
		content: none;
	}
	.content_list li:before{
		content: '●';
	}
}
/* print----------------------------- */
@media print{
	/* ポイント */
	.point_list{
		display: flex;
		justify-content: center;
	}
	.point_list li{
		margin: 0 1% 0 0;
		padding: 15px 10px 15px;
		width: 48%;
	}
	.point_list li:last-child{ margin: 0; }

	/* カリキュラム */
	.curriculum_cont{ display: flex; }
	.curriculum_cont div{
		margin: 0 20px 0 0;
		flex-grow: 1;
	}
	.curriculum_cont div:last-child{ margin: 0; }
	.col_wrap{
		margin: 0 0 40px;
		display: flex;
		flex-wrap: wrap;
	}
	.two_col{
		margin: 0 4% 15px 0;
		width: 48%;
	}
	.two_col:nth-child(2n){ margin-right: 0; }
	#footer{ position: static; }
	.page_top{ display: none; }
}
