@charset "UTF-8";



/*---------------------------
　　全ページ共通
---------------------------*/
*, *:before, *:after { box-sizing: border-box; }

html {
	font-size: 62.5%;
	-webkit-text-size-adjust: 100%;
}

body {
	font-size: 1.6rem;
	font-family:"游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "Helvetica Neue", Arial, "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", sans-serif;
	line-height: 1.7;
	color: #000;
}

/* IE11 */
_:lang(x)::-ms-backdrop, body {
	font-size: 1.55rem;
	font-family: "メイリオ", Meiryo, sans-serif;
}

a {
	color: #000;
	text-decoration: none;
	-webkit-tap-highlight-color:rgba(0,0,0,0);
  cursor:pointer;
}

a:hover {
	opacity: 0.7;
	text-decoration: none;
}

*:focus { outline: none; }

h1 { font-size: 4rem; }
h2 { font-size: 2.6rem; }
h3,h4 { font-size: 2.2rem; }
h5 { font-size: 2rem; }

h2, h3, h4, h5 { line-height: 1.4; }
h2, h3, h4, h5 { font-weight: bold; }

h2 span { padding-left: 0.5em; }
h3 span { padding-left: 0.5em; }

h1, h2, h3, h4, h5,
p, li, dt, dd {
	font-feature-settings: "palt";
	text-align: justify;
	word-wrap: break-word;
}

th, td {
	font-feature-settings: "palt";
	word-wrap: break-word;
	vertical-align: middle;
}

img,
a img {
	margin: 0;
	padding: 0;
	vertical-align: bottom;
}

a img:hover {
	opacity: 0.7;
	transition: 0.5s;
}


/* 改行
----------------*/
br.pc,.pc_only  { display: inline-block; }
br.sp,.sp_only { display: none; }

/* 配置パターン
----------------*/
.flexbox {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-ms-flex:0 1 auto;
}

.row {
	display: -webkit-box;
	display: -ms-flexbox;
	/*display: flex;*/
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
}

.wrapper {
	width: 800px;
	max-width: 800px;
	margin: 0 auto;
}

#content p { flex: 1; }

/* IE10 & IE11 */
_:-ms-input-placeholder, :root #content p {
  /*flex: 1 0 auto;*/
  flex: 0 1 auto;
}

/*---------------------------
　　Media Queries設定
---------------------------*/

/*---------------------------------------------*/
@media screen and (max-width: 768px) {
/*---------------------------------------------*/

/* 配置パターン
----------------*/
.flexbox { display: block; }

/*テキスト
----------------*/
html { font-size: calc((100vw - 768px) / 158 + 12px); }

h1 { font-size: calc((100vw - 768px) / 79 + 32px); }
h2 { font-size: calc((100vw - 768px) / 158 + 24px); }
h3,h4 { font-size: calc((100vw - 768px) / 316 + 22px); }
h5 { font-size: calc((100vw - 768px) / 316 + 20px); }

img,
a img {
	width: 100%;
	height: auto;
}

/*改行
----------------*/
br.pc { display: none; }
br.sp { display: block; }
.pc_only { display: none; }
.sp_only { display: block; }
.sp_none { display: none; }

.wrapper { width: 100%; }

}/* 768 */

/*---------------------------
　　ページごとの設定
---------------------------*/
.announce_bnr { display: block; letter-spacing: -0.4em; }
.announce_bnr img { width: 49%; }
.announce_bnr img:nth-child(even),
.announce_bnr a:nth-child(even) img { margin-left: 1em; }

/* 教室・特別講座 */
.course_list, .item_col { margin: 1em 0; }

/* 申し込みボタン */
.guide_btn,
.form_btn {
	margin-top: 2em;
	padding: 1.5em;
	border-radius: 1em;
}

.guide_btn .req_btn,
.form_btn .req_btn { margin-top: 0; }

.nyushitsu_form .guide_btn {
	margin: 0;
	border-radius: 0;
}

.guide_btn #n_setsu .date,
.guide_btn #n_test #n_test_date,
.guide_btn #n_setsu #n_setsu_date,
.form_btn .date .day {
	display: block;
	font-size: 2.6rem;
	text-align: center;
	font-weight: bold;
	line-height: 1.4;
}

.guide_btn .disc,
.form_btn .disc {
	display: block;
	width: 20em;
	margin: 0.5em auto 1em auto;
	padding: 0.2em;
	text-align: center;
	font-weight: bold;
	border-radius: 0.5em;
	background-color: #FFF;
}

.guide_btn .disc span:after {
	content: '';
	margin-left: 1em;
	padding-right: 1em;
	border-left: #999 1px solid;
}

.guide_btn .form_close,
.form_btn .form_close {
	max-width: 23em;
	padding: 0.7em;
	font-size: 1.4rem;
	background-color: #FFF;
	border: #f45a40 1px solid;
	color: #f45a40;
}

.guide_btn #no-test {
	padding: 0.7em 1em;
	font-size: 1.4rem;
	background-color: #999;
	color: #FFF;
}

.guide_btn #n_setsu #n_setsu_date .day,
.guide_btn #n_test #n_test_date .day,
.form_btn #n_setsu #n_setsu_date .day,
.form_btn #n_test #n_test_date .day,
.form_btn .date .day span {
	font-size: 4rem;
}

.guide_btn .col2:nth-child(odd) { margin: 0; }

/*---------------------------
　　入室説明会・入室テスト
---------------------------*/

.txt_frame {
	width: 100%;
	margin-top: 1em;
	padding: 0.5em;
	text-align: center;
	border: #f25a40 1px solid;
	border-radius: 100vh;
	color: #f25a40;
}

.point .link_btn a { margin-top: 1em; }

.table_guide {
	display: block;
	width: 100%;
	max-width: 100%;
	margin-top: 1em;
	padding: 1em 1em 0.8em 1em;
	border: none;
	background-color: #EEE;
}

.table_guide th {
	font-weight: bold;
	border: none;
	background: none;
}

.table_guide tr { border: none; }

.table_guide tr.city th,
.table_guide.few tr.city th  {
	width: 9em;
	padding: 0 1em;
	vertical-align: middle;
}

.table_guide tr.city:first-child th { border-bottom: none; }

.table_guide tr:nth-of-type(n+2) {
	display: inline-block;
	width: 19em;
	border: #007733 1px solid;
	background-color: #FFF;
}

.table_guide tr:nth-of-type(odd) { margin-left: 0.5em; }

.table_guide td {
	width: 11em;
	padding: 0.5em 1em;
	border: none;
	vertical-align: middle;
}

/* IE11 */
_:lang(x)::-ms-backdrop, .table_guide td { padding: 0.5em; }

/* Firefox */
@-moz-document url-prefix() { .table_guide td { padding: 0.5em 0.8em; } }

.table_guide td a {
	display: block;
	color: #007733;
}


/*---------------------------
　　Media Queries設定
---------------------------*/

/*---------------------------------------------*/
@media screen and (max-width: 768px) {
/*---------------------------------------------*/
.form_btn .disc {
	width: 100%;
}	
	
/* 特別講座 */

.course_list.col2 .list_img { width: 100%; }
.course_list.col2:nth-child(odd) { margin-bottom: 0; }

.course_list.col2 div:nth-child(2n) { margin-left: 0; }
.course_list.col2 div { width: 100%; padding: 1em; }

.course_list.col3 { padding: 1em 0.5em 0 0.5em; }
.course_list.col3 dt { font-size: 100%; }
.course_list.col3 div { padding: 0 0.5em 1em 0.5em; }

.course_list dt { padding: 0.5em; }

/* 教室ページ
----------------*/
.announce_bnr img { width: 100%;}
.announce_bnr img:nth-child(even),
.announce_bnr a:nth-child(even) img { margin-left: 0; }
.announce_bnr img:nth-child(n+2),
.announce_bnr a:nth-child(n+2) img { margin-top: 1em; }

.guide_btn #n_test #n_test_date,
.guide_btn #n_setsu #n_setsu_date,
.form_btn .date .day { font-size: 2.2rem; }

.guide_btn .form_close,
.form_btn .form_close { max-width: 100%; }

.nyushitsu_form .col2:nth-child(2n) { margin-top: 2em; }

}/* 768 */

@media screen and (max-width: 500px) {
	.guide_btn .disc,
	.req_btn a {
		width: 100%;
	}
}