/*
Last Updated: 2018-09-07
Author: minoura
*/

/*----------------------------------------
	全体
----------------------------------------*/

html{
	font-family:'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
	font-size:62.5%;
	color: #1b1b1b;
	-webkit-text-size-adjust:100%;
	line-height:1.5;
}
body{ font-size:1.4rem; font-size: 1.4em; }
img{ vertical-align: bottom; }
img{
	-webkit-backface-visibility: hidden !important;
}

a{ color:#0068b7; }
a:hover{ color:#1f97f2; }

.text_red{ color:#cc0000 !important; }
.text_red2{ color:#ff0000 !important; }
.text_white{ color:#fff !important; }
.text_purple{ color: #8679b7 !important; }
.text_pink{ color: #fb7386 !important; }
.text_yellow{ color:#f39800 !important; }
.text_green{ color:#18a362 !important; }
.text_blue{ color:#0078c2 !important; }
.text_black{ color: #000 !important; }
.text_gray{ color: #303030 !important; }
.text_gray2{ color: #434343 !important; }
.text_bold{ font-weight: bold !important; }
.text_normal{ font-weight: normal !important; }

.text_yu_go{ font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif; }
.text_yu_min{ font-family:'游明朝体', 'Yu Mincho', YuMincho, 'ヒラギノ明朝 Pro W3', 'Hiragino Mincho Pro','ＭＳ Ｐ明朝','ＭＳ 明朝',serif; }

.m_center{
	margin: 0 auto;
}



/*----------------------------------------
	画像を中央配置
----------------------------------------*/

.photo_frame{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 75% 0 0;
	background: #ddd;
}
.photo_frame img{
	width: 100%;
	height: auto !important;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}
.photo_frame img:not(:target){
	left: 0\9;
	top: 0\9;
}
.photo_frame img{
	left: 0\9;
	top: 0\9;
}
@media all and (-ms-high-contrast: none) {
.photo_frame img{
		left: 50%\9 !important;
		top: 50%\9 !important;
	}
}
.photo_frame{ z-index: 2; }/*chrome対策*/


/*----------------------------------------
	text
----------------------------------------*/

.text_8{ font-size:0.8rem !important; }
.text_9{ font-size:0.9rem !important; }
.text_10{ font-size:1.0rem !important; }
.text_11{ font-size:1.1rem !important; }
.text_12{ font-size:1.2rem !important; }
.text_13{ font-size:1.3rem !important; }
.text_14{ font-size:1.4rem !important; }
.text_15{ font-size:1.5rem !important; }
.lh_08{ line-height: 0.8 !important; }
.lh_12{ line-height: 1.2 !important; }
.lh_13{ line-height: 1.3 !important; }
.lh_14{ line-height: 1.4 !important; }

p{ line-height:1.7; }

@media print, screen and (min-width: 769px) {

	.text_16{ font-size:1.6rem !important; }
	.text_17{ font-size:1.7rem !important; }
	.text_18{ font-size:1.8rem !important; }
	.text_19{ font-size:1.9rem !important; }
	.text_20{ font-size:2.0rem !important; }
	.text_21{ font-size:2.1rem !important; }
	.text_22{ font-size:2.2rem !important; }
	.text_24{ font-size:2.4rem !important; }
	.text_26{ font-size:2.6rem !important; }
	.text_28{ font-size:2.8rem !important; }
	.text_30{ font-size:3.0rem !important; }
	.text_32{ font-size:3.2rem !important; }
	.text_36{ font-size:3.6rem !important; }
	.text_40{ font-size:4.0rem !important; }

	/*line-height*/
	.lh_15{ line-height: 1.5 !important; }
	.lh_16{ line-height: 1.6 !important; }
	.lh_17{ line-height: 1.7 !important; }
	.lh_18{ line-height: 1.8 !important; }
	.lh_19{ line-height: 1.9 !important; }
	.lh_20{ line-height: 2 !important; }
	.lh_21{ line-height: 2.1 !important; }
	.lh_22{ line-height: 2.2 !important; }
	.lh_23{ line-height: 2.3 !important; }
	.lh_24{ line-height: 2.4 !important; }
	.lh_25{ line-height: 2.5 !important; }

	/*letter-spacing*/
	.ls_-2{ letter-spacing: -2px; }
	.ls_-1{ letter-spacing: -1px; }
	.ls_1{ letter-spacing: 1px; }
	.ls_2{ letter-spacing: 2px; }
	.ls_3{ letter-spacing: 3px; }

}/*END*/

@media screen and (max-width: 768px){

	.text_16,
	.text_17,
	.text_18{
		font-size: 1.4rem;
	}
	.text_20,
	.text_19,
	{
		font-size: 1.5rem !important;
	}
	.text_21,
	.text_22{
		font-size: 1.6rem !important;
	}
	.text_24,
	.text_26,
	.text_28{
		font-size: 1.8rem !important;
	}
	.text_30,
	.text_32,
	.text_36,
	.text_40{
		font-size: 2rem !important;
	}

}/*END*/

@media screen and (max-width: 479px){

	.text_30,
	.text_32,
	.text_36,
	.text_40{
		font-size: 1.8rem !important;
	}

}/*END*/

li{ list-style:none; }
.center{ text-align:center !important; }
.text_left{ text-align:left; }
.text_right{ text-align:right; }
.left{ float:left; }
.right{ float:right; }

.clear{ clear:both; }
@media print, screen and (min-width: 769px) { .pc_clear{ clear:both; } }
@media screen and (max-width: 768px) { .tb_clear{ clear:both; } }
@media screen and (max-width: 479px) { .sp_clear{ clear:both; } }

.op:hover{
	filter: alpha(opacity=60);
	-moz-opacity:060;
	opacity:0.60;
}
@media print, screen and (min-width: 769px) {
	.op:hover{
		-webkit-transition: opacity 0.1s ease-out;
		-moz-transition: opacity 0.1s ease-out;
		-ms-transition: opacity 0.1s ease-out;
		transition: opacity 0.1s ease-out;
	}
}/*END*/

.shadow{
	box-shadow:rgba(0, 0, 0, 0.3) 0px 1px 2px 0;
	-webkit-box-shadow:rgba(0, 0, 0, 0.3) 0px 1px 2px 0;
	-moz-box-shadow:rgba(0, 0, 0, 0.3) 0px 1px 2px 0;
}

/*----------------------------------------
	共通
----------------------------------------*/

/*背景*/
.bg_beige{
	background: url("../images/common/bg_beige.jpg") center;
}
.bg_purple{
	position: relative;
	background: url("../images/common/bg_purple.gif") center top;
}
.bg_yellow{
	position: relative;
	background: url("../images/common/bg_yellow.gif") center top;
}
.bg_pink{
	position: relative;
	background: url("../images/common/bg_pink.gif") center top;
}
.bg_blue{
	position: relative;
	background: url("../images/common/bg_blue.gif") center top;
}
.bg_green{
	position: relative;
	background: url("../images/common/bg_green.gif") center top;
}
.bg_online{
	position: relative;
	background: url("../images/online/bg_online.jpg") center top;
}
/*タイトル*/
.ttl_purple,
.ttl_yellow,
.ttl_pink,
.ttl_blue,
.ttl_online,
.ttl_green{
	border-bottom-width: 2px;
	border-style: dotted;
	padding-bottom: 12px;
	line-height: 1.2;
}
.ttl_online img,
.ttl_purple img,
.ttl_yellow img,
.ttl_pink img,
.ttl_blue img,
.ttl_green img{
	width: 50px;
	margin-right: 15px;
	vertical-align: -12px;
}
.ttl_purple{
	color: #8679b7;
	border-color: #8f82bc;
}
.ttl_online{
	color: #296fc0;
	border-color: #296fc0;
}
.ttl_yellow{
	color: #f39800;
	border-color: #f39800;
}
.ttl_pink{
	color: #fb6e82;
	border-color: #fb6e82;
}
.ttl_blue{
	color: #0078c2;
	border-color: #0078c2;
}
.ttl_green{
	color: #0ba95f;
	border-color: #0ba95f;
}
.ttl_green span{ vertical-align: middle; }

/*見出し*/
.copy_purple,
.copy_online,
.copy_blue,
.copy_yellow,
.copy_green{
	padding-left: 18px;
	font-weight: bold;
	color: #303030;
	line-height: 1.4;
}

.copy_purple{ border-left: 5px solid #8f82bc; }
.copy_blue{ border-left: 5px solid #0078c2; }
.copy_green{ border-left: 5px solid #0ba95f; }
.copy_online{ border-left: 5px solid #296fc0; }
.copy_yellow{ border-left: 5px solid #; }

/*余白*/
.p3{
	padding-left: 3.3%;
	padding-right: 3.3%;
}
.p5{
	padding-left: 5%;
	padding-right: 5%;
}

/*その他*/
.arrow_down{
	position: absolute;
	bottom: -16px;
	left: 50%;
	display: block;
	margin-left: -17px;
}
.ws_n{ white-space: nowrap; }
.link_node a{
	text-decoration: none;
	color: inherit;
}
.pan_nav span{
	display: inline-block;
	padding-right: 10px;
	padding-left: 10px;
}
.pan_nav a:hover{ color: #999; }

/*border*/
.border_t{ border-top: 2px dotted #000; }
.border_b{ border-bottom: 2px dotted #000; }
.border_light{ border-bottom: 1px dotted #7f7f7f; }
.border_t_right{ border-top: 1px dotted #7f7f7f; }

/*アンカーリンク*/
.anchor ul{
	text-align: center;
}
.anchor li{
	display: inline-block;
	margin-left: 0.5%;
	margin-right: 0.5%;
	margin-bottom: 15px;
}

@media print, screen and (min-width:769px) and ( max-width:1120px) {

	/*アンカーリンク*/
	.anchor li{
		width: 30%;
		font-size: 1.5rem !important;
	}
	.anchor.al_4 li{ width: 22%; }
	.anchor.al_5 li{ width: 18%; }
	.anchor li a.btn{ width: 100% !important; }
	.anchor li a.text_16{ font-size: 1.5vw !important; }

}/*END*/

@media screen and (max-width: 768px) {

	/*タイトル*/
	.ttl_purple,
	.ttl_yellow,
	.ttl_pink,
	.ttl_green,
	.ttl_blue{
		padding-bottom: 10px;
	}
	.ttl_purple img,
	.ttl_yellow img,
	.ttl_pink img,
	.ttl_green img,
	.ttl_blue img{
		width: 36px;
		margin-right: 10px;
		vertical-align: -10px;
	}

	/*見出し*/
	.copy_purple{
		padding-left: 12px;
		line-height: 1.5;
	}

	/*その他*/
	.pan_nav{
		font-size: 1.1rem !important;
		padding: 6px 2.5% !important;
	}
	.arrow_down{
		height: 10px;
		bottom: -10px;
	}

	/*アンカーリンク*/
	.anchor li{
		margin-bottom: 12px;
		width: 100% !important;
		display: block;
		font-size: 1.4rem !important;
	}
	.anchor li a.btn{ width: 100% !important; }


}/*END*/

@media screen and (max-width: 479px) {

	/*タイトル*/
	.ttl_purple,
	.ttl_yellow,
	.ttl_pink,
	.ttl_green,
	.ttl_blue{
		padding-bottom: 6px;
	}
	.ttl_purple img,
	.ttl_yellow img,
	.ttl_pink img,
	.ttl_green img,
	.ttl_blue img{
		width: 30px;
		margin-right: 4px;
		vertical-align: -7px;
	}

	/*余白*/
	.p3{
		padding-left: 4%;
		padding-right: 4%;
	}

	/*その他*/
	.pan_nav{
		font-size: 1.0rem !important;
		padding: 6px 2.5% !important;
	}
	.pan_nav span{
		font-size: 0.8rem;
		padding-right: 5px;
		padding-left: 5px;
		vertical-align: 1px;
	}

}/*END*/


/*----------------------------------------
	layout
----------------------------------------*/

.inner_frame{
	width: 100%;
	position: relative;
	box-sizing: border-box;
}

@media print, screen and (min-width: 769px) {

	.narrow_frame,
	.inner_frame{
		padding-right: 1.5%;
		padding-left: 1.5%;
	}

}/*END*/

@media print, screen and (min-width: 920px) {

	.narrow_frame{
		width: 900px;
		padding-right: 20px;
		padding-left: 20px;
		margin-left: auto;
		margin-right: auto;
	}

}/*END*/

@media print, screen and (min-width: 1120px) {

	.inner_frame{
		width: 1100px;
		padding-right: 20px;
		padding-left: 20px;
		margin-right: auto;
		margin-left: auto;
	}

}/*END*/

@media screen and (max-width: 768px){

	.narrow_frame,
	.inner_frame{
		padding-right: 3.5%;
		padding-left: 3.5%;
	}

	.view .bg_beige .inner_frame,
	.price .bg_beige .inner_frame{
		padding-right: 2%;
		padding-left: 2%;
	}

}/*END*/

@media screen and (max-width: 479px){

	.narrow_frame,
	.inner_frame{
		padding-right: 4%;
		padding-left: 4%;
	}

}/*END*/

/*iframe比率維持*/
.map{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 70% 0 0;
	text-align: center;
}
.view .map{ padding: 45% 0 0; }
.map iframe{
	width: 100%;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 50%;
	-webkit-transform: translate3d(-50%, -50%, 0);
	-ms-transform: translate3d(-50%, -50%, 0);
	transform: translate3d(-50%, -50%, 0);
}
.map iframe:not(:target){
	left: 0\9;
	top: 0\9;
}
.map iframe{
	left: 0\9;
	top: 0\9;
}
@media all and (-ms-high-contrast: none) {
.map iframe{
		left: 50%\9 !important;
		top: 50%\9 !important;
	}
}
.map{ z-index: 2; }/*chrome対策*/


/*----------------------------------------
	box
----------------------------------------*/

.box_l{
	float: left;
	width: 48.11%;
	box-sizing: border-box;
}
.box_r{
	float: right;
	width: 48.11%;
	box-sizing: border-box;
}
.school_car .box_r{ width: 49.79%; }

.box2{ width: 32.24%; }
.box4{ width: 66.32%; }

.list_two,
.list_three,
.list_four,
.list_five{
	margin-left: -1.85%;
}
.list_two li,
.list_three li,
.list_four li,
.list_five li{
	position: relative;
	float: left;
	margin-bottom: 20px;
	box-sizing: border-box;
	margin-left: 1.85%;
}
.list_two li{ width: 48.14%; }
.list_four li{ width: 23.14%; }
.list_five li{ width: 18.15%; }

.list_two li a,
.list_three li a,
.list_four li a{
	text-decoration: none;
}

@media print, screen and (min-width: 769px) {

	.list_three li{ width: 31.48%; }
	.list_two li:nth-child(2n+1),
	.list_three li:nth-child(3n+1),
	.list_four li:nth-child(4n+1),
	.list_five li:nth-child(5n+1){
		clear: both;
	}

}/*END*/

@media screen and (max-width: 768px){


	.list_three li{ width: 48.14%; }
	.list_three li:nth-child(2n+1),
	.list_four li:nth-child(2n+1){
		clear: both;
	}
	.list_four li{
		width: 48.14%;
		margin-bottom: 20px;
	}

}/*END*/

@media screen and (max-width: 479px){

	.box_l,
	.box_r{
		float: none;
		width: 100%;
	}
	.box2,
	.box4{
		width: 100%;
	}
	.list_two,
	.list_three{
		margin-left:0;
	}
	.list_two li,
	.list_three li{
		float: none;
		width: 100%;
		margin-left:0;
	}
	.list_five li{
		width: 48.14%;
		margin-bottom: 20px;
	}
	.list_five li:nth-child(2n+1){
		clear: both;
	}


}/*END*/


/*----------------------------------------
	header
----------------------------------------*/

header{
	position: relative;
	width:100%;
	box-sizing: border-box;
}
header li a{ display: block; }
header h1{
	font-weight: normal;
	color: #737373;
	font-size: 1.0rem;
	line-height: 1.2;
}

@media print, screen and (min-width: 769px) {

	header{ padding-top: 8px; }
	.head_l{
		float: left;
		width: 41.5%;
	}
	.head_r{
		float: right;
		width: 50.94%;
		padding-top: 2px;
	}
	header h1{ padding-bottom: 22px; }
	.head_open{
		float: right;
		font-size: 1.1rem;
		color: #303030;
		margin-left: 12px;
		line-height: 1.4;
		padding-top: 14px;
	}
	.head_tel{
		display: block;
		float: right;
		width: 39.39%;
	}
	.head_r li{
		float: left;
		margin-left: 1.85%;
	}
	.hb01{ width: 29.62%; }
	.hb02{ width: 35.18%; }
	.hb03{ width: 29.62%; }
	nav{
		padding-top: 15px;
		padding-bottom: 15px;
	}
	nav ul{ border-left: 1px dotted #b2b2b2; }
	nav li{
		float: left;
		width: 16.6%;
		border-right: 1px dotted #b2b2b2;
		box-sizing: border-box;
	}
	nav li img{ width: 100%; }

}/*END*/

@media screen and (max-width: 768px){

	header .inner_frame{
		padding-right: 1.8%;
		padding-left: 2.2%;
	}
	header h1{
		padding-top: 10px;
		padding-bottom: 12px;
	}
	.head_l a{
		display: block;
		float: left;
		width: 75%;
		margin-bottom: 12px;
		max-width: 350px;
	}
	.sd-trigger{
		width: 22%;
		max-width: 106px;
		float: right;
		cursor: pointer;
		margin-bottom: 12px;
		padding-top: 2px;
	}
	#sd{ box-sizing: border-box; }
	#sd ul{
		margin-bottom: 0;
		border-top: 1px solid #dcdcdc;
	}
	#sd li{ position: relative; }
	#sd li img{ display: none; }
	#sd li a{
		display: block;
		text-decoration: none;
		padding: 18px 2% 18px 4%;
		color:#000;
		border-bottom: 1px solid #dcdcdc;
	}
	#sd li a:before{
		content:attr(data-label);
		color:#000;
	}
	#sd li a:hover,
	#sd li a:hover:before{
		color:#777;
	}

	/*ドロワーボタン*/
	.drawer_l{
		float: left;
		width: 49%;
	}
	.drawer_r{
		float: right;
		width: 49%;
	}

	/*ドロップダウン*/
	.drawer_dd ul{
		display: none;
		border-top: none !important;
	}
	.drawer_dd li a{ padding-left: 11% !important; }
	.drawer_dd{
		position: relative;
		padding: 20px 0 0 0;
		cursor: pointer;
	}
	.drawer_dd span{
		display: block;
		padding-left: 4%;
		padding-bottom: 18px;
		border-bottom: 1px solid #dcdcdc;
	}
	.drawer_dd.active{ border-bottom: none; }
	.drawer_dd.active span{ border-bottom: 1px solid #dcdcdc; }
	.drawer_dd.active .plus_icon span{ border-bottom: none; }

	/*ドロップダウン+ボタン開閉*/
	.plus_icon{
		background: #034693;
		border-radius: 2px;
	}
	.plus_icon{ background: #1a62b4; }
	.plus_icon,
	.plus_icon span{
		display: inline-block;
		transition: all .4s;
		box-sizing: border-box;
	}
	.plus_icon{
		position: absolute;
		width: 30px;
		height: 30px;
		right: 6px;
		top: 11px;
		cursor: pointer;
	}
	.plus_icon span{
		position: absolute;
		left: 7px;
		top: 0;
		width: 50%;
		height: 2px;
		background-color: #fff;
		padding: 0 !important;
	}
	.plus_icon span:nth-of-type(1){
		top: 14px;
		transform: rotate(0deg);
		-webkit-transform: rotate(0deg);
		-moz-transform: rotate(0deg);
		-ms-transform: rotate(0deg);
		-o-transform: rotate(0deg);
	}
	.plus_icon span:nth-of-type(2){
		top: 14px;
		transform: rotate(90deg);
		-webkit-transform: rotate(90deg);
		-moz-transform: rotate(90deg);
		-ms-transform: rotate(90deg);
		-o-transform: rotate(90deg);
	}
	.active .plus_icon span:nth-of-type(1){ display:none; }
	.active .plus_icon span:nth-of-type(2){
		top: 14px;
		transform: rotate(180deg);
		-webkit-transform: rotate(180deg);
		-moz-transform: rotate(180deg);
		-ms-transform: rotate(180deg);
		-o-transform: rotate(180deg);
	}

	/*スマホ4つボタン*/
	.sp_menu{
		clear: both;
		background: #ebebeb;
		border-bottom: 1px solid #fff;
	}
	.sp_menu li{
		list-style: none;
		float: left;
		border-left: 1px solid #fff;
		box-sizing: border-box;
		width: 25%;
		text-align: center;
	}
	.sp_menu li:first-child{ border-left: 1px solid #ebebeb; }
	.sp_menu li a{
		display: block;
		padding-top: 2px;
		padding-bottom: 6px;
	}

}/*END*/


/*----------------------------------------
	MV
----------------------------------------*/

#container{
	position: relative;
	overflow: hidden;
}
.under_mv{ position: relative; }
.mv_bg{
	position: relative;
	width: 100%;
}
.page_ttl{
	position: absolute;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	width: 45.45%;
}

@media print, screen and (min-width: 1120px) {

	.bx-viewport {
		overflow: visible !important;
		width: 640px !important;
	}
	.bxslider{
		list-style: none;
		margin: 0;
		padding: 0;
	}
	.bxslider li {
		width: 640px !important;
		margin: 0;
		padding: 0;
	}
	.page_ttl{ width: 500px; }

}/*END*/

@media screen and (max-width: 768px){

	.mv_bg{
		width: 150%;
		margin-left: -25%;
	}
	.page_ttl{ width: 50%; }

}/*END*/

@media screen and (max-width: 479px){

	.mv_bg{
		width: 220%;
		margin-left: -60%;
	}
	.page_ttl{ width: 70%; }

}/*END*/


/*----------------------------------------
	index.php
----------------------------------------*/

/*6つのポイント*/
.point{ background: url("../images/top/point_bg.jpg") no-repeat center bottom; }
.point ul{ margin-left: -2.75%; }
.point li{
	position: relative;
	float: left;
	width: 30.27%;
	background: #fff;
	border-radius: 5px;
	padding-bottom: 15px;
	box-shadow: 1px 1px 3px 0px #bbb;
	margin-left: 2.75%;
	margin-bottom: 30px;
	z-index: 2;
}
.point li img{ border-radius: 5px 5px 0 0; }
.point li h2,
.point li p{
	padding-left: 5%;
	padding-right: 5%;
}
.point_maru{
	position: absolute;
	left: -15px;
	top: -15px;
	width: 23.03%;
}
.point_deco01{
	position: absolute;
	top: -30px;
	left: -90px;
}
.point_deco02{
	position: absolute;
	top: 65px;
	right: -90px;
}

/*お知らせ系共通*/
.top_close,
.top_yoyaku,
.top_topics{
	position: relative;
	padding-left: 4%;
	padding-right: 4%;
}
.top_close h1,
.top_yoyaku h1,
.top_topics h1{
	position: relative;
	border-width: 0 0 2px 0;
	border-style: dotted;
	padding-bottom: 5px;
	margin-bottom: 10px;
}

/*お知らせ*/
.top_topics h1{ border-color: #18a362; }
.top_topics h1 a{
	position: absolute;
	right: 0;
	bottom: 27px;
	color: #434343;
	text-decoration: none;
	font-weight: normal;
}
.top_topics h1 a img{
	width: 6px;
	margin-right: 8px;
	vertical-align: middle;
}
.top_topics h1 a:hover{ color: #18a362; }
.top_topics li{
	line-height: 2;
	padding-top: 13px;
	padding-bottom: 13px;
	border-bottom: 1px dotted #959595;
}
.top_topics li a{
	text-decoration: none;
	color: #434343;
}
.top_topics .entry_date{
	font-weight: bold;
	display: block;
}
.top_topics li .cat_label{ margin-left: 7px; }


/*最短予約可能日*/
.top_yoyaku h1{ border-color: #0078c2; }
.top_yoyaku table{
	margin-top: 20px;
	line-height: 2;
	width: 100%;
}
.top_yoyaku tr:nth-child(odd) th,
.top_yoyaku tr:nth-child(odd) td{
	background: #ebf4fa;
}
.top_yoyaku th{
	font-weight: normal;
	padding: 10px 0 10px 4%;
	text-align: left;
}
.top_yoyaku td{
	text-align: right;
	padding-right: 4%;
}
.top_yoyaku .date{
	font-size: 2.1rem;
	color: #034693;
	font-weight: bold;
}
.top_yoyaku a:hover{ text-decoration: underline; }
.point_deco03{
	position: absolute;
	top: -23px;
	right: -30px;
}

.weekday,
.saturday,
.sunday{
	display: inline-block;
	border-radius: 50%;
	font-weight: bold;
	font-size: 1.3rem;
	box-sizing: border-box;
	width: 22px;
	height: 22px;
	text-align: center;
	vertical-align: 2px;
	line-height: 1 !important;
	margin-left: 5px;
	padding-top: 5px;
}
.sunday{
	color: #fff;
	background: #c93b29;
}
.saturday{
	color: #fff;
	background: #034693;
}
.weekday{
	color: #303030;
	background: #dbdbdb;
}

/*休校日*/
.top_close h1{ border-color: #fb6e82; }
.top_close p{
	padding-left: 4%;
	padding-top: 10px;
}

@media print, screen and (min-width: 769px) {

	.point{ background-size: 100%; }

	/*最短予約可能日*/
	.top_yoyaku p{
		width: 85%;
		margin-left: auto;
		margin-right: auto;
	}

}/*END*/

@media screen and (max-width: 768px){

	.point{ background-size: cover; }
	.point ul{ margin-left: -3%; }
	.point li{
		width: 47%;
		margin-left: 3%;
	}
	.point li:nth-child(2n+1){ clear: both; }


	/*お知らせ系共通*/
	.top_close,
	.top_yoyaku,
	.top_topics{
		padding-left: 3%;
		padding-right: 3%;
	}

	/*最短予約可能日*/
	.point_deco03{
		width: 90px;
		top: -10px;
		right: -5px;
	}
	.top_yoyaku .date{
		display: inline-block;
		padding-left: 2px;
		padding-right: 2px;
	}

}/*END*/

@media screen and (max-width: 479px){

	.point ul{ margin-left: 0; }
	.point li{
		float: none;
		width: 100%;
		margin-left: 0;
	}

	/*お知らせ*/
	.top_topics h1 a{
		font-size: 1.2rem;
		bottom: 18px;
	}

	/*最短予約可能日*/
	.top_yoyaku .date{ font-size: 1.8rem; }
	.top_yoyaku table{ line-height: 1.4; }
	.top_yoyaku th,
	.top_yoyaku td{
		display: block;
		text-align: left;
	}
	.top_yoyaku th{
		padding-top: 13px;
		padding-bottom: 0;
	}
	.top_yoyaku td{
		padding-left: 4%;
		padding-bottom: 10px;
	}
	.weekday,
	.saturday,
	.sunday{
		font-size: 1.2rem;
	}

}/*END*/

/*各リンク（青）*/
.top_link{ background: url("../images/top/top_link_bg.gif") center; }
.top_link li{
	background: #fff;
	border-radius: 5px;
	box-shadow: 1px 1px 3px 0px #2b69b0;
}
.top_link li:hover{ box-shadow: 3px 3px 3px 0px #0d3d74; }
.top_link li img{ border-radius: 5px 5px 0 0; }
.top_link li a p{
	color: #434343;
	padding: 8px 5% 18px 5%;
}


/*----------------------------------------
	カテゴリ
----------------------------------------*/

/*基本*/
.cat_label{
	display: inline-block;
	line-height: 1 !important;
	text-align: center;
	padding-top: 4px;
	padding-bottom: 4px;
	font-size: 1.1rem;
	text-decoration: none;
	width: 70px;
	color: #fff;
	border-radius: 2px;
	font-weight: normal !important;
	vertical-align: middle;
}

/*キャンペーン*/
.cat_yellow{ background: #f39800; }

/*お知らせ*/
.cat_blue{ background: #0068b7; }

/*重要*/
.cat_red{ background: #da3c27; }

/*学科日程表*/
.cat_green{ background: #058c4d; }

/*NEW*/
.new{
	display: inline-block;
	position: relative;
	color: #cc0000;
	padding-left: 10px;
	font-weight: bold;
	font-family:'游ゴシック体', 'Yu Gothic', YuGothic,'メイリオ',Meiryo,'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ ゴシック',sans-serif;
}


/*----------------------------------------
	price
----------------------------------------*/

#price1 .box_l,
#price1 .box_r{
	font-size: 1.8rem;
}
.daytime,
.freetime{
	position: relative;
	padding-left: 4%;
	min-height: 200px;
	box-sizing: border-box;
}
.daytime h4 img,
.freetime h4 img{
	position: absolute;
	top: -20px;
	margin: auto;
	left: 0;
	right: 0;
}
.daytime li,
.freetime li{
	line-height: 1.4;
	padding-left: 30px;
}
.daytime li{
	background: url("../images/price/check_pink.gif") left top no-repeat;
	background-size: 23px;
}
.freetime li{
	background: url("../images/price/check_purple.gif") left top no-repeat;
	background-size: 23px;
}
.basic_img{
	position: absolute;
	right: 10px;
	bottom: 0;
}
.price table{
	width: 100%;
	line-height: 1.4;
	font-size: 1.6rem;
}
.price th,
.price td{
	padding: 8px 1%;
	text-align: center;
	box-sizing: border-box;
}
.table_purple th{
	background: url("../images/common/bg_purple.gif") center top;
	color: #fff;
}
.table_pink th{
	background: url("../images/common/bg_pink.gif") center top;
	color: #fff;
}
.table_green th{
	background: url("../images/common/bg_green.gif") center top;
	color: #fff;
}
.table_purple th,
.table_purple td{
	border: 2px solid #9386be;
}
.table_pink th,
.table_pink td{
	border: 2px solid #fb6e82;
}
.table_green th,
.table_green td{
	border: 2px solid #18a362;
}
.price .item{ font-weight: bold; }
.table_purple .item{
	background: #eeecf4;
	color: #8679b7;
}
.table_pink .item{
	background: #faf0f1;
	color: #fb6e82;
}
.table_green .item{
	background: #eff3f1;
	color: #18a362;
}
.price_table{
	color: #cc0000;
	line-height: 1;
	font-weight: bold;
}
.price_table span{
	color: #434343;
	font-size: 1.1rem;
	font-weight: normal;
}
.yusen li{
	position: relative;
	font-size: 1.8rem;
}
.yusen li img{
	position: absolute;
	top: -20px;
	left: 0;
	right: 0;
	margin: auto;
}

@media print, screen and (min-width:769px) and ( max-width:1119px) {

	.price table{ font-size: 1.5rem; }
	#price1 .box_l,
	#price1 .box_r{
		font-size: 1.6rem;
	}
	.yusen li{ font-size: 1.6rem; }

}/*END*/

@media screen and (max-width: 768px){

	.price table{ font-size: 1.4rem; }
	.price th,
	.price td{
		padding: 6px 1.5%;
	}
	#price1 .box_l{ float: left; }
	#price1 .box_r{ float: right; }
	#price1 .box_l,
	#price1 .box_r{
		font-size: 1.5rem;
		width: 48.11%;
	}
	.daytime li,
	.freetime li{
		padding-left: 26px;
		line-height: 1.6;
	}
	.daytime ul{ margin-bottom: 20px; }
	.basic_img{
		position: static;
		float: right;
		margin-right: 5%;
		margin-bottom: -16px;
		display: block;
		width: auto !important;
		height: 150px;
	}
	.daytime li,
	.freetime li{
		background-size: 18px;
		background-position: left top 3px;
	}
	.price_table{ line-height: 1.3; }
	.yusen li{
		width: 31.48%;
		font-size: 1.4rem;
	}
	.yusen li:nth-child(2n+1){ clear: none; }
	.yusen li img{ top: -10px; }

}/*END*/

@media screen and (max-width: 479px){

	.price table{ font-size: 1.2rem; }
	#price1 .box_l,
	#price1 .box_r{
		font-size: 1.4rem;
		float: none;
		width: 100%;
	}
	.daytime ul{ margin-bottom: 0; }
	.daytime{
		margin-bottom: 20px;
		margin-top: 30px;
	}
	.daytime h4 img,
	.freetime h4 img{
		top: -16px;
	}
	.price_table span{ font-size: 1.0rem; }
	.yusen li{
		width: 100%;
		margin-bottom: 25px;
	}
	.yusen li img{ top: -14px; }
	.yusen .p_t35{ padding-top: 30px !important; }

	/*テーブル調整（基本料金）*/
	.base_table{
		border-right: 2px solid #9386be;
		border-bottom: 2px solid #9386be;
		border-left: 2px solid #9386be;
	}
	.base_table thead{ display: none; }
	.base_table td.item{
		border-right: none;
		border-left: none;
		background: url("../images/common/bg_purple.gif") center top;
		color: #fff;
	}
	.base_table td{
		display: block;
		padding: 6px 3%;
	}
	.base_table td.item:before{ content: attr(data-title) "："; }
	.base_table td.bt_01:before,
	.base_table td.bt_02:before{
		content: attr(data-title) "：";
	}
	.base_table td.bt_03:before{
		content: attr(data-title) "　";
		color: #434343;
		font-weight: normal;
	}
	.base_table_pink{
		border-right: 2px solid #fb6e82;
		border-bottom: 2px solid #fb6e82;
		border-left: 2px solid #fb6e82;
	}
	.base_table_pink thead{
		display: none;
	}
	.base_table_pink td.item{
		border: 2px solid #fb6e82;
		background: url("../images/common/bg_pink.gif") center top;
		color: #fff;
	}
	.base_table_pink td{
		display: block;
		padding: 6px 3%;
	}
	.base_table_pink td.item:before{ content: attr(data-title) ; }
	.base_table_pink td.bt_05:before,
	.base_table_pink td.bt_06:before{
		content: attr(data-title) "：";
	}

	.base_table_green{
		border-right: 2px solid #18a362;
		border-bottom: 2px solid #18a362;
		border-left: 2px solid #18a362;
	}
	.base_table_green thead{ display: none; }
	.base_table_green td.item{
		border: 2px solid #18a362;
		background: url("../images/common/bg_green.gif") center top;
		color: #fff;
	}
	.base_table_green td{
		display: block;
		padding: 6px 3%;
	}
	.base_table_green td.item:before{ content: attr(data-title) ; }
	.base_table_green td.bt_05:before,
	.base_table_green td.bt_06:before{
		content: attr(data-title) "：";
	}

	td.bt_01{
		border: none;
		float: left;
		width: 50%;
		text-align: right;
		color: #8679b7;
		background: #eeecf4;
		font-weight: bold;
	}
	td.bt_02{
		border: none;
		float: left;
		width: 50%;
		text-align: left;
		color: #8679b7;
		background: #eeecf4;
		font-weight: bold;
	}
	td.bt_03{
		clear: both;
		border: none;
		text-align: right;
	}
	td.bt_04{
		clear: both;
		border: none;
		text-align: center;
	}
	td.bt_05{
		border: none;
		float: left;
		width: 50%;
		text-align: right;
	}
	td.bt_06{
		border: none;
		float: left;
		width: 50%;
		text-align: left;
	}
	td.bt_07{
		border: none;
		text-align: center;
		color: #fb6e82;
		background: #faf0f1;
		font-weight: bold;
	}
	td.bt_08{
		border: none;
		text-align: center;
		color: #18a362;
		background: #e6f5f1;
		font-weight: bold;
	}

	/*テーブル調整（その他、補習料・キャンセル料など）*/
	.other_table{
		border-right: 2px solid #9386be;
		border-bottom: 2px solid #9386be;
		border-left: 2px solid #9386be;
	}
	.other_table thead{ display: none; }
	.other_table td.item{
		border-right: none;
		border-left: none;
		background: url("../images/common/bg_purple.gif") center top;
		color: #fff;
	}
	.other_table td{
		display: block;
		padding: 6px 3%;
	}
	td.ot_01{
		text-align: left !important;
		border: none;
		color: #8679b7;
		background: #eeecf4;
		font-weight: bold;
	}
	td.ot_02{
		text-align: left !important;
		float: left;
		border: none;
	}
	td.ot_03{
		text-align: right !important;
		float: right;
		border: none;
	}

}/*END*/


/*----------------------------------------
	campaign
----------------------------------------*/

.campaign_frame{ text-align: center; }
.campaign_img{ max-width: 100%; }
.college_list{
	box-sizing: border-box;
	background: #f5f5f5;
	padding-left: 3.5%;
	padding-right: 3.5%;
}
.college_list li{
	line-height: 1.5;
	color: #000;
	box-sizing: border-box;
	margin-bottom: 4px;
}
.college_list li:before{
	content: "●";
	color: #fb6e82;
	font-size: 1.1rem;
	margin-right: 5px;
	vertical-align: 1px;
	display: inline-block;
}
.college_list h3{
	border-left: 5px solid #fb6e82;
	padding-left: 12px;
	line-height: 1.6;
}

@media print, screen and (min-width: 960px) {

	.college_list li{
		float: left;
		width: 50%;
		padding-right: 2%;
		margin-bottom: 8px;
	}

}/*END*/


/*----------------------------------------
	access bus
----------------------------------------*/

.root_anchor{
	background: #f5f5f5;
	padding-left: 2%;
	padding-right: 2%;
}
.root_anchor li{
	display: inline-block;
	line-height: 1.8;
}
.root_anchor li:after{
	content: "｜";
	color: #0068b7;
	padding-left: 12px;
	margin-right: 12px;
}
.root_anchor li:last-child:after{ content: none; }
.root_anchor a{ text-decoration: none; }

/*時刻表リスト*/
#time_table{ margin-left: -1%; }
#time_table li{
	float: left;
	width: 49%;
	margin-left: 1%;
	background: #ebebeb;
	font-weight: bold;
	margin-bottom: 5px;
	line-height: 1.5;
	box-sizing: border-box;
}
#time_table li a{
	display: block;
	text-decoration: none;
	color: #111;
	padding: 15px 3% 15px 4%;
}
#time_table li span{
	display: inline-block;
	line-height: 1 !important;
	color: #fff;
	background: #f39700;
	box-sizing: border-box;
	width: 28px;
	height: 28px;
	border-radius: 50%;
	text-align: center;
	vertical-align: middle;
	padding-top: 7px;
	margin-right: 10px;
	letter-spacing: 0 !important;
	font-size: 1.5rem !important
}

@media screen and (max-width: 768px){

	/*時刻表リスト*/
	#time_table{ margin-left: 0; }
	#time_table li{
		float: none;
		width: 100%;
		margin-left: 0;
	}

}/*END*/

@media screen and (max-width: 479px){

	.root_anchor li{ display: block; }
	.root_anchor li:after{ content: none; }

}/*END*/


/*----------------------------------------
	topics
----------------------------------------*/

.topics .cat_label{ margin-left: 7px; }
.topics .content_box img{
	max-width: 100% !important;
	height: auto !important;
}
.pager{
	position: relative;
	overflow: hidden;
	margin-bottom: 30px;
}
.pager ul{
	position: relative;
	float: left;
	left: 50%;
}
.pager li{
	position: relative;
	float: left;
	left: -50%;
	color: #034693;
	list-style: none;
	font-weight: bold;
}
.pager li a,
.pager li.cr{
	display: inline-block;
	margin-right: 8px;
	text-align: center;
	border-radius: 4px;
	width: 38px;
	padding-top: 11px;
	padding-bottom: 11px;
}
.pager li a{
	background: #d8eaff;
	color: #034693;
	text-decoration: none;
	border: 3px solid #d8eaff;
}
.pager li.cr{
	background: #fff;
	border: 3px solid #034693;
}
.pager li.i_btn a,
.pager li.i_btn a:hover{
	color: #fff;
	background: #034693;
	border: 3px solid #034693;
	padding-top: 8px;
}
.pager li a:hover{
	background: #fff;
	border: 3px solid #034693;
}
.pager li.i_btn img{ width: 6px; }

@media screen and (max-width: 479px){

	.pager li{ font-size: 1.1rem; }
	.pager li a,
	.pager li.cr{
		width: 26px;
		padding-top: 7px;
		padding-bottom: 7px;
	}
	.pager li a.prev,
	.pager li a.next{
		width: 50px;
	}
	.pager li a.prev{ margin-right: 4px; }
	.pager li a.next{ margin-left: 0; }

}/*END*/


/*----------------------------------------
	privacy
----------------------------------------*/

.privacy ol{
	padding-left: 2%;
	line-height: 1.8;
}
.privacy ol ol{
	padding-left: 2%;
	padding-top: 20px;
}
.privacy li{
	list-style: decimal;
	margin-bottom: 20px;
}
.privacy li li{
	margin-bottom: 0;
}
.privacy p{
	background: #eee;
	padding: 20px 2%;
}




/*----------------------------------------
	sitemap
----------------------------------------*/

.sitemap ul{
	float: left;
	width: 20%;
}
.sitemap li a{
	text-decoration: none;
	color: inherit;
	line-height: 2;
	margin-left: 15px;
	display: block;
}
.sitemap li.l_menu a{
	background:url("../images/common/arrow_gray.png") center left no-repeat;
	background-size: 6px;
	padding-left: 12px;
	line-height: 3;
	margin-left: 0;
}
.sitemap li a:hover{
	color: #0068b7;
}

@media screen and (max-width: 980px){

	.sitemap ul{
		width: 100%;
		margin-bottom: 20px;
	}

}/*END*/


/*----------------------------------------
	faq
----------------------------------------*/

.faq dl{
	line-height: 1.8;
}
.faq dt{
	margin-bottom: 14px;
}
.faq dd{
	background: #e9f3ff;
	padding: 15px 2%;
}
.faq .copy_blue{
	padding-left: 12px;
}


/*----------------------------------------
	class
----------------------------------------*/

table.class{
	width: 100%;
	line-height: 1.8;
}
table.class th,
table.class td{
	padding: 8px 2%;
	box-sizing: border-box;
	border: 2px solid #9386be;
}
table.class .item{
	background: #eeecf4;
	color: #8679b7;
	font-weight: bold;
	text-align: center;
}
table.class .bg_dark{
	background: url("../images/common/bg_purple.gif") center top;
	color: #fff;
}
ol.list{
	margin-left: 23px;
	line-height: 1.8;
}
ol.list li{
	list-style: decimal;
}
.kigyou_menu{
	position: relative;
	border: 3px solid #8679b7;
	border-radius: 5px;
	padding-right: 4%;
	padding-left: 4%;
	box-shadow: 6px 6px 0px 0px #eeecf4;
}
.kigyou_menu li{
	background: url("../images/class/check_purple.gif") left top no-repeat;
	background-size: 23px;
	line-height: 1.4;
	padding-left: 30px;
	box-sizing: border-box;
	margin-bottom: 30px;
}
.kigyou_menu li span{
	color: #1b1b1b;
	display: inline-block;
	line-height: 1.8 !important;
}
.kigyou_menu  h3 img{
	position: absolute;
	top: -20px;
	left: 0;
	right: 0;
	margin: auto;
	width: 22%;
}
.kigyou_anchor{
	background: #f5f5f5;
	width: 100%;
	text-align: center;
}
.kigyou_anchor li a{
	text-decoration: none;
}
.kigyou table{
	width: 100%;
	line-height: 1.4;
}
.kigyou th,
.kigyou td{
	padding: 10px 2%;
	text-align: center;
	box-sizing: border-box;
}
.kigyou .item{
	font-weight: bold;
}
.kigyou td{
	min-width: 100px;
}

@media print, screen and (min-width: 769px) {

	.kigyou_menu ul{
		width: 50%;
		float: left;
	}
	.kigyou_anchor li{
		display: inline-block;
		margin-bottom: 20px;
	}
	.kigyou_anchor li:after{
		content: "｜";
		padding-left: 10px;
		margin-right: 3px;
	}
	.kigyou_anchor li:last-child:after{
		content: none;
	}

}/*END*/

@media screen and (max-width: 768px){

	.kigyou_anchor{
		padding-bottom: 15px;
	}
	.kigyou_anchor li{
		line-height: 1.8;
	}

}/*END*/

@media screen and (max-width: 479px){

	.sp_table{ border-top: 2px solid #9386be; }
	.sp_table th,
	.sp_table td{
		display: block;
		border-top: none !important;
	}

}/*END*/


/*----------------------------------------
	school_car
----------------------------------------*/

.car_data{
	width: 100%;
	line-height: 1.6;
}
.car_data th,
.car_data td{
	border-bottom: 2px dotted #e69000;
	text-align: left;
	padding-top: 8px;
	padding-bottom: 8px;
}
.car_data th{
	color: #e69000;
	width: 45%;
}
.car_data td{
	width: 55%;
}

.one_point_frame{
	position: relative;
	background: #fff6e7;
	border: 3px solid #f39800;
	border-radius: 5px;
	padding-right: 4%;
	padding-left: 4%;
	box-shadow: 6px 6px 0px 0px #ebedf0;
}
.one_point_frame p{
	width: 72%;
}
.one_point_ttl{
	position: absolute;
	width: 23.78%;
	top: -20px;
	left: 4%;
}
.one_point_img{
	position: absolute;
	width: 29.47%;
	right: 0;
	bottom: 0;
}


/*----------------------------------------
	information
----------------------------------------*/

.btn img{
	width: 20px;
	vertical-align: -5px;
	margin-right: 10px;
}
.table_blue.time_table{
	text-align: center !important;
}
.table_blue.time_table th{
	text-align: center !important;
	background: url("../images/common/bg_blue.gif") center top !important;
	color: #fff;
}
.table_blue.time_table td:first-child,
.table_blue.time_table td:nth-child(3){
	background: #e9f3ff;
	color: #296fc0;
	font-weight: bold;
	width: 15%;
}
td.free_time{
	background: #cbd4ff !important;
}

@media print, screen and (min-width: 769px) {

	.info .table_blue th,
	.info .table_blue td{
		padding: 12px 2.5% !important;
	}


}/*END*/

@media screen and (max-width: 768px){

	.info .table_blue{
		font-size: 1.4rem !important;
	}
	.table_blue.time_table{
		display: table !important;
	}
	.table_blue.time_table th,
	.table_blue.time_table td{
		display: table-cell !important;
	}
	.table_blue.time_table th.tb_none,
	.table_blue.time_table td.tb_none{
		display: none !important;
	}
	.table_blue.time_table td:first-child,
	.table_blue.time_table td:nth-child(3){
		width: auto;
	}

}/*END*/


/*----------------------------------------
	student_menu
----------------------------------------*/

.notes_frame{
	position: relative;
	border: 3px solid #da3c27;
	border-radius: 5px;
	padding-right: 4%;
	padding-left: 4%;
	box-shadow: 6px 6px 0px 0px #ffe3df;
	color: #303030;
}
.notes_ttl{
	position: absolute;
	width: 33.5%;
	top: -20px;
	left: 4%;
}

/*----------------------------------------
	contact
----------------------------------------*/

.table_blue{
	line-height: 1.6;
	width: 100%;
	font-size: 1.6rem;
}
.table_blue th,
.table_blue td{
	border: 2px solid #296fc0;
	padding: 22px 2.5%;
	box-sizing: border-box;
}
.table_blue th{
	background: #e9f3ff;
	text-align: left;
	color: #296fc0;
}
.table_blue td table{
	width: 100%;
}
.table_blue td th,
.table_blue td td{
	border: none;
	padding: 0;
	padding-top: 13px;
}
.table_blue td tr:first-child th,
.table_blue td tr:first-child td{
	padding-top: 0;
}
.table_blue td th{
	color: #1b1b1b;
	background: none;
	font-weight: normal;
	width: auto;
	font-size: 1.4rem;
	padding-right: 20px;
}

.hissu{
	display: inline-block;
	color: #fff;
	background: #ff9b00;
	padding: 4px 10px;
	margin-left: 10px;
	font-size: 1.1rem;
	line-height: 1;
	vertical-align: middle;
}
.contact_type{
	border-left: 5px solid #296fc0;
	padding-left: 15px;
}
span.error{
	display: block;
	color: #cc0000;
	font-size: 1.4rem;
	padding-top: 8px;
}
.error_list{
	color: #cc0000;
	padding: 15px 3%;
	margin-bottom: 30px;
	background: #ffecec;
}
div.error,
td.error{
	background: #ffecec;
}


select,
textarea,
.contact input[type="text"],
input[type="tel"]{
	border: 1px solid #b2b2b2;
	padding: 12px 18px;
	box-sizing: border-box;
	font-family:"メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	-webkit-appearance: none;
	font-size: 1.6rem;
}
input::-webkit-input-placeholder{ color: #999; }
input::-moz-placeholder{ color: #999; }
input::-placeholder{ color: #999; }

.form1{ width: 80px; }
.form2{ width: 360px; }
.form3{ width: 100%; }
.form4{ width: 150px; }



@media print, screen and (min-width: 769px) {

	.table_blue th{
		width: 300px;
	}
	.contact_course div{
		float: left;
		margin-right: 20px;
	}


}/*END*/

@media screen and (max-width: 768px){

	.table_blue{
		border-top: 2px solid #296fc0;
	}
	.table_blue th,
	.table_blue td{
		display: block;
		border-top: none;
		padding: 12px 3.5%;
	}
	.table_blue th{
		padding: 8px 3.5%;
	}
	.table_blue td td{
		padding-top: 0;
	}

	.form2{
		width: 100%;
	}

}/*END*/



/*----------------------------------------
	radio checkbox
----------------------------------------*/

.radio input[type="radio"],
.check input[type="checkbox"]{
	display: none;
}
.radio label,
.check label{
	display: inline-block;
	position: relative;
	cursor: pointer;
	margin-left: 10px;
	padding: 11px 0 11px 25px;
	line-height: 1.2;
}
.radio label:before,
.check label:before{
	position: absolute;
	content: "";
	top: 50%;
	left: -10px;
	width: 24px;
	height: 24px;
	margin-top: -15px;
	background: #fff;
	border: 3px solid #999;
	border-radius: 50%;
}
.check label:before{
	width: 21px;
	height: 21px;
}
.check label:before{ border-radius: 0; }
.radio label,
.check label{
	margin-left: 0\9;
	padding: 11px\9;
}
.radio label:not(:target),
.check label:not(:target){
	margin-left: 10px\9;
	padding: 11px 0 11px 25px\9;
}
.radio label:before,
.check label:before{
	display: none\9;
}
.radio label:not(:target):before,
.check label:not(:target):before{
	display: inline-block\9;
}
.radio input[type="radio"]:checked + label:after{
	position: absolute;
	content: "";
	top: 50%;
	left: -4px;
	width: 18px;
	height: 18px;
	margin-top: -9px;
	border-radius: 50%;
	background: #296fc0;
}
.check input[type="checkbox"]:checked + label::after {
	content: "";
	position: absolute;
	top: 50%;
	box-sizing: border-box;
	display: block;
}
.check input[type="checkbox"]:checked + label::after {
	left: -4px;
	width: 27px;
	height: 16px;
	margin-top: -15px;
	border-left: 8px solid #296fc0;
	border-bottom: 8px solid #296fc0;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}


/*----------------------------------------
	price_simulation.php
----------------------------------------*/

.price_simulation input{
	display: none;
}

.select_blue,
.select_red,
.select_green,
.select_yellow,
.select_orange,
.select_pink{
	display: inline-block;
	padding: 18px 20px 18px 55px;
	box-sizing: border-box;
	line-height: 1.4;
	background-size: 34px;
	border-radius: 3px;
}
.select_pink{
	background: url("../images/simulation/radio_off.png") left 15px center no-repeat #ffe9ea;
	background-size: 34px;
	width: 220px;
}
.select_pink.checked{
	background: url("../images/simulation/radio_on.png") left 15px center no-repeat #ffabb0;
	background-size: 34px;
}
.select_orange{
	background: url("../images/simulation/radio_off.png") left 15px center no-repeat #ffe9c5;
	background-size: 34px;
}
.select_orange.checked{
	background: url("../images/simulation/radio_on.png") left 15px center no-repeat #fdc465;
	background-size: 34px;
}
.select_yellow{
	background: url("../images/simulation/radio_off.png") left 15px center no-repeat #fff4c9;
	background-size: 34px;
}
.select_yellow.checked{
	background: url("../images/simulation/radio_on.png") left 15px center no-repeat #f3d661;
	background-size: 34px;
}
.select_green{
	background: url("../images/simulation/radio_off.png") left 15px center no-repeat #eaf7c6;
	background-size: 34px;
}
.select_green.checked{
	background: url("../images/simulation/radio_on.png") left 15px center no-repeat #b9db5b;
	background-size: 34px;
}
.select_red{
	background: url("../images/simulation/radio_off.png") left 15px center no-repeat #ffdfce;
	background-size: 34px;
}
.select_red.checked{
	background: url("../images/simulation/radio_on.png") left 15px center no-repeat #fea879;
	background-size: 34px;
}
.select_blue{
	background: url("../images/simulation/radio_off.png") left 15px center no-repeat #dbf3f2;
	background-size: 34px;
}
.select_blue.checked{
	background: url("../images/simulation/radio_on.png") left 15px center no-repeat #6cdcd8;
	background-size: 34px;
}

.simulation_att{
	background:#eee;
	border-radius:5px;
	font-size:1.2rem;
	padding:15px 20px;
}


@media print, screen and (min-width: 480px) {

	.select_pink{
		margin-right: 10px;
	}

}/*END*/

@media print, screen and (min-width: 769px) {

	.price_simulation label span{ margin-left: 8px; }

	.sl_l{
		float: left;
		width: 240px;
	}
	.sl_r{
		float: left;
	}

	.select_blue,
	.select_red{
		width: 480px;
	}
	.select_green,
	.select_orange,
	.select_yellow{
		width: 560px;
	}


}/*END*/

@media screen and (max-width: 799px){

	.select_pink{
		display: block;
		margin-bottom: 10px;
	}
	.select_green,
	.select_yellow,
	.select_orange,
	.select_blue,
	.select_red{
		width: 100%;
	}


}/*END*/

@media screen and (max-width: 768px){

	.select_pink{
		width: 60%;
	}

}/*END*/

@media screen and (max-width: 479px){

	.price_simulation label span{ display: block; }
	.select_blue,
	.select_red,
	.select_green,
	.select_yellow,
	.select_orange{
		display: block;
	}
	.select_pink{
		width: 80%;
	}

}/*END*/



/*窓*/
#calculation_normal,
#calculation_cam{
	position:fixed;
	bottom:0;
	left:0;
	width:100%;
	background:#8f82bc;
	z-index:1;
	overflow:hidden;
	box-shadow:rgba(0, 0, 0, 0.2) 0px -1px 3px 0;
}
.cal_in{
	background: #fff;
	margin-top: 10px;
	margin-bottom: 10px;
	border-radius: 5px;
	padding: 12px 1% 0 1%;
}
#calculation_cam .cal_in{ padding-bottom: 12px; }
.cam .arrow{
	color:#da3c27;
}
.cal_l{
	text-align:center;
}


.cal_l p{
	line-height: 1;
}
.cal_l .arrow{
	font-size: 1.2rem;
	margin-bottom: 2px;
}


.cal_ttl{
	font-size: 1.6rem;
	color: #7060ac;
	font-weight: bold;
	padding-top: 3px;
}
.cal_ttl span{
	font-size: 1.2rem;
}
.cal_att{
	font-size: 1.1rem;
	line-height: 1.3 !important;
	color: #777;
	padding-top: 3px;
}
.cal_price{
	font-size: 1.7rem;
	margin:-2px 0 2px 0;
}
.cal_price span{
	font-size: 4.2rem;
	font-weight:bold;
	color: #da3c27;
}
.cal_in table{
	font-size: 1.2rem;
	width:100%;
}
.cal_in th,
.cal_in td{
	border-bottom:1px solid #cfc7ed;
	padding-left: 8px;
	padding-right: 8px;
	text-align:left;
	line-height: 1.7;
}
.uchiwake td.add,
.cal_in td.add{
	text-align:right;
}
.cam_ttl{
	text-align:center;
	background:#da3c27;
	clear:both;
	border-radius:5px 5px 0 0;
	font-size:1.2rem;
	box-sizing: border-box;
	color:#fff;
	font-weight:bold;
	padding:3px 0 0 0;
}
.cam_text{
	clear:both;
	text-align:center;
	background:#fff45c;
	box-sizing: border-box;
	border-radius: 5px;
	border:3px solid #da3c27;
	font-size: 1.2rem;
	padding:4px 0 2px 0;
}
.ussura{
	filter: alpha(opacity=30);
	-moz-opacity:030;
	opacity:0.30;
}
.print_data,
.print_att{
	display:none;
}

@media print, screen and (min-width: 769px) {

	.cal_r .modal-content{ display: block !important; }
	.cal_l{
		float:left;
		width: 38%;
		margin-bottom: 8px;
	}
	.cal_r{
		float:left;
		width: 34.5%;
		margin-left: 1%;
		background: #eeecf4;
		box-sizing: border-box;
		padding: 8px 10px 6px 10px;
		margin-bottom: 8px;
		border-radius: 5px;
	}
	.cal_btn{
		float:left;
		margin-left: 1.5%;
		width: 25%;
		margin-bottom: 15px;
	}
	.cal_btn a{
		display:block;
	}
	.cal_btn .btn_red{
		padding-top: 25px;
		padding-bottom: 25px;
		width: 100%;
		font-size: 1.8rem;
	}
	.cal_in tr:last-child th,
	.cal_in tr:last-child td{
		border-bottom: none;
	}

}/*END*/

@media print, screen and (min-width:769px) and ( max-width: 999px) {

	.cal_ttl{
		font-size: 1.5vw;
	}
	.cal_ttl span{
		font-size: 1.1vw;
	}
	.cal_att{
		font-size: 1.0rem;
	}
	.cal_price{
		font-size: 1.7vw;
	}
	.cal_price span{
		font-size: 4vw;
	}
	.cam_text,
	.cal_in table{
		font-size: 1.2vw;
	}
	.cal_btn .btn_red{
		font-size: 1.8vw !important;
	}
	.cal_btn .btn_blue{
		font-size: 1.6vw !important;
	}

}/*END*/

@media screen and (max-width: 768px){

	.cal_in{
		padding: 0 0 5px 0 !important;
		margin: 0;
	}
	.cal_ttl{
		background: #8f82bc;
		color: #fff;
		font-size: 1.4rem;
		padding-bottom: 6px;
		padding-top: 3px;
	}
	.cal_btn{
		padding-right: 8%;
		padding-left: 8%;
	}
	.sp_cal_moushikomi{
		display: table;
		width: 100%;
		border-collapse: separate;
		border-spacing: 6px;
	}
	.cal_btn a{
		display: table-cell;
		height: 54px;
		vertical-align: middle;
	}
	.cal_btn .modal-open{
		width: 21%;
		background: #034693;
	}
	.cal_btn .modal-open:hover{
		background: #003168;
	}
	.uchiwake .btn_red,
	.cal_btn .btn_red{
		font-size: 1.6rem;
	}
	.uchiwake .btn_red span,
	.cal_btn .btn_red span{
		display: block;
		color: #fff100 !important;
		margin-bottom: 6px;
	}
	.cal_price{
		padding-bottom: 4px;
		font-size: 1.5rem;
		margin: 0;
	}
	.cal_price input,
	.cal_price span{
		font-size: 3.2rem !important;
		letter-spacing: 1px;
		color: #da3c27;
	}
	#calculation_normal,
	#calculation_cam{
		border: 5px solid #8f82bc;
		background: #fff;
		box-sizing: border-box;
	}
	#calculation_normal .inner_frame,
	#calculation_cam .inner_frame{
		padding-left: 0;
		padding-right: 0;
	}

	/*modal*/
	.uchiwake input{
		pointer-events : none;
		-webkit-appearance: none;
		border: none;
		font-size: 1.2rem;
	}
	.uchiwake{
		padding: 15px 3%;
		font-size: 1.2rem;
	}
	.uchiwake table{
		width: 100%;
		margin-bottom: 14px;
		line-height: 1.4;
	}
	.uchiwake th,
	.uchiwake td{
		border: 1px solid #cfc7ed;
		padding: 4px 8px;
	}
	.uchiwake th{
		text-align: left;
		font-weight: normal;
		background: #eeecf4;
	}
	.uchiwake td.text_red{ border: none; }
	.uchiwake .cal_att{
		line-height: 1.5 !important;
	}
	.uchi_cam{
		border: 2px solid #da3c27;
		background: #fff45c;
		border-radius: 3px;
		padding: 3px 5px;
		text-align: center;
	}
	.uchiwake .cal_price span{
		font-size: 2.8rem;
	}
	.uchiwake .cal_price{
		font-size: 1.4rem;
	}
	.modal_att{
		font-size: 1.1rem;
		text-align: center;
		color: #999;
	}

	/*モーダル出てる時は下のボックス非表示*/
	.lock .cal_btn,
	.lock .cal_att,
	.lock .cal_ttl{
		display: none;
	}
	.lock #calculation_normal,
	.lock #calculation_cam{
		border: none;
	}
	.lock .cal_in{ padding: 0 !important; }
	.lock .cal_price{
		text-align: center;
		margin-bottom: 5px;
	}

}/*END*/

@media screen and (max-width: 479px){

	.cal_btn{
		padding-right: 0.5%;
		padding-left: 0.5%;
	}


}/*END*/



/*----------------------------------------
	btn
----------------------------------------*/

/*基本*/
.btn{
	display: inline-block;
	line-height: 1;
	color: #fff;
	text-decoration: none;
	text-align: center;
	font-weight: bold;
	box-sizing: border-box;
	border-radius: 5px;
	cursor: pointer;
}

/*青*/
.btn_blue{
	background: url("../images/common/arrow_white.png") right 5% center no-repeat #034693;
	background-size: 6px;
	box-shadow: 0px 3px 0px 0px #00397a;
}
.btn_blue:hover{
	color: #fff;
	background: url("../images/common/arrow_white.png") right 5% center no-repeat #003168;
	background-size: 6px;
	box-shadow: 0px 3px 0px 0px #002753;
}

/*赤*/
.btn_red{
	background: url("../images/common/arrow_white.png") right 5% center no-repeat #da3c27;
	background-size: 6px;
	box-shadow: 0px 3px 0px 0px #af2c1b;
}
.btn_red:hover{
	color: #fff;
	background: url("../images/common/arrow_white.png") right 5% center no-repeat #9e2414;
	background-size: 6px;
	box-shadow: 0px 3px 0px 0px #841b0d;
}

/*黄*/
.btn_yellow{
	background: url("../images/common/arrow_white.png") right 5% center no-repeat #ff9b00;
	background-size: 6px;
	box-shadow: 0px 3px 0px 0px #e68a00;
}
.btn_yellow:hover{
	color: #fff;
	background: url("../images/common/arrow_white.png") right 5% center no-repeat #d27e01;
	background-size: 6px;
	box-shadow: 0px 3px 0px 0px #ba7000;
}

/*グレー*/
.btn_gray{
	background: url("../images/common/arrow_white.png") right 5% center no-repeat #bbb;
	background-size: 6px;
	box-shadow: 0px 3px 0px 0px #999;
}
.btn_gray:hover{
	color: #fff;
	background: url("../images/common/arrow_white.png") right 5% center no-repeat #aaa;
	background-size: 6px;
	box-shadow: 0px 3px 0px 0px #888;
}


/*ボタン幅*/
.btn_130{ width: 130px; }
.btn_140{ width: 140px; }
.btn_150{ width: 150px; }
.btn_160{ width: 160px; }
.btn_180{ width: 180px; }
.btn_200{ width: 200px; }
.btn_220{ width: 220px; }
.btn_240{ width: 240px; }
.btn_250{ width: 250px; }
.btn_280{ width: 280px; }
.btn_300{ width: 300px; }
.btn_320{ width: 320px; }
.btn_350{ width: 350px; }
.btn_400{ width: 400px; }
.btn_auto{
	padding-left: 20px;
	padding-right: 20px;
}
.btn_all{ width: 100%; }

/*横並びボタン*/
.btn_line a{ display: block; }

@media print, screen and (min-width: 769px) {

	/*横並びボタン*/
	.btn_line a{
		float: left;
		margin-right: 20px;
	}

}/*END*/

@media screen and (max-width: 479px){

	.btn_300,
	.btn_350,
	.btn_400,
	.btn_auto{
		width: 100%;
	}

}/*END*/


/*----------------------------------------
	色フレーム
----------------------------------------*/

/*緑*/
.frame_green{
	border: 3px solid #18a362;
	border-radius: 5px;
	box-shadow: 5px 5px 0 0 #a9e5c9;
}

/*青*/
.frame_blue{
	border: 3px solid #0078c2;
	border-radius: 5px;
	box-shadow: 5px 5px 0 0 #b2e2ff;
}

/*ピンク*/
.frame_pink{
	border: 3px solid #fb6e82;
	border-radius: 5px;
	box-shadow: 5px 5px 0 0 #ffccd4;
}

/*紫*/
.frame_purple{
	border: 3px solid #8f82bc;
	border-radius: 5px;
	box-shadow: 5px 5px 0 0 #e1d9ff;
}

/*黄*/
.frame_yellow{
	border: 3px solid #f39800;
	border-radius: 5px;
	box-shadow: 5px 5px 0 0 #f5e3c4;
}

/*黒*/
.frame_black{
	border: 3px solid #341c1c;
	border-radius: 10px;
	background: #fff;
}





/*----------------------------------------
	footer
----------------------------------------*/

.foot_contact{ background: url("../images/common/footer_bg.jpg") center bottom no-repeat; }
.foot_contact .frame_blue{
	position: relative;
	background: #fff;
	text-align: center;
	padding-left: 2.56%;
	padding-right: 2.56%;
	box-sizing: border-box;
}
.fc_ribon{ margin-top: -30px; }
.foot_tel{
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.foot_tel p{ padding: 24px 0 0 10px; }

@media print, screen and (min-width: 769px) {

	.foot_contact .frame_blue{ width: 73.58%; }
	.foot_tel img{
		float: left;
		display: block;
	}
	.foot_tel p{
		float: left;
		text-align: left;
	}

}/*END*/

@media screen and (max-width: 768px){

	.fc_ribon{ margin-top: -22px; }
	.foot_tel{ width: 100%; }

}/*END*/

@media screen and (max-width: 479px){

	.fc_ribon{ margin-top: -18px; }

}/*END*/

/*フッターリンク*/
.foot_nav_frame{ background: #f0f0f0; }
.foot_nav_frame li a{
	display: block;
	color: #434343;
	font-size: 1.2rem;
	text-decoration: none;
}

@media print, screen and (min-width: 769px) {

	.foot_nav_frame ul{
		float: left;
		width: 20%;
	}
	.foot_nav_frame li{
		background:none;
		line-height: 1.7;
	}
	.foot_nav_frame li a:hover{ color:#999; }
	.foot_nav_frame li.l_menu a{
		background:url("../images/common/arrow_gray.png") center left no-repeat;
		background-size: 6px;
		font-size: 1.4rem;
		padding-left: 12px;
		margin-bottom: 6px;
	}

}/*END*/

@media screen and (max-width: 768px){

	.foot_nav_frame .inner_frame{ padding: 0 !important; }
	.foot_nav_frame{ border-top: 1px solid #dcdcdc; }
	.foot_nav_frame li a{
		padding: 12px 4%;
		border-bottom: 1px solid #dcdcdc;
	}

}/*END*/

/*コピーライト*/
.copyright{
	background: #333;
	font-size: 1.1rem;
	text-align: center;
	padding-top: 12px;
	padding-bottom: 12px;
	color: #fff;
}

/*ページトップボタン*/
.page_top{
	position: fixed;
	bottom: 60px;
	right: 30px;
}
.page_top img{ width: 80px; }

@media print, screen and (min-width: 769px) {

	.foot_logo{
		float: left;
		width: 41.5%;
	}
	.foot_text{
		float: right;
		width: 55.66%;
	}

}/*END*/

@media screen and (max-width: 768px){

	.foot_logo{ text-align: center; }
	.foot_logo p{ padding-top: 5px; }
	.foot_logo ul{ margin-left: -1.5%; }
	.foot_logo li{
		float: left;
		width: 31.8%;
		margin-left: 1.5%;
		margin-bottom: 15px;
	}
	.foot_logo li:nth-child(2n+1){ clear: none; }
	.foot_text.text_11{ margin-bottom: 10px; }

	/*ページトップボタン*/
	.page_top{
		bottom: 10px;
		right: 10px;
	}
	.page_top img{ width: 50px; }

}/*END*/

@media screen and (max-width: 479px){

	.foot_text.text_11{ font-size: 1.0rem !important; }
	.foot_text .text_12{ font-size: 1.1rem !important; }

}/*END*/



.online_btn{
	display: flex;
	align-items: center;
	padding-left: 3%;
}
.online_btn_box{
	display: flex;
	flex-wrap: wrap;
	column-gap: 3%;
	row-gap: 30px;
}

.online_text_color{
	color: #303030;
}
@media screen and (max-width: 479px){
	.online_btn.btn_220{
		width: 160px;
	}
	.online_btn_box{
		column-gap: 1.5%;
	}
	.online_btn.btn img{
		width: 15px;
		margin-right: 5px;
	}
	.online_btn{
		padding-left: 1.5%;
	}
	.online_btn span{
		font-size: 1.2rem;
	}
}
.online_text{
	color: #296fc0;
	border-color: #296fc0;
	font-weight: bold;
}
.online_flex{
	display: flex;
	justify-content: space-between;
}
.online_flex > div:nth-of-type(1){
	width: 30%;
}
.online_flex > div:nth-of-type(2){
	width: 65%;
}
.online_video{
	max-width: 580px;
	width: 100%;
}
.online_btn_login{
	display: flex;
}
.online_btn_login > div{
	width: 30%;
}
.online_btn_login .online_btn{
	column-gap: 10%;
}
@media screen and (max-width: 820px){
	.online_flex{
		flex-direction: column;
		row-gap: 30px;
	}
	.online_flex > div:nth-of-type(1),
	.online_flex > div:nth-of-type(2){
		width: 100%;
	}
	.online_btn_login{
		display: flex;
	}
	.online_btn_login > div{
		width: 50%;
	}
}
@media screen and (max-width: 479px){
	.online_btn_login{
		flex-direction: column;
		row-gap: 30px;
	}
	.online_btn_login > div{
		width: 100%;
	}
	.online_btn_login .online_btn.btn_220{
		width: 220px;
		margin:  0 auto;
		padding-left: 7%;
	}
	.online_btn_login .online_btn.btn_220 span{
		font-size: 1.4rem;
	}
}






.fix_btn_area{
	width: 8%;
	max-width: 50px;
	position: fixed;
	top:18%;
	right: 0;
	z-index: 5;
}





.info_deco{
	position: absolute;
	bottom: 0;
	left: 50%;
	translate: -50% 30%;
	max-width: 187px;
}
.rela{
	position: relative;
}