@charset "utf-8";
*{margin:0;padding:0;text-align:left;}hr{display:none;line-height:0;font-size:0;padding:0;margin:0;border:none;}a{color:inherit;text-decoration:none;}ul,ol{list-style:none;}address{font-style:normal;}img{border:none;width:auto;font-size:0;line-height:0;}html,body{width:100%;height:auto;}html{-moz-osx-font-smoothing: grayscale;-webkit-font-smoothing: antialiased;text-rendering: optimizeLegibility;}.clear:after,.clear:before{content:"";display:block;overflow:hidden;height:0;}.clear:after{clear:both;}.clear{zoom:1;}
/*******************************************
	base
*******************************************/
html{
	font-size:62.5%;
	font-family:"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", Meiryo, "メイリオ", "MS PGothic", sans-serif;
}
body{
	font-size:1.0em;
	line-height:1.4;
	background:#fff url(../img/bg_pc.jpg) no-repeat top center;
	background-size:100% auto;
	color:#333;
	position:relative;
}
img{
	max-width:100%;
}
p{
	line-height:1.8;
}
main{
	padding:0;
	margin:0;
}
.flex{
	display: flex;
	-webkit-display: flex;
	align-items: center;
	-webkit-align-items: center;
}
.pc{
	display:block;
}
.sp{
	display:none;
}
.hover{
	-webkit-transition: all 0.3s ease-in-out;
	transition: all 0.3s ease-in-out;
}
.hover.ov{
	opacity:0.5;
}
@media screen and (max-width: 720px) {
	body{
		background:#fff url(../img/bg_sp.jpg) no-repeat top center;
		background-size:100% auto;
	}
	#wrap{
		min-width:0;
	}
	.pc{
		display:none;
	}
	.sp{
		display:block;
	}
}
@media screen and (max-height: 65vw) and (max-width: 880px) and (orientation: landscape) {
  body.spDisplay::after {  position:fixed; content:' '; width:100%; height:100%; background:rgba(0,0,0,0.8) url(../img/ico_sp_controle.png) center center  no-repeat; background-size:64px 64px; top:0; left:0; z-index:99999999; }
}
/*------------------------------------------
	wrapper
------------------------------------------*/
.inner{
	max-width:1180px;
	min-width:960px;
	width:auto;
	margin:0 auto;
}
@media screen and (max-width: 720px) {
	.inner{
		width:100%;
		min-width:0;
		max-width:768px;
	}
}
/*------------------------------------------
	footer
------------------------------------------*/
footer{
	padding:40px 0 0;
}
footer dl{
	font-size:0;
	line-height:0;
}
footer dt{
	text-align:center;
}
footer dd ul.flex{
	justify-content: center;
	-webkit-justify-content: center;
	padding:0 0 10px;
}
footer dd ul li{
	margin-right:40px;
}
footer dd ul li:last-child{
	margin:0;
}
footer p{
	text-align:center;
	color:#fff;
	font-size:2.0rem;
	font-weight:bold;
	padding:20px 0;
	background:#000;
}
@media screen and (max-width: 720px) {
	footer{
		padding:6% 0 0;
	}
	footer dl{
		font-size:0;
		line-height:0;
	}
	footer dt{
		text-align:center;
		width:10.13888888888889%;
		margin:0 auto 4%;
	}
	footer dd ul.flex{
		flex-direction: column;
		-webkit-flex-direction: column;
		padding:0 0 2%;
	}
	footer dd ul li{
		width:59.16666666666667%;
		margin:0 auto 2%;
	}
	footer dd ul li:last-child{
		width:33.47222222222222%;
		margin:0 auto;
	}
	footer p{
		font-size:1.2rem;
		padding:2% 1%;
		font-weight:normal;
	}
}
/*------------------------------------------
	box01
------------------------------------------*/
.box01{
	padding:0 0 80px;
	font-size:0;
	line-height:0;
	overflow: hidden;
}
.box01 h1{
	position:relative;
	top:-30px;
}
.box01 h1 img{
	width:106.5%;
	max-width:none;
}
@media screen and (max-width: 720px) {
	.box01{
		padding:0 0 6.756756756756757%;
	}
	.box01 h1{
		position:relative;
		top:0;
	}
	.box01 h1 img{
		width:100%;
		max-width:none;
	}
}
/*------------------------------------------
	box02
------------------------------------------*/
.box02{
	font-size:0;
	line-height:0;
	padding:0 0 30px;
}
.box02 dt{
	margin-right:10px;
	margin-right:0.8474576271186441%;
	width:10.16949152542373%;
}
.box02 li:nth-child(1) dd{
	width:48.30508474576271%;
}
.box02 li:nth-child(2) dd{
	width:37.96610169491525%;
}
.box02 li:nth-child(3) dd{
	width:77.88135593220339%;
}
.box02 ul{
	position:relative;
}
.box02 ul li{
	margin:0 0 30px;
}
.box02 ul li:last-child{
	margin:0;
}
.box02 ul li .map{
	position:absolute;
	top:0;
	right:0;
	width:38.13559322033898%;
}
.box02 ul li .map p{
	margin:0 0 12px;
}
.box02 ul li .map p + p{
	text-align:right;
}
.box02 ul li .map p + p img{
	width:55.55555555555556%;
}
.box02 ul li dd .flex p{
	margin-right:46px;
}
.box02 ul li dd .flex p + p{
	margin:0;
}
@media screen and (max-width: 720px) {
	.box02{
		padding:0 2.777777777777778% 4.166666666666667%;
	}
	.box02 dt{
		margin-right:0;
		margin-bottom:2%;
		width:100%;
	}
	.box02 li:nth-child(1) dd{
		width:80.13888888888889%;
	}
	.box02 li:nth-child(2) dd{
		width:100%;
	}
	.box02 li:nth-child(2) dd p{
		width:66.80555555555556%;
		margin:0 auto 2%;
	}
	.box02 li:nth-child(3) dd{
		width:76.66666666666667%;
	}
	.box02 ul{
		position:relative;
	}
	.box02 ul li{
		margin:0 0 4%;
	}
	.box02 ul li:last-child{
		margin:0;
	}
	.box02 ul li dl.flex{
		flex-direction: column;
		-webkit-flex-direction: column;
	}
	.box02 ul li .map{
		position:static;
		top:0;
		right:0;
		width:100%;
	}
	.box02 ul li .map p{
		width:100%;
		margin:0 0 2%;
	}
	.box02 ul li .map p + p{
		text-align:center;
	}
	.box02 ul li .map p + p img{
		width:47.05882352941176%;
	}
	.box02 ul li dd div.flex{
		flex-direction: column;
		-webkit-flex-direction: column;
	}
	.box02 ul li dd div.flex p{
		margin-right:0;
		margin-bottom:4%;
	}
	.box02 ul li dd div.flex p + p{
		margin:0;
		width:72.46376811594203%;
	}
}
/*------------------------------------------
	box03
------------------------------------------*/
.box03{
	font-size:0;
	line-height:0;
}
.box03 ol > li{
	border-bottom:1px solid #000;
	margin:0 0 30px;
}
.box03 ol > li dt{
	background:#a4854f;
}
.box03 ol > li dt img{
	width:37.71186440677966%;
}
.box03 ol > li dd{
	background:#f8f4ed;
	padding:40px;
}
.box03 ol > li dd > figure{
	margin-right:20px;
}
.box03 ol > li:nth-child(3) p{
	text-align:center;
	margin:0 0 30px;
}
.box03 ol > li p.txt{
	margin:0 auto;
}
.box03 ol > li dd ul{
	width:770px;
	margin:0 auto 40px;
}
.box03 ol > li dd ul li{
	margin:0 auto 40px;
}
@media screen and (max-width: 720px) {
	.box03{
		padding:0 2.777777777777778%;
	}
	.box03 ol > li{
		border-bottom:1px solid #000;
		margin:0 0 6%;
	}
	.box03 ol > li dt img{
		width:61.80555555555556%;
	}
	.box03 ol > li dd{
		flex-direction: column;
		-webkit-flex-direction: column;
		padding:3% 3% 6%;
	}
	.box03 ol > li dd > figure{
		width:42.85714285714286%;
		margin:0 auto 4%;
	}
	.box03 ol > li:nth-child(3) p{
		width:90.13888888888889%;
		text-align:center;
		margin:0 auto 4%;
	}
	.box03 ol > li:nth-child(3) p + p{
		width:9.722222222222222%;
	}
	.box03 ol > li p.txt{
		width:87.96875%;
		margin:0 auto;
	}
	.box03 ol > li dd ul{
		width:100%;
		margin:0 auto 4%;
		flex-direction: column;
		-webkit-flex-direction: column;
	}
	.box03 ol > li dd ul li{
		width:83.88888888888889%;
		margin:0 auto;
	}
	.box03 ol > li dd ul li:first-child{
		width:59.86111111111111%;
		margin:0 auto 4%;
	}
}
/*------------------------------------------
	box04
------------------------------------------*/
.box04{
	background:#f3f3f3;
	font-size:0;
	line-height:0;
	padding:30px 0 25px;
}
.box04 dt,
.box04 dd,
.box04 p{
	text-align:center;
}
.box04 dt{
	margin:0 0 10px;
}
.box04 dd{
	margin:0 0 30px;
}
@media screen and (max-width: 720px) {
	.box04{
		padding:6% 2.777777777777778%;
	}
	.box04 dt,
	.box04 dd,
	.box04 p{
		text-align:center;
	}
	.box04 dt{
		width:62.36111111111111%;
		margin:0 auto 3%;
	}
	.box04 dd{
		width:76.80555555555556%;
		margin:0 auto 3%;
	}
	.box04 p{
		width:55.55555555555556%;
		margin:0 auto;
	}
}