@charset "utf-8";
/*
Theme Name: Genova Template
File: top.css
Theme Author: Genova Design
Author URI: https://genova.co.jp/
Description: Description: This file is reserved for the top-page css
Version: 1.0
*/

/*--------------------------------------
	mainimage
--------------------------------------*/
#mainimage{
	position: relative;
}
#mainimage img {
	width: 100%;
}

#mainimage h1 {
	display: none;
}

#mainimage .key-ttl{
	width: 360px;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
	z-index: 1;
	color: #fff;
}
#mainimage .key-ttl .icon{
	width: 108px;
	margin: 0 auto 25px;
}
#mainimage .key-ttl .ttl{
	font-size: 32px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 48px;
	margin-bottom: 20px;
	text-align: center;
}
#mainimage .key-ttl .ttl small{
	display: block;
	font-size: 24px;
	line-height: 36px;
}
#mainimage .key-ttl .txt{
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 24px;
}
@media screen and (max-width: 1280px){
	#mainimage #key img{
		height: 670px;
		object-fit: cover;
		object-position: 50%;
	}
}
@media screen and (max-width: 980px){
	#mainimage .key-ttl{
		width: 286px;
	}
	#mainimage .key-ttl .icon{
		width: 80px;
		margin-bottom: 15px;
	}
	#mainimage .key-ttl .ttl{
		font-size: 26px;
		margin-bottom: 16px;
	}
	#mainimage .key-ttl .ttl small{
		font-size: 19px;
		line-height: 30px;
	}
	#mainimage .key-ttl .txt{
		font-size: 14px;
	}
	#mainimage #key img{
		height: 530px;
	}
}
@media screen and (max-width: 767px){
	.header__tit__sp{
		font-size: 12px;
		line-height: 18px;
		letter-spacing: 0;
		font-weight: 500;
		/* color: #fff;
		position: absolute;
		left: 12px;
		right: 12px;
		top: 10px;
		z-index: 1; */
		padding: 0 10px 10px;
	}
	#mainimage .key-ttl{
		width: auto;
		left: 0;
		right: 0;
		transform: translateY(-50%);
		padding: 0;
	}
	#mainimage .key-ttl .icon{
		width: 7.9vw;
		margin: 0 auto 2vw;
	}
	#mainimage .key-ttl .ttl{
		font-size: 3.6vw;
		line-height: 5vw;
		font-weight: 900;
	}
	#mainimage .key-ttl .ttl small{
		font-size: 2.6vw;
		line-height: 4vw;
	}
	#mainimage .key-ttl .txt{
		font-size: 3.58975vw;
		line-height: 5.1282vw;
		text-align: justify;
	}
	#mainimage #key img{
		height: auto;
	}

	#mainimage .last_btn{
		padding: 2.051283vw 1.794871vw !important;
		display: flex;
		justify-content: space-between;
		position: fixed !important;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 999;
		box-sizing: border-box;
		text-align: center;
	}
	#mainimage .last_btn div{
		width: 31.913%;
	}
	#mainimage .last_btn div a{
		display: block;
		color: #fff;
		font-size: 3.076911vw;
		font-weight: 700;
		letter-spacing: 0;
		line-height: 4.61538vw;
		position: relative;
		box-sizing: border-box;
		padding: 3.58975vw 0 6.92308vw
	}
	#mainimage .last_btn div a:before{
		content: '';
		border: 1px solid #fff;
		position: absolute;
		left: 1.28205vw;
		right: 1.28205vw;
		top: 1.28205vw;
		bottom: 1.28205vw;
		z-index: 1;
	}
	#mainimage .last_btn div a:after{
		content: '';
		height: 4.103vw !important;
		background: url('../img/top/icon_arrow_kuki.png') no-repeat center/4.103vw, #fff;
		position: absolute;
		left: 1.28205vw !important;
		right: 1.28205vw !important;
		bottom: 1.28205vw;
		top: auto !important;
		z-index: 1;
	}
	#mainimage .last_btn div.btn1 a{
		background: #F6B888;
	}
	#mainimage .last_btn div.btn2 a{
		background: #88C7F6;
	}
	#mainimage .last_btn div.btn3 a{
		background: #F4A7B9;
	}
	#mainimage .last_btn div.btn2 a:after{
		background-image: url('../img/top/icon_arrow_satte.png');
	}
	#mainimage .last_btn div.btn3 a:after{
		background-image: url('../img/top/icon_arrow_kawaguchi.png');
	}
	#mainimage .last_btn div a span{
		display: block;
		font-size: 3.58975vw;
		line-height: 5.38462vw;
	}
	#mainimage .last_btn div a small{
		font-size: 2.8205vw;
	}
}