@charset "utf-8";
.contact_btn {
		cursor: pointer;
		transition: color 0.4s;
}
@media (hover: hover) {
		.contact_btn:hover {
				color: #FFDE00;
		}
}
.contact_section {
		width: 150vh;
		min-width: 150vh;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		font-size: 40px;
}
.contact_section p {
		font-size: 40px;
		line-height: 2.0;
		text-align: center;
		opacity: 0;
		transition: opacity 1s;
}
.contact_section .lastActive p {
		opacity: 1;
}
.contact_section_inner {
		position: relative;
}
.contact_section_inner .contact_photo {
		position: absolute;
		transition: transform 3s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s;
		transform: scale(3);
		transition-delay: 1s;
		opacity: 0;
		padding: 10px;
		border: 1px solid #d000df;
}
.contact_section_inner.lastActive .contact_photo {
		transform: scale(1);
		opacity: 1;
}
.contact_photo-1 {
		width: 200px;
		left: -270px;
		top: -160px;
		transition-delay: 0.5s;
}
.contact_photo-2 {
		width: 300px;
		right: -300px;
		top: -260px;
		transition-delay: 0.6s;
}
.contact_photo-2 a {
		display: block;
		position: absolute;
		top: 0;
		right: 0;
		width: 50%;
		height: 100%;
}
.contact_photo-3 {
		width: 300px;
		left: -400px;
		bottom: -165px;
		transition-delay: 0.7s;
}
.contact_photo-4 {
		width: 240px;
		right: -300px;
		bottom: -100px;
		transition-delay: 0.8s;
}
/* =============== */
.shoot_section {
		width: 100vw;
		min-width: 100vw;
		position: relative;
}
.shoot_section_hd {
		position: relative;
		z-index: 5;
}
.shoot_section .shoot_section_planet {
		width: 150vw;
		height: 150vw;
		position: absolute;
		left: -5vw;
		top: calc(50% - 75vw);
		transition: transform 2.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.5s;
		transform: scale(0.01);
}
.shoot_section .shoot_section_inner {
		position: absolute;
		top: 0;
		left: 0;
		width: 100vw;
		height: 100vh;
		display: flex;
		justify-content: center;
		align-items: center;
}

.shoot_section_inner video {
		background: transparent;
		mask-image: url("../images/mask.png");
		mask-size: cover;
		-webkit-mask-image: url("../images/mask.png");
		-webkit-mask-size: cover;
		mask-position: center center;
		-webkit-mask-position: center center;
		position: absolute;
		max-width: 80vw;
		width: 100%;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
		z-index: 0;
		transition: opacity 1s;
		transition-delay: 1s;
		opacity: 0.9;
		opacity: 0;
}
.shoot_section.isActive .shoot_section_planet {
		transform: scale(1);
}
.shoot_section_planet img {
		width: 100%;
		height: auto;
}
.shoot_section_hd {
		margin-bottom: 0;
}
.shoot_section_hd h3 {
		font-family: 'Rajdhani', sans-serif;
		font-weight: 400;
		font-size: 9vw;
		position: relative;
		z-index: 5;
		transition: opacity 0.8s;
		transition-delay: 1.2s;
		opacity: 0;
		line-height: 1;
		margin-bottom: -10px;
}
.shoot_section_hd p {
		font-size: 20px;
		margin-left: 10px;
		transition: opacity 0.8s;
		transition-delay: 1.23s;
		opacity: 0;
		line-height: 1;
}
.shoot_btn_flex {
		max-width: 500px;
		margin: 0 auto;
		display: flex;
		justify-content: space-between;
		position: relative;
}
.shoot_btn_flex, .shoot_cont ul {
		bottom: -18vh;
}
.shoot_btn {
		width: calc(50% - 5px);
		font-family: 'Rajdhani', sans-serif;
		font-weight: 400;
		font-size: 24px;
		transition: opacity 0.8s;
		transition-delay: 1.26s;
		opacity: 0;
}
@media(max-height: 900px) and (min-width: 1195px) {
		.shoot_btn {
				font-size: 20px;
		}
}
.shoot_btn a {
		display: flex;
		justify-content: center;
		align-items: center;
		position: relative;
		background: rgba(208, 0, 223, 0.6);
		transition: background 0.8s cubic-bezier(0.16, 1, 0.3, 1);
		color: #fff;
		text-decoration: none;
		height: 60px;
}
.shoot_btn a::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 5px);
		width: 5px;
		height: 11px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 5px;
}
.shoot_btn a.backto::after {
		background-image: url("../images/arrow_left.svg");
		left: 12px;
}
.shoot_btn a.nextto::after {
		background-image: url("../images/arrow_right.svg");
		right: 12px;
}
@media (hover: hover) {
		.shoot_btn a:hover {
				background: rgba(208, 0, 223, 1);
				color: #FFDE00;
		}
}
.shoot_section.isActive .shoot_section_inner video, .shoot_section.isActive .shoot_section_hd h3, .isActive .shoot_section_hd p, .isActive .shoot_btn {
		opacity: 1;
}
.shoot_btn a .btn_up, .shoot_btn a .btn_bottom {
		position: absolute;
		left: 0;
		width: 100%;
}
.btn_up {
		top: 0;
}
.btn_bottom {
		bottom: 0;
}
.btn a::after {
		content: '';
		display: block;
		position: absolute;
}
.btn_up::before, .btn_up::after, .btn_bottom::before, .btn_bottom::after {
		content: '';
		display: block;
		position: absolute;
		width: 6px;
		height: 6px;
		z-index: 5;
		pointer-events: none;
		transition: opacity 0.4s;
}
.btn_up::before {
		top: 0px;
		left: 0;
		border-top: 1px solid #FFDE00;
		border-left: 1px solid #FFDE00;
}
.btn_up::after {
		top: 0px;
		right: 0;
		border-top: 1px solid #FFDE00;
		border-right: 1px solid #FFDE00;
}
.btn_bottom::before {
		bottom: 0px;
		left: 0;
		border-bottom: 1px solid #FFDE00;
		border-left: 1px solid #FFDE00;
}
.btn_bottom::after {
		bottom: 0px;
		right: 0;
		border-bottom: 1px solid #FFDE00;
		border-right: 1px solid #FFDE00;
}
.shoot_cont {
		position: relative;
}
.shoot_cont ul {
		position: absolute;
		right: 0;
		transition: opacity 0.8s;
		transition-delay: 1.26s;
		opacity: 0;
}
.isActive .shoot_cont ul {
		opacity: 1;
}
.shoot_cont li {
		list-style: none;
		font-family: 'Rajdhani', sans-serif;
		font-weight: 400;
		font-size: 15px;
		color: #fff;
		margin-top: 5px;
		text-shadow: 0px 0px 3px #000;
}
.shoot_cont li a {
		color: #fff;
		text-decoration: none;
		display: inline-block;
		position: relative;
}
.shoot_cont li a::before {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 6px);
		width: 5px;
		height: 11px;
		background: rgba(0, 0, 0, 0.2);
		filter: blur(3px);
		right: -12px;
}
.shoot_cont li a::after {
		content: '';
		display: block;
		position: absolute;
		top: calc(50% - 6px);
		width: 5px;
		height: 11px;
		background-repeat: no-repeat;
		background-position: 0 0;
		background-size: 5px;
		background-image: url("../images/arrow_right_wht.svg");
		right: -12px;
}
.shoot_btn a.nextto::after {
		background-image: url("../images/arrow_right.svg");
		right: 12px;
}
@media (hover: hover) {
		.shoot_cont li a:hover {
				color: #FFDE00;
		}
		.shoot_cont li a:hover::after {
				background-image: url("../images/arrow_right.svg");
		}
}
@media(max-height: 800px) and (min-width: 1195px) {
		.contact_section p {
				font-size: 28px;
				line-height: 1.8;
		}
		.contact_photo-1 {
				width: 180px;
				left: -240px;
				top: -150px;
		}
		.contact_photo-2 {
				width: 270px;
				right: -290px;
				top: -230px;
		}
		.contact_photo-3 {
				width: 270px;
				left: -340px;
				bottom: -145px;
		}
		.contact_photo-4 {
				width: 230px;
				right: -280px;
				bottom: -90px;
		}
}
@media(max-height: 700px) and (min-width: 1195px) {
		.contact_section p {
				font-size: 24px;
		}
		.contact_photo-1 {
				width: 180px;
				left: -240px;
				top: -150px;
		}
		.contact_photo-2 {
				width: 240px;
				right: -280px;
				top: -230px;
		}
		.contact_photo-3 {
				width: 240px;
				left: -300px;
				bottom: -120px;
		}
		.contact_photo-4 {
				width: 230px;
				right: -280px;
				bottom: -90px;
		}
}
@media(max-height: 600px) and (min-width: 1195px) {
		.shoot_btn_flex, .shoot_cont ul {
				bottom: -12vh
		}
}
@media(max-width: 1194px) {
		.contact_section {
				display: block;
				min-width: 100%;
				width: 100%;
				margin-bottom: 30vw;
		}
		.contact_section_inner {
				padding-top: 60vw;
				padding-bottom: 60vw;
		}
		.contact_section p {
				font-size: 40px;
		}
		.contact_photo-1 {
				width: 33vw;
				left: 4vw;
				top: 0;
		}
		.contact_photo-2 {
				width: 48vw;
				width: 44vw;
				right: 4vw;
				top: 13vw;
		}
		.contact_photo-3 {
				width: 48vw;
				left: 2vw;
				bottom: 12vw;
		}
		.contact_photo-4 {
				width: 38vw;
				right: 4vw;
				bottom: 0;
		}
}
@media(min-width: 1195px) {
		#shoot_video_sp {
				display: none;
		}
}
@media(max-width: 1194px) {
		.shoot_section {
				min-width: 100%;
				width: 100% !important;
				height: inherit !important;
				padding-top: 35vw;
				padding-bottom: 160px;
		}
		.shoot_section .shoot_section_planet {
				width: 200vw;
				height: 200vw;
				left: calc(50% - 100vw);
				top: -20vw;
		}
		#shoot_video_pc {
				display: none;
		}
		.shoot_section .shoot_section_inner {}
		.shoot_section_inner::before {
				display: none;
		}
		.shoot_section .shoot_section_inner {
				position: absolute;
				top: 0;
				left: 0;
				width: 100vw;
				height: 100vh;
				display: block;
				justify-content: center;
				align-items: center;
		}
		.shoot_cont_center {
				display: flex;
				justify-content: center;
				position: relative;
		}
		.shoot_cont_center video {
				background: transparent;
				mask-image: url("../images/mask_mid.png");
				mask-size: cover;
				-webkit-mask-image: url("../images/mask_mid.png");
				-webkit-mask-size: cover;
				mask-position: center center;
				-webkit-mask-position: center center;
				position: absolute;
				max-width: inherit;
				width: 100vw;
				height: 62vw;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
		}
		.shoot_section_hd {
				padding: 24vw 40px;
				margin-bottom: 40px;
				background: none;
				background-size: 100%;
				position: relative;
				z-index: 5;
		}
		.shoot_section_hd h3 {
				margin-bottom: 5px;
		}
		.shoot_section_hd p {
				font-size: 16px;
		}
		.contact_section p {
				transition: opacity 0.8s;
		}
		.contact_section_inner .contact_photo {
				transition-delay: 0.5s;
				transition: transform 2.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s;
		}
		.verLandscape .shoot_section_hd {
				padding: 8vw 40px 8vw;
				margin-bottom: 0px;
		}
		.shoot_btn_flex {
				bottom: -40px;
		}
		.shoot_cont ul {
				position: static;
				right: inherit;
				bottom: inherit;
				margin-top: 9vw;
		}
		.shoot_cont ul li {
				text-align: center;
				font-size: 16px;
				margin: 10px 0 0;
		}
}
@media(max-width: 840px) {
		.contact_section {
				margin-bottom: 10vw;
		}
		.shoot_section {
				min-width: 100%;
				width: 100% !important;
				height: inherit !important;
				padding-top: 35vw;
				padding-bottom: 60px;
		}
		.shoot_section .shoot_section_inner {
				position: absolute;
				top: 0;
				left: 0;
				width: 100vw;
				height: 100vh;
				display: flex;
				justify-content: center;
				align-items: center;
		}
		.shoot_section .shoot_section_planet {
				width: 220vw;
				height: 220vw;
				left: calc(50% - 110vw);
				top: 0;
		}
		#shoot_video_pc {
				display: none;
		}
		.shoot_section .shoot_section_inner {
				position: static;
				width: inherit;
				height: inherit;
				display: block;
		}
		.shoot_section_inner::before {
				display: none;
		}
		.shoot_cont_center {
				display: flex;
				justify-content: center;
				position: relative;
		}
		.shoot_cont_center video {
				background: transparent;
				mask-image: url("../images/mask.png");
				mask-size: cover;
				-webkit-mask-image: url("../images/mask.png");
				-webkit-mask-size: cover;
				mask-position: center center;
				-webkit-mask-position: center center;
				position: absolute;
				max-width: inherit;
				width: 140vw;
				height: 92vw;
				top: 50%;
				left: 50%;
				transform: translate(-50%, -50%);
				z-index: 0;
				transition: opacity 1s;
				transition-delay: 1s;
				opacity: 0.9;
				opacity: 0
		}
		.shoot_section.isActive .shoot_cont_center video {
				opacity: 1;
		}
		.shoot_section_hd {
				padding: 24vw 40px;
				margin-bottom: 40px;
				background: none;
				background-size: 100%;
				position: relative;
				z-index: 5;
		}
		.shoot_section_hd h3 {
				margin-bottom: 5px;
		}
		.shoot_section_hd p {
				font-size: 16px;
		}
		.contact_section p {
				transition: opacity 0.8s;
		}
		.contact_section_inner .contact_photo {
				transition-delay: 0.5s;
				transition: transform 2.5s cubic-bezier(0.16, 1, 0.3, 1), opacity 0.4s;
		}
		.verLandscape .shoot_section_hd {
				padding: 8vw 40px;
				margin-bottom: 0px;
		}
		.shoot_btn_flex {
				max-width: 240px;
				display: block;
				margin: 0 auto 18.5vw;
				position: static;
				bottom: inherit;
		}
		.shoot_btn {
				width: 240px;
				margin: 0 0 10px;
		}
		.shoot_cont ul {
				margin-top: 0;
		}
		.shoot_cont ul li {
				font-size: 16px;
				margin: 10px 0 0;
		}
}
@media(max-width: 767px) {
		.shoot_section {
				padding-top: 35vw;
				padding-bottom: 12vw;
		}
		.shoot_section_hd {
				padding: 0;
				margin: 0;
		}
		.shoot_cont_center {
				height: 60vw;
				display: flex;
				justify-content: center;
				align-items: center;
				margin-bottom: 60px;
		}
		.contact_section p {
				font-size: 22px;
		}
		.contact_photo-1 {
				width: 33vw;
				left: 4vw;
				top: 0;
		}
		.contact_photo-2 {
				width: 48vw;
				width: 44vw;
				right: 4vw;
				top: 13vw;
		}
		.contact_photo-3 {
				width: 44vw;
				left: 2vw;
				bottom: 12vw;
		}
		.contact_photo-4 {
				width: 34vw;
				right: 3vw;
				bottom: 0;
		}
		.shoot_section_hd h3 {
				font-size: 12vw;
		}
		.shoot_btn {
				font-size: 20px;
		}
}
/* ==================== */