@charset "UTF-8";
/*----------------------------------------

	- content
		- .news-section
			- .news-ttl
		- .information-section
			- .information-ttl

-----------------------------------------*/
@import url(root.css);

.bg-video{
  position: fixed;
  top: 50%;
  left: 50%;
  width: 177.78vh;
  height: 100vh;
  transform: translate(-50%, -50%);
  z-index: -1;
	display: none;
}
@media (min-aspect-ratio: 16/9) {
  .bg-video {
    width: 100vw;
    height: 56.25vw;
  }
}
@media (min-aspect-ratio: 9/16) {
	.bg-video {
		height: 177.78vh;
	}
}

@media (min-width: 768px) {
	.video-pc {
		display: block;
	}
}

@media (max-width: 767px) {
	.video-sp {
		display: block;
	}
}

.kv {
	background-color: #000;
	overflow: hidden;
	position: relative;
	width: 100%;
}
.kv::before {
	background: linear-gradient(rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.89) 46.31%, rgba(0, 0, 0, 0.88) 100%);
	bottom: 0;
	content: "";
	height: 19.54612vw;/*267*/
	left: 0;
	position: absolute;
	width: 100%;
}

.kv .c-caption {
	bottom: 12vw;
	color: #fff;
	z-index: 20;
}
@media (max-width: 767px) {
	.kv .c-caption {
		bottom: 46vw;
	}
}

.kv_video {
	display: none;
	margin: 0 0 0 -2.5%;
	position: relative;
	width: 105%;
	z-index: 0;
}

.kv_scene {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	overflow: hidden;
	/* transition: opacity 1s ease; */
	/* display: none; */
	visibility: hidden;
}
.kv_scene01 { 
	animation: fadeIn 3s ease forwards;
	background-color: #000;
	z-index: 1;
	opacity: 1;
	display: block;
	/* align-items: center; */
	/* justify-content: center; */
	visibility: visible;
}
.kv_scene01_logo,.kv_scene03_logo {
	/* width: 305.99px; */
	/* height: 302.86px; */
	width: calc(var(--vw) * 680.2742);
	height: calc(var(--vw)*117.7556);
	position: absolute;
	top: calc(var(--vw)*252.5375);
	left: calc(var(--vw)*109.5525);
	/* right: 0; */
	/* margin: 0 auto; */
}

@media (max-width: 767px) {
	.kv_scene01_logo,.kv_scene03_logo {
		width: calc(var(--vw)*303.3361);
		height: calc(var(--vw)*125.364);
		top: calc(var(--vw)*53.5698);
		left: 0;
		right: 0;
		margin: 0 auto;
	}
}

.kv_scene02 { 
	z-index: 2;
}
.kv_scene02_cover { 
	z-index: 2;
	position: absolute;
	width: 100%;
	height: 100%;
	display: block;
	/* background-color: #f00; */
	top: 0;
	left: 0;
}
.kv_scene03 { 
	z-index: 3;
	display: block !important;
	/* display: none; */
}

.kv_scene03_bg {
	overflow: hidden;
	position: relative;
	width: calc(var(--vw)*1366);
	height: calc(var(--vw)*898);
}

@media (max-width: 767px) {
	.kv_scene03_bg {
		width: calc(var(--vw)*390);
		height: calc(var(--vw)*726);
	}
}

.kv_scene03_bg img { 
	width: calc(var(--vw)*1600);
	position: absolute;
	right: calc(var(--vw)*-284);
	/* transition: 7s; */
}

@media (max-width: 767px) {
	.kv_scene03_bg img { 
    width: calc(var(--vw) * 1200);
    right: calc(var(--vw) * -400);
		bottom: calc(var(--vw) * 100);
		/* transition: 7s; */
	}
}

.kv_scene.active .kv_scene03_bg img {
	width: calc(var(--vw)*1400);
	right: calc(var(--vw)*-20);
}

@media (max-width: 767px) {
	.kv_scene.active .kv_scene03_bg img {
		width: calc(var(--vw) * 577);
		right: calc(var(--vw) * 0);
		bottom: calc(var(--vw) * 200);
		/* width: calc(var(--vw)*1100);
		right: calc(var(--vw)*-144); */
		/* right: calc(var(--vw)*-400); */
	}
}

.kv_scene.active {
	opacity: 1;
	visibility: visible;
}

.kv_scene02.active {
	animation: fadeIn 3s ease forwards;
}

/* .kv_scene03.active {
	animation: fadeIn 3s ease forwards;
} */

/* .scene4_content.animate {
	animation: fadeIn 4s ease forwards;
} */

@keyframes slideIn {
	from { transform: translateX(0); opacity: 0; }
	to { transform: translateX(-10vw); opacity: 1; }
}

@keyframes fadeInUp {
	from { transform: translateY(0); opacity: 0; }
	to { transform: translateY(-15vw); opacity: 1; }
}

@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}

@keyframes slideInSp {
	from { transform: translateX(-110vw); opacity: 0; }
	to { transform: translateX(-210vw); opacity: 1; }
}

@keyframes fadeInUpSp {
	from { transform: translateY(0); opacity: 0; }
	to { transform: translateY(-30vw); opacity: 1; }
}

/* スキップボタン */
.skip-btn {
	position: absolute;
	top: 20px;
	right: 20px;
	/* z-index: 10; */
	z-index: 2;
	background: rgba(0, 0, 0, 0.6);
	color: white;
	border: none;
	padding: 0.6em 1.2em;
	border-radius: 5px;
	cursor: pointer;
	font-size: 1rem;
	/* display: none; */
}

.skip-btn.show {
	display: block;
}

.kv_logo {
	left: 49.8%;
	opacity: 0;
	position: absolute;
	top: 51%;
	transform: translate(-50%, -50%);
	transition: opacity 1s ease;
	width: 20.85%;
	z-index: 5;
}
.kv_logo.active {
  opacity: 1;
}

@media (min-width: 768px) {
	.kv,
	.kv_video,
	.kv_scene {
		height: calc((768vw / 1366) * 100);
	}
	.kv-pc {
		display: block;
	}

	.kv_scene2 img {
		height: calc((768vw / 1366) * 100);
		width: calc((1534vw / 1366) * 100);
	}
}
@media (max-width: 767px) {
	.kv,
	.kv_video,
	.kv_scene {
		height: calc((693vw / 390) * 100);
	}
	.kv_video{
		margin: 0;
	}
	.kv-sp {
		display: block;
	}

	/* .scene2_content.animate {
		animation: slideInSp 3s ease forwards;
	}

	.scene3_content.animate {
		animation: fadeInUpSp 3s ease forwards;
	}
	
	.kv_scene2 img {
		height: calc((693vw / 390) * 100);
		width: calc((1384vw / 390) * 100);
	}

	.kv_scene3 img {
		height: calc((804vw / 390) * 100);
		margin-left: calc((-500vw / 390) * 100);
		width: calc((1102vw / 390) * 100);
	}
	
	.kv_scene4 img {
		height: calc((804vw / 390) * 100);
		margin-left: calc((-490vw / 390) * 100);
		margin-top: calc((-55vw / 390) * 100);
		width: calc((1102vw / 390) * 100);
	} */

	.kv_logo {
		left: 49.3%;
		top: 49.2%;
		width: 51.9%;
	}

}

.kv_title {
	/* left: 13.03074vw; */ /*178*/
	/* top: 17.78916vw; */ /*243*/
	left: 50%;
	position: absolute;
	top: 7vw;
	transform: translateX(-50%);
	width: 50.07320vw; /*684*/
}

.kv_title_ja {
	margin: 0 auto 2.26939vw; /*31*/
	width: 33.52855vw;
}

.kv_info {
	/* bottom: 2.26939vw; */
	/*31*/
	bottom: 0;
	color: #AF9265;
	left: 0;
	position: absolute;
	text-align: center;
	width: 100%;
	z-index: 10;
	padding: calc(var(--vw)*80) 0  calc(var(--vw)*27) 0;
	/* background-image: url(../img/top/kv/cover.webp); */
	/* background-size: 100% auto; */
	/* background-position: top; */
  background-image: linear-gradient(180deg, transparent, rgba(0,0,0,0.5) 20%, rgba(0,0,0,1) 40%, #000000);
	/* background-color: #000; */
}

@media screen and (max-width: 767px) {
	.kv_info {
		text-align: center;
		/* background-image: url(../img/top/kv/cover_sp.webp); */
		/* background-position: bottom; */
		padding: calc(var(--vw)*134) 0  calc(var(--vw)*41) 0;
	}
}

.kv_info_s {
	font-size: 2.48901vw;/*34*/
}

.kv_info_s .small {
    font-size: 0.7vw;
    top: -2.3em;
}


@media (max-width: 767px) {
	.kv_info_s .small {
		font-size: 1.8vw;
		top: -2em;
	}
}

.kv_info_l {
	font-size: 3.36749vw;/*46*/
}

.kv_info_l_num {
	font-size: 4.39238vw;/*60*/
}

@media screen and (max-width: 767px) {
	.kv::before {
		background: linear-gradient(rgba(0, 0, 0, 0) 0%, #141414 55.21%, #000 100%);
		height: 70vw;
		/* height: 79.74358vw; */ /*311*/
	}
	.kv_title {
		/* left: 10.76923vw; *//*42*/
		top: 14.35897vw;/*56*/
		width: 78.46153vw;/*306*/
	}

	.kv_title_ja {
		margin-bottom: 3.07692vw;/*12*/
		width: 100%;
	}



	.kv_info_s {
		font-size: 5.89743vw;/*23*/
		line-height: 8.71794vw;/*34*/
	}

	.kv_info_l {
		font-size: 5.89743vw;/*28*/
	}

	.kv_info_l_num {
		font-size: 7.17948vw;/*60*/
	}
}

.outline {
	background-color: rgba(172, 143, 101, 0.8);
	color: #fff;
	display: flex;
	padding: 2.92825vw; /*40*/
}

@media screen and (max-width: 767px) {
	.outline {
		padding: calc(var(--vw)*10) 0 calc(var(--vw)*10);
	}
}


.outline .-pc {
	display: block;
}
@media screen and (max-width: 767px) {
	.outline .-pc {
		display: none;
	}
}

.outline .-sp {
	display: none;
}
@media screen and (max-width: 767px) {
	.outline .-sp {
		display: flex;
	}
}

.outline_wrap {
	width: calc(var(--vw)*1235.78);
	display: flex !important;
	justify-content: center;
}
@media screen and (max-width: 767px) {
	.outline_wrap {
		width: 100%;
		flex-direction: column;
		align-items: center;
	}
}


.outline_wrap svg {
	width: 100%;
}
.outline_item {
	border-left: 1px solid #fff;
	/* align-items: center;
	display: flex;
	font-size: 1.75695vw;
	font-weight: 500;
	justify-content: center;
	line-height: 2.63543vw;
	text-align: center;
	width: calc(100% / 3); */
	padding-left: calc(var(--vw)*38);
	margin-left: calc(var(--vw)*38);
}

@media screen and (max-width: 767px) {
	.outline_item {
		padding-left: 0;
		margin-left: 0;
		justify-content: center;
	}
}

.outline_item:first-child {
	border-left: none;
	padding-left: 0;
	margin-left: 0;
}
.outline_item.-item01 {
	width: calc(var(--vw)*471.55);
}
@media screen and (max-width: 767px) {
	.outline_item.-item01 {
		width: 90%;
		border-top: none;
	}
	.outline_item.-item01 svg {
		width: calc(var(--vw)*351);
	}
}

.outline_item.-item02 {
	width: calc(var(--vw)*232);
}
@media screen and (max-width: 767px) {
	.outline_item.-item02 {
		width: 90%;
	}
	.outline_item.-item02 svg {
		width: calc(var(--vw)*326);
	}
}

.outline_item.-item03 {
	width: calc(var(--vw)*360);
}
@media screen and (max-width: 767px) {
	.outline_item.-item03 {
		width: 90%;
	}
	.outline_item.-item03 svg {
		width: calc(var(--vw)*326);
	}
}

.outline_info {
	align-items: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 2em 0;
	width: 88%;
}
.outline_info dt {
	align-items: center;
	display: flex;
	font-size: 0.87847vw; /*12*/
	justify-content: flex-end;
	line-height: 1.17130vw; /*16*/
	width: 8em;
}
.outline_info dt:first-of-type {
	margin-top: 0;
}
.outline_info dd {
	align-items: flex-end;
	display: flex;
	height: 2.85505vw;
	justify-content: space-between;
	width: calc(100% - 7.32064vw); /*100*/
}
.outline_info dd:first-of-type {
	margin-top: 0;
}
.outline_info_station,
.outline_info_minutes {
	font-feature-settings: "palt";
	font-size: 1.31771vw; /*18*/
}
.outline_info_station span,
.outline_info_minutes_after {
	font-size: 1.75695vw; /*24*/
}
.outline_info_minutes_num {
	display: inline-block;
	font-size: 2.85505vw; /*39*/
	margin-bottom: -.4em;
}

@media screen and (max-width: 767px) {
	.outline {
		display: block;
		/* padding: 2.56410vw 0; */
		/*10*/
	}
	.outline_item {
		border-left: none;
		border-top: 1px solid #fff;
		box-sizing: border-box;
		font-size: 4.10256vw; /*16*/
		font-weight: 500;
		line-height: 6.66666vw;/*26*/
		padding: 4.61538vw 0;/*18 32*/
		width: 100%;
	}
	.outline_item:first-child {
		border-top: none;
		padding: 4.61538vw;/*18*/
	}
	.outline_info {
		margin: 0 auto;
		width: 96%;
	}
	.outline_info dt {
		font-size: 3.07692vw; /*12*/
		height: 8.20512vw;/*32*/
		line-height: 3.07692vw; /*12*/
	}
	.outline_info dt:first-of-type {
		margin-top: 0;
	}
	.outline_info dd {
		height: 8.20512vw;/*32*/
		width: calc(100% - 28vw);
	}
	.outline_info dd:first-of-type {
		margin-top: 0;
	}
	.outline_info_station,
	.outline_info_minutes {
		font-size: 4.10256vw; /*16*/
	}
	.outline_info_station span,
	.outline_info_minutes_after {
		font-size: 5.12820vw; /*20*/
	}
	.outline_info_minutes_num {
		font-size: 7.17948vw; /*28*/
		margin-bottom: -.4em;
	}
}

/* .news-section {
	width: min(76%, 550px);
	margin: 0 auto 90px;
}

.news-ttl {
	color: #1a1816;
	font-weight: 500;
	font-size: 2.0rem;
	line-height: 1;
	font-family: 'Cormorant Garamond', '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif;
}

.news-section dl {
	display: grid;
	gap: 8px;
	align-items: baseline;
	width: 100%;
	margin: 30px auto 0;

	grid-template: auto / 9.6em 1fr;
}

.news-section dl dt {
	grid-column: 1;
	font-size: 1.4rem;
}

.news-section dl dd {
	grid-column: 2;
	font-size: 1.6rem;
	line-height: 2;
}

.news-section dl dd a {
	color: var(--color_black_chocolate);
}

.news-section dl dd a:hover {
	text-decoration: underline;
}

@media screen and (max-width: 767px) {
	.news-section {
		margin: 0 auto 50px;
	}

	.news-ttl {
		font-size: 2.0rem;
	}

	.news-section dl {
		gap: 0;
		align-items: baseline;
		margin: 26px auto 0;

		grid-template: auto / 1fr;
	}

	.news-section dl dt {
		grid-column: unset;
		font-size: 1.2rem;
	}

	.news-section dl dd+dt {
		margin-top: 19px;
	}

	.news-section dl dd {
		grid-column: unset;
		font-size: 1.4rem;
	}
} */

.information-section {
	background-color: rgba(0, 0, 0, 0.8);
	color: #fff;
	margin: 0;
	padding: 5.27086vw 0;/*72*/
	text-align: center;
}
.information-ttl {
	margin-bottom: 10px;
	color: #fff;
	font-size: 1.75695vw; /*24*/
	font-weight: 400;
	line-height: 2.48901vw;/*34*/
	/* font-weight: 300;
	font-size: 2.0rem; */
	line-height: 1;
	/* font-family: 'Cormorant Garamond', '游明朝', YuMincho, 'Hiragino Mincho ProN W3', 'ヒラギノ明朝 ProN W3', 'Hiragino Mincho ProN', 'HG明朝E', 'ＭＳ Ｐ明朝', 'ＭＳ 明朝', serif; */
	letter-spacing: 0.1em;
}
.information-ttl_s {
	font-size: 1.02489vw;/*14*/
}
.information-section_text {
	font-size: 2.48901vw;/*34*/
	margin-top: 2.34260vw;/*32*/
}

@media screen and (max-width: 767px) {
	.information-section {
		padding: 8.46153vw 15.38461vw;/*33 60*/
	}
	.information-ttl {
		font-size: 4.10256vw; /*16*/
	}
	.information-ttl_s {
		font-size: 3.07692vw;/*12*/
	}
	.information-section_text {
		font-size: 5.64102vw;/*22*/
		margin-top: 6.15384vw;/*24*/
	}
	.information_blank {
		width: 100%;
		height: calc(var(--vw)*30);
		background-color: rgba(172, 143, 101, 0.8);
	}
	.information-section .c-entrybtn {
		margin-top: calc(var(--vw)*32);
	}
}


/* merit */

.merit {
	background-color: #000000;
}

@media screen and (max-width: 767px) {

}

.merit_container {
	margin: 0 auto;
	width: calc(var(--vw)*1000);
	/* width: 94%; */
	padding: calc(var(--vw)*87) 0 calc(var(--vw)*103) 0;
}

@media screen and (max-width: 767px) {
	.merit_container {
		width: calc(var(--vw)*329);
		padding: calc(var(--vw)*48) 0 calc(var(--vw)*56) 0;
	}
}

.merit_title {
	line-height: calc(34/24);
	font-size: calc(var(--vw)*24);
	color: #AF9265;
	width: calc(var(--vw)*472);
	margin: 0 auto;
	text-align: center;
	border-bottom: 1px solid #AF9265;
	padding: 0 0 calc(var(--vw)*24);
}

@media screen and (max-width: 767px) {
	.merit_title {
		line-height: calc(14/9);
		font-size: calc(var(--vw)*14);
		width: 100%;
		padding: 0 0 calc(var(--vw)*8);
	}
}

.merit_catch {
	line-height: calc(34/24);
	font-size: calc(var(--vw)*24);
	color: #fff;
	text-align: center;
	margin-top: calc(var(--vw)*24);
}

@media screen and (max-width: 767px) {
	.merit_catch {
		line-height: calc(23/14);
		font-size: calc(var(--vw)*14);
		margin-top: calc(var(--vw)*16);
	}
}

.merit_contents {	
	margin-top: calc(var(--vw)*62);
}

@media screen and (max-width: 767px) {
	.merit_contents {	
		margin-top: calc(var(--vw)*32);
	}
}

.merit_contents_title {	
	line-height: calc(34/26);
	font-size: calc(var(--vw)*26);
	color: #fff;
	text-align: center;
}

@media screen and (max-width: 767px) {
	.merit_contents_title {	
		line-height: calc(23/16);
		font-size: calc(var(--vw)*16);
	}
}

.merit_contents_list {	
	display: flex;
	justify-content: space-between;
	margin-top: calc(var(--vw)*62);
}

.merit_contents_list_item .c-caption {
	color: #fff;
}

@media screen and (max-width: 767px) {
	.merit_contents_list {	
		margin: 0 auto;
		margin-top: calc(var(--vw)*8);
		flex-direction: column;
		width: calc(var(--vw)*203);
	}
	
}

.merit_contents_list_item {	
	width: calc(var(--vw)*310);
	position: relative;
}

.merit_contents_list_item:after {
	content: "";
	display: block;
	width: 1px;
	height: calc(var(--vw)*64);
	background-color: #AF9265;
	transform: rotate(30deg);
	position: absolute;
	right: calc(var(--vw)*-10);
	top: calc(var(--vw)*-10);
}

.merit_contents_list_item:last-child:after {
	display: none;
}

@media screen and (max-width: 767px) {
	.merit_contents_list_item:after {
		display: none;
	}
	.merit_contents_list_item {	
		/* width: calc(var(--vw)*102); */
		width: 100%;
	}
}

.merit_contents_list_title {
	display: flex;
	justify-content: center;
	align-items: center;
	/* line-height: calc(30/16); */
	font-size: calc(var(--vw)*24);
	height: calc(var(--vw)*40);
	color: #AF9265;
	/* border: 1px solid #AF9265; */
	text-align: center;
}

@media screen and (max-width: 767px) {
	.merit_contents_list_title {
		line-height: calc(16/12);
		font-size: calc(var(--vw)*14);
		height: auto;
		padding: calc(var(--vw)*17) 0;
		border-bottom: 1px solid #AF9265;
	}
}


.merit_movie {
	margin: 0 auto;
	margin-top: calc(var(--vw)*60);
	width: calc(var(--vw)*670);
}

@media screen and (max-width: 767px) {
	.merit_movie {
		width: 100%;
		margin-top: 0;
	}
}

.merit_movie_title {
	/* border: 1px solid #af9265; */
	text-align: center;
	color: #af9265;
	font-size: calc(var(--vw)*24);
	padding: calc(var(--vw)*20) 0;
}

@media screen and (max-width: 767px) {
	.merit_movie_title {
		font-size: calc(var(--vw)*14);
		padding: calc(var(--vw)*17) 0;
	}
}

.merit_movie_wrap {
	/* border: 1px solid #fff; */
	/* height: calc(var(--vw)*448); */
	position: relative;
}

@media screen and (max-width: 767px) {
	.merit_movie_wrap {
		/* height: calc(var(--vw)*220); */
	}
}


.merit .c-entrybtn {
	margin-top: calc(var(--vw)*72);
}

@media screen and (max-width: 767px) {
	.merit .c-entrybtn {
		margin-top: calc(var(--vw)*38);
		width: calc(var(--vw)*270);
	}
}

/* movie */

.movie {
	background-color: #000;
	position: relative;
}

.movie_title_area {
	width: calc(var(--vw)*356);
	margin: 0 auto;
}

@media screen and (max-width: 767px) {
	.movie_title_area {
		width: calc(var(--vw)*211);
	}
}

.movie_title {
}
@media screen and (max-width: 767px) {
	.movie_title {
	}
}

.movie_title_ja {
	text-align: center;
	color: #AF9265;
	font-size: calc(var(--vw)*18);
	margin-top: calc(var(--vw)*16);
}
@media screen and (max-width: 767px) {
	.movie_title_ja {
		font-size: calc(var(--vw)*12);
		margin-top: calc(var(--vw)*9);
	}
}



.movie_title_arrow {
	width: calc(var(--vw)*70);
	margin: 0 auto;
	margin-top: calc(var(--vw)*30);
}
@media screen and (max-width: 767px) {
	.movie_title_arrow {
		width: calc(var(--vw)*34);
		margin-top: calc(var(--vw)*14);
	}
}

.movie_wrap {
	padding-top: 56.25%;
	position: relative;
	margin-top: calc(var(--vw)*64);
}

@media screen and (max-width: 767px) {
	.movie_wrap {
		/* padding: 0; */
		padding-top: 178%;
		width: 100%;
		/* height: calc(var(--vw)*500); */
		margin-top: calc(var(--vw)*32);
	}
}

.movie_wrap:after {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	z-index: 10;
	width: calc(var(--vw)*543);
	height: calc(var(--vw)*85);
	background-image: url(../img/top/movie/cover.webp);
	background-size: 100% auto;
	background-position: center bottom;
	right: 0;
}

@media screen and (max-width: 767px) {
	.movie_wrap:after {
		width: 100%;
		height: calc(var(--vw)*77);
		background-image: url(../img/top/movie/cover_sp.webp);
		background-size: 100% auto;
		background-position: center bottom;
	}
}

.movie_wrap iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	/* filter: hue-rotate(-20deg) saturate(0.8) brightness(0.95); */
}

.movie_wrap .movie-pc {
	display: block;
}
@media screen and (max-width: 767px) {
	.movie_wrap .movie-pc {
		display: none;
	}
}

.movie_wrap .movie-sp {
	display: none;
}
@media screen and (max-width: 767px) {
	.movie_wrap .movie-sp {
		display: block;
	}
}

.movie_overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	left: 0;
	top: 0;
  inset: 0;
  background: rgba(0, 0, 0, 0.4); /* 透明度調整 */
  pointer-events: none;
}


.movie_cover {
	width: calc(var(--vw)*84.97);
	height: calc(var(--vw)*119);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	/* top: 50%; */
	transition: 0.3s;
	cursor: pointer;
}

@media screen and (max-width: 767px) {
	.movie_cover {
		width: calc(var(--vw)*64);
		height: calc(var(--vw)*79.24);
	}
}

.movie_cover:hover {
	transform: scale(1.05);
}

@media screen and (max-width: 767px) {

}


.movie_cover_play {
	background-color: rgba(255,255,255,0.4);
	width: calc(var(--vw)*84.97);
	height: calc(var(--vw)*84.97);
	border-radius: 50%;
	display: flex;
	align-items: center;
	justify-content: center;
	transition: 0.3s;
}

@media screen and (max-width: 767px) {
	.movie_cover_play {
		width: calc(var(--vw)*64);
		height: calc(var(--vw)*64);
	}
}

.movie_cover:hover .movie_cover_play {
	background-color: rgba(255,255,255,1);
}

.movie_cover_play img {
	width: calc(var(--vw)*10.73);
}

@media screen and (max-width: 767px) {
	.movie_cover_play img {
		width: calc(var(--vw)*8.17);
	}
}

.movie_cover_text {
	width: calc(var(--vw)*49.23);
	margin: 0 auto;
	margin-top: calc(var(--vw)*16);
}

@media screen and (max-width: 767px) {
	.movie_cover_text {
		width: calc(var(--vw)*30);
		margin-top: calc(var(--vw)*5);
	}
}

.movie .c-caption {
	color: #fff;
	z-index: 11;
}

@media screen and (max-width: 767px) {}

/* concept */

.concept {
	background-color: #000;
	overflow: hidden;
	position: relative;
}
.concept .dummy {
	background-color: #000;
	color: #fff;
	text-align: center;
	width: 100px;
	padding: 10px;
	position: absolute;
	bottom: 0;
	left: 0;
	font-size: 18px;
}
.concept_cover {
	background: linear-gradient(#000 0%, #000 51%,rgba(0, 0, 0, 0) 100%);
	content: "";
	height: 200%;
	left: 0;
	position: absolute;
	top: 0;
	width: 100%;
	opacity: 0;
}
.concept_cover.close.animated {
	animation: anime_scrollout 6s linear forwards;
}
.concept_title {
	left: calc(50% - (9.95607vw / 2));
	position: absolute;
	top: 7.39385vw; /*101*/
	width: 9.95607vw; /*136*/
	z-index: 2;
}
.concept_catch {
	height: 4.90483vw; /*67*/
	left: calc(50% - (49.56076vw / 2));
	overflow: hidden;
	position: absolute;
	top: 13.25036vw; /*181*/
	width: 49.56076vw; /*677*/
	z-index: 2;
}
.concept_catch_img {
	display: block;
  height: 100%;
  opacity: 0;
  width: 100%;
}
.concept_lead {
	color: #fff;
	font-size: 1.90336vw;/*26*/
	left: calc(50% - (calc((340vw / 1366) * 100) / 2));
	line-height: 2.92825vw;/*40*/
	position: absolute;
	text-align: center;
	top: 22.91361vw; /*313*/
	z-index: 2;
}

.concept_lead.-main {
	color: #fff;
	filter: blur(0);
	-webkit-filter: blur(0);
	opacity: 1;
}

/* .concept_lead.-main.animated {
	animation: anime_textcolorchange 6s linear forwards;
} */
.concept_lead.second {
	top: 89.09224vw; /*1217*/
	left: 0;
	right: 0;
	margin: 0 auto;
}
.concept_text {
	color: #fff;
	font-size: 1.31771vw;/*18*/
	left: calc(50% - (calc((620vw / 1366) * 100) / 2));
	line-height: 3.51390vw;/*48*/
	position: absolute;
	text-align: center;
	top: 31.03953vw; /*424*/
	z-index: 2;
	filter: blur(0);
	-webkit-filter: blur(0);
	opacity: 1;
}
/* .concept_text.animated {
	animation: anime_textcolorchange 10s linear forwards;
} */
.concept_logo {
	left: calc(50% - (calc((202vw / 1366) * 100) / 2));
	position: absolute;
	top: 51.02489vw; /*697*/
	width: 14.78770vw;/*202*/
	z-index: 2;
}
.concept_stitle {
	left: calc(50% - (calc((272vw / 1366) * 100) / 2));
	position: absolute;
	top: 85.50512vw; /*1168*/
	width: 19.91215vw;/*272*/
	z-index: 2;
}
.concept_more_link {
	left: calc(50% - (calc((52vw / 1366) * 100) / 2));
	position: absolute;
	top: calc((1320vw / 1366) * 100);
	/* top: 93.55783vw; */
	/*1278*/
	z-index: 2;
}
.concept_caption {
	color: #fff;
	z-index: 2;
}

.concept_img {
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100%;
}

.concept .c-more_arrow {
	transform: rotate(0);
}

.concept_more_link:hover .c-more_arrow {
	left: 0;
	bottom: -0.5em;
}

@media (max-width: 767px) {
	.concept_title {
		left: calc(50% - (calc((104vw / 390) * 100) / 2));
		top: 18.46153vw; /*72*/
		width: 26.66666vw; /*104*/
	}
	.concept_catch {
		height: calc((105vw / 390) * 100);
		left: calc(50% - (calc((300vw / 390) * 100) / 2));
		top: 31.79487vw; /*124*/
		width: 76.92307vw; /*300*/
	}
	.concept_lead {
		font-size: 4.61538vw;/*18*/
		left: 0;
		line-height: 6.92307vw;/*27*/
		text-align: center;
		top: 66.92307vw; /*261*/
		width: 100%;
	}
	.concept_lead.second {
		top: 197.43589vw; /*770*/
		margin: 0 auto;
		left: 0;
		right: 0;
	}
	.concept_text {
		font-size: 3.58974vw;/*14*/
		left: 5%;
		line-height: 6.92307vw;/*27*/
		top: 86.66666vw; /*338*/
		width: 90%;
	}
	.concept_logo {
		left: calc(50% - (calc((164vw / 390) * 100) / 2));
		top: 146.15384vw; /*570*/
		width: 42.05128vw;/*164*/
	}
	.concept_stitle {
		left: calc(50% - (calc((144vw / 390) * 100) / 2));
		top: 189.74358vw; /*740*/
		width: 36.92307vw;/*144*/
	}
	.concept_more_link {
		left: calc(50% - (calc((35vw / 390) * 100) / 2));
		top: 209.23076vw; /*816*/
	}
}


/* position */

.position {
	background-color: rgba(255,255,255,.85);
	position: relative;
	/* height: calc(var(--vw)*1399.5212); */
}
.position_bg {
	opacity: 0;
}
.position_img {
	/* mix-blend-mode: multiply; */
	/* bottom: 0; */
	/* position: absolute; */
	/* right: 0; */
	/* width: 93.99707vw; */
	/*1284*/
	width: 100%;
	/* top: 0; */
	
}
.position_title {
	left: 22.32796vw; /*305*/
	position: absolute;
	top: 19.47291vw; /*266*/
	width: 13.83601vw;/*189*/
}
.position_catch {
	font-size: 1.90336vw;/*26*/
	left: 13.39677vw; /*183*/
	line-height: 2.70863vw;/*37*/
	position: absolute;
	text-align: center;
	top: 23.42606vw; /*320*/
	width: calc(var(--vw)*442);
	/* width: 31.62518vw; */
	/*432*/
}
.position_catch .-large {
	font-size: calc(var(--vw)*44);
	color: #AF9265;
}
@media (max-width: 767px) {
	.position_catch .-large {
		font-size: calc(var(--vw)*30);
	}
}


.position_more .c-more_arrow {
	transform: rotate(0);
}

.position_more_link:hover .c-more_arrow {
	left: 0;
	bottom: -0.5em;
}

.position_more_link {
	left: 27.30600vw; /*373*/
	position: absolute;
	top: 28.40409vw; /*388*/
}
.position_arrows {
	display: none;
}
.position_caption {
	color: #000;
}	

@media (max-width: 767px) {
	.position_caption {
		/* bottom: calc(var(--vw)*92); */
		bottom: 0;
	}
}

@media (max-width: 767px) {
	.position {
		background-color: #fff;
	}
	.position_map {
		/* height: 121.53846vw; */
		/* left: 0; */
		overflow-x: auto;
		overflow-y: hidden;
		/* position: absolute; */
		/* top: 55.89743vw; */
		width: 100%;
		padding-top: calc(var(--vw)*200);
		/* padding-bottom: calc(var(--vw)*50); */
	}
	.position_img {
		display: block;
		position: relative;
		/* width: 218.20512vw; */
		width: 100%;
	}
	.position_title {
		left: 31.025646vw; /*121*/
		position: absolute;
		top: 13.58974vw; /*53*/
		width: 38.20512vw;/*149*/
	}
	.position_catch {
		font-size: 4.61538vw;/*18*/
		left: 5%;
		line-height: 6.92307vw;/*27*/
		top: 23.84615vw; /*93*/
		width: 90%;
	}
	.position_more_link {
		left: 45.38461vw; /*177*/
		position: absolute;
		top: 35.89743vw; /*140*/
	}
	.position_arrows {
		bottom: 6.41025vw;/*25*/
		display: flex;
		justify-content: space-between;
		left: 6.41025vw;/*25*/
		position: absolute;
		width: 87.17948vw; /*340*/
	}
	.position_prev,
	.position_next {
		background-position: center;
		background-repeat: no-repeat;
		background-size: 100%;
		height: 3.07692vw; /*12*/
		width: 16.66666vw; /*65*/
	}
	.position_prev {
		background-image: url(../img/common/arrow_prev.svg);
	}
	.position_next {
		background-image: url(../img/common/arrow_next.svg);
	}
}

@keyframes anime_scrollout {
	0% {
		opacity: 1;
    /* top: 0; */
  }

  100% {
		opacity: 0;
    /* top: -201%; */
  }
}

@keyframes anime_textcolorchange {
	0% {
		opacity: 0;
		color: #fff;
    /* top: 0; */
    filter: blur(15px);
    -webkit-filter: blur(15px);
	}
	10% {
		opacity: 1;
    /* top: 0; */
    filter: blur(0);
    -webkit-filter: blur(0);
	}
  100% {
		color: #251e1c;
    /* top: -201%; */
	}
}


.modal {
	display: none;
	/* display: flex; */
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: 1000;
	align-items: center;
	justify-content: center;
}

@media screen and (min-width: 768px) {}
@media screen and (max-width: 767px) {}

.modal .modal_overlay {
	background-color: rgba(0,0,0,0.9);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 50;
}

@media screen and (min-width: 768px) {}
@media screen and (max-width: 767px) {}

.modal .modal_box {
	/* width: calc(var(--vw)*600); */
	width: 90%;
	max-width: 900px;
	position: relative;
	z-index: 100;
}

@media screen and (min-width: 768px) {}
@media screen and (max-width: 767px) {}

@media screen and (min-width: 768px) {
	.modal_box .pc {
		display: block;
	}
	.modal_box .sp {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.modal_box .sp {
		display: block;
	}
	.modal_box .pc {
		display: none;
	}
}

.modal .modal_box_movie {
	padding-top: 56.25%;
	position: relative;
	/* margin-top: calc(var(--vw)*64); */
}

.modal .modal_box_movie iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.modal .modal_close {
	background-color: #fff;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 150;
	cursor: pointer;
	transition: 0.3s;
}

.modal .modal_close:hover {
	background-color: #ddd;
}

.modal .modal_close span {
	display: block;
	width: 60%;
	height: 1px;
	position: absolute;
	background-color: #000;
	top: 50%;
	left: 0;
	right: 0;
	margin: 0 auto;
}

.modal .modal_close span:nth-child(1) {
	transform: rotate(45deg);
}

.modal .modal_close span:nth-child(2) {
	transform: rotate(-45deg);
}

@media screen and (min-width: 768px) {
	.modal .modal_close {
		width: calc(var(--vw)*64);
		height: calc(var(--vw)*64);
		right: calc(var(--vw)*-60);
		top: calc(var(--vw)*-60);
		border-radius: calc(var(--vw)*32);
	}
}
@media screen and (max-width: 767px) {
	.modal .modal_close {
		width: calc(var(--vw)*50);
		height: calc(var(--vw)*50);
		right: calc(var(--vw)*0);
		top: calc(var(--vw)*-60);
		border-radius: calc(var(--vw)*25);
	}
}

/* .c-blank {
	display: none;
} */

.c-entrybtn-pageend {
	background-color: #FFFFFF;
}

.c-entrybtn-pageend a {
	margin-top: 0;
}

@media screen and (min-width: 768px) {
	.c-entrybtn-pageend {
		padding: calc((120vw / 1366) * 100) 0;
	}
	.c-entrybtn-pageend .c-entrybtn:hover {
		background-color: rgba(100,100,100,.5);
	}
}

@media screen and (max-width: 767px) {
	.c-entrybtn-pageend {
		padding: calc((40vw / 390) * 100) 0;
	}
	.c-entrybtn-pageend .c-entrybtn {
			width: calc((300vw / 390) * 100);
	}
}

/* imgscroll */
@media screen and (min-width: 768px) {
  .imgscroll_txt{
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .imgscroll_txt{
    margin: calc((8vw / 390) * 100) auto 0;
    width: calc((242vw / 390) * 100);
  }
}


/*kv anime*/
.kv_scenes {
	background-color: #fff;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100%;
	z-index: 2;
}
.kv_scene_item {
	background-color: #fff;
	height: 100%;
	left: 0;
	overflow: hidden;
	position: absolute;
	top: 0;
	width: 100%;
}
.kv_scene1 { z-index: 4; opacity: 0;}
.kv_scene2 { z-index: 3; opacity: 0;}
.kv_scene3 { z-index: 2; opacity: 0;}

.kv_scene_img {
	transform: scale(1.25);
	height: 100%;
	width: 100%;
}
.kv_scene_text {
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	color: #000;
	font-size: 40px;
}
.kv_scene_text_inner {
	align-items: center;
	background-color: rgba(175,146,101,.70);
	color: #fff;
	display: flex;
	justify-content: center;
	position: absolute;
	text-shadow: 0 0 10px rgba(0,0,0,.25);
}
.kv_scene_text_inner span {
	font-weight: 700;
}

@media screen and (min-width: 768px) {
	.kv_scenes {
		height: calc((777vw / 1366) * 100);
	}
	.kv_scene_text_inner {
		font-size: calc((34vw / 1366) * 100);
		height: calc((153vw / 1366) * 100);
		left: 0;
		letter-spacing: .15em;
		line-height: calc((50vw / 1366) * 100);
		top: calc((224vw / 1366) * 100);
		width: calc((436vw / 1366) * 100);
	}
	.kv_scene_text_inner span {
		font-size: calc((46vw / 1366) * 100);
	}
}
@media screen and (max-width: 767px) {
	.kv_scenes {
		height: calc((545vw / 390) * 100);
	}
	.kv_scene_text .kv_scene03_logo {
		left: calc((45vw / 390) * 100);
	}
	.kv_scene_text_inner {
		font-size: calc((17vw / 390) * 100);
		height: calc((80vw / 390) * 100);
		left: 0;
		letter-spacing: .05em;
		line-height: calc((26vw / 390) * 100);
		top: calc((243vw / 390) * 100);
		width: calc((177vw / 390) * 100);
	}
	.kv_scene3 .kv_scene_text_inner {
		letter-spacing: .1em;
	}
	.kv_scene_text_inner span {
		font-size: calc((26vw / 390) * 100);
		letter-spacing: .1em;
	}
}

@keyframes kv_scaledown{
  0%{ transform: scale(1.25); }
  100%{ transform: scale(1); }
}
@keyframes kv_fadeout{
  0%{ opacity: 1; }
  100%{ opacity: 0; }
}
@keyframes kv_fadein{
  0%{ opacity: 0; }
  100%{ opacity: 1; }
}

.kv_scaledown { animation: kv_scaledown 5s forwards; }
.kv_text      { animation: kv_fadein    1.5s forwards; }
.kv_fadein    { animation: kv_fadein    1s forwards; }
.kv_fadeout   { animation: kv_fadeout   1s forwards; }


.design {
	position: relative;
}
.design_text {
	position: absolute;
}
.design_more {
	align-items: center;
	background-color: #AF9265;
	display: flex;
	justify-content: center;
	position: relative;
}
.design_more::after {
	background-image: url(../img/common/arrow_right_white.svg);
	background-position: center;
	background-repeat: no-repeat;
	background-size: 100%;
	content: "";
	position: absolute;
	right: 20%;
	top: 50%;
}

@media screen and (min-width: 768px) {
	.design_text {
		bottom: calc((58vw / 1366) * 100);
		left: 50%;
		margin-left: calc((-212vw / 1366) * 100);
		width: calc((424vw / 1366) * 100);
	}
	.design_ttl_en {
		margin: 0 auto calc((20vw / 1366) * 100);
		width: calc((146vw / 1366) * 100);
	}
	.design_ttl_ja {
		color: #fff;
		font-size: calc((28vw / 1366) * 100);
		margin: 0 auto calc((45vw / 1366) * 100);
		text-align: center;
		width: 100%;
	}
	.design_more {
		height: calc((58vw / 1366) * 100);
		margin: 0 auto;
		width: calc((414vw / 1366) * 100);
	}
	.design_more::after {
		height: calc((42vw / 1366) * 100);
		margin-top: calc((-21vw / 1366) * 100);
		width: calc((21vw / 1366) * 100);
	}
	.design_more:hover {
		opacity: .75;
	}
	.design_more p {
		height: calc((15vw / 1366) * 100);
		width: calc((64vw / 1366) * 100);
	}
}
@media screen and (max-width: 767px) {
	.design_text {
		bottom: calc((35vw / 390) * 100);
		left: 50%;
		margin-left: calc((-138vw / 390) * 100);
		width: calc((276vw / 390) * 100);
	}
	.design_ttl_en {
		margin: 0 auto calc((21vw / 390) * 100);
		width: calc((97vw / 390) * 100);
	}
	.design_ttl_ja {
		color: #fff;
		font-size: calc((18vw / 390) * 100);
		margin: 0 auto calc((30vw / 390) * 100);
		text-align: center;
		width: 100%;
	}
	.design_more {
		height: calc((39vw / 390) * 100);
		margin: 0 auto;
		width: calc((276vw / 390) * 100);
	}
	.design_more::after {
		height: calc((28vw / 390) * 100);
		margin-top: calc((-14vw / 390) * 100);
		width: calc((14vw / 390) * 100);
	}
	.design_more:hover {
		opacity: .75;
	}
	.design_more p {
		height: calc((15vw / 390) * 100);
		width: calc((46vw / 390) * 100);
	}
}
