@charset "UTF-8";


/* ----------------------- TCD Advanced Style -------------------------- */

@font-face {
    font-family: 'design_plus';
    src: url('../fonts/design_plus.eot?v=1.2');
    src: url('../fonts/design_plus.eot?v=1.2#iefix') format('embedded-opentype'),
         url('../fonts/design_plus.woff?v=1.2') format('woff'),
         url('../fonts/design_plus.ttf?v=1.2') format('truetype'),
         url('../fonts/design_plus.svg?v=1.2#design_plus') format('svg');
    font-weight: normal;
    font-style: normal;
}
.b-b-none {
	border-bottom: none !important;
	margin:0;
}

/* ----------------------------------------------------------------------
 Column layout - �J�������C�A�E�g
---------------------------------------------------------------------- */
.post_content .post_row { margin-left:-15px; margin-right:-15px; }
.post_content .post_col, .post_content .post_col-2, .post_content .post_col-3 { position:relative; min-height:1px; width:100%; padding-right:15px; padding-left:15px; float:left; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; margin-bottom:2em; }
.post_content .post_col-2 { margin-bottom:0; }
@media screen and (min-width:768px){
	.post_content .post_col-2 { width:50%; /* 2�J���� */ }
	.post_content .post_col-3 { width:33.33333%; }
}
@media screen and (min-width:1024px){
	.post_content .post_col-2 { width:50%; /* 2�J���� */ }
	.post_content .post_col-3 { width:33.33333%; }
}
.post_content .post_row:before, .post_content .post_row:after { content: " "; display: table; }
.post_content .post_row:after { clear: both; }


/* ----------------------------------------------------------------------
 headline - ���o���̃X�^�C��
---------------------------------------------------------------------- */
.post_content .style3a, .post_content .style3b, .post_content .style4a, .post_content .style4b, .post_content .style5a, .post_content .style5b, .post_content .style6 { line-height:1.6; } 

/* h2 */
h2.style2ab { margin:0 2px !important; padding:.2em 0 .3em .8em !important; font-size:18px !important;font-weight:400 !important;  border-bottom:none; border-left:7px solid #4a5ab1;line-height: 1.0 !important; }

/* h3 */

h3.event_title {font-size: 16px !important;padding:0.8em 0.8em 0.6em !important;position:relative;margin:40px 0 0;background-color: #4a5ab1; color:#fff;}
h3.style3ab { margin:0 0 1.0em; padding:0.8em 0.8em 0.6em !important; font-size:24px !important; font-weight:400; background-color: #4a5ab1; color:#fff;}
h3.style3a { margin:0; padding:0.8em 0.8em 0.6em !important; font-size:16px !important; font-weight:400; background-color: #4a5ab1; color:#fff;}
.post_content .style3a { margin:0; padding:0.8em 0.8em 0.6em !important; font-size:16px !important; font-weight:400; background-color: #4a5ab1;  color:#fff;}
.post_content .style3ab { margin:0 0 1.0em; padding:0.8em 0.8em 0.6em !important; font-size:16px !important; font-weight:400; background-color: #4a5ab1; color:#fff;}
.post_content .style3b { margin:1em 0 0.8em; font-size:24px !important; font-weight:400;color:#4a5ab1; }
.post_content .pb_business_day_title{ margin:0; padding:0 0.8em; font-size:16px !important; font-weight:400; background-color: #4a5ab1; color:#fff;}
/* h4 */
h4.style4ab { margin:0 2px !important; padding:.2em 0 .3em .8em !important; font-size:24px !important;  border-bottom:none; border-left:7px solid #4a5ab1;line-height: 1.0 !important; }
h4.style4a { margin:0 2px; padding:.1em 0 .3em .8em !important; font-size:24px; font-weight:normal; border-bottom:none; border-left:7px solid #4a5ab1;line-height: 1.5 !important; }
.post_content .style4b { margin:2.5em 0 1.2em; padding:.9em 0 .8em; font-size:16px; font-weight:400; border-bottom:1px dotted #aaa; }
/* h5 */
.post_content .style5a { margin:0 0 0.2em; padding:0; font-weight:600; font-size:15px;  }
.post_content .style5b { margin:2em 0 1em; padding:.5em .8em .4em 1em; font-weight:400; font-size:18px; color:#fff; background:#222; border-radius:4px; box-shadow:0px 2px 0px 0px #f2f2f2; }
/* h6 */
.post_content .style6 { position:relative; margin:2em 0 1em; padding:.5em .8em .8em 1.3em; color:#222; font-weight:bold; font-size:16px; }
.post_content .style6:before { position:absolute; width:12px; height:12px; top:.5em; left:.2em; background:#222; content:""; }
.post_content .news_headline1{ position:relative; margin:80px 0 25px 0; padding:.5em; border-left:8px solid #444; line-height:1.2; font-size:1.2em; }
.post_content .news_headline1:after { content:""; position:absolute; bottom:0px; left:0; height:0; width:100%; border-bottom:1px dotted #ddd; }
.post_content .news_headline2{ margin:40px 0 20px 0; padding:0 .5em; border-left:6px solid #545454; line-height:26px; font-size:1.1em;}
.post_content .balloon { clear:both; display:block; position:relative; margin:50px 0 22px; padding:.5em 18px .5em; width:auto; min-width:115px; color:#fff; text-align:left; font-size:20px; font-weight:400; background:#222; z-index:0; border-bottom:0; }
.post_content .balloon:after { content:""; position:absolute; bottom:-10px; left:30px; margin-left:-10px; display:block; width:0px; height:0px; border-style:solid; border-width:10px 10px 0 10px; border-color:#222 transparent transparent transparent; }
h3.event_title em {font-size: 11px;position:absolute;top:35%;text-align: right;display: block;font-style: normal;width: calc(100% - 2em);padding-right: 2em;}
h3.event_title em a {color:#fff;}
h3.event_title em i {padding-left: 1em;}
h3.shcool_titlebn {width: calc(1150px - 1.6em);margin: 60px auto 0 !important;font-size:16px !important;padding: 0.8em 0.8em 0.6em !important;line-height:1.6;}
/* ----------------------------------------------------------------------
 headline - 共通
---------------------------------------------------------------------- */
div.e_lesson { margin:2em 0 1.0em; font-size:30px !important; font-weight:600;text-align: center; line-height: 150%;}
p.under_copy { margin:30px auto 0; font-size:14px; font-weight:400;text-align: center; line-height: 30px; width: 800px;}
.icon_title {
	margin: 0 0 50px 0;
	font-size: 20px;
	font-weight: 400;
	text-align: center;
	padding-top: 60px;
	background-image: url(../img/icon_raket.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 50px auto;
}
/* ----------------------------------------------------------------------
 headline - 体験レッスン
---------------------------------------------------------------------- */
ul.ytube_bt {
	width: 800px;
	margin: 15px auto 0;
	list-style: none;
}
ul.ytube_bt li a {
	padding: 15px 0 12px;
	background-color: #c6092b;
	text-align: center;
	float: left;
	width: 395px;
	margin-right: 10px;
	letter-spacing: 0.2em;
	color: #fff;
	text-decoration: none;
}
ul.ytube_bt li a.last {
	margin-right: 0;
}
ul.ytube_bt li i {
	padding-left: 0.5em;
}
/* ----------------------------------------------------------------------
 コース紹介 - 追加CSS
---------------------------------------------------------------------- */
.general {
	width: calc(100% - 2px);
	padding-top: 28px;
	border: 1px solid #dddddd;
	margin-top:0;
	}
.general dl {
	width: 92%;
	margin: 0 auto 20px !important;
}
.general dl dt {
	width: 100px;
	height: 100px;
	background-color: #dddddd;
	margin-right: 28px;
	float: left;
}
.general dl dt img {
	max-width: 100%;
	height:auto;
}
.general dl dd {
	width: calc(100% - 128px);
	float: left;
	padding:0 !important;
}
.general dl dd h3 {
	font-weight: 500;
	font-size: 16px;
	vertical-align: middle;
	margin:0 0 15px !important;
	line-height: 100% !important;
	padding: 0 !important;
}
.general dl dd h3 small {
	font-weight: 400;
	font-size: 12px;
	margin-left: 1em;
	vertical-align: middle;
}
.general dl dd p {
	font-size: 14px;
	line-height: 200%;
	margin-bottom: 0 !important;
}
.general table {
	width: 100%;
	border-top: 1px solid #ddd;
	border-left: none !important;
	border-bottom: none !important;
	text-align: center;
	margin:0 !important;
}
.general table th {
	border-top: none !important;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
	font-size: 14px;
	font-weight: 400;
	background-color: #f2f2f2;
	padding: 15px 0 12px;
	border-left: none !important;
}
.general table td {
	border-right: 1px solid #ddd;
	border-bottom: none  !important;
	font-size: 14px;
	font-weight: 500;
	padding: 15px 0 12px;
	border-left: none !important;
}
.general table td:last-of-type,
.general table th:last-of-type {
	border-right: none;
}
dl.corse_select_benefits {
	width:100%;
	display:block;
	margin:0 0 10px;
	padding:0;
}
dl.corse_select_benefits dt {
		width: 150px;
		float: left;
	}
dl.corse_select_benefits dt img {
	max-width: 100%;height: auto;
}
dl.corse_select_benefits dd  {
	margin-left: 170px;
	padding-top: 36px;
	}
dl.corse_select_benefits dd p {
		font-size: 14px;
		line-height: 1.6;
	}

/* ----------------------------------------------------------------------
 ボタンタイプ - 追加CSS
---------------------------------------------------------------------- */
.button_center {
	width: 100%;
	text-align: center;
}
p.inner_button a {
	font-size: 13px;
	padding: 13px 1.5em 11px;
	background-color: #FFF;
	color: #4a5ab1;
	text-decoration: none;
	letter-spacing: 0.1em;
	margin: 0 auto;
	border: 1px solid #4a5ab1;
	font-family: 'FontAwesome';
}
p.inner_button a:hover {background-color: #4a5ab1;color:#fff;}
p.inner_button a i {
	padding-left: 1em;
}
.tcd-pb-widget h4 {
	font-size: 16px;
	font-weight: 400;
	margin-bottom: 25px;
	color:#5FC266;
}
.tcd-pb-widget em {
	font-size: 14px;
	font-style: normal;
}
.tcd-pb-widget em a {
	text-decoration: underline;
}
.tcd-pb-widget em a:hover {
	text-decoration: none;
	color:#c1c1c1;
}

/* ----------------------------------------------------------------------
 テーブルタイプ - 追加CSS
---------------------------------------------------------------------- */
table#business_days {
	text-align: center;
}
table.defo_table {
	text-align: center;
	font-size: 14px !important;
	margin-bottom: 10px;
}
table.defo_table td span.note {
	font-size: 12px !important;
}
p.note {
	font-size: 12px;
	line-height: 140%;
}
p.note a {
	color:#333;
}

/* ----------------------------------------------------------------------
体験レッスン - 追加CSS
---------------------------------------------------------------------- */
ul#taiken {
	display: block;
	width: calc(100% - 1px);
	border-left:1px solid #dddddd;
	border-bottom:1px solid #dddddd;
}
ul#taiken li {
	padding:30px 26px 0px;
	width:calc(49% - 53px);
	float: left;
	border-top: 1px solid #ddd;
	border-right: solid 1px #ddd;
}
ul#taiken li div {
	float:left;
	width: 100px;
	margin-right: 30px;
}
ul#taiken li div img {
	width: 100%;
	height: auto;
}
ul#taiken li dt {
	font-weight:400;
	font-size: 14px;
	color: #5FC266;
	margin-bottom: 10px;
	line-height: 100%;
}
ul#taiken li dd {
	font-size: 14px;
	line-height: 200%;
	color: #000;
	
}

/* ----------------------------------------------------------------------
 headline - 追加CSS
---------------------------------------------------------------------- */
.line_list {
	margin: 0;
	padding:15px;
	font-size: 14px;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}

/* アンカーメニュー*/
ul.anc_menu {
	border-left: 1px solid #dddddd;
	border-top: 1px solid #dddddd;
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.anc_menu li a {
	line-height: 50px;
	font-size: 14px;
	float:left;
	border-bottom: 1px solid #dddddd;
	border-right:1px solid #dddddd;
	width: calc(33.333% - 1px);
	text-align: center;
	color: #333;
	text-decoration: none;
}
ul.anc_menu li a:hover {
	background-color: #4a5ab1;
		color:#fff;
}
.faq_q {
	background-image: url(../img/icon_q.png);
	background-repeat: no-repeat;
	background-position: 25px 22px;
	font-size: 14px;
	line-height: 160%;
	padding: 18px 0 18px 60px;
	background-size: 10px auto;
	position: relative;
	border-bottom: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	cursor: pointer;
}
.faq_q:first-of-type {
	border-top: 1px solid #dddddd;
}
.faq_a {
	background-image: url(../img/icon_a.png);
	background-repeat: no-repeat;
	background-position: 25px 20px;
	font-size: 14px;
	line-height: 160%;
	padding: 18px 0 18px 60px;
	background-size: 10px auto;
	background-color: #f8f8f8;
	border-bottom: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
}
.faq_q p {
	width: 12px;
	height: 12px;
	background-image: url(../img/icon_open.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 11px auto;
	position: absolute;
	right:18px;
	top: 22px;
}
.faq_q p.active {
background-image: url(../img/icon_close.png) !important;	
}

ul.resp-tabs-list li {
	width:calc(33.3% - 17px);
	padding:10px 8px 9px;
	text-align:center;
}

.pb_tab_content {
	border: none;padding:30px 0 0;
}

/*--------------------------SLIDER ----------------*/
ul.slick-box {
	width: 750px;
	margin:0 auto;
}
ul.slick-box li {
	padding: 0 25px;
	
}
ul.slick-box li strong {
	font-size: 16px;
	font-weight: bold;
	padding-top: 15px;
	display: block;
	color: #000;
}
ul.slick-box li p {
	font-size: 14px;
	margin-top: 15px;
	line-height: 180%;
}

/* ------------------------------------------------------------------------
 スクール生向けページ
------------------------------------------------------------------------*/
.scool_titlebox {
	width: 1150px;
	margin: 0 auto;
}
ul.monthly_list {
	width: 800px;
}
ul.monthly_list li {
	padding: 20px 25px 17px;
	border-left: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
}
ul.monthly_list li span.date {
	width: 100px;
	color:#c1c1c1;
	padding-right: 2em;
	display: block;
	float: left;
}
ul.monthly_list li p {
	float: left;
}

ul.school_banner {
	width: 738px;
	padding: 30px;
	border-left:1px solid #c1c1c1;
	border-right:1px solid #c1c1c1;
	border-bottom:1px solid #c1c1c1;
	margin:0px;
}
ul.school_banner li {
	width: 220px;
	float: left;
	margin-right: 39px;
	margin-bottom: 30px;
	list-style: none;
}
ul.school_banner li:nth-of-type(3n) {
	margin-right: 0;
}
ul.school_banner li:nth-of-type(n + 4) {
	margin-bottom: 0;
}
.shcool_time {text-align: center;;width:100% ;margin:20px auto 0;}
#eventbox {margin-top: -40px;}

/* ----------------------------------------------------------------------
 flame - �͂ݘg
---------------------------------------------------------------------- */
.well { min-height:20px; padding:19px; margin-bottom:20px; background-color:#f5f5f5; border:1px solid #e3e3e3; border-radius:4px; -webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); box-shadow:inset 0 1px 1px rgba(0,0,0,0.05); }
.well2 { margin:1em 0 30px; padding:1em 1.5em; line-height:2; border:1px solid #cdcdcd; background:#fcfcfc; box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.well3 { margin:2em 0 2.5em; padding:1em 1.5em;line-height:2.0; border:1px dashed #cdcdcd; background:#fcfcfc;  box-shadow: 0 1px 3px 0 rgba(195,195,195,0.3); }
.wl_red { background-color: #f2dede; border-color: #ebccd1; color: #a94442; }
.wl_yellow { background-color: #fcf8e3; border-color: #faebcc; color: #8a6d3b; }
.wl_blue { background-color: #d9edf7; border-color: #bce8f1; color: #31708f; }
.wl_green { background-color: #dff0d8; border-color: #d6e9c6; color: #3c763d; }


/* ----------------------------------------------------------------------
 button - CSS�{�^���̃X�^�C��
---------------------------------------------------------------------- */
.post_content .q_button { min-width:200px; max-width:90%; background-color:#535353; display:inline-block; vertical-align:middle; padding:.6em 1.3em .5em; font-weight:400; font-size:100%; color:#fff !important; margin:0; text-decoration:none; text-align:center; -webkit-box-sizing:border-box; -moz-box-sizing:border-box; -o-box-sizing:border-box; -ms-box-sizing:border-box; box-sizing:border-box; transition:all 0.3s ease-in-out 0s; box-shadow:0 1px 3px rgba(0,0,0,.15); }
.post_content .q_button:hover, .post_content .q_button:focus { text-decoration:none; color:#fff; background-color:#7d7d7d; box-shadow:0 2px 2px rgba(0,0,0,.15) inset; }
/* Button option */
.post_content .rounded { border-radius:6px; }
.post_content .pill { border-radius:50px; }
.post_content .sz_full { min-width:100px; max-width:100%; display:block; font-size:110%; padding:1em 1.5em .9em; }
.post_content .sz_l { min-width:350px; max-width:90%; font-size:110%; padding:.8em 1.5em .7em; }
@media screen and (max-width: 479px) {
 .post_content .sz_l { min-width:320px; max-width:95%; }
}
.post_content .sz_s { min-width:100px; max-width:90%; font-size:85%; padding:.4em 1em .3em; }
.post_content .bt_red{ background:#c01f0e; color:#fff; }
.post_content .bt_red:hover, .post_content .bt_red:focus { background-color:#d33929; color:#fff; }
.post_content .bt_yellow{ background:#f1c40f; color:#fff; }
.post_content .bt_yellow:hover, .post_content .bt_yellow:focus { background-color:#f9d441; color:#fff; }
.post_content .bt_blue{ background:#2980b9; color:#fff; }
.post_content .bt_blue:hover, .post_content .bt_blue:focus { background-color:#3a91c9; color:#fff; }
.post_content .bt_green{ background:#27ae60; color:#fff; }
.post_content .bt_green:hover, .post_content .bt_green:focus { background-color:#39c574; color:#fff; }


/* ----------------------------------------------------------------------
Youtube responsive - Youtube����̃��X�|���V�u�\��
---------------------------------------------------------------------- */
.ytube { position:relative; height:400px; margin:0 auto; overflow:hidden;width:800px; }
.ytube iframe { position:absolute; top:0; left:0; width:100% !important; height:100% !important; }


/* ----------------------------------------------------------------------
Table responsive - �e�[�u���̃��X�|���V�u�\��
---------------------------------------------------------------------- */
.rps_table { line-height:2.0; }
@media only screen and (max-width:480px) {
  .rps_table tr { display:block; margin-bottom:1.5em; }
  .rps_table th, .rps_table td{ display:list-item; list-style-type:none; border:none; }
}


/* ----------------------------------------------------------------------
 Cardlink style - �J�[�h�����N�̃X�^�C��
---------------------------------------------------------------------- */
.cardlink { padding:12px 12px 12px 12px; margin:10px 0; border:1px solid #ddd; word-wrap:break-word; max-width:100%; background:#fff; }
.cardlink_thumbnail { float:left; margin-right:20px; }
.cardlink_content { line-height:1.6; }
.cardlink .timestamp { display:inline; margin:0; padding:0; vertical-align:top; color:#666; line-height:1.6; font-size:12px; }
.cardlink .timestamp:before {
  font-family:'design_plus'; content:'\e94e';
  font-size:12px; color:#222; display:block; float:left; margin:0 8px 0 0;
  -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
}
.cardlink_title { font-size:16px; margin:0 0 5px; }
.cardlink_title a { font-weight:bold; color:#000; text-decoration:none; }
.cardlink_title a:hover { text-decoration:underline; }
.cardlink_excerpt { color:#333; font-size:13px; overflow:hidden; line-height:1.8; }
.cardlink_footer { clear:both; }
.clear { clear:both; }
@media screen and (max-width: 767px) {
  .cardlink_thumbnail { float:none; }
}
@media screen and (max-width: 479px) {
  .cardlink_excerpt { float:none; }
}


/* ----------------------------------------------------------------------
 Contactform - ���₢���킹�t�H�[��
---------------------------------------------------------------------- */
.wpcf7 { width:100%; border:1px solid #ddd; background:#fffa; padding:0; margin:0 0 2.5em !important; font-size:14px;}
.wpcf7 form{ margin:1.5em 1.5em 0;}
.wpcf7 p { margin-bottom:1em; font-size:12px; }
.wpcf7 input, .wpcf7 textarea { width:auto; -moz-box-sizing: border-box; box-sizing: border-box; border:1px solid #ccc; line-height:1.2; padding:8px;  }
.wpcf7 select, .wpcf7 input[type=checkbox], .wpcf7 input[type=radio] { width:auto; max-width:97%; border:1px solid #ccc; padding:8px; }
.wpcf7 select, .wpcf7 .wpcf7-list-item-label { line-height:1.2; font-size:14px; }
.wpcf7-list-item { display:block; }
.wpcf7 textarea { height:300px; }
.wpcf7 input:focus, .wpcf7 textarea:focus { outline:none; border:1px solid #bbb; -webkit-box-shadow:inset 0 0 5px rgba(0, 0, 0, 0.2); box-shadow:inner 0 0 5px rgba(0, 0, 0, 0.5); }
.wpcf7 input.wpcf7-submit { position:relative; display:block; width:225px; height:48px; margin:30px auto 0; background-color:#333333; cursor:pointer; border:none !important; color:#fff; text-align:center; text-decoration:none; font-size:14px; line-height:1.5; outline:none; -webkit-transition: all .3s; transition: all .3s; }
.wpcf7 input.wpcf7-submit, .wpcf7 input.wpcf7-submit::before, .wpcf7 input.wpcf7-submit::after { -webkit-box-sizing:border-box; -moz-box-sizing:border-box; box-sizing:border-box; }
.wpcf7 input.wpcf7-submit:hover { background-color:#666666; }
.wpcf7 .wpcf7-not-valid { background:pink; }
.wpcf7 .wpcf7-response-output { margin:10px 0 0; padding:8px 35px 8px 14px; -webkit-border-radius:4px; -moz-border-radius:4px; border-radius:4px; }
.wpcf7 .wpcf7-validation-errors { color:#B94A48; background-color:#F2DEDE; border:1px solid #EED3D7; }
.wpcf7 .wpcf7-mail-sent-ok { color:#3A87AD; background-color:#D9EDF7; border:1px solid #BCE8F1; }


/* ----------------------------------------------------------------------
 font-size - �t�H���g�T�C�Y
---------------------------------------------------------------------- */
.text70{font-size:70%}      /* �t�H���g�T�C�Y70% */
.text80{font-size:80%}
.text90{font-size:90%}
.text100{font-size:100%}
.text110{font-size:110%}
.text120{font-size:120%}
.text130{font-size:130%}
.text140{font-size:140%}
.text150{font-size:150%}
.text160{font-size:160%}
.text170{font-size:170%}
.text180{font-size:180%}
.text190{font-size:190%}
.text200{font-size:200%}
.text210{font-size:210%}
.text220{font-size:220%}
.b{font-weight:700}     /* ���� */
.u{text-decoration:underline}     /* ���� */
.del{text-decoration:line-throug} /* �ł������� */


/* ----------------------------------------------------------------------
 font-color - �t�H���g�J���[
---------------------------------------------------------------------- */
.red{color:red}     /* �ԐF */
.blue{color:#2ca9e1}    /* �F */
.green{color:#82ae46}   /* �ΐF */
.orange{color:#ff7d00}    /* ��F */
.yellow{color:#fff000}    /* ���F */
.pink{color:#ff0084}    /* �s���N */
.gray{color:#999999}    /* �O���[ */


/* ----------------------------------------------------------------------
 background-color - �w�i�F
---------------------------------------------------------------------- */
.bg-yellow{padding:2px;background-color:#ff0} /* ���F�̕����w�i */
.bg-blue{padding:2px;background-color:#4ab0f5}  /* �F�̕����w�i */
.bg-red{padding:2px;background-color:red} /* �ԐF�̕����w�i */


/* ----------------------------------------------------------------------
 text-align - �z�u
---------------------------------------------------------------------- */
.align1{text-align:center !important} /* ������ */
.align2{text-align:right !important}  /* �E�� */
.align3{text-align:left !important} /* ���� */


/* ----------------------------------------------------------------------
 float - ��荞��
---------------------------------------------------------------------- */
.r-flo{float:right;margin:10px} /* �E�ɉ�荞�� */
.l-flo{float:left;margin:10px}  /* ���ɉ�荞�� */
.f-clear{clear:both}      /* ��荞�݂̉�� */


/* ----------------------------------------------------------------------
 hover - �摜�����N�}�E�X�I�[�o�[���̕s�����x
---------------------------------------------------------------------- */
a img.fade { background:none !important; outline:none; -webkit-transition:all .3s; transition:all .3s; }
a:hover img.fade { opacity:0.7; filter:alpha(opacity=70); -ms-filter:"alpha( opacity=70 )"; background:none !important; }


/* ----------------------------------------------------------------------
 text-style - �e�L�X�g�X�^�C��
---------------------------------------------------------------------- */
.att {padding-left:1em;text-indent:-1em;} /* ���ӏ������œ�s�ڈȍ~������� */
.att_box { margin:2em 0 2.5em; padding:1em 1.2em; line-height:2.0; border:1px dotted #cccccc; background:#fcfcfc; box-shadow:0px 4px 0px 0px #f7f7f7; } /* �e�L�X�g�{�b�N�X */


/* ----------------------------------------------------------------------
 margin - �v�f�̊O���̗]��
---------------------------------------------------------------------- */
.m0{margin:0 !important}    /* margin 0px ��w�肷��N���X */
.mt0{margin-top:0 !important}   /* margin-top0px ��w�肷��N���X */
.mr0{margin-right:0 !important}   /* margin-right0px ��w�肷��N���X*/
.mb0{margin-bottom:0 !important}  /* margin-bottom0px ��w�肷��N���X*/
.ml0{margin-left:0 !important}    /* margin-left0px ��w�肷��N���X*/

.m5{margin:5px !important}
.mt5{margin-top:5px !important}
.mr5{margin-right:5px !important}
.mb5{margin-bottom:5px !important}
.ml5{margin-left:5px !important}

.m10{margin:10px !important}
.mt10{margin-top:10px !important}
.mr10{margin-right:10px !important}
.mb10{margin-bottom:10px !important}
.ml10{margin-left:10px !important}

.m15{margin:15px !important}
.mt15{margin-top:15px !important}
.mr15{margin-right:15px !important}
.mb15{margin-bottom:15px !important}
.ml15{margin-left:15px !important}

.m20{margin:20px !important}
.mt20{margin-top:20px !important}
.mr20{margin-right:20px !important}
.mb20{margin-bottom:20px !important}
.ml20{margin-left:20px !important}

.m25{margin:25px !important}
.mt25{margin-top:25px !important}
.mr25{margin-right:25px !important}
.mb25{margin-bottom:25px !important}
.ml25{margin-left:25px !important}

.m30{margin:30px !important}
.mt30{margin-top:30px !important}
.mr30{margin-right:30px !important}
.mb30{margin-bottom:30px !important}
.ml30{margin-left:30px !important}

.m35{margin:35px !important}
.mt35{margin-top:35px !important}
.mr35{margin-right:35px !important}
.mb35{margin-bottom:35px !important}
.ml35{margin-left:35px !important}

.m40{margin:40px !important}
.mt40{margin-top:40px !important}
.mr40{margin-right:40px !important}
.mb40{margin-bottom:40px !important}
.ml40{margin-left:40px !important}

.m45{margin:45px !important}
.mt45{margin-top:45px !important}
.mr45{margin-right:45px !important}
.mb45{margin-bottom:45px !important}
.ml45{margin-left:45px !important}

.m50{margin:50px !important}
.mt50{margin-top:50px !important}
.mr50{margin-right:50px !important}
.mb50{margin-bottom:50px !important}
.ml50{margin-left:50px !important}

.m55{margin:55px !important}
.mt55{margin-top:55px !important}
.mr55{margin-right:55px !important}
.mb55{margin-bottom:55px !important}

.ml55{margin-left:55px !important}
.m60{margin:60px !important}
.mt60{margin-top:60px !important}
.mr60{margin-right:60px !important}
.mb60{margin-bottom:60px !important}
.ml60{margin-left:60px !important}

.m65{margin:65px !important}
.mt65{margin-top:65px !important}
.mr65{margin-right:65px !important}
.mb65{margin-bottom:65px !important}
.ml65{margin-left:65px !important}

.m70{margin:70px !important}
.mr70{margin-right:70px !important}
.mb70{margin-bottom:70px !important}
.ml70{margin-left:70px !important}

.m75{margin:75px !important}
.mt75{margin-top:75px !important}
.mr75{margin-right:75px !important}
.mb75{margin-bottom:75px !important}
.ml75{margin-left:75px !important}

.m80{margin:80px !important}
.mt80{margin-top:80px !important}
.mr80{margin-right:80px !important}
.mb80{margin-bottom:80px !important}
.ml80{margin-left:80px !important}


/* ----------------------------------------------------------------------
 padding - �v�f�̓���̗]��
---------------------------------------------------------------------- */
.p0{padding:0 !important}   /* padding-0px ��w�肷��N���X */
.pt0{padding-top:0 !important}    /* padding-top0px ��w�肷��N���X */
.pr0{padding-right:0 !important}  /* padding-right0px ��w�肷��N���X */
.pb0{padding-bottom:0 !important} /* padding-bottom0px ��w�肷��N���X */
.pl0{padding-left:0 !important}   /* padding-left0px ��w�肷��N���X */

.p5{padding:5px !important}
.pt5{padding-top:5px !important}
.pr5{padding-right:5px !important}
.pb5{padding-bottom:5px !important}
.pl5{padding-left:5px !important}

.p10{padding:10px !important}
.pt10{padding-top:10px !important}
.pr10{padding-right:10px !important}
.pb10{padding-bottom:10px !important}
.pl10{padding-left:10px !important}

/* ----------------------------------------------------------------------
 体験レッスン
---------------------------------------------------------------------- */
h3.center_title {
	font-size: 24px;
	line-height: 180%;
	text-align: center;
	color: #4a5ab1;
}
p.center_copy {
	font-size: 14px;
	line-height:32px;
	text-align: center;
	margin-top:25px;
}

.scoolbox {
	min-width: 1150px;
}
.scoolbox #scool_map {
	width: 650px;
	float: left;
	margin-right: 40px;
}
.scoolbox .scool_detail {
	width: 460px;
	float: left;
}
.scoolbox .scool_detail h3 {
	font-size: 17px;
	font-weight: bold;
	line-height: 100%;
	margin: 0;
	padding: 0;
}
.scoolbox .scool_detail p {
	font-size:14px;
	line-height: 32px;
	margin-top: 10px;
}



@media screen and (max-width: 640px) {
/* ----------------------------------------------------------------------
 headline - 体験レッスン
---------------------------------------------------------------------- */
div.e_lesson { margin:2.0em auto 1.0em; font-size:16px !important; font-weight:400;text-align: left; line-height: 150%;width:86%;font-weight: bold;}
p.under_copy { margin:20px auto 0; font-size:13px; font-weight:400;text-align: left; line-height: 1.8; width: 86%;}
.icon_title {
	margin: 0 0 20px;
	font-size: 15px;
	font-weight: 400;
	text-align: center;
	padding-top: 50px;
	background-image: url(../img/icon_raket.png);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: 30px auto;
	font-weight: bold;
}
ul.ytube_bt {
	width: 90%;
	margin: 15px auto 0;
	list-style: none;
}
ul.ytube_bt li a {
	display: block;
	padding: 12px 0 10px;
	background-color: #c6092b;
	text-align: center;
	float: none;
	width: 100%;
	margin-right: 0px;
	letter-spacing: 0.2em;
	color: #fff;
	text-decoration: none;
	margin-bottom: 10px;
	font-size: 13px;
}
ul.ytube_bt li a.last {
	margin-bottom: 0;
}
ul.ytube_bt li i {
	padding-left: 0.5em;
}
}
@media screen and (max-width: 640px) {
/* ----------------------------------------------------------------------
 コース紹介 - 追加CSS
---------------------------------------------------------------------- */
.general {
	width: calc(100% - 2px);
	padding-top: 28px;
	border: 1px solid #dddddd;
	}
.general dl {
	width: 90%;
	margin: 0 auto 20px !important;
}
.general dl dt {
	width: 100px;
	height: 100px;
	background-color: #dddddd;
	margin-right: 5%;
	float: left;
}
.general dl dt img {
	max-width: 100%;
	height:auto;
}
.general dl dd {
	width: calc(95% - 100px);
	float: left;
	padding:0 !important;
}
.general dl dd h3 {
	font-weight: 500;
	font-size: 16px;
	vertical-align: middle;
	margin:0 0 15px !important;
	line-height: 100% !important;
	padding: 0 !important;
}
.general dl dd h3 small {
	font-weight: 400;
	font-size: 11px;
	margin-left: 0em;
	vertical-align: middle;
	display: block;
	margin-top: 10px;
}
.general dl dd p {
	font-size: 12px;
	line-height: 160%;
	margin-bottom: 0 !important;
}
.general table {
	width: 100%;
	border-left: none !important;
	border-bottom: none !important;
	text-align: center;
	white-space: nowrap;

}
.general table th {
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
	font-size: 11px;
	font-weight: 400;
	background-color: #f2f2f2;
	padding: 10px 15px 8px;
	border-left: none !important;
}
.general table td {
	border-right: 1px solid #ddd;
	border-bottom: none  !important;
	font-size: 11px;
	font-weight: 500;
	padding: 10px 15px 8px;
	border-left: none !important;
}
.general table td:last-of-type,
.general table th:last-of-type {
	border-right: none;
}

	.overflow {
				overflow-x: auto;
	}
	.overflow::-webkit-scrollbar-thumb {
 background-color: #f2f2f2;
}
dl.corse_select_benefits dt {
		width: 20%;
	}
dl.corse_select_benefits dd  {
		margin-left: 24%;
		
	}
dl.corse_select_benefits dd p {
		font-size: 13px;
		line-height: 50%;
	}
}
@media screen and (max-width: 640px) {
/* ----------------------------------------------------------------------
Youtube responsive - Youtube����̃��X�|���V�u�\��
---------------------------------------------------------------------- */
.ytube { position:relative; height:170px; margin:0 auto; overflow:hidden;width:300px !important; }
.ytube iframe { position:absolute; top:0; left:0; width:100% !important; height:100% !important; }
}

@media screen and (max-width: 640px) {
/* ----------------------------------------------------------------------
 ボタンタイプ - 追加CSS
---------------------------------------------------------------------- */
.button_center {
	width: 100%;
	text-align: center;
}
p.inner_button a {
	width: 100%;
	padding: 14px 15px 11px;
	background-color: #fff;
	color: #4a5ab1;
	font-size: 13px;
	text-decoration: none;
	letter-spacing: 0.1em;
	margin: 0 auto;
}
p.inner_button a i {
	padding-left: 1em;
}
	
/* アンカーメニュー*/
ul.anc_menu {
	border-left: 1px solid #dddddd;
	border-top: 1px solid #dddddd;
	list-style: none;
	margin: 0;
	padding: 0;
}
ul.anc_menu li a {
	line-height: 30px;
	font-size: 12px;
	float:left;
	border-bottom: 1px solid #dddddd;
	border-right:1px solid #dddddd;
	width: 49.6%;
	text-align: center;
	color: #333;
	text-decoration: none;
}
	ul.anc_menu li a:hover {
	background-color: #4a5ab1;
		color:#fff;
}
	
.tcd-pb-widget h4 {
	font-size: 16px;
	font-weight: 500;
	margin-bottom: 20px;
}
}
@media screen and (max-width: 640px) {
/* ----------------------------------------------------------------------
 テーブルタイプ - 追加CSS
---------------------------------------------------------------------- */
table#business_days {
	text-align: center;
}
table.defo_table {
	text-align: center;
	font-size: 11px !important;
	white-space: nowrap;
}
	table.defo_table th , table.defo_table td {
		padding: 10px 10px 8px ;
	}
table.defo_table td span.note {
	font-size: 12px !important;
}
p.note {
	font-size: 13px;
}
p.note a {
	color:#333;
}
}
@media screen and (max-width: 640px) {
/* ----------------------------------------------------------------------
 headline - 追加CSS
---------------------------------------------------------------------- */
.faq_q {
	background-image: url(../img/icon_q.png);
	background-repeat: no-repeat;
	background-position: 25px 22px;
	font-size: 14px;
	line-height: 160%;
	padding: 18px 0 18px 60px;
	background-size: 10px auto;
	position: relative;
	border-bottom: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
	cursor: pointer;
}
.faq_q:first-of-type {
	border-top: 1px solid #dddddd;
}
.faq_a {
	background-image: url(../img/icon_a.png);
	background-repeat: no-repeat;
	background-position: 25px 20px;
	font-size: 14px;
	line-height: 160%;
	padding: 18px 0 18px 60px;
	background-size: 10px auto;
	background-color: #f8f8f8;
	border-bottom: 1px solid #dddddd;
	border-left: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
}
.faq_q p {
	width: 12px;
	height: 12px;
	background-image: url(../img/icon_open.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: 11px auto;
	position: absolute;
	right:18px;
	top: 22px;
}
.faq_q p.active {
background-image: url(../img/icon_close.png) !important;	
}
	
/*--------------------------SLIDER ----------------*/
ul.slick-box {
	width: 100%;
	margin:0 auto;
}
ul.slick-box li {
	padding: 0 10px;
}
ul.slick-box li strong {
	font-size: 14px;
	font-weight: bold;
	padding-top: 12px;
	padding-bottom: 5px;
}
ul.slick-box li {
	font-size: 13px;
	margin-top: 10px;
	line-height: 1.6em;
}
}

@media screen and (max-width: 640px) {
/* ----------------------------------------------------------------------
体験レッスン - 追加CSS
---------------------------------------------------------------------- */
ul#taiken {
	display: block;
	width: calc(90% - 1px);
	border-left:1px solid #dddddd;
	border-bottom:1px solid #dddddd;
}
ul#taiken li {
	border-top: 1px solid #ddd;
	border-right: 1px solid #ddd ;
	padding: 5% 4% 0;
	width:calc(92% - 1px);
	float: none;
}
ul#taiken li div {
	float:left;
	width: 100px;
	margin-right: 20px;
}
ul#taiken li div img {
	width: 100%;
	height: auto;
}
ul#taiken li dt {
	font-size: 13px;
	margin-bottom: 10px;
	line-height: 100%;
}
ul#taiken li dd {
	font-size: 12px;
	line-height: 160%;
}
	
/* ----------------------------------------------------------------------
 体験レッスン
---------------------------------------------------------------------- */
h3.center_title {
	font-size: 18px;
	line-height: 32px;
	text-align: left;
	font-weight: 600;
}
p.center_copy {
	font-size: 13px;
	line-height:26px;
	text-align: left;
	margin-top:20px;
}
	
.scoolbox {
	width: 100%;
}
.scoolbox #scool_map {
	width: 100%;
	float: none;
	margin-right: 0;
}
.scoolbox .scool_detail {
	width: 100%;
	float: none;
	margin-top: 20px;
}
.scoolbox .scool_detail h3 {
	font-size: 15px;
	font-weight: bold;
}
.scoolbox .scool_detail p {
	font-size:13px;
	line-height: 26px;
	margin-top: 10px;
}
	
/* ------------------------------------------------------------------------
 スクール生向けページ
------------------------------------------------------------------------*/
.scool_titlebox {
	width: 90%;
	margin: 0 auto;
	padding: 0 5%;
}
h3.event_title {font-size: 16px;padding:0.8em 0.8em 0.6em;position:relative;margin:30px 0 0;background-color: #c1c1c1; color:#fff;}
h3.event_title em {font-size: 13px;position:absolute;top:35%;text-align: right;display: block;font-style: normal;width: calc(100% - 2em);padding-right: 2em;}
h3.event_title em a {color:#fff;}
h3.event_title em i {padding-left: 1em;}
	
	ul.monthly_list {
	width: 100%;
}
ul.monthly_list li {
	padding: 20px 25px 17px;
	border-left: 1px solid #dddddd;
	border-bottom: 1px solid #dddddd;
	border-right: 1px solid #dddddd;
}
ul.monthly_list li span.date {
	width: 100px;
	color:#c1c1c1;
	padding-right: 2em;
	display: block;
	float: none;
	font-size: 13px;
}
ul.monthly_list li p {
	float: none;
	margin-top: 10px;
}

ul.school_banner {
	width: calc(100% - 42px);
	padding: 20px;
	border-left:1px solid #c1c1c1;
	border-right:1px solid #c1c1c1;
	border-bottom:1px solid #c1c1c1;
	margin:0px;
}
ul.school_banner li {
	width: 46%;
	float: left;
	margin-right: 4%;
	margin-bottom: 20px;
	list-style: none;
}
ul.school_banner li img {
		max-width: 100%;
		height: auto;
	}
ul.school_banner li:nth-of-type(2n) {
	margin-right: 0;
}
ul.school_banner li:nth-of-type(3n) {
	margin-right: 4%;
}
ul.school_banner li:nth-of-type(n + 3) {
	margin-bottom: 20px;
}
	ul.school_banner li:last-of-type {
		margin-bottom:0;
	}


.shcool_time {text-align: center;background-color: #CDF7E9;line-height: 36px;width:100%;margin:1em auto 0;}
	
	#eventbox {
		margin-bottom: 40px;
	}
	
/* ----------------------------------------------------------------------
 headline - ���o���̃X�^�C��
---------------------------------------------------------------------- */
.post_content .style3a, .post_content .style3b, .post_content .style4a, .post_content .style4b, .post_content .style5a, .post_content .style5b, .post_content .style6 { line-height:1.5; font-weight: 600;} 
h2.style2ab { margin:0 2px !important; padding:.2em 0 .3em .8em !important; font-size:16px !important;font-weight:600 !important;  border-bottom:none; border-left:7px solid #4a5ab1;line-height: 1.0 !important; }
	
/* h3 */
h3.shcool_titlebn {width: calc(100% - 1.6em);margin: 60px auto 0; font-weight: 600;}
h3.event_title {font-size: 15px !important;padding:0.8em 0.6em 0.6em;position:relative;margin:40px 0 0;background-color: #4a5ab1; color:#fff; font-weight: 600;}
h3.style3ab { margin:0 0 1.0em; padding:0.8em 0.6em 0.6em; font-size:15px !important; font-weight:600; background-color: #4a5ab1; color:#fff;}
h3.style3a { margin:0; padding:0.8em 0.6em 0.6em; font-size:15px !important; font-weight:600; background-color: #4a5ab1; color:#fff;}
.post_content .style3a { margin:0; padding:0.8em 0.6em 0.6em; font-size:15px !important; font-weight:600; background-color: #4a5ab1;  color:#fff;}
.post_content .style3ab { margin:0 0 1.0em; padding:0.8em 0.6em 0.6em; font-size:15px !important; font-weight:600; background-color: #4a5ab1; color:#fff;font-weight:bold;}
.post_content .style3b { margin:1.0em 0 1.0em; font-size:16px !important; font-weight:600; }
.post_content .pb_business_day_title{ margin:0; padding:0 0.8em; font-size:18px; font-weight:600; background-color: #4a5ab1; color:#fff;}
/* h4 */
.post_content .style4a { margin:2.5em 2px 1.2em; padding:.3em 0 .3em .8em; font-size:18px; font-weight:400; border-bottom:none; border-left:2px solid #222; }
.post_content .style4b { margin:2.5em 0 1.2em; padding:.9em 0 .8em; font-size:18px; font-weight:400; border-bottom:1px dotted #aaa; }
/* h5 */
.post_content .style5a { margin:1em 0 0.8em; padding:.5em 0 .3em 0; font-weight:700; font-size:15px; }
.post_content .style5b { margin:1em 0 0.8em; padding:.5em 0 .4em 0; font-weight:400; font-size:18px; color:#fff; background:#222; border-radius:4px; box-shadow:0px 2px 0px 0px #f2f2f2; }
/* h6 */
.post_content .style6 { position:relative; margin:2em 0 1em; padding:.4em .8em .3em 1.3em; color:#222; font-weight:bold; font-size:16px; }
.post_content .style6:before { position:absolute; width:12px; height:12px; top:.5em; left:.2em; background:#222; content:""; }
.post_content .news_headline1{ position:relative; margin:80px 0 25px 0; padding:.5em; border-left:8px solid #444; line-height:1.2; font-size:1.2em; }
.post_content .news_headline1:after { content:""; position:absolute; bottom:0px; left:0; height:0; width:100%; border-bottom:1px dotted #ddd; }
.post_content .news_headline2{ margin:40px 0 20px 0; padding:0 .5em; border-left:6px solid #545454; line-height:26px; font-size:1.1em;}
.post_content .balloon { clear:both; display:block; position:relative; margin:50px 0 22px; padding:.5em 18px .5em; width:auto; min-width:115px; color:#fff; text-align:left; font-size:20px; font-weight:400; background:#222; z-index:0; border-bottom:0; }
.post_content .balloon:after { content:""; position:absolute; bottom:-10px; left:30px; margin-left:-10px; display:block; width:0px; height:0px; border-style:solid; border-width:10px 10px 0 10px; border-color:#222 transparent transparent transparent; }
h3.event_title em {font-size: 12px;position:absolute;top:35%;text-align: right;display: block;font-style: normal;width: calc(100% - 2em);padding-right: 2em;}
h3.event_title em a {color:#fff;}
h3.event_title em i {padding-left: 1em;}

	/* TOP */
	h2.headline {font-size: 16px;text-align:left; font-weight:bold;}
	.desc p {font-size:13px;line-height:1.6;text-align:left;}
	
	.pb_tab_content {
	border: none;padding:0;
}
	
}
h2.headline ul {
	margin-top:20px;
	font-size: 20px;
	font-weight: bold;
	letter-spacing: 0.2em;
}

.page-id-3976 p small {
	font-size: 0.8em;
}
.page-id-3976 p strong {
	font-size: 1.1em;
	font-weight: bold;
}
.page-id-3976 .tcd-pb-row {
	border-bottom: 1px solid #ccc;
	padding-bottom: 30px;
}
.page-id-3976 .tcd-pb-row p.coronanote {
	font-size: 18px;
	text-align: center;
	font-weight: bold;
}
.page-id-3976 .tcd-pb-row:last-of-type {
	border-bottom: none;
	color: #D7536B;
}
p.cov {
	font-size: 16px;
}



