@charset "utf-8";

/*
イメージカラー
平泉 #e2ce54
高田 #29abe2
遠野 #39b34a
最上 #c1272d
*/

html, body, div, span, 
h1, h2, h3, h4, h5, h6, 
p, em, strong, 
ul, ol, li, dl, dt, dd, 
table, th, td,
fieldset, section, header, footer {
	margin:				0px;
	padding:			0px;
}

html,
body {
	width:				100%;
	font-family:		'Noto Sans JP','ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', '游ゴシック Medium', 'Yu Gothic Medium', '游ゴシック', YuGothic, 'メイリオ', Meiryo, sans-serif;
/*	font-family:		'Noto Serif', serif;*/
	font-size:			16px;
	font-style:			normal;
	font-weight:		normal;
	line-height:		1.7em;
	text-align:			left;
	color:				#000;
	word-wrap:			break-word;
	outline:			none;
	background-color:	#f1f1f1;
}

.col_hiraizumi	{ background-color:#e2ce54; }
.col_takata		{ background-color:#29abe2; }
.col_tono		{ background-color:#39b34a; }
.col_mogami		{ background-color:#c1272d; }
.col_none		{ background-color:#f1f1f1; }


h6,
h5,
h4,
h3,
h2,
h1 {
	margin:				0px;
	padding:			0px;
	font-size:			100%;
	font-weight:		normal;
	text-align:			left;
	line-height:		100%;
}

i {
	font-style: normal;
}

a:hover img {
	opacity:			0.8;
}

.txt_center {
	text-align:			center;
}

.txt_right {
	text-align:			right;
}

.txt_left {
	text-align:			left;
}

.box_left {
	float:				left;
}

.box_right {
	float:				right;
}

ul,li{
	list-style: 		none;
}

a{
	text-decoration: 	none;
	color: 				#000;
}

table{
	table-layout: 		fixed;
	border-collapse:	collapse;
	empty-cells:		show;
}
fieldset {
	border:				none;
}

.error-message {
	color:				tomato;
}

.asterisk {
	box-sizing:			border-box;
	width:				100%;
	padding-left:		1.4em;
	font-size:			80%;
	line-height:		150%;
}
.asterisk:before {
	content:		"※";
	display:		inline-block;
	margin-left:	-1.3em;
}

.arrow {
	display:			inline-block;
	padding-left:		10px;
	font-size:			90%;
	background-image:	url(../images/arrow.png);
	background-position:center center;
	background-repeat:	no-repeat;
	background-size:	contain;
	background-clip:	content-box;
}


/* レスポンシブ対応 */
/* ---------------------------------------------------------------- */
body {
	-webkit-text-size-adjust:	100%;
}

img {
	max-width:			100%;
	height:				auto;
	width /***/:		auto;
}

/* clearfix */
/* ================================================================ */
.clearfix:after {
	content:	"";
	display:	block;
	clear:		both;
}

/* ---------------------------------------------------------------- */

.wrapper {
	box-sizing:			border-box;
	width:				100%;
	max-width: 			1200px;
	margin: 			auto;
	padding:			1%;
}

.f_wrapper {
	width:				100%;
	max-width: 			1200px;
	margin: 			auto;
	padding:			0;
}


section{
	padding-top: 		120px;
}

.mb_10 { margin-bottom: 10px; }
.mb_20 { margin-bottom: 20px; }

/* ---------------------------------------------------------------- */

/* ***************************************************************** */

#container {
	box-sizing:			border-box;
	width:				100%;
	padding:			10px;
}

#content {
	box-sizing:			border-box;
	width:				100%;
	max-width:			800px;
	margin:				auto;
	padding:			10px 0px;
	background-color:	#fff;
}

/* ***************************************************************** */

.entry_box {
	box-sizing:			border-box;
	width:				100%;
	padding:			0px;
}

.entry_box > div {
	box-sizing:			border-box;
	width:				100%;
	max-width:			600px;
	padding:			10px;
	margin:				auto;
}

.entry_box table {
	width:				100%;
	margin:				auto;
}

.entry_box h3 {
	box-sizing:			border-box;
	width:				100%;
	padding:			4px 1em 8px;
	margin:				0;
	color:				#fff;
	line-height:		140%;
	background-color:	rgba(58, 76, 178, 1);
}

.form_box {
	box-sizing:			border-box;
	width:				100%;
	max-width:			600px;
	padding:			10px;
	margin:				auto;
}

.form_box .form_block2,
.form_box .form_block {
	margin-bottom:		25px;
}

.form_box .form_block2 input,
.form_box .form_block input {
	display:			inline-block;
}

.form_box .form_block2 label,
.form_box .form_block label {
	display:			inline-block;
	width:				100%;
	padding:			4px;
}

.form_box .form_block2 label span,
.form_box .form_block label span {
	display:			inline-block;
	padding:			4px;
	background-color:	#cc1414;
	color:				#fff;
	font-size:			70%;
	line-height:		100%;
	border-radius:		4px;
}

.form_box .form_block2 .skill_course input ,
.form_box .form_block .skill_course input {
	width:				6%;
}

.form_box .form_block2 .skill_course label,
.form_box .form_block .skill_course label {
	display:			inline-block;
	box-sizing:			border-box;
	width:				90%;
	padding:			4px;
}

.form_box .form_block2 table {
	table-layout:		auto;
	width:				100%;
	margin:				0 auto 30px;
}
.form_box .form_block table {
	margin:				0 auto 10px;
}

.form_box .form_block table th {
	position:			relative;
	color:				#fff;
	background-color:	#333;
	padding:			4px 20px;
}

.form_box .form_block table th:after {
	content:			" ";
	position:			absolute;
	left:				100%;
	top:				30%;
	height:				0;
	width:				0;
	border:				solid transparent;
	border-color:		#eee;
	border-left-color:	#333;
	border-width:		10px;
}

.form_box .form_block2 table td,
.form_box .form_block table td {
	padding:			4px 20px;
	background-color:	#eee;
}

.form_box .form_block2 textarea,
.form_box .form_block2 input[type=tel],
.form_box .form_block2 input[type=text],
.form_box .form_block textarea,
.form_box .form_block input[type=tel],
.form_box .form_block input[type=text] {
	box-sizing:			border-box;
	width:				100%;
	padding:			4px 10px;
	margin-bottom:		20px;
	border-radius:		4px;
	font-size:			140%;
}

.form_box .form_block2 .radio_sex,
.form_box .form_block2 .radio_paymentet,
.form_box .form_block .radio_sex,
.form_box .form_block .radio_paymentet {
	margin-bottom:		20px;
}

.form_box .form_block2 .radio_sex input,
.form_box .form_block2 .radio_privacy input,
.form_box .form_block2 .radio_paymentet input,
.form_box .form_block .radio_sex input,
.form_box .form_block .radio_privacy input,
.form_box .form_block .radio_paymentet input {
	width:				10%;
}

.form_box .form_block2 .radio_sex label,
.form_box .form_block .radio_sex label {
	width:				20%;
}
.form_box .form_block2 .radio_paymentet label,
.form_box .form_block .radio_paymentet label {
	width:				35%;
}
.form_box .form_block2 .radio_privacy label,
.form_box .form_block .radio_privacy label {
	width:				85%;
}

.form_box .form_block2 .radio_privacy,
.form_box .form_block .radio_privacy {
	margin-top:			20px;
}

.form_box .form_block2 .radio_profession input,
.form_box .form_block .radio_profession input {
	width:				20px;
}

.form_box .form_block2 .radio_profession label,
.form_box .form_block .radio_profession label {
	width:				60px;
}

.radio_item {
	display:			inline-block;
}

.privacy_txt a {
	color:				tomato;
	text-decoration:	underline;
}
.privacy_txt a:hover {
	text-decoration:	none;
}

.check_getlicense div.checkbox {
	display:			inline-block;
	width:				48%;
}
.check_getlicense div.checkbox input {
	display:			inline-block;
	width:				10%;
}
.check_getlicense div.checkbox label {
	display:			inline-block;
	width:				80%;
}

@media all and (max-width: 600px) {
	.check_getlicense div.checkbox {
		width:				100%;
	}
}


#ReserveBirthYear,
#ReserveBirthMonth,
#ReserveBirthDay {
	padding:			4px 10px;
	margin-bottom:		20px;
	border-radius:		4px;
	font-size:			140%;
}

/* ----------------------------------------------------------- */

.check_tbl {
	
}
.check_tbl th {
	display:			inline-block;
	font-weight:		normal;
}
.check_tbl td {
	display:			inline-block;
	font-weight:		bold;
	padding:			0 0 1em 2em;
}

.check_submit {
	padding:			30px 0;
	text-align:			center;
}
.check_submit .submit {
	display:			inline-block;
	width:				auto;
	padding:			30px;
}

/* ----------------------------------------------------------- */

.completion {
	box-sizing:			border-box;
	width:				100%;
	max-width:			600px;
	padding:			10px;
	margin:				20px auto 50px;
}

.completion h2 {
	padding-top:		20px;
	margin-bottom:		30px;
	text-align:			center;
	font-size:			140%;
	color:				#39b34a;
}

.completion .txt_main {
	margin-bottom:		20px;
	font-size:			120%;
}

.completion .txt_sub {
	margin-bottom:		40px;
}

.completion h3,
.completion .tel {
	margin-bottom:		10px;
	text-align:			center;
	font-size:			130%;
	font-weight:		bold;
}

.completion .time {
	display:			inline-block;
	text-align:			left;
}

/* ----------------------------------------------------------- */

.ttl_gray {
	box-sizing: 				border-box;
	background-color: 			#f1f1f1;
	border:						2px solid #999;
	margin: 					2% auto 20px;
	padding: 					2%;
	position: 					relative;
	z-index: 					1;
	width: 						100%;
	font-size: 					20px;
	text-align: 				center;
	color: 						#fff;
}

.ttl_gray::before,
.ttl_gray::after {
	content: 					"";
	height: 					100%;
	position: 					absolute;
	width: 						100%;
}

.ttl_gray::before {
	left: 						0;
	top: 						0;
	z-index: 					-1;
}
.ttl_gray::after {
	background-color: 			rgba(170,170,170,.8);
	top: 						10px;
	left: 						10px;
	z-index: 					-2;
}


div.submit {
	box-sizing:			border-box;
	width:				100%;
	max-width:			600px;
	padding:			20px 0;
	margin:				auto;
	text-align:			center;
}

div.submit input[type=submit] {
	display: inline-block;
	font-size: 110%;
	width: auto;
	margin: 0 10px;
	padding: 8px 20px;

	background:#62af56;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#76BF6B), to(#3B8230));
	background-image: -webkit-linear-gradient(top, #76BF6B, #3B8230);
	background-image: -moz-linear-gradient(top, #76BF6B, #3B8230);
	border:1px solid #bbb;
	border-color: #2d6324;
	color: #000;
	text-shadow: rgba(0, 0, 0, 0.5) 0 -1px 0;
	text-decoration: none;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;

	-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 1px 1px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 1px 1px rgba(0, 0, 0, 0.2);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 1px 1px rgba(0, 0, 0, 0.2);

}
div.submit input[type=submit]:hover {
	background: #5BA150;
}

div.submit input[type=submit].rev_btn,
div.submit .rev_btn,
.check_submit div.submit input[name=return] {
	display: inline-block;
	font-size: 110%;
	width: auto;
	margin: 0 10px;
	padding: 8px 20px;

	background:#9e9e9e;
	background-image: -webkit-gradient(linear, left top, left bottom, from(#adadad), to(#737373));
	background-image: -webkit-linear-gradient(top, #adadad, #737373);
	background-image: -moz-linear-gradient(top, #adadad, #737373);
	border:1px solid #bbb;
	border-color: #585858;
	color: #000;
	text-shadow: rgba(0, 0, 0, 0.5) 0 -1px 0;
	text-decoration: none;

	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;

	-moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 1px 1px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 1px 1px rgba(0, 0, 0, 0.2);
	box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.3), 0 1px 1px rgba(0, 0, 0, 0.2);

}
div.submit input[type=submit].rev_btn:hover,
div.submit .rev_btn:hover,
.check_submit div.submit input[name=return]:hover {
	background: #919191;
}

/* ***************************************************************** */
#calendar_box {
	box-sizing:			border-box;
	width:				100%;
}

#appli_calendar {

}

#appli_calendar caption span {
	color:				#7ac943;
	font-size:			160%;
}

#appli_calendar th {
	text-align:			center;
}

#appli_calendar th,
#appli_calendar td {
	width:				14.285%;
}
#appli_calendar th:nth-child(1),
#appli_calendar td:nth-child(1) {
	color:				#c1272d;
}
#appli_calendar th:nth-child(7),
#appli_calendar td:nth-child(7) {
	color:				#3fa9f5;
}

#appli_calendar td a {
	width:				100%;
	cursor:				pointer;
	border-radius:		10%;
}

#appli_calendar td > span,
#appli_calendar td a span:nth-child(1) {
	display:			inline-block;
	width:				30%;
	padding:			5px 0;
	text-align:			center;
}
#appli_calendar td a span:nth-child(2) {
	display:			inline-block;
	width:				50%;
	padding:			5px 0;
	font-weight:		bold;
	font-size:			120%;
	text-align:			center;
}

.calendar_td > a {
	display:			inline-block;
}

.calendar_td > a.clicked {
	background-color:	#f27a90;
}

@media all and (max-width: 400px) {	/* 以下 */
	#appli_calendar td > span,
	#appli_calendar td a span:nth-child(1) {
		width:				40%;
	}
}
/* ***************************************************************** */

#otherschools_viewbtn {
	display:			block;
	box-sizing:			border-box;
	width:				100%;
	padding:			5px;
	text-align:			center;
	color:				#fff;
	background-color:	#ff8800;
}
#otherschools_viewbtn {
	display:			none;
}

#otherschools_box {
	padding:			20px 0;
	text-align:			center;
}

#otherschools_box > div {
	display:			inline-block;
	width:				26%;
	padding:			10px;
	background-position:center center;
	background-repeat:	no-repeat;
	background-size:	contain;
	border:				solid 2px red;
}
#other_hiraizumi{background-image:url(../images/other_hi.png)}
#other_takata	{background-image:url(../images/other_ta.png)}
#other_tono		{background-image:url(../images/other_to.png)}
#other_mogami	{background-image:url(../images/other_mo.png)}

#otherschools_box > div span {
	display:			block;
}

#otherschools_box > div a {
	display:			block;
	border-bottom:		solid 2px transparent;
}
#otherschools_box > div a:hover {
	border-bottom:		solid 2px red;
}

#otherschools_box > div #status_hiraizumi,
#otherschools_box > div #status_takata,
#otherschools_box > div #status_mogami,
#otherschools_box > div #status_tono {
	min-height:			1em;
	padding:			10px 0;
	font-size:			200%;
	font-weight:		bold;
}

#graduate_box,
#price_box {

}
#graduate_box h4,
#graduate_box p,
#price_box h4,
#price_box p {
	display:			inline-block;
}

#graduate_box p,
#price_box p {
	font-size:			140%;
	font-weight:		bold;
}

#price_box p span {
	font-size:			60%;
}

/* ***************************************************************** */
.entry_box input[type=checkbox],
.entry_box input[type=radio] {
	display:	none;
}
.entry_box label {
	display:		block;
	position:		relative;
	padding:		10px 0px 10px 30px;
	margin-right:	20px;
	font-size:		130%;
}
.entry_box label::before{
	content:		"";
	display:		block;
	position:		absolute;
	top:			14px;
	left:			0;
	width:			20px;
	height:			20px;
	border-radius:	2px;
	border:			1px solid #333;
	background:		#999;
}

.entry_box .separate label {
	display:		inline-block;
	padding:		10px 10px 10px 30px;
	margin-right:	70px;
}

.entry_box input[type=checkbox]:checked + label,
.entry_box input[type=radio]:checked + label {
/*	color:			#009a9a;*/
}
.entry_box input[type=checkbox]:checked + label::after,
.entry_box input[type=radio]:checked + label::after {
	content:		"";
	display:		block;
	position:		absolute;
	top:			17px;
	left:			7px;
	width:			5px;
	height:			10px;
	transform:		rotate(40deg);
	border-bottom:	3px solid #fff;
	border-right:	3px solid #fff;
}


.check_hidden {
	overflow:		hidden;
	visibility:		hidden;
	height:			0px;
}


/* ******************************************** */
/* 初期設定 */

/* 最短卒業日 ・合宿 */
#graduate_box {
	display:	none;
}

/* カレンダー */
#appli_calendar_box {
	display:	none;
}

/* 他校の情報 ・合宿 */
#otherschools_box {
	display:	none;
}

/* 来校時間 ・通学・スピード・A:student・B:plus */
#intime_box {
	display:	none;
}

/* 予約へ進む */
#submit_box {
	display:	none;
}

/* ******************************************** */
#entry_tbl {

}

#entry_tbl th {
	min-width:		100px;
}

#SkillWebformFileType2,
#SkillWebformFileType3 {
    padding: 4px 10px;
    margin-bottom: 20px;
    border-radius: 4px;
    font-size: 140%;
}

/* ******************************************** */
