
@charset "UTF-8";

.key-visual{
	background: url(../images/company-key-visual.jpg) no-repeat;
	background-position: center;
	background-size: cover;
}

/* ++++++++++++++++++++++++++#outline++++++++++++++++++++++++++ */
#outline{
	position: relative;
	z-index: 9;
}
#area-map:after{
	content: "";
	display: block;
	width: 100%;
	height: 25px;
	position: absolute;
	top: 100%;
	left: 0;
	right: 0;
	margin: auto;
	background: url(../images/wave-bottom.png);
	background-position: center;
}
#outline .inner:after,
#access-map .inner:after,
#area-map .inner:after{
	content: "";
	display: block;
	width: 0;
	height: 0;
	clear: both;
}
.sec-ttl{
	width: 180px;
	float: left;
}
.btn-area{
	float: right;
	width: calc(100% - 180px);
	margin-top: 40px;
}
.btn{
	margin: auto;
}

#outline table{
	width: calc(100% - 180px);
	float: right;
	border-top: 1px solid #ccc;
	line-height: 2;
}
#outline th{
	padding: 15px 20px;
	border-bottom: 1px solid #ccc;
	text-align: left;
	width: 25%;
	font-weight: 400;
}
#outline td{
	padding: 15px 20px;
	border-bottom: 1px solid #ccc;
	width: 75%;
}
#outline td a{
	color: #001273;
}
#outline,
#access-map{
	padding-bottom: 0;
}
/* ++++++++++++++++++++++++++#googlemaps++++++++++++++++++++++++++ */
#googlemaps{
	width: 100%;
	height: 400px;
	width: calc(100% - 180px);
	float: right;
	border: 8px solid #fff;
	box-shadow: 0 0 15px rgba(0,0,0,0.1);
}
#googlemaps iframe{
	display: block;
	width: 100%;
	height: 100%;
}
/* ++++++++++++++++++++++++++#area-map++++++++++++++++++++++++++ */
#area-map{
	position: relative;
	z-index: 9;
}
#area-map h4{
	font-weight: 400;
	width: calc(100% - 180px);
	float: right;
	font-size: 20px;
	line-height: 1.7;
	margin-bottom: 20px;
}
#area-map .pic{
	float: right;
	width: calc(100% - 180px);
	padding: 0 80px 20px;
}
#area-map p,
#area-map h5,
#area-map ul{
	float: right;
	width: calc(100% - 180px);
}
.map-txt{
	text-align: center;
	margin-bottom: 40px;
	font-size: 17px;
	font-weight: 600;
}
.map-active{
	display: inline-block;
	width: 40px;
	height: 40px;
	background: #ff6473;	
	border-radius: 100%;
	vertical-align:	middle;
}
#area-map h5{
	font-size: 18px;
	font-weight: 600;
	line-height: 1;
	margin-bottom: 15px;
}
#area-map ul{
	line-height: 2.3;
	margin-bottom: 20px;
}
#area-map li{
	display: inline-block;
	margin-right: 1em;
}
#area-map li:before{
	content: "";
	width: 3px;
	height: 3px;
	border-radius: 100%;
	background: #777;
	vertical-align: 3px;
	display: inline-block;
	margin-right: .5em;
}
.swipe{
	display: block;
}
.pic span{
	text-align: center;
	padding-top: 1em;
}

@media screen and (max-width: 768px){
	header h1{
		//padding-right: 20px;
	}

/* ++++++++++++++++++++++++++#outline++++++++++++++++++++++++++ */
	#outline{
		padding-bottom: 60px;
	}
	.sec-ttl{
		width: 100%;
	}
	#outline .btn-area{
		width: 100%;
		float: none;
		clear: both;
	}

/* ++++++++++++++++++++++++++#outline++++++++++++++++++++++++++ */
	.btn-area{
		float: none;
		clear: both;
		width: 100%;
		margin: 0;
		padding-top: 30px;
	}

	tbody,
	tr{
		display: block;
		width: 100%;
	}
	#outline table{
		display: block;
		width: 100%;
		float: none;
		clear: both;
		line-height: 1.8;
	}
	#outline th{
		padding: 15px 0 0;
		border-bottom: none;
		width: 100%;
		display: block;
		font-weight: 600;
	}
	#outline td{
		padding: 5px 0 15px;
		border-bottom: 1px solid #ccc;
		width: 100%;
		display: block;
	}
/* ++++++++++++++++++++++++++#access-maps++++++++++++++++++++++++++ */
	#access-map{
		padding-bottom: 60px;
	}
	#googlemaps{
		width: 100%;
		height: calc(100vw - 40px);
		float: none;
		clear: both;
		border: 5px solid #fff;
	}

/* ++++++++++++++++++++++++++#area-map++++++++++++++++++++++++++ */
	#area-map{
		padding-bottom: 60px;
	}
	#area-map h4{
		font-weight: 400;
		width: 100%;
		float: none;
		font-size: 1.7rem;
		line-height: 1.7;
		margin-bottom: 15px;
	}
	#area-map .pic{
		float: none;
		width: 100%;
		padding: 0 0 15px;
	}
	#area-map p,
	#area-map h5,
	#area-map ul{
		float: none;
		width: 100%;
		clear: both;
	}
	.map-txt{
		font-size: 1.4rem;
		margin-bottom: 30px;
	}
	.map-active{
		width: 20px;
		height: 20px;
	}
	#area-map h5{
		font-size: 1.6rem;
		margin-bottom: 15px;
	}
	#area-map ul{
		line-height: 2.3;
		margin-bottom: 15px;
	}
	#area-map li{
		display: inline-block;
		margin-right: 1em;
	}
	#area-map li:before{
		width: 3px;
		height: 3px;
		vertical-align: 3px;
	}
	#area-map:after{
		height: 10px;
		width: 100%;
		background-size: auto 100%;
		background-position: center;
	}
}

