@charset "utf-8";



/*-- 

content_kv

====================================================== --*/

#content_kv{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	background:var(--c-black) url("../img/top/bg_kv.webp") no-repeat center center;
	background-size:120%;
	width:100%;
	aspect-ratio:2800 / 1440;
	overflow:hidden;
}
.content_kv_inner{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:flex-start;
	max-width:140rem;
	z-index:2;
	overflow:hidden;
}
.content_kv_title{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	gap:clamp(2rem, 2.1428vw, 3rem);
	color:var(--c-white);
	text-align:center;
	filter:drop-shadow(1rem 1rem 3rem rgba(0,0,0,1));
	padding:4rem;
}
.content_kv_title ._title{
	font-size:clamp(2.6rem, 4.5714vw, 6.4rem);
	font-feature-settings:"palt" 1;
	letter-spacing:0.2rem;
	line-height:1.4;
	filter:drop-shadow(0 0 1rem rgba(0,0,0,1));
}
.content_kv_title ._text{
	font-size:clamp(1.4rem, 1.2857vw, 1.8rem);
	filter:drop-shadow(0 0 1rem rgba(0,0,0,1));
}
/* tb */
@media screen and (max-width:1000px){

}
/* sp */
@media screen and (max-width:767px){
	#content_kv{
		background:var(--c-black) url("../img/top/bg_kv_sp.webp") no-repeat center center;
		background-size:120%;
		aspect-ratio:auto;
	}
	.content_kv_inner{
		min-height:clamp(35rem, 65.189vw, 50rem);
	}
	.content_kv_title{
		padding:4rem 2rem;
	}
}
/* sp */
@media screen and (max-width:374px){
	.content_kv_inner{
		min-height:32rem;
	}
	.content_kv_title{
		padding:0 1rem;
	}
}


/*-- 

content_event

====================================================== --*/

#content_event{
	position:relative;
}
#content_event::before{
	content:"";
	height:0.5rem;
	width:100%;
	background:var(--c-sub-grade2);
	position:absolute;
	top:0;
	left:0;
	right:0;
	margin:auto;
}

/*-- box_event --*/

.lst_event{
	display:flex;
	align-items:center;
	justify-content:flex-start;
	flex-direction:column;
	gap:4rem;
}
.lst_event_item{
	display:flex;
	align-items:center;
	justify-content:flex-start;
	gap:4%;
}
.lst_event_photo{
	width:33%;
	min-width:34rem;
	overflow:hidden;
}
.lst_event_photo a:hover{
	opacity:1;
}
.lst_event_photo a img{
	transition:.3s;
}
.lst_event_photo a:hover img{
	transform:scale(1.1);
}
.lst_event_text{
	width:63%;
	display:flex;
	align-items:flex-start;
	justify-content:flex-start;
	flex-direction:column;
	gap:1rem;
}
.lst_event_text ._title{
	font-size:2.4rem;
}
.lst_event_text ._time{
	font-size:1.4rem;
}
.ico_new{
	font-size:1.4rem;
	font-weight:500;
	color:var(--c-white);
	background:var(--c-black);
	line-height:1;
	padding:0.2rem 0.6rem;
}
/* tb */
@media screen and (max-width:1000px){
	.lst_event_text ._title{
		font-size:2.2rem;
	}
}
/* sp */
@media screen and (max-width:767px){
	.lst_event{
		gap:3rem;
	}
	.lst_event_item{
		display:flex;
		align-items:center;
		justify-content:flex-start;
		flex-direction:column;
		gap:1rem;
		max-width:50rem;
		width:100%;
	}
	.lst_event_photo{
		width:100%;
		min-width:100%;
	}
	.lst_event_text{
		width:100%;
		gap:1rem;
	}
	.lst_event_text ._title{
		font-size:1.8rem;
	}
	.lst_event_text ._time{
		font-size:1.2rem;
	}
	.ico_new{
		font-size:1.2rem;
	}
}



/*-- 

content_purpose

====================================================== --*/

#content_purpose{
	position:relative;
	display:flex;
	align-items:center;
	justify-content:center;
	overflow:hidden;
	padding-top:15rem;
	padding-bottom:15rem;
	transition:.3s;
}
#content_purpose::before{
	content:"";
	display:block;
	width:100%;
	height:100%;
	position:absolute;
	top:0;
	left:0;
	background:var(--c-black) url("../img/top/bg_purpose.webp") no-repeat center center;
	background-size:cover;
	z-index:-1;
}

/*-- box_purpose--*/

.box_purpose{
	display:flex;
	align-items:center;
	justify-content:center;
	flex-direction:column;
	color:var(--c-white);
	width:72.4rem;
	text-align:center;
	gap:4rem;
}
.box_purpose ._copy{
	font-size:5rem;
	line-height:1.2;
}
.box_purpose ._text{
	font-size:1.8rem;
}
/* tb */
@media screen and (max-width:1000px){
	#content_purpose{
		padding-top:10rem;
		padding-bottom:10rem;
	}
	.box_purpose ._copy{
		font-size:4rem;
	}
	.box_purpose ._text{
		font-size:1.6rem;
	}
}
/* sp */
@media screen and (max-width:767px){
	#content_purpose{
		padding-top:5rem;
		padding-bottom:5rem;
	}
	.box_purpose ._copy{
		font-size:3rem;
	}
	.box_purpose ._text{
		font-size:1.35rem;
		text-align:left;
	}
}



/*-- 

content_overview

====================================================== --*/

.pht_overview{
	width:100%;
	max-width:110rem;
	margin:8rem auto 0;
}
/* sp */
@media screen and (max-width:767px){
	.pht_overview{
		margin-top:4rem;
	}
}


