/*
Last Updated: 2019-04-23
Author: minoura
*/

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

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

a{
	color:#35b29e;
	transition: all 0.4s ease-out;
}
a:hover{
	color:#99ecde;
	transition: all 0.4s ease-out;
}

.max_respon{max-width:100%;}

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

p{ line-height:1.8; }
.text_bold{ font-weight: bold; }
.text_normal{ font-weight: normal; }
.lh_16{ line-height: 1.6 !important; }
.lh_20{ line-height: 2 !important; }

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

	.text_16{ font-size:1.6rem !important; }
	.text_22{ font-size:2.2rem !important; }
	.text_26{ font-size:2.6rem !important; }

}/*END*/

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

	.text_16{ font-size: 1.5rem !important; }
	.text_22{ font-size: 1.8rem !important; }
	.text_26{ font-size: 2rem !important; }
	.lh_20{ line-height: 1.8 !important; }

}/*END*/

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

	.text_16{ font-size: 1.4rem !important; }
	.text_22{ font-size: 1.6rem !important; }
	.text_26{ font-size: 1.7rem !important; }

}/*END*/


/*----------------------------------------
	iframe比率維持
----------------------------------------*/

.map{
	position: relative;
	overflow: hidden;
	width: 100%;
	height: 100%;
	padding: 35% 0 0;
	text-align: center;
}
.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対策*/

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

	.map{ padding: 60% 0 0; }

}/*END*/


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

.inner_frame{
	width: 100%;
	position: relative;
	box-sizing: border-box;
}
.box_l{
	float: left;
	width: 48.27%;
}
.box_r{
	float: right;
	width: 48.27%;
}

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

	.inner_frame{
		padding-right: 1.72%;
		padding-left: 1.72%;
	}

}/*END*/

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

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

}/*END*/

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

	.inner_frame{
		padding-right: 3%;
		padding-left: 3%;
	}

}/*END*/

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

	.inner_frame{
		padding-right: 4.5%;
		padding-left: 4.5%;
	}
	.box_l,
	.box_r{
		float: none;
		width: 100%;
	}

}/*END*/


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

header a{
	display: block;
	text-decoration: none;
}
.head_inner{ padding: 30px; }
.head_logo{
	float: left;
	width: 280px;
}
.official_link{
	background: #004986;
	color: #fff;
	border: 1px solid #cdcdcd;
	padding: 7px 10px;
	font-size: 1.1rem;
	letter-spacing: 1px;
}
.official_link:hover{
	background: #82d8ca;
	color: #111;
	border-color: #111;
}

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

	.head_official{
		float: right;
		margin-left: 20px;
	}
	.head_tel{
		float: right;
		width: 230px;
	}
	#sd{
		border-top: 1px solid #222;
		border-bottom: 1px solid #222;
	}
	#sd ul{
		border-left: 1px solid #222;
		width: 100%;
		max-width: 1160px;
		box-sizing: border-box;
		margin-left: auto;
		margin-right: auto;
	}
	#sd li{
		float: left;
		border-right: 1px solid #222;
		box-sizing: border-box;
	}
	#sd li:nth-child(odd){ width: 14.32%; }
	#sd li:nth-child(even){ width: 14.23%; }
	#sd li img{ width: 100%; }
	#sd li:last-child{
		background: #82d8ca;
	}
	#sd li a{ transition: background-color 0.6s ease-out; }
	#sd li a:hover{
		background: #222;
		transition: background-color 0.6s ease-out;
	}

}/*END*/

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

	.head_inner{ padding: 30px 2%; }
	.head_logo{ width: 28%; }
	.head_tel{ width: 23%; }
	.head_official.official_link{
		padding: 5px 8px;
		margin-left: 15px;
	}

}/*END*/

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

	.head_inner{ padding: 15px 3% 15px 4%; }
	.head_logo{
		padding-top: 10px;
		width: 80%;
		max-width: 280px;
	}
	.sd-trigger{
		float: right;
		position: relative;
		width: 54px;
		height: 45px;
		background: #82d8ca;
		cursor: pointer;
	}
	.sd-trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 1px;
		width: 28px;
		background-color: #fff;
	}
	.sd-trigger span:nth-of-type(1) { top: 14px; left: 13px; }
	.sd-trigger span:nth-of-type(2) { top: 22px; left: 13px; }
	.sd-trigger span:nth-of-type(3) { top: 30px; left: 13px; }
	#sd{ box-sizing: border-box; }
	#sd ul{ margin-bottom: 20px; }
	#sd li{ position: relative; }
	#sd li a{
		display: block;
		text-decoration: none;
		border-bottom: 1px solid #444;
		text-align: center;
	}
	#sd li img{ width: 76%; }

}/*END*/

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

	.head_logo{
		padding-top: 6px;
		width: 260px;
	}
	.sd-trigger{
		float: right;
		position: relative;
		width: 54px;
		height: 45px;
	}

}/*END*/


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

#conainer{ overflow: hidden; }
.respon{ width: 100%; }
.ttl_img{
	width: 80%;
	margin-right: auto;
	margin-left: auto;
	text-align:center;
}
li{ list-style:none; }
.center{ text-align:center; }
.left{ float:left; }
.right{ float:right; }
.op:hover{
	filter: alpha(opacity=60);
	-moz-opacity:060;
	opacity:0.60;
}

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

	.sp_only{ display: none; }

}/*END*/

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

	.ttl_img{ width: 60%; }


}/*END*/

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

	.ttl_img{ width: 90%; }
	.left,
	.right{
		float: none;
	}

}/*END*/


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

.mv{
	background: url("../images/mv_bg.jpg") center top no-repeat;
	background-size: 100%;
	text-align: center;
	max-height: 700px;
	position:relative
}
.mv_ttl{
	width: 34.07%;
	max-width: 434px;
	margin-top:14.3%;
	position:absolute;
	left:6%;
}

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

	/*.mv_ttl{ margin-top: 120px; }*/

}/*END*/

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

	.mv{
		background-size: 150%;
		height: 260px !important;
	}
	.mv_ttl{
		width: 180px;
		margin-top: 20%;
		left:2%;
	}

}/*END*/


/*----------------------------------------
	intro
----------------------------------------*/

.point{ margin-left: -1.69%; }
.point li{
	float: left;
	width: 23.3%;
	margin-left: 1.69%;
}
.intro_bg{
	background: url("../images/intro_bg.jpg");
	background-size: cover;
}
.intro_ttl{
	width: 25.86%;
	margin-left: auto;
	margin-right: auto;
}
.intro_text{ width: 39.65%; }
.intro_img{ width: 56.89%; }


.obi_bg{
	background: url("../images/obi_bg.jpg");
	text-align: center;
}


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

	.point{ margin-left: -3%; }
	.point li{
		width: 47%;
		margin-left: 3%;
		margin-bottom: 10px;
	}
	.intro_ttl{ width: 40%; }
	.intro_text,
	.intro_img{
		width: 100%;
	}

}/*END*/


/*----------------------------------------
	location
----------------------------------------*/

.location_bg{
/*	background: url("../images/location_bg.jpg");*/
	text-align: center;
}
.location_pt4,
.location_pt1{
	max-width: 930px;
	width: 100%;
	margin-right: auto;
	margin-left: auto;
}
.location_pt4 li,
.location_pt1 div{
	float: left;
	width: 27.95%;
	margin-left: 2.15%;
	margin-right: 2.15%;
	margin-bottom: 30px;
}
.location_pt4 li img,
.location_pt3 li img,
.location_pt2 li img,
.location_pt1 div img{
	margin-bottom: 10px;
}
.location_line1,
.location_line2{
	text-align: center;
	background: url("../images/ttl_line.png") center no-repeat;
}
.location_line1 img{ width: 15.94%; }
.location_line2 img{ width: 30.35%; }
.location_pt2{ margin-left: -3.33%; }
.location_pt2 li{
	float: left;
	width: 21.66%;
	margin-left: 3.33%;
	margin-bottom: 40px;
}
.location_pt2 li:nth-child(5){
	margin-left: 28.33%;
	clear: both;
}
.location_pt3{ margin-left: -6.66%; }
.location_pt3 li{
	float: left;
	width: 43.33%;
	margin-left: 6.66%
}

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

	.location_pt1,
	.location_pt2,
	.location_pt3,
	.location_pt4{
		font-size: 1.2rem;
	}

}/*END*/

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

	.location_line1 img,
	.location_line2 img{
		width: 40%;
	}
	.location_pt1 div{
		float: none;
		width: 70%;
		margin-right: auto;
		margin-left: auto;
		margin-bottom: 20px;
	}
	.location_pt4 li img,
	.location_pt3 li img,
	.location_pt2 li img,
	.location_pt1 div img{
		margin-bottom: 3px;
	}
	.location_pt2,
	.location_pt3{
		margin-left: -4%;
	}
	.location_pt2 li:nth-child(5){ margin-left: 4%; }
	.location_pt2 li,
	.location_pt3 li,
	.location_pt4 li{
		width: 46%;
		margin-left: 4%;
		margin-right: 0;
		margin-bottom: 15px;
	}
	.location_pt2 li:nth-child(2n+1),
	.location_pt3 li:nth-child(2n+1),
	.location_pt4 li:nth-child(2n+1){
		clear: both;
	}
	.location_pt2 li p,
	.location_pt3 li p,
	.location_pt4 li p{
		line-height: 1.4;
	}

}/*END*/


/*----------------------------------------
	landplan
----------------------------------------*/
.land_bg{
background: url("../images/land_bg.gif");
}


.land_frame{ position: relative; }

.land_img{ width:auto; }

.land_maru{
	position: absolute;
	left: 5.17%;
	top: 24%;
	width: 28.87%;
}

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

	.land_img{ width: 100%; }
	.land_maru{
		left: 2%;
		top: 20%;
		width: 35%;
	}

}/*END*/

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

	.land_maru{
		position: static;
		width: 70%;
		display: block;
		margin-left: auto;
		margin-right: auto;
		margin-top: 20px;
	}

}/*END*/


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

.access_bg{ background: #fff; }


/*----------------------------------------
	outline
----------------------------------------*/

table{
	width: 100%;
	line-height: 2;
}
th,
td{
	padding: 26px 2%;
	border-bottom: 1px solid #ccc;
	text-align: left;
}
th{
	color: #1eaebf;
	width: 10em;
}
.no_border{ border-bottom: none; }

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

	.outline .box_l,
	.outline .box_r{
		float: none;
		width: 100%;
	}
	th,
	td{
		padding: 16px 2%;
	}

}/*END*/

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

	th,
	td{
		display: block;
		width: 100%;
		box-sizing: border-box;
	}
	th{
		border-bottom: none;
		padding: 10px 2% 0 2%;
	}
	td{ padding: 0 2% 10px 2%; }

}/*END*/


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

.bnr_contact{
	display: block;
	max-width: 360px;
	width: 31.03%;
	margin: 110px auto 120px auto;
}
footer{ border-top: 1px solid #adb5bd; }
footer a{
	display: block;
	color: inherit;
	text-decoration: none;
}
.foot_l p{
	line-height: 1.5;
	font-size: 1.2rem;
	color: #999;
	margin-bottom: 15px;
}
.foot_official{ display: inline-block; }
.foot_r a{ color: #333; }
.copyright{
	background: #1e457d;
	text-align: center;
	color: #fff;
	font-size: 1rem;
	padding-top: 15px;
	padding-bottom: 15px;
}

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

	footer .inner_frame{
		padding-top: 50px;
		padding-bottom: 50px;
	}
	.foot_l{
		float: left;
		width: 49.13%;
	}
	.foot_r{
		float: right;
		width: 49%;
		font-size: 1.3rem;
	}
	.foot_logo{
		float: left;
		width: 41.05%;
		margin-bottom: 15px;
	}
	.foot_tel{
		float: left;
		width: 49.12%;
		margin-left: 2.63%;
		padding-top: 5px;
		margin-bottom: 15px;
	}
	.foot_r li{
		float: left;
		margin-right: 3%;
		margin-bottom: 25px;
	}
	.foot_r li a:before{ content: "・"; }
	.foot_r li a:hover{ color: #35b29e; }

}/*END*/

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

	.bnr_contact{ margin: 80px auto 90px auto; }

}/*END*/

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

	.bnr_contact{
		margin: 40px auto 50px auto;
		width: 280px;
	}
	footer .inner_frame{
		padding-right: 0;
		padding-left: 0;
	}
	.foot_l{
		text-align: center;
		margin: 25px auto;
	}
	.foot_logo{
		width: 20%;
		margin-right: auto;
		margin-left: auto;
		margin-bottom: 20px;
	}
	.foot_tel{
		width: 45%;
		margin-bottom: 15px;
	}
	.foot_l p{ margin-bottom: 20px; }
	.official_link.foot_official{
		padding: 15px 25px;
		font-size: 1.2rem;
	}
	.foot_r a{
		padding: 15px 4%;
		text-align: center;
		border-bottom: 1px solid #adb5bd;
		font-size: 1.2rem;
	}

}/*END*/

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

	.bnr_contact{
		margin: 25px auto;
		width: 240px;
	}
	.foot_logo{ width: 35%; }
	.foot_tel{ width: 70%; }

}/*END*/






.list_two,
.list_three,
.list_four{
	margin-left: -1.85%;
}

.list_two li,
.list_three li,
.list_four li{
	position: relative;
	float: left;
	box-sizing: border-box;
	margin-left: 1.85%;
}

.list_two li a,
.list_three li a,
.list_four li a{
	text-decoration: none;
}
.list_four li{
	width: 23.14%;
	margin-bottom: 20px;
}
.list_three li{
	width: 31.48%;
	margin-bottom: 40px;
}
.list_two li{
	width: 48.15%;
	margin-bottom: 50px;
}



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

	.list_three li:nth-child(3n+1),
	.list_four li:nth-child(4n+1){ clear: both; }

}/*END*/

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

	.box_l,
	.box_r{
		float: none;
		width: 100%;
	}
	.box_l60,.box_r40,.box_r60,.box_l40,.box_l50,.box_r50{
		float: none;
		width: 100%;
	}



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

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

	.list_two li{
		width: 46%;
	}


}/*END*/

