@charset "utf-8";

/* =============================================
	解答速報 共通スタイル
============================================= */
/* --- header調整 --- */
#site_header{
	padding-bottom: 0;
	max-width: 1000px;
	height: 70px;
	background-color: transparent;
}
#small_header h1{
	margin: 18px 0 0;
	vertical-align: middle;
	display: inline-block;
	font-size: 2.2rem;
	color: #575757;
}
#small_header h1 span{ color: #db2929; }
#small_header_logo_cont a{
	display: inline-block;
	vertical-align: top;
}


/* --- ページナビゲーション --- */
#contents_nav{
	text-align: center;
	width: 100%;
}
#menu_list li{
	display: inline-block;
	letter-spacing: normal;/*隙間をなくすためのハック*/
	vertical-align: middle;
}
#menu_list li a,
#menu_list.on_2click .on a{
	display: inline-block;
	vertical-align: middle;
	height: 70px;
	color: #464646;
	font-weight: bold;
	position: relative;
}
#menu_list li a:before,
#menu_list.on_2click .on a:before{
	content: ' ';
	display: block;
	width: 23px;
	height: 20px;
	vertical-align: middle;
	background: url(../img/menu_list_mark.png) no-repeat left center;
	position: absolute;
	margin: auto 0;
	top: -5px;
	bottom: 0;
	left: 5px;
}
#menu_list li:first-child{ border-left: none; }
#menu_list.on_2click .on_2 a,
#menu_list .on a{
	border-bottom: 3px solid #db2929;
	color: #db2929;
	-webkit-transition: 0.2s;
	transition:0.2s;
}

#menu_list li a:hover{
	text-decoration: none;
	color: #db2929;
	border-bottom: 3px solid #db2929;
	-webkit-transition: 0.2s;
	transition:0.2s;
}
#menu_list.on_2click .on_2 a:before,
#menu_list .on a:before,
#menu_list a:hover:before{
	background: url(../img/menu_list_mark_on.png) no-repeat left center;
	-webkit-transition: 0.2s;
	transition:0.2s;
}
#contents_nav #menu_list{
	position: absolute;
	margin: 0 auto;
	background: -webkit-linear-gradient(top, #fff 0%,#ebeff0 100%);
	background: linear-gradient(to bottom, #fff 0%,#ebeff0 100%);
	width: 100%;
	top: 68px;
	left: 0;
	right: 0;
	color: #333;
	z-index: 100;
	-webkit-box-shadow: 1px 1px 3px rgba(0,0,0,0.4);
	box-shadow: 1px 1px 3px rgba(0,0,0,0.4);
	border-top: 1px solid #e6e6e6;
}
#contents_nav.fixed #menu_list{
	position: fixed;
	top: 0px;
	z-index: 100;
}
.nav_open{display: none;}


/* --- contents --- */
/* cmn */
.cont_inner p,
.cont_inner li,
.cont_inner th,
.cont_inner td{
	font-size: 1.4rem;
	line-height: 1.7;
}

.table_basic th, .table_basic td{ padding: 10px; }
.table_basic .cell_s td{
	padding: 5px 8px;
	font-size: 1.3rem;
}
.table_basic td > *:last-child{
	margin-bottom: 0;
}
.cont_inner td.v_middle{ vertical-align: middle; }

.basic_section{
	margin: 0 auto;
	width: 960px;
}
.basic_section p{ margin-bottom: 10px; }

.ttl_lv2{
	margin: 0;
	padding: 26px 0 20px;
	border-bottom: 1px solid #dee5ea;
	border-top: 6px solid #7fa2c8;
	background-color: #f7f8f9;
	color: #4b7cb2;
	font-size: 2.2rem;
	text-align: center;
}
.study_cont .ttl_lv2{ background-color: #fff; }
.ttl_lv4{ margin: 25px 0 5px; }
.cont_inner{ padding: 30px 0; }

.kaisoku_1q .ttl_lv2{
	border-bottom: 1px solid #dee5ea;
	border-top: 6px solid #d84040;
	color: #d84040;
}


/* --- 採点サービス --- */
.gradingservice_cont{
	padding: 95px 0 40px;
	/*background: url(../img/grid_light.png) repeat center top, url(../img/gradingservice_bg.jpg) no-repeat center center;
	background-size: auto, cover;*/
}
.gradingservice_header{
	margin: 0 auto 0;
	padding: 0 0 15px 285px;
	width: 940px;
	text-align: center;
	/*background: url(../img/ttl.png) no-repeat left 50px;*/
	box-sizing: border-box;
}
.gradingservice_ttl{ padding: 35px 0 0; }
.header_lead{
	margin: 5px 0;
	/*color: #5f5f5f;*/
	color: #333;
	font-weight: bold;
	font-size: 1.6rem;
}
.gradingservice_present{
	padding: 10px 0;
	color: #333;
	font-size: 1.4rem;
}

#gradingservice_info{
	margin: 0 auto;
	padding: 0;
	max-width: 1000px;
	text-align: center;
}
#service_date{ margin: 10px auto; }
#service_date dt{
	padding: 5px 10px;
	display: inline-block;
	background-color: #4b7cb2;
	color: #fff;
	font-weight: bold;
	vertical-align: middle;
}
#service_date dd{
	display: inline-block;
	font-size: 1.6rem;
	font-weight: bold;
	color: #4b7cb2;
	vertical-align: middle;
}

.kaisoku_1q #service_date dt{
	background-color: #d84040;
	color: #fff;
}
#service_date dd{color: #5f5f5f; }

.apply_btn a{
	margin: 20px auto 0;
	padding: 18px 15px 18px 5px;
	width: 700px;
	display: block;
	background: #fbed21 url(../img/kaisoku_apply_arrow.png) no-repeat 96% center;
	font-size: 2.2rem;
	font-weight: bold;
	color: #453f39;
	box-shadow: 1px 1px 3px rgba(0,0,0,0.4);
	position: relative;
	box-sizing: border-box;
	text-align: center;
}
.apply_btn a span{
	display: block;
	font-weight: normal;
	font-size: 1.3rem;
	line-height: 1.2;
}
.apply_btn_nolink{
	margin: 20px auto 0;
	padding: 18px 15px;
	width: 700px;
	display: block;
	font-size: 2.2rem;
	font-weight: bold;
	background-color: #faf387;
	color: #8e8e70;
	box-sizing: border-box;
	text-align: center;
	border: 1px solid #afaeab;
	box-shadow: 0 0 0 2px #fff inset;
}
.apply_btn a:hover{
	text-decoration: none;
	background: #fff561 url(../img/kaisoku_apply_arrow.png) no-repeat 96% center;
	color: #6a682f;
	position: relative;
	top: 1px;
	left: 1px;
}
.service_info_text{
	font-size: 1.6rem;
	font-weight: bold;
}
.service_info_text strong{
	color: #db2929;
	display: inline-block;
	padding: 0 3px;
}

/* close */
.apply_btn_close{
	margin: 10px auto 0;
	padding: 8px 15px;
	width: 631px;
	display: block;
	font-size: 2.2rem;
	font-weight: bold;
	background-color: #4b7cb2;
	color: #fff;
	box-sizing: border-box;
	text-align: center;
	border: 1px solid #73adcc;
}
.close_message{ font-size: 1.6rem; }
.present_cont .apply_btn_close{
	margin: 10px auto 20px;
	width: 840px;
	font-size: 2.2rem;
	border: 1px solid #fff;
	background-color: transparent;
}
.present_cont .basic_section{ padding-bottom: 25px; }

/* 1級 */
.kaisoku_1q .apply_btn_close{
	background-color: #6c6c6c;
	border: 1px solid #6c6c6c;
}

/* --- プレゼント --- */
.present_cont .service_cont_inner,
.service_cont .service_cont_inner{
	padding-top: 30px;
	background-color: #4b7cb2;
	color: #fff;
}
.present_header,
.service_header{ text-align: center; }
.service_ttl_lv3{
	margin: 0 0 15px;
	padding: 0 0 10px;
	text-align: center;
	color: #fff;
	font-size: 1.8rem;
	border-bottom: 1px solid #fff;
}
.present_info,
.service_info{
	margin: 0 auto;
	padding-top: 10px;
}
.present_info p,
.service_info p{
	text-align: center;
	font-weight: bold;
	font-size: 1.5rem;
}
.present_ttl_lv2,
.service_ttl_lv2{ margin: 0 0 15px; }
.present_ttl{ margin-right: 20px; }


.note_cont_wrap{
	padding: 15px 0;
	border-top: 1px solid #7699bf;
	box-sizing: border-box;
	background-color: #648cb7;
}
.note_cont{
	margin: 0 auto;
	width: 970px;
}
.note_cont_ttl{
	margin: 0 0 5px;
	font-size: 1.4rem;
	color: #fff;
}

.kaisoku_1q .present_cont .service_cont_inner,
.kaisoku_1q .service_cont .service_cont_inner{
	background-color: #d84040;
	color: #fff;
}
.kaisoku_1q .note_cont_wrap{
	border-top: 1px solid #d84040;
	background-color: #5d5d5d;
}


.present_push{
	margin: 20px 0 0;
	padding: 3px 0 5px 25px;
	font-size: 1.7rem;
	line-height: 1.3;
	font-weight: bold;
	color: #f25c5c;
	background: url(../img/mark_present.png) no-repeat left 2px;
	clear: both;
}




/* --- アンカー位置調整 --- */
#general_comment_anchor,
#study_anchor,
#guidance_anchor,
#test_data_anchor,
#past_anchor,
#present_anchor,
#correction_anchor{
	margin-top: -88px;
	padding-top: 88px;
}


/* --- 総評 --- */
.general_comment{
	padding: 0 0 30px;
	box-sizing: border-box;
}
.notice{
	padding: 30px 0;
	text-align: center;
	font-size: 1.5rem;
}
.summary_cont{
	margin: 0 auto 30px;
	width: 970px;
}
.summary_cont p{ margin: 0 0 10px; }
.summary_cont p:last-child{ margin: 0; }

/* 総評用パーツ */
.general_comment p{ margin: 0 0 10px; }
.general_comment p:last-child{ margin: 0; }
.text_breaks{ margin-top: 30px; }
.content_lead{
	padding: 0 0 10px;
	font-weight: bold;
	color: #ed5032;
}

.img_m{
	width: 270px;
	height: auto;
}
.img_w100{
	margin-top: 10px;
	width: 100%;
	height: auto;
}

/* 画像回り込み例 */
.text_cont{ overflow: hidden; }
.text_info{
	float: left;
	width: 600px;
}
.text_img{
	margin: 0 0 15px;
	float: right;
	text-align: center;
}

/* 横にボリュームのある表 */
.table_wide_cont{ padding-bottom: 10px; }
.swipe{ display: none; }


/* リスト調整 */
.circle_number_list li{
	margin: 0 0 3px;
	padding-left: 1.25em;
	text-indent: -1.25em;
}
.circle_number_list > li:last-child{ margin: 0; }
ul.disc > li{ margin: 0 0 0 17px; }

ol.decimal li{
	margin-bottom: 10px;
	line-height: 1.4;
}
ol.decimal li:last-child li:last-child{ margin-bottom: 0; }
li .circle_number_list,
li .decimal{ margin-bottom: 10px; }


/* --- 試験対策 --- */
.study_cont .cont_inner{
	padding-bottom: 15px;
	background: #f7f7f7 url(../img/grid.png) repeat left top;
}
.study_cont p{ margin: 0 0 10px; }
.study_cont p.text_breaks{ margin-top: 15px; }
.study_cont .table_basic th,
.study_cont .table_basic td{
	border: 1px solid #bababa;
}
.study_ttl_lv3{
	margin: 20px 0 15px;
	padding: 5px 0 8px 13px;
	font-size: 1.8rem;
	position: relative;
	border-bottom: 1px solid #ccc;
}
.study_ttl_lv3:first-child{ margin-top: 0; }
.study_ttl_lv3:before{
	content: ' ';
	width: 5px;
	height: 80%;
	background: linear-gradient(to bottom, #6eb1d4 0%,#5597ba 100%);
	position: absolute;
	margin: auto 0;
	top: 0;
	bottom: 0;
	left: 0;
	border-radius: 5px
}
.kaisoku_1q .study_ttl_lv3:before{
	background: linear-gradient(to bottom, #d84040 0%,#ba2e2e 100%);
}
.study_cont .table_basic td h4{
	margin: 2px 0 5px;
	font-size: 1.4rem;
}
.study_cont .table_basic td h4 span{
	font-weight: normal;
}

/* シンプルボタン */
.simple_btn a{
	width: 400px;
	text-decoration: none;
}
.simple_close_btn span{ width: 400px; }
.simple_btn a:hover{ opacity: 0.8; }
.simple_btn + .study_ttl_lv3{ margin-top: 40px; }

/* .course_list_table{
	margin: 10px 0 0;
	width: 100%;
	border-collapse: separate;
	border-spacing: 0px;
	background-color: #fff;
	border: 1px solid #b9b9b9;
}
.course_list_table th{
	padding: 8px 13px;
	font-size: 1.1em;
	vertical-align: middle;
	background-color: #4d4d4d;
	border-top: 1px solid #f0f0f0;
	border-left: 1px solid #f0f0f0;
	border-bottom: 1px solid #c7c7c7;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	line-height: 1.3;
}
.course_list_table td{
	padding: 13px;
	border-bottom: 1px solid #bababa;
	border-left: 1px solid #e0e0e0;
}
.course_list_table tr:last-child td{ border-bottom: none; }
.course_list_table h4 {
	margin: 5px 0 0;
	font-size: 1.65rem;
}
.course_list_table h4 a{
	padding: 2px 0 2px 28px;
	color: #333;
	display: block;
	position: relative;
}
.course_list_table h4 a:before{
	content: ' ';
	width: 26px;
	height: 26px;
	display: block;
	background: url(/nikken/guidance/img/guidance_arrow_ico.png) no-repeat left -55px;
	background-size: 150px 150px;
	position: absolute;
	top: -2px;
	left: 0;
}
.course_list_table h4 a:hover{
	text-decoration: none;
	opacity: 0.8;
	color: #d6201e;
}
.course_list_table h4 a:hover:before{
	background: url(/nikken/guidance/img/guidance_arrow_ico.png) no-repeat left -81px;
	background-size: 150px 150px;
} */
/* .table_name h4 + h4{
	padding-top: 10px;
	border-top: 1px dotted #b6bfc3;
}

.list_recommend{
	margin: 0 0 3px;
	padding: 3px;
	background-color: #fff;
	text-align: center;
	color: #e04536;
	font-weight: bold;
}
.list_target{
	color: #e04536;
	font-weight: bold;
}
.list_note{ margin: 0 0 3px; }
#content_header .list_note li{
	margin: 0;
	padding: 0;
	font-size: 1.2rem;
	border: none;
}
.list_note li span{
	padding: 5px 8px;
	display: inline-block;
	background-color: #fff;
	font-size: 1.1rem;
	color: #666;
	border: 1px solid rgba(0,0,0,0.1);
}
.list_note li span.tag_benefits{ color: #e04536; } */
/* 
.course_list_table h5{
	margin: 0 0 5px;
	color: #e04536;
	font-size: 1.5rem;
}
.table_name{
	width: 42%;
	background-color: #e8f3f5;
}
.recommend_course .table_name{ background-color: #fff46a; }
.table_outline p{ line-height: 1.4; }
.course_list_table td.table_name .list_target{ margin: 0; }
.course_list_table + .detail_link{ padding-top: 10px; }
.course_info{
	padding: 15px 0 0;
	text-align: center;
}
.table_price{
	width: 13%;
	vertical-align: middle;
	text-align: center;
}
.table_price,
.table_price *{ font-size: 1.8rem; }
.table_price ul li{ margin: 5px 0 5px; }
.table_price ul li:nth-last-of-type(1){ margin-bottom: 0; }
.table_price span{ font-size: 1.2rem; }
.table_price span.price_type{
	padding: 0 3px;
	display: block;
	background-color: #efefef;
} */


/* --- footer --- */
#footer{ position: static; }
#call_num img{ vertical-align: middle; }
#call_num_img{ margin-right: 10px; }


/* ===========================================
	MediaQueries
=========================================== */

/* PC----------------------------- */
@media screen and (min-width: 768px){
	/* ページナビゲーション */
	#menu_list{
		padding: 5px 0;
		display: flex;
		align-items: stretch;
		justify-content: center;
	}
	#menu_list li{
		padding: 0 20px;
		border-left: 1px dotted #d4d4d4;
		display: flex;
		justify-content: center;
	}
	#menu_list li a,
	#menu_list.on_2click .on a{
		margin: 5px 0 2px;
		padding: 0 10px 5px 29px;
		font-size: 1.6rem;
		line-height: 1.4;
		border-bottom: 3px solid #e6e6e6;
		position: relative;
		z-index: 100;
		display: flex;
		align-items: center;
		box-sizing: border-box;
	}

	/* 2分割 */
	.column_2_wrap{ display: flex; }
	.column_2_cont{ text-align: left; }
	.column_2_cont:first-child{ margin-right: 20px; }
	.stretch_cont{ flex: 1; }

}

/* スマホ----------------------------- */
@media screen and (max-width: 767px){
	/* --- header調整 --- */
	#site_header{
		padding-bottom: 8px;
		height: auto;
	}
	#small_header_logo_cont{ display: block; }
	#small_header h1{
		margin: 5px -5px 0;
		padding: 10px 0 0;
		border-top: 1px solid #ccc;
		text-align: center;
		display: block;
		font-size: 1.6rem;
	}
	#small_header h1 span{ font-size: 2.0rem; }
	.small_header_menu{
		padding: 0;
		position: absolute;
		top: 15px;
		right: 5px;
		font-size: 1.1rem;
	}

	/* --- ページナビゲーション --- */
	#contents_nav #menu_list{
		padding: 2px 0 2px;
		width: 100%;
		box-sizing: border-box;
		display: flex;
		justify-content: space-around;
		top: 0;
	}
	#menu_list li{
		margin: 0;
		border-right: 1px dotted #d4d4d4;
		display: block;
		box-sizing: border-box;
		flex: auto;
		text-align: center;
		justify-content: center;
		display: flex;
		align-items: center;
		height: 60px;
		position: relative;
	}
	#menu_list li:after{
		content: ' ';
		margin: 0 auto;
		width: auto;
		height: 3px;
		background-color: #d9d9d9;
		position: absolute;
		bottom: 1px;
		left: 5%;
		right: 5%;
	}
	#menu_list.on_2click .on_2 a,
	#menu_list .on a,
	#menu_list li a:hover{
		border: none;
	}
	
	#menu_list.on_2click .on_2:after,
	#menu_list .on:after,
	#menu_list li:hover:after{
		background-color: #db2929;
	}
	#menu_list li:last-child{
		border-right: none;
	}
	#menu_list li a,
	#menu_list.on_2click .on a{
		padding: 0 0 1px;
		font-size: 1.05rem;
		line-height: 1.25;
		height: 100%;
		width: 100%;
		position: relative;
		border: none;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	#menu_list li a:before,
	#menu_list.on_2click .on a:before{
		content: none;
	}
	#menu_list.on_2click .on_2 a:before,
	#menu_list .on a:before,
	#menu_list a:hover:before{
		content: none;
	}

	#contents_nav{
		height: 64px;
		position: relative;
	}
	.nav_open{
		position: absolute;
		bottom: 0;
		height: 25px;
		width: 100%;
		text-align: center;
		z-index: 500;
		display: block;
		font-size: 1.5rem;
		cursor: pointer;
		display: none;
	}
	.nav_open span{
		margin: 3px auto 0;
		display: block;
		background: url(../img/kaisoku_open_arrow.png) no-repeat left top;
		background-size: 100% auto;
		width: 20px;
		height: 17px;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
	}
	.fixed_2 .nav_open{
		padding: 5px 0;
		position: fixed;
		top: 0;
		z-index: 500;
		background-color: #333;
		color: #ccc;
		cursor: pointer;
		display: block;
	}


	#contents_nav.fixed_2.opencont #menu_list{
		position: fixed;
		top: 0px;
		z-index: 100;
	}
	#contents_nav.fixed_2.opencont .nav_open{
		position: fixed;
		top: 60px;
		z-index: 100;
		color: #ccc;
	}
	.opencont .nav_open span{
		background-position: left bottom;
	}

	/* --- contents --- */
	/* cmn */
	.cont_inner p,
	.cont_inner li,
	.cont_inner th,
	.cont_inner td{
		font-size: 1.3rem;
		line-height: 1.7;
	}
	
	/* 2分割 */
	.column_2_cont img{
		margin: 0 auto;
		display: block;
	}
	
	.basic_section{ width: 100%; }
	.ttl_lv2{
		padding: 15px 0 10px;
		font-size: 1.8rem;
	}
	.section_wrap{ padding: 0; }
	main img{
		max-width: 100%;
		height: auto;
	}

	.header_lead{
		margin: 5px 0;
		font-weight: bold;
		font-size: 1.4rem;
		line-height: 1.4;
		text-align: left;
	}
	.gradingservice_present{ text-align: left; }
	.gradingservice_ttl{ padding-top: 0; }
	.cont_inner{ padding: 20px 10px; }

	/* --- 採点サービス --- */
	.gradingservice_cont{
		padding: 20px 3% 20px;
		background: url(../img/grid_light.png) repeat center top, url(../img/gradingservice_bg.jpg) no-repeat center center;
		background-size: auto, cover;
	}
	.gradingservice_header{
		margin-top: 20px;
		padding: 22.5% 0 0;
		background: url(../img/s/ttl.png) no-repeat center top;
		background-size: 100% auto;
		width: 100%;
		min-height: 0;
	}
	.gradingservice_ttl{ margin: 0 0 10px; }
	.service_info_text{ font-size: 1.5rem; }
	#service_date{
		width: 99%;
		text-align: center;
		vertical-align: top;
	}
	#service_date dt{
		margin: 0 0 5px;
		display: block;
	}
	#service_date dd{ display: block; }

	.apply_btn a{
		margin: 8px auto 0;
		padding: 20px 20px 20px 0;
		width: 100%;
		background: #fbed21 url(../img/kaisoku_apply_arrow.png) no-repeat 96% center;
		background-size: 15px auto;
		font-size: 1.7rem;
	}
	.apply_btn_nolink{
		margin: 8px auto 0;
		padding: 15px 10px 15px 10px;
		width: 90%;
		background-size: 15px auto;
		font-size: 1.6rem;
		text-align: center;
	}
	.apply_btn a:hover{
		background: #fbed21 url(../img/kaisoku_apply_arrow.png) no-repeat 96% center;
		background-size: 15px auto;
	}
	.apply_btn.dl_btn a{
		margin: 8px auto 0;
		padding: 10px 20px 10px 0;
		line-height: 1.2;
	}
	.close_message{ font-size: 1.5rem; }


	/* --- プレゼント --- */
	.present_cont .service_cont_inner,
	.service_cont .service_cont_inner{
		padding: 15px;
	}

	.present_info,
	.service_info{
		margin: 0 auto;
		padding-top: 0;
		position: relative;
	}

	.present_info p,
	.service_info p{
		font-size: 1.4rem;
		text-align: left;
	}
	.present_mark{
		display: none;
	}

	.note_cont_wrap{
		margin: 0 -15px -15px;
		padding: 15px;
		box-sizing: border-box;
	}
	.note_cont{ width: 100%; }


	/* close */
	.apply_btn_close,
	.present_cont .apply_btn_close{
		padding: 5px;
		width: 100%;
		font-size: 1.6rem;
		text-align: center;
		line-height: 1.4;
	}
	.present_cont .apply_btn{ margin-bottom: 0; }
	.present_cont .apply_btn_close{ margin: 0 auto 20px; }


	.present_cont .basic_section{ padding-bottom: 15px; }
	.present_cont .basic_section:last-child{ padding-bottom: 5px; }


	/* --- アンカー位置調整 --- */
	#gradingservice_cont_anchor,
	#general_comment_anchor,
	#study_anchor,
	#guidance_anchor,
	#test_data_anchor,
	#past_anchor,
	#present_anchor,
	#correction_anchor{
		margin-top: -63px;
		padding-top: 63px;
	}


	/* --- 総評 --- */
	.general_comment{ padding: 0 0 10px; }
	.notice{ padding: 0; }
	.general_comment section{
		padding: 0 0 15px;
		border: none;
	}
	.summary_cont{ width: 100%; }
	.general_comment_ttl{
		margin: -15px -15px 25px -15px;
		box-sizing: border-box;
	}

	/* 総評用パーツ */
	.img_m{
		margin-top: 10px;
		width: 100%;
	}
	.table_wide{
		margin-bottom: 0;
		min-width: 500px;
		box-sizing: border-box;
	}

	.table_basic th, .table_basic td{
		padding: 5px;
		line-height: 1.4;
	}
	.table_basic th{
		vertical-align: middle;
	}

	/* 横にボリュームのある表 */
	.table_wide_cont{
		margin-bottom: 15px;
		padding: 5px 0 0;
		overflow-x: scroll;
		position: relative;
	}
	.swipe{
		margin: -13px 5px 10px;
		display: block;
		text-align: right;
	}
	.swipe img{
		width: 55px;
		height: auto;
	}

	/* --- 試験対策 --- */
	.study_ttl_lv3{
		margin-top: 25px;
		font-size: 1.55rem;
	}

	/* シンプルボタン */
	.simple_btn a,
	.simple_close_btn span{ width: 100%; }

	/* table */
	/* .course_list_table{ background-color: #fff; }
	#index_course{ padding: 10px; }

	.course_list_table th,
	.course_list_table td{
		padding: 10px 0;
		display: block;
		width: 100%;
		box-sizing: border-box;
		overflow: hidden;
		text-align: left;
		border: none;
	}
	.course_list_table tr.tr_ttl{ display: none; }
	.course_list_table tr{
		margin-bottom: 10px;
		display: block;
	}
	.course_list_table tr td,
	.course_list_table tr:last-child td{
		padding: 8px 10px 8px 110px;
		border: none;
		border-bottom: 1px dotted #bababa;
		line-height: 1.3;
	}

	.course_list_table td:before{
		content: ' ';
		display: block;
		float: left;
		margin-left: -100px;
		width: 100px;
		box-sizing: border-box;
		font-size: 1.25rem;
		line-height: 1.3;
		font-weight: bold;
		color: #555;
	}
	.course_list_table td.table_name,
	tr:last-child td.table_name{ padding: 15px 10px; }

	.course_list_table td.table_name,
	.course_list_table tr:last-child td.table_name{
		margin: 0 0 5px;
		padding: 15px 10px;
		border: none;
	}
	.course_list_table td.table_outline,
	.course_list_table tr:last-child td.table_outline{
		padding: 5px 10px;
		border: none;
	}
	.course_list_table td.table_outline .course_text{
		margin: 5px 0 0;
		padding: 10px 0;
		display: none;
		clear: both;
	}
	.table_price ul li{ margin: 0 0 3px; }
	.table_date2 dl dt,
	.table_price span.price_type{
		padding: 2px 2px 2px 7px;
		border-left: 5px solid #ddd;
		font-size: 1.2rem;
	}
	.course_list_table td.table_price:before{ content: '受講料'; }
	 */

	#index_course .course_list_table td.table_outline .course_text{ display: block; }
	.list_recommend{ margin: 0 0 5px; }
}


/* print----------------------------- */
@media print{
	#contents_nav{
		z-index: 1;
		position: relative;
	}

	#contents_nav #menu_list{ position: static; }
	#menu_list{
		padding: 5px 0;
		display: flex;
		align-items: stretch;
		justify-content: center;
	}
	#menu_list li{
		padding: 0 20px;
		border-left: 1px dotted #d4d4d4;
		display: flex;
		justify-content: center;
	}
	#menu_list li a,
	#menu_list.on_2click .on a{
		margin: 5px 0 2px;
		padding: 0 10px 5px 29px;
		font-size: 1.6rem;
		line-height: 1.4;
		border-bottom: 3px solid #e6e6e6;
		position: relative;
		z-index: 100;
		display: flex;
		align-items: center;
		box-sizing: border-box;
	}

	#contents_nav.fixed #menu_list{ position: static; }
	.gradingservice_cont{ padding-top: 0; }
}