/* 
▼ basic.cssにて宣言
:root{
	--main-color:#1e2900;
	--main-color-2:#3b4f0040;
}
*/

/*====================================================================================================

  TOPPAGE

====================================================================================================*/

#toppage {
	margin: 0;
	padding: 0;
	overflow: hidden;
}

/*** top_MAINIMG *******************************************************************/
.top_mainimg { position: relative; }
.top_mainimg h2 {
	color: #FFF;
	z-index: 2;
	font-size: 250%;
	font-weight: 600;
	line-height: 150%;
	text-align: center;
	position: absolute;
	top: 50%;
	left: 0;
	right: 0;
	margin: auto;
	transform: translateY(-50%);
	text-shadow: 0 0 20px rgba(0, 0, 0, 0.4);
	font-family: "Noto Serif JP", sans-serif;
}
.top_mainimg img { width: 100%; height:700px; object-fit:cover; object-position:bottom; opacity: 0.67; }


/*** ABOUT *******************************************************************/
.top_about {
	/* display: flex;
	align-items: center;
	margin-block: 125px 145px;
	background:var(--main-color-2); */
	height:60vh;
}
.top_about .come { font-size: 125%; line-height: 190%;}

.top_about .movie_area {
	position:relative;
	height:100%;
}
.top_about .movie_area video {
	position:absolute;
	inset:0;
	width:100%;
	height:100%;
	object-fit:cover;
	filter: brightness(1.5);
	opacity:0.75;
	z-index:0;
}
.top_about .text_area {
	color:#fff;
	display:flex;
	justify-content:space-between;
	align-items:center;
	width:900px;
	position:absolute;
	inset:0;
	margin:auto;
	z-index:1;
	text-shadow:0px 0px 5px #000, 0px 0px 5px #000;
}
.top_about .text_area h3 { color:currentColor;}
.top_about .text_area .text_box { display:flex; flex-direction:column; gap:30px;}
.top_about .text_area .text_box .b_more1 a { color:currentColor; background:none;}
.top_about .text_area .text_box .b_more1 a:before {
	content:"";
	position:absolute;
	display:block;
	width:22px;
	aspect-ratio:22/11;
	background:url(../image/arrow_right_white.svg)no-repeat;
	top:50%;
	right:0;
	translate:0 -50%;
	filter:drop-shadow(0 0 5px #000) drop-shadow(0 0 5px #000);
}
.top_about .text_area .text_box .b_more1 a:after { background:currentColor; box-shadow:0px 0px 5px #000, 0px 0px 5px #000;}


/*** SERVICE *******************************************************************/
.top_service { width: 100%; position: relative; }
.top_service::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: -33px;
	width: 100%;
	height: 96.7%;
	background:var(--main-color-2);
}
.top_service img { width:100%; aspect-ratio:1400/467; object-fit:cover;}
.top_service h3 {
	position: absolute;
	z-index: 2;
	bottom: 155px;
	left: calc(((100% - 1220px) / 2) + 76px);
	color:#fff;
}
.top_service .b_more1 {
	position: absolute;
	z-index: 2;
	bottom: 80px;
	left: calc(((100% - 1220px) / 2) + 76px);	
}
.top_service .b_more1 a { color:#fff; background:url(../image/arrow_right_white.svg) no-repeat right}
.top_service .b_more1 a:after { background:#fff; }
.top_service .photo {
	position: relative;
	width: 100%;
	padding-left: calc((100% - 1220px) / 2);
}



/*** INFORMATION *******************************************************************/
.infoWrap {
	display: flex;
	column-gap: 20px;
	position: relative;
	justify-content: center;
	margin-block: 145px 185px;
}
.infoWrap::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: -60px;
	width: 100%;
	height: 228px;
	background: var(--main-color-2);
}
.infoWrap img { width: 100%; height:auto;}
.infoWrap .info_box { width: 600px; position: relative; }
.infoWrap .info_box .b_more2 {
	position: absolute;
	left: 0;
	right: 0;
	bottom: 32px;
	margin: auto;
}


