/* global */
body {
	background: url(/images/bg_light_alpha.png) #fffff6;
}
/* main contents */
.section.sec1 {
	background-color: rgba(30,40,60,0.95);
}
.section.sec1 #index_content2 h2.headline,
.section.sec1 #index_blog h2.headline {
	color:#fff;
}
.tar {text-align:right;}
.tac {text-align:center;}
.tal {text-align:left;}
.base-width {
	width: 1150px;
	margin:0 auto;
}
.post_content h2 {
	position:relative;
	margin:0 0 10px;
	padding:15px 0 15px 35px;
	border-top:1px solid #424035;
	border-bottom:1px solid #424035;
	font-size:1.5em;
	font-weight:600;
}
.post_content h2:before {
	content:"";
	position:absolute;
	top:15px;
	left:0px;
	width:14px;
	height:14px;
	border:1px solid #424035;
	opacity:.5;
}
.post_content h2:after {
	content:"";
	position:absolute;
	top:20px;
	left:10px;
	width:14px;
	height:14px;
	border:1px solid #424035;
	opacity:.3;
}
.post_content h3 {
	margin:0 0 20px;
	padding:0 0 10px;
	line-height:1.5em;
	border-bottom:1px solid #ccc;
}
.post_content h3 span {
	display:block;
	font-size:.8em;
	font-weight:600;
	color:#552e24;
}
.post_content h4 {
	margin:0 0 20px;
	padding:0 0 10px;
	border-bottom:2px dotted #bebba8;
	color:#4c451e;
}
@media screen and (max-width: 1279px){
	.base-width {
		width: 89.84375%;
	}
}
@media screen and (max-width: 991px){
	.base-width {
		width: initial;
	}
}
a.link_btn {
	position:relative;
	display:inline-block;
	padding:10px 30px 10px 15px;
	line-height:1.2em;
	border:1px solid #999;
	border-radius:1px;
	transition:all .3s ease-in-out;
}
a.link_btn:before {
	content:"";
	position:absolute;
	top:50%;
	right:10px;
	width:0;
	height:0;
	margin-top:-4px;
	border-left:4px solid #999;
	border-top:4px solid transparent;
	border-bottom:4px solid transparent;
}
a.link_btn:hover {
	text-decoration:none;
	box-shadow:0 2px 10px rgba(0,0,0,.15);
}

/************ header */
#site_wrap #header {
	position:relative;
	border-top:none;
}
#site_wrap #header:before {
	content:"";
	position:absolute;
	top:0;
	left:0;
	width:100%;
	height:4px;
	background: rgb(97,78,66);
background: -moz-linear-gradient(left, rgba(97,78,66,1) 0%, rgba(160,131,106,1) 65%, rgba(97,78,66,1) 100%);
background: -webkit-linear-gradient(left, rgba(97,78,66,1) 0%,rgba(160,131,106,1) 65%,rgba(97,78,66,1) 100%);
background: linear-gradient(to right, rgba(97,78,66,1) 0%,rgba(160,131,106,1) 65%,rgba(97,78,66,1) 100%);
filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#614e42', endColorstr='#614e42',GradientType=1 );
}
@media screen and (max-width: 991px){
	#header_logo .logo a {
		display:block;
		padding-top:5px;
	}
	#logo_image img {
		display:block;
		width:auto;
		height:40px;
	}
}
/* main contents */
#main_col {
	position:relative;
	width:100%;
}
/* main visual */
/****** top page */
/* top slider */
#header_slider {
	max-width:100%;
	width:100%;
}
#header_slider .caption {
	top:40%;
}
@media screen and (max-width: 1279px){
	#header_slider {
		width:100%;
	}
}
.header_request_btn {
	position:absolute;
	top:-200px;
	left:50%;
	transform:translatex(-50%);
}
.header_request_btn a {
	display:inline-block;
	padding:20px 40px;
	border:1px solid #fff;
	background:rgba(0,0,0,.4);
	white-space:nowrap;
	color:#fff;
	font-size:24px;
	transition:all .3s ease-in-out;
}
.header_request_btn a:hover {
	text-decoration:none;
	background:rgba(0,0,0,.6);
	box-shadow:0 2px 20px rgba(0,0,0,.3);
}
@media screen and (max-width: 1120px){
	.header_request_btn {
		top:-150px;
	}
	.header_request_btn a {
		font-size:20px;
	}
}
@media screen and (max-width: 767px){
	.header_request_btn {
		top:-100px;
	}
	.header_request_btn a {
		padding:20px 20px;
		font-size:16px;
	}
}
@media screen and (max-width: 480px){
	.header_request_btn {
		top:-70px;
	}
	.header_request_btn a {
		padding:10px 20px;
		font-size:14px;
	}
}
/* concept */
#index_content2 {
	padding:60px 22px;
}
.section.sec1 #index_content2 p {
	color:#fff;
}
h2#concept_title {
	padding:30px 0 10px;
	line-height:1.2em;
	text-align:center;
	font-size:26px;
	font-weight:400;
}
@media only screen and (max-width: 767px) {
	h2#concept_title {
		font-size:16px;
	}
}

.section #index_blog {
	background-color:transparent;
}
/* course guide */
.index_course_guide {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:stretch;
}
.index_course_price,
.index_course_txt {
	box-sizing:border-box;
	width: 47.82%;
}
.index_course_price h3 {
	margin:0 0 20px;
	padding:0 0 10px;
	border-bottom: 1px solid #ccc;
	font-size:26px;
}
.index_course_price dl {
	display:flex;
	flex-wrap:wrap;
	margin-bottom:20px;
}
.index_course_price dl dt,
.index_course_price dl dd {
	box-sizing:border-box;
	width:50%;
	padding: 15px 20px;
	border-bottom:1px solid #eee;
	font-size:16px;
}
.index_course_price dl dt {
	background:rgba(30,40,60,0.95);
	color:#fff;
}
.index_course_price dl dd {
	text-align:right;
	background:#fff;
}
.index_course_price p {
	margin:0 0 20px;
}
.index_course_txt {
	background:#fff;
	border:1px solid #ddd;
}
.index_course_txt .inner {
	padding:40px 40px 20px;
}
.index_course_txt p {
	margin:0 0 20px;
	line-height:2em;
}
@media screen and (max-width: 767px){
	.index_course_guide {
		justify-content:flex-start;
	}
	.index_course_price,
	.index_course_txt {
		box-sizing:border-box;
		width: 100%;
	}
}
.post_content th {
	background:#f1f1f1;
}
.post_content td {
	background:#fff;
}

/* news campaign */
#index_news.columns-2 {
	align-items:stretch;
}
.index_news ol {
	background:#fff;
}
/* voice */
#index_voice li {
	background:#fff;
}
/* top blog */
@media screen and (max-width: 767px){
	.section #index_blog {
		padding-bottom:0;
	}
}
/* voice page */
ol.voice_list,
ol#voice_list {
	background:#fff;
}
body.single-voice div#article {
	background:#fff;
}
body.single-voice div#article .post_content {
	padding:22px;
}
#previous_next_post2 {
	margin:0;
	padding:0 0 40px;
}
/* recruit page */
.recruit_summary {
	text-align:center;
}
.recruit_summary h1 {
	margin:0 0 40px;
	font-weight:600;
}
.recruit_tbl {
	margin:40px;
}
.recruit_tbl th {
	text-align:right;
	background:#f1f1f1;
}
.recruit_tbl td {
	background:#fff;
}
.recruit_contact {
	margin:0 40px;
	padding:40px;
	text-align:center;
	background:#fff;
}
.recruit_contact p {
	margin:0;
}
.recruit_contact p.rec_tel {
	margin:0 0 10px;
}
.recruit_contact p.rec_tel strong {
	font-size:2.4em;
	font-weight:bold;
}
.recruit_contact p.rec_tel strong small {
	font-size:.7em;
}
@media screen and (max-width: 767px){
	.recruit_tbl {
		margin:20px 0;
	}
	.recruit_tbl table,
	.recruit_tbl tbody,
	.recruit_tbl tr,
	.recruit_tbl th,
	.recruit_tbl td {
		display:block;
		box-sizing:border-box;
		width:100%;
	}
	.recruit_tbl table {
		border-top: 1px solid #bbb;
	}
	.recruit_tbl th,
	.recruit_tbl td {
		text-align:left;
		border-top:none;
	}
	.recruit_contact {
		margin:0;
		padding:20px;
	}
	.recruit_contact p.rec_tel strong {
		font-size:2em;
	}
}


/************ sidebar */
.tcdw_course_list_widget .course_list li .caption {
	font-size:16px;
}
/************ footer */
/* shop info */
.store_info {
	display:flex;
	flex-wrap:wrap;
	flex-direction:flex-start;
	align-items:stretch;
	padding-bottom:80px;
}
.store_info > div {
	box-sizing:border-box;
	width:50%;
}
.ggmap {
position: relative;
padding-bottom: 56.25%;
padding-top: 30px;
height: 0;
overflow: hidden;
}
 
.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.info_logo {
	margin-bottom:20px;
}
.store_info div.info_txt h3 {
	margin:0 0 1em;
	font-size:1.2em;
}
.store_info div.info_txt p {
	margin:0 0 1em;
	line-height:1.8em;
}
@media screen and (max-width: 991px){
	.store_info {
		padding-left:22px;
		padding-right:22px;
	}
}
@media screen and (max-width: 767px){
	.store_info {
		padding-bottom:30px;
	}
	.store_info > div {
		width:100%;
	}
	.store_info div.info_txt {
		padding-bottom:20px;
		text-align:center;
	}
	.info_logo {
		width:100%;
		max-width:240px;
		margin:0 auto 10px;
	}
}
#footer_widget .footer_inner {
	padding-top:50px;
}
.footer_widget.widget_nav_menu {
	width:100%;
	margin:0 0 20px;
}
.footer_widget ul {
	text-align:center;
}
.footer_widget li {
	display:inline-block;
}
.footer_widget li a {
	display:inline-block;
	padding:0 10px;
}

#footer_top {
	background-image: url(/images/bg_dark_alpha.png);
	background-repeat:no-repeat;
	background-size:cover;
}