@charset "utf-8";
#main.index {
	color: #fff;
	padding-top: min(17.9487vw, 140px);
}

@media screen and (min-width:641px) {
	#main.index {padding-top: 0;}
}

/*mv*/
/**************/
#mv {
	position: relative;
}
#mv .kari {
	display: block;
	position: relative;
	z-index: 1;
}
#mv .video {
	display: block;
	width: 100%;
	height: 100%;
	aspect-ratio:1920/1080;
	margin: 0;
	position: relative;
	z-index: 1;
}
#mv .video img {display: block;}

#mv .scroll {
	position: absolute;
	z-index: 2;
	right: min(-3.125vw, -60px);
	bottom: min(9.375vw, 180px);
	transform: rotate(-90deg);
}
#mv .link_scr {
	display: flex;
	flex-direction: row-reverse;
	justify-content: center;
	align-items: center;
	text-decoration: none;
}
#mv .scr_txt {
	color: #fff;
	font-size: min(1.82vw, 1.4rem);
	font-family: "Noto Serif", serif;
	font-weight: 700;
	margin-left: 9px;
}
#mv .scr_arrow {
	width: 155px;
	height: 1px;
	background-color: rgba(255,255,255,.2);
	position: relative;
}
#mv .scr_arrow::before,
#mv .scr_arrow::after {
	content: '';
	display: block;
	position: absolute;
}
#mv .scr_arrow::after {
	width: 7px;
	height: 7px;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	transform: rotate(45deg);
	top: calc(50% - 4px);
	left: -5px;
	animation: scr_arrow 2.2s cubic-bezier(0.57, 0.18, 0.06, 0.93) infinite;
}
#mv .scr_arrow::before {
	width: 100%;
	height: 1px;
	background-color: #fff;
	left: 0;
	bottom: 0;
	animation: scr_line 2.2s cubic-bezier(0.57, 0.18, 0.06, 0.93) infinite;
}
#mv .caution_top {
  color: #fff;
	font-family: "Noto Sans JP", serif;
  font-size: clamp(1.3rem, 3.386vw, 2.6rem);
  padding: .3em 1em;
  background-color: #c1382f;
  position: absolute;
  z-index: 2;
  top: 0;
  left: 0;
  right: 0;
}
@keyframes scr_line {
	0%  {
		transform: scale(0,1);
    transform-origin: right top;
	}
	49% {
		transform: scale(1,1);
    transform-origin: right top;
	}
	51% {
		transform: scale(1,1);
    transform-origin: left top;
	}
	100%{
		transform: scale(0,1);
    transform-origin: left top;
	}
}
@keyframes scr_arrow {
	0%  {opacity: 1;}
	50% {opacity: 0;}
	100%{opacity: 1;}
}

@media screen and (min-width:641px) {
  #mv {padding-top: 0;}
  #mv .caution_top {
    font-size: min(1.667vw, 2.0rem);
    text-align: center;
    padding: .3em 1em .4em;
    top: min(10vw, 100px);
  }
}
@media screen and (max-width:640px) {
	#mv .scroll {display: none;}
}

/*news*/
/*****************/
#news {
	padding: min(17vw, 140px) min(5vw, 40px) 0;
}
#news .h2_news {
	font-size: clamp(4.5rem, 11.72vw, 9rem);
	font-family: "Noto Serif", serif;
	font-weight: 700;
	text-align: center;
	margin-bottom: min(8vw, 60px);
}
#news .h2_news .jp {
	display: block;
	font-size: clamp(1.5rem, 3.908vw, 3rem);
	font-family: "Noto Serif", serif;
}

@media screen and (min-width:641px) {
	#news {
		padding: min(5.2vw, 100px) min(5vw, 40px) 0;
		min-height: auto;
	}
	#news .h2_news {
		font-size: min(8.33vw, 6.4rem);
		margin-bottom: min(5.16vw, 60px);
	}
	#news .h2_news .jp {font-size: min(2.606vw, 2rem);}
	#news .news_list {
		max-width: 1000px;
		max-height: 600px;
		overflow: auto;
		margin: auto;
	}
}
@media screen and (min-width:840px) {
	#news {
		min-height: auto;
	}
}
@media screen and (min-width:1001px) {
	#news {
		padding: min(5.2vw, 100px) 0px 0;
	}
}
@media screen and (min-width:1770px) {
}


/*intro*/
.section_ind .__intro {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}
.section_ind .__intro {
	/*height: calc(100vh - 300px);*/
}
.section_ind .__intro * {
	color: #fff;
	font-family: "Noto Serif", serif;
	font-weight: 500;
}
.section_ind .__intro .h2_name {
	font-size: clamp(6.9rem, 17.96vw, 13.8rem);
	margin-bottom: min(6vw, 45px);
}
.section_ind .__intro .notice {
	font-size: clamp(2.4rem, 6.25vw, 4.8rem);
	margin-bottom: min(6vw, 45px);
}
.section_ind .__intro .notice .notice_mn {
	font-size: clamp(3.5rem, 9.12vw, 7rem);
	font-style: normal;
}
.section_ind .__intro .h2_comming {
	font-size: clamp(1.9rem, 4.948vw, 3.8rem);
}
.section_ind .__intro .catch {
	font-size: clamp(1.5rem, 3.908vw, 3rem);
	line-height: 1.8;
	text-align: center;
	/*margin-bottom: min(6vw, 45px);*/
	margin: 0 auto min(10.2vw, 80px);
}

.section_ind .__intro .logo_about {
	width: min(80vw, 442px);
}

@media screen and (min-width:641px) {
	.section_ind .__intro {
		/*padding-top: min(10vw, 120px);*/
	}
	.section_ind .__intro .h2_name {
		font-size: clamp(5.8rem, 11.834vw, 11.6rem);
		margin-bottom: min(2.03125vw, 18px);
	}
	.section_ind .__intro .notice {
		font-size: clamp(2rem, 4.082vw, 4rem);
		margin-bottom: min(2.03125vw, 21px);
	}
	.section_ind .__intro .notice .notice_mn {
		font-size: clamp(2.8rem, 5.714vw, 5.6rem);
	}
	.section_ind .__intro .h2_comming {
		font-size: clamp(1.65rem, 3.368vw, 3.3rem);
		font-weight: 300;
	}
	.section_ind .__intro .catch {
		font-size: clamp(1.5rem, 3.062vw, 3rem);
		/*margin-bottom: min(2.03125vw, 18px);*/
	}
}
@media screen and (min-width:1200px) {
	.section_ind .__intro {
		display: block;
		text-align: center;
	}
	.section_ind .__intro {
		height: auto;
		/*padding-top: 120px;*/
	}
}

/*about*/
/***************/
#about {
	padding: min(10.25vw, 80px) min(5vw, 40px) min(18vw, 140px);
}
#about .cast,
#about .catch,
#about .h2_top .year,
#about .h2_top {
	font-family: "Noto Serif", serif;
	font-weight: 700;
	text-align: center;
}
#about .h2_top {
	font-size: clamp(4.2rem, 10.94vw, 8.4rem);
	line-height: 1.2;
	margin-bottom: min(8.9vw, 70px);
}
#about .h2_top .year {font-size: clamp(5rem, 13.01vw, 10rem);}
#about .h2_ttl {
	width: 100%;
}
#about .catch {
	/*font-size: clamp(2.1rem, 5.47vw, 4.2rem);*/
	/*margin-bottom: 1rem;*/
	/*margin-bottom: 3rem;*/
}
#about .cast {
	font-size: clamp(1.5rem, 3.908vw, 3rem);
	margin-bottom: min(8.9vw, 70px);
}
#about .wrap_txt {
	margin-bottom: min(11.5vw, 90px);
}

#about .block.__flex {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#about .block.__flex .btn_l {
	width: 100%;
	margin-bottom: 2rem;
}

#about .date_dl {
	/*width: 50%;*/
	margin-bottom: min(5vw, 40px);
}
#about .__flex .date_dl {
	width: 50%;
}
#about .date_dt {
	font-size: clamp(1.5rem, 3.908vw, 3rem);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
	margin-bottom: min(2vw, 15px);
}
#about .date_dt::before {
	content: '■';
	display: inline-block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: clamp(1rem, 2.345vw, 1.8rem);
	margin-right: 4px;
	vertical-align: .25em;
}
#about .date_dd {
	font-size: clamp(1.3rem, 3.386vw, 2.6rem);
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	/*line-height: 1.8;*/
	line-height: 1.6;
}
#about .date_dd.__list {
	padding-left: 2em;
	position: relative;
}
#about .date_dd.__list::before {
	content: '';
	display: block;
	background-color: #fff;
	border-radius: 50%;
	width: .3em;
	height: .3em;
	position: absolute;
	left: 1.2em;
	top: .7em;
}
#about .btn01 {
	margin-bottom: 0;
}
#about .h3_ttl::before {display: none;}


#about .about_dl {
	margin-bottom: min(12vw, 90px);
	display: flex;
	flex-wrap: wrap;
}
#about .date_dt,
#about .date_dd .list_li,
#about .abt_dt,
#about .abt_dd,
#about .abt_dd span {
	font-size: clamp(1.3rem, 3.386vw, 2.6rem);
	font-family: 'Noto Sans JP', sans-serif;
}
#about .abt_dd a {
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: clamp(1.1rem, 2.865vw, 2.2rem);
	display: block;
}
#about .abt_dt {width: 4em;}
#about .abt_dd {width: calc(100% - 4em);}
#about .abt_dt.lng {width: 5em;}
#about .abt_dd.lng {width: calc(100% - 5em);}

#about .date_dt::before,
#about .abt_dd span {display: inline-block;}
#about .abt_dt::after,
#about .abt_dt::before {
	display: inline-block;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: clamp(1rem, 2.345vw, 1.8rem);
}
#about .date_dt::before,
#about .abt_dt::before {
	content: '■';
	margin-right: 4px;
}
#about .abt_dt::after {
	content: '：';
}
#about .flex_wrap {
	flex-wrap: wrap;
}
#about .flex_wrap > .h2_ttl {
	width: 100%;
}

#about iframe {
	margin-top: min(4.8vw, 35px);
	width: 100%;
	/*height: 100%;*/
	/*aspect-ratio:670/460;*/
	aspect-ratio:500/256;
}
#about .date_dd .swp {
	display: inline-block;
}

@media screen and (min-width:641px) {
	#about {
	}
	#about .h2_top {
		font-size: min(8.33vw, 6.4rem);
		margin-bottom: min(5.8vw, 70px);
	}
	#about .h2_top .year {font-size: min(9.12vw, 7rem);}
	/*#about .catch {
		font-size: min(3.908vw, 3rem);
		text-align: center;
	}*/
	#about .cast {
		font-size: min(2.345vw, 1.8rem);
		margin-bottom: min(3vw, 20px);
	}
	#about .wrap_txt {
		text-align: center;
		line-height: 2;
		max-width: 1100px;
		margin: 0 auto min(7.5vw, 90px);
	}
	#about .date_dt {
		font-size: min(2.085vw, 1.6rem);
		margin-bottom: .8em;
	}
	#about .date_dt::before {
		font-size: min(1.563vw, 1.2rem);
	}
	#about .date_dd {
		font-size: min(2.085vw, 1.6rem);
	}
	#about .txt_m.__map {font-size: min(1.563vw, 1.2rem);}
	#about iframe {
		aspect-ratio: 500/256;
		margin-top: 10px;
	}
	#about .abt_dt,
	#about .abt_dd,
	#about .abt_dd span {
		font-size: min(2.085vw, 1.6rem);
	}
	#about .abt_dd a {
		font-size: clamp(0.6rem, 1.563vw, 1.2rem);
		margin: .8em 0;
	}
	#about .abt_dt::after,
	#about .abt_dt::before {
		font-size: min(1.563vw, 1.2rem);
	}
	#about .abt_dt,
	#about .abt_dd {margin-bottom: .4em;}
	#about .date_dd {margin-bottom: .2em;}
	#about .btn01 {width: 100%;}
}
@media screen and (min-width:980px) {
	#about .flex_wrap {
		max-width: 1080px;
		margin: auto;
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
	}
	#about .flex_wrap .block {
		width: min(48.5%, 500px);
	}
  #about {padding-bottom: 100px;}
  #about .about_dl {margin-bottom: 0;}
}
@media screen and (min-width:1240px) {
	#about {
	}
}

@media screen and (max-width:350px){
	#about .date_dt {font-size: clamp(1.3rem, 3.386vw, 2.6rem);}
	#about .date_dd {font-size: clamp(1.2rem, 2.085vw, 1.6rem);}
}
