@charset "utf-8";

.pagehead.access{
	/*background-image:linear-gradient(rgba(0, 0, 0, 0.3), rgba(0, 0, 0, 0.3)),url("../images/facilities/pagehead.jpg");*/
	background-image:url("../images/access/pagehead.jpg");
	background-position:top -250px center;
}

.pageintro{
	padding:60px 15px 0;
	text-align:center;
}
.pageintro h3{
	font-size:2.5rem;
	margin-bottom:60px;
	font-weight:normal;
	line-height:1.5;
}
.pageintro p{
	font-family:var(--sans_serif);
	font-size:1.8rem;
}
@media screen and (max-width:767px){
	.pageintro h3{
		font-size:1.7rem;
		margin-bottom:30px;
	}
	.pageintro p{
		font-size:1.4rem;
		text-align:left;
	}
}
#sec_index .ancbtn_wrap{
	display:flex;
	gap:50px;
	justify-content:center;
	margin:60px 0;
}
#sec_index .ancbtn_wrap a{
	width:360px;
	height:57px;
	display:flex;
	align-items:center;
	justify-content:center;
	border:1px solid var(--gray);
}
#sec_map{
	padding:0 0 60px;
}
.map_inner{
	max-width:1560px;
	margin:auto;
	height:620px;
}
.map_inner iframe{
	width:100%;
	height:100%;
}
.about_box{
	margin-top:60px;
	display:flex;
	gap:60px;
	align-items:center;
	justify-content:center;
}
.about_box>div{
	flex:1;
}
.about_box .intro .ttl_about h3{
	font-family:var(--sans_serif);
	font-size:1.8rem;
	border-bottom:1px solid var(--gray);
	padding-bottom:10px;
	margin-bottom:10px;
}
.about_box .intro  p{
	font-size:1.7rem;
	line-height:2em;
	font-family:var(--sans_serif);
}
.about_box .intro .btnarea{
	margin-top:20px;
}
.about_box .intro .btnarea .btn_brown{
	width:364px;
}
@media screen and (max-width:767px){
	#sec_index .ancbtn_wrap{
		margin:40px 0;
		gap:10px;
	}
	#sec_index .ancbtn_wrap a{
		width:100%;
		height:50px;
		gap:8px;
		font-size:1.2rem;
	}
	#sec_map .wrapper{
		padding:0;
	}
	.about_box{
		flex-wrap:wrap;
		gap:15px;
		align-items:flex-start;
	}
	.about_box .img{
		width:48%;
	}
	.about_box .intro{
		width:48%;
	}
	.about_box .intro .ttl_about h3{
		font-size:1.6rem;
		border-bottom:none;
		margin-top:50px;
		padding-bottom:0px;
		margin-bottom:0px;
		text-align:center;
	}
	.about_box .intro>p{
		font-size:1.4rem;
		margin-top:70px;
		width:calc(100vw - 20px);
		margin-left: calc(-50vw + 5px);
	}
	.about_box .intro .btnarea{
		width:calc(100vw - 20px);
		margin-left: calc(-50vw + 5px);
		text-align:center;
	}
	.about_box .intro .btnarea a{
		margin:auto;
	}
	#sec_map{
		padding:0 15px 40px;
	}
	.map_inner{
		height:350px;
	}
	.about_box .intro .btnarea .btn_brown{
		width:100%;
	}
}

#sec_route{
	background:var(--lightgray);
	padding:100px 0;
}
#sec_route .ttl{
	margin-bottom:60px;
	text-align:center;
}
#sec_route .ttl .en{
	font-size:4rem;
	color:var(--gold);
	margin-bottom:20px;
	font-weight:600;
}
#sec_route .ttl .ja{
	margin-bottom:40px;
	font-size:2.7rem;
}
@media screen and (max-width:767px){
	#sec_route{
		padding:60px 0;
	}
	#sec_route .ttl{
		margin-bottom:30px;
	}
	#sec_route .ttl .en{
		margin-bottom:10px;
		font-size:2.1rem;
	}
	#sec_route .ttl .ja{
		margin-bottom:20px;
		font-size:1.7rem;
	}
}


.tabs{
	margin:10px auto;
	position:relative;
}
.tab-buttons{
	display:flex;
}
.tab-buttons span{
	flex:1;
	color:#333;
	background:#fff;
	cursor:pointer;
	border-bottom:2px solid #ddd;
	width:33.3%;
	/*float:left;*/
	text-align:center;
	height:66px;
	display:flex;
	gap:10px;
	justify-content:center;
	align-items:center;
}
.tab-content{
	width:100%;
	padding:30px;
	background:#fff;
	display:inline-block;
}
.tab-content>div{
	display:flex;
	gap:30px;
}
.tab-content div.left{
	background:#eee;
	padding:10px 10px 0px;
}
.tab-content ol.right{
	list-style-type: none;
	counter-reset: number;
	padding-left: 1em;
}

.tab-content ol.right li::before {
	counter-increment: number;
	content: counter(number) ".";
	color:var(--gold);
	font-family:var(--serif);
	font-weight: bold;
	margin-right: 0.5em;
}
.tab-content ol.right li{
	font-family:var(--sans_serif);
	font-size:1.8rem;
	margin:0 0 2em;
}
#lamp{
	width:33.3%;
	height:2px;
	background:#333;
	display:block;
	position:absolute;
	top:64px;
	transition: all .3s ease-in;
	-o-transition: all .3s ease-in;
	-webkit-transition: all .3s ease-in;
	-moz-transition: all .3s ease-in;
}
#lamp.content2{
	left:33.3%;
	transition: all .3s ease-in;
	-o-transition: all .3s ease-in;
	-webkit-transition: all .3s ease-in;
	-moz-transition: all .3s ease-in;
}
#lamp.content3{
	left:66.6%;
	transition: all .3s ease-in;
	-o-transition: all .3s ease-in;
	-webkit-transition: all .3s ease-in;
	-moz-transition: all .3s ease-in;
}
#lamp.content1{
	left:0;
	transition: all .3s ease-in;
	-o-transition: all .3s ease-in;
	-webkit-transition: all .3s ease-in;
	-moz-transition: all .3s ease-in;
}
@media screen and (max-width:767px){
	.tab-buttons span{
		flex-direction:column;
		height:110px;
	}
	.tab-content{
		padding:15px;
	}
	.tab-content>div{
		flex-direction:column;
	}
	.tab-content div.left{
		position:relative;
	}
	.tab-content div.left iframe{
		width: 100%;
		height: 300px;
	}
	#lamp{
		top:108px;
	}
	.tab-content ol.right li{
		font-size:1.3rem;
	}
}

#sec_parking{
	background:var(--darkgray);
	padding:100px 0;
}
#sec_parking .ttl{
	margin-bottom:60px;
	text-align:center;
}
#sec_parking .ttl .en{
	font-size:4rem;
	color:var(--gold);
	margin-bottom:20px;
	font-weight:600;
}
#sec_parking .ttl .ja{
	margin-bottom:40px;
	font-size:2.7rem;
	color:#fff;
}
.parking_inner{
	width:100%;
	padding:80px 100px;
	max-width:1500px;
	margin:auto;
	background:#fff;
	font-family:var(--sans_serif);
}
@media screen and (max-width:767px){
	#sec_parking{
		padding:60px 15px;
	}
	#sec_parking .ttl{
		margin-bottom:40px;
	}
	#sec_parking .ttl .en{
		font-size:2.1rem;
		margin-bottom:10px;
	}
	#sec_parking .ttl .ja{
		margin-bottom:0px;
		font-size:2.1rem;
	}
	.parking_inner{
		width:100%;
		padding:15px;
	}

}
.parking_box{
	display:flex;
	gap:85px;
	justify-content:center;
}
.parking_box .img{
	max-width:487px;
}
.parking_box .intro{
	max-width:624px;
}
.parking_box .intro>p{
	font-size:1.8rem;
}
.parking_box .intro .table_bloc{
	margin-top:30px;
}
.parking_box .intro .table_bloc table{
	border-collapse:collapse;
	width:100%;
}
.parking_box .intro .table_bloc table th,
.parking_box .intro .table_bloc table td{
	padding:10px;
	border-top:1px solid var(--gray);
	font-size:1.7rem;
}
.parking_box .intro .table_bloc table tr:last-child th,
.parking_box .intro .table_bloc table tr:last-child td{
	border-bottom:1px solid var(--gray);
}
.parking_inner>p{
	margin-top:60px;
	text-align:center;
}




@media screen and (max-width:767px){
	.parking_box{
		flex-direction:column;
		gap:30px;
	}
	.parking_box .intro>p{
		font-size:1.3rem;
	}
	.parking_box .intro .table_bloc table th,
	.parking_box .intro .table_bloc table td{
		padding:8px;
		font-size:1.3rem;
	}
	.parking_inner>p{
		margin:30px 0;
		text-align:left;
		font-size:1.3rem;
	}
}
