@charset "UTF-8";

.btn_modal {
	display: block;
	position: absolute;
	z-index: 999;
	bottom: 1vw;
	right: 2vw;
	width: 15vw;
	max-width: 200px;
	height: 15vw;
	max-height: 200px;
	cursor: pointer;
}
.btn_modal p {
	color: #fff;
	font-weight: 600;
	text-align: center;
	margin-top: -0.5rem;
	text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.5);
}
.btn_modal p::after {
	content:"▼";
}
@media screen and (max-width: 430px){
	.btn_modal {
		bottom: -6vw;
		width: 30vw;
		height: 30vw;
	}
	.btn_modal p {
		text-align: center;
		margin-top: 3.0rem;
		margin-left: -11rem;
	}
	.btn_modal p::after {
		content:"▶";
	}
}
.kv_modal1 {
	display: block;
	position: absolute;
	transform: translate(-50%,-50%) scaleX(100%);
	top: 50%;
	left: 50%;
	animation: kv_35th_icon_omote 5s ease-out infinite;
}
.kv_modal2 {
	display: block;
	position: absolute;
	transform: translate(-50%,-50%) scaleX(0%);
	top: 50%;
	left: 50%;
	animation: kv_35th_icon_ura 5s ease-out infinite;
}
@keyframes kv_35th_icon_omote {
	0% {
		transform: translate(-50%,-50%) scaleX(100%);
	}
	50% {
		transform: translate(-50%,-50%) scaleX(100%);
	}
	60% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
	70% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
	80% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
	80% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
	90% {
		transform: translate(-50%,-50%) scaleX(100%);
	}
	100% {
		transform: translate(-50%,-50%) scaleX(100%);
	}
}
@keyframes kv_35th_icon_ura {
	0% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
	50% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
	60% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
	70% {
		transform: translate(-50%,-50%) scaleX(100%);
	}
	80% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
	100% {
		transform: translate(-50%,-50%) scaleX(0%);
	}
}
.modal_back {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 9999;
	width: 100%;
	height: 100vh;
	background-color: rgba(0,0,0,0.5);
	opacity: 0;
}
.modal_back.active {
	display: block;
}
.modal_iframe {
	position: absolute;
	transform: translate(-50%,-50%);
	top: 50%;
	left: 50%;
	width: 800px;
	height: 566px;
	overflow: hidden;
	border: none;
}
@media screen and (max-width: 430px){
	.modal_iframe {
		width: 90%;
		height: 85vh;
	}
}
body.active {
	display: block;
	width: 100%;
	height: 100vh;
	background: linear-gradient(180deg, rgb(255, 255, 255) 0%, rgb(211, 240, 255) 100%);
	overflow: hidden;
}