@charset "UTF-8";
/*--------------------------------------------
DATA TEXT
---------------------------------------------*/
[data-before]:before{
	content : attr( data-before );
}
[data-after]:after{
	content : attr( data-after );
}
/*--------------------------------------------
WRAP OVER
---------------------------------------------*/
@media(max-width:1399px){
	.fluid{
		margin-right : calc(50% - 50vw);
		margin-left : calc(50% - 50vw);
	}
}
/*--------------------------------------------
MAP
---------------------------------------------*/
.map-container{
	position : relative;
}
.map-container > #map , .map-container > iframe{
	width : 100%;
	height : 100%;
	position : absolute;
	top : 0;
	left : 0;
	right : 0;
	bottom : 0;
	margin : auto;
}
img{
	height : auto;
	vertical-align : top;
	outline : none;
}
@media(max-width: 768px){
	img{
		width : 100%;
	}
}
@media(min-width: 769px){
	img{
		max-width : 100%;
	}
}
@media(min-width: 769px){
	.is-sp{
		display : none;
	}
}
@media(max-width: 768px){
	.is-pc{
		display : none;
	}
}
/*--------------------------------------------
BUTTON
---------------------------------------------*/
.btn-blue , .btn-orange{
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
	text-align : center;
	color : #fff;
	-webkit-transition : opacity .3s ease-in;
	        transition : opacity .3s ease-in;
}
.btn-blue:hover , .btn-orange:hover{
	opacity : .8;
}
.btn-blue{
	background-color : #09c;
}
.btn-orange{
	background-color : #f5c340;
}
.btn-link{
	border-style : solid;
	border-color : #09c;
	display : -webkit-box;
	display : -ms-flexbox;
	display : flex;
	-webkit-box-align : center;
	-ms-flex-align : center;
	align-items : center;
	-webkit-box-pack : center;
	-ms-flex-pack : center;
	justify-content : center;
	text-align : center;
	color : #09c;
	font-family : Meiryo , "メイリオ" , "Noto Sans JP", sans-serif;
	font-weight : 700;
	-webkit-transition : background-color .3s ease-in , color .3s ease-in;
	        transition : background-color .3s ease-in , color .3s ease-in;
}
.btn-link:hover{
	background-color : #09c;
	color : white;
}
@media(max-width: 768px){
	.btn-link{
		border-radius : calc( 40 * 100vw / 768 );
		border-width : calc( 4 * 100vw / 768 );
	}
}
@media(min-width: 769px) and (max-width:1399px){
	.btn-link{
		border-radius : calc( 23.5 * 100vw / 1400 );
		border-width : calc( 3 * 100vw / 1400 );
	}
}
@media(min-width: 1400px){
	.btn-link{
		border-radius : 23.5px;
		border-width : 3px;
	}
}
.hoverZoom{
	overflow : hidden;
}
.hoverZoom img{
	-webkit-transform-origin : center center;
	        transform-origin : center center;
	-webkit-transition : -webkit-transform .3s linear;
	        transition : -webkit-transform .3s linear;
	        transition :         transform .3s linear;
	        transition :         transform .3s linear, -webkit-transform .3s linear;
}
.hoverZoom:hover img{
	-webkit-transform : scale( 1.2 );
	        transform : scale( 1.2 );
}
/*--------------------------------------------
LEDE
---------------------------------------------*/
@media(max-width: 768px){
	.lede{
		font-size : calc( 24 * 100vw / 768 );
		line-height : calc( 36 * 100vw / 768 );
	}
}
@media(min-width: 769px) and (max-width:1399px){
	.lede{
		text-align : center;
		font-size : calc( 16 * 100vw / 1400 );
		line-height : calc( 21 * 100vw / 1400 );
	}
}
@media(min-width: 1400px){
	.lede{
		text-align : center;
		font-size : 16px;
		line-height : 21px;
	}
}