/* ------------------
overwrite
-------------------- */

#main {
	background: transparent;
}

.foot-breadcrumb {
	background: #fff;
}

/* ------------------
bg-movie
-------------------- */
.recruit-contents {
	color: #fff;
}

.bg-movie {
	position: fixed;
	top: 0;
	left: 0;
	z-index: -10;
	width: 100%;
	height: 100%;
	overflow: hidden;
}

.bg-movie video {
	position: absolute;
	top: 50%;
	left: 50%;
	width: calc(768 / 432 * 100vh);
	min-width: 100%;
	height: calc(432 / 768 * 100vw);
	min-height: 100%;
	transform: translate(-50%, -50%);
}

/* ------------------
kv
-------------------- */
.kv {
	position: relative;
	z-index: -1;
	display: grid;
	place-content: center;
	min-height: calc(100svh - 200px);
	margin: 52px 0 43px;
	overflow: hidden;
}

.kv.js-inview {
	opacity: 0;
	transition: 0.8s 0.4s;
}

.kv.js-inview.is-show {
	opacity: 1;
}

.kv .swiper {
	width: 332px;
	height: 353px;
}

.kv .img {
	position: relative;
	margin: 0 auto;
}

.kv .img img {
	position: absolute;
	display: block;
	object-fit: cover;
	filter: blur(20px);
	opacity: 0;
	transition-duration: 0.8s;
}

.kv .swiper-slide-active .img img {
	filter: blur(0);
	opacity: 1;
}

.kv .img img:nth-child(1),
.kv .img img:nth-child(5) {
	transition-delay: 0.9s;
}

.kv .img img:nth-child(2),
.kv .img img:nth-child(6) {
	transition-delay: 1s;
}

.kv .img img:nth-child(3),
.kv .img img:nth-child(7) {
	transition-delay: 1.1s;
}

.kv .img img:nth-child(4),
.kv .img img:nth-child(8) {
	transition-delay: 1.2s;
}

.kv .img img:nth-child(9),
.kv .img img:nth-child(13) {
	transition-delay: 1.3s;
}

.kv .img img:nth-child(10),
.kv .img img:nth-child(14) {
	transition-delay: 1.4s;
}

.kv .img img:nth-child(11),
.kv .img img:nth-child(15) {
	transition-delay: 1.5s;
}

.kv .img img:nth-child(12),
.kv .img img:nth-child(16) {
	transition-delay: 1.6s;
}

.kv .img img:nth-child(17) {
	transition-delay: 1.7s;
}

.kv .img.slide1 {
	width: 328px;
	height: 324px;
}

.kv .img.slide1 img:nth-child(1) {
	top: 57px;
	left: 77px;
	width: 128px;
	height: 128px;
}

.kv .img.slide1 img:nth-child(2) {
	top: 187px;
	left: 161px;
	width: 128px;
	height: 80px;
}

.kv .img.slide1 img:nth-child(3) {
	top: 20px;
	left: 116px;
	width: 35px;
	height: 35px;
}

.kv .img.slide1 img:nth-child(4) {
	top: 0;
	left: 154px;
	width: 51px;
	height: 55px;
}

.kv .img.slide1 img:nth-child(5) {
	top: 127px;
	left: 207px;
	width: 74px;
	height: 58px;
}

.kv .img.slide1 img:nth-child(6) {
	top: 45px;
	left: 207px;
	width: 64px;
	height: 40px;
}

.kv .img.slide1 img:nth-child(7) {
	top: 137px;
	left: 27px;
	width: 48px;
	height: 48px;
}

.kv .img.slide1 img:nth-child(8) {
	top: 53px;
	left: 273px;
	width: 55px;
	height: 32px;
}

.kv .img.slide1 img:nth-child(9) {
	top: 87px;
	left: 289px;
	width: 26px;
	height: 26px;
}

.kv .img.slide1 img:nth-child(10) {
	top: 187px;
	left: 95px;
	width: 64px;
	height: 77px;
}

.kv .img.slide1 img:nth-child(11) {
	top: 270px;
	left: 161px;
	width: 80px;
	height: 55px;
}

.kv .img.slide1 img:nth-child(12) {
	top: 87px;
	left: 207px;
	width: 80px;
	height: 39px;
}

.kv .img.slide1 img:nth-child(13) {
	top: 187px;
	left: 23px;
	width: 71px;
	height: 48px;
}

.kv .img.slide1 img:nth-child(14) {
	top: 266px;
	left: 83px;
	width: 39px;
	height: 32px;
}

.kv .img.slide1 img:nth-child(15) {
	top: 266px;
	left: 124px;
	width: 35px;
	height: 32px;
}

.kv .img.slide1 img:nth-child(16) {
	top: 87px;
	left: 0;
	width: 75px;
	height: 48px;
}

.kv .img.slide1 img:nth-child(17) {
	top: 56px;
	left: 35px;
	width: 40px;
	height: 29px;
}

.kv .img.slide2 {
	width: 332px;
	height: 304px;
}

.kv .img.slide2 img:nth-child(1) {
	top: 94px;
	left: 85px;
	width: 128px;
	height: 112px;
}

.kv .img.slide2 img:nth-child(2) {
	top: 208px;
	left: 131px;
	width: 134px;
	height: 96px;
}

.kv .img.slide2 img:nth-child(3) {
	top: 0;
	left: 162px;
	width: 38px;
	height: 32px;
}

.kv .img.slide2 img:nth-child(4) {
	top: 34px;
	left: 162px;
	width: 51px;
	height: 58px;
}

.kv .img.slide2 img:nth-child(5) {
	top: 129px;
	left: 294px;
	width: 38px;
	height: 34px;
}

.kv .img.slide2 img:nth-child(6) {
	top: 93px;
	left: 215px;
	width: 96px;
	height: 34px;
}

.kv .img.slide2 img:nth-child(7) {
	top: 5px;
	left: 216px;
	width: 35px;
	height: 32px;
}

.kv .img.slide2 img:nth-child(8) {
	top: 247px;
	left: 64px;
	width: 64px;
	height: 40px;
}

.kv .img.slide2 img:nth-child(9) {
	top: 265px;
	left: 267px;
	width: 34px;
	height: 30px;
}

.kv .img.slide2 img:nth-child(10) {
	top: 28px;
	left: 112px;
	width: 48px;
	height: 64px;
}

.kv .img.slide2 img:nth-child(11) {
	top: 129px;
	left: 215px;
	width: 77px;
	height: 77px;
}

.kv .img.slide2 img:nth-child(12) {
	top: 208px;
	left: 267px;
	width: 64px;
	height: 54px;
}

.kv .img.slide2 img:nth-child(13) {
	top: 54px;
	left: 46px;
	width: 64px;
	height: 38px;
}

.kv .img.slide2 img:nth-child(14) {
	top: 39px;
	left: 216px;
	width: 83px;
	height: 53px;
}

.kv .img.slide2 img:nth-child(15) {
	top: 208px;
	left: 85px;
	width: 43px;
	height: 37px;
}

.kv .img.slide2 img:nth-child(16) {
	top: 152px;
	left: 0;
	width: 83px;
	height: 54px;
}

.kv .img.slide2 img:nth-child(17) {
	top: 101px;
	left: 14px;
	width: 69px;
	height: 48px;
}

.kv .img.slide3 {
	width: 309px;
	height: 353px;
}

.kv .img.slide3 img:nth-child(1) {
	top: 53px;
	left: 93px;
	width: 112px;
	height: 138px;
}

.kv .img.slide3 img:nth-child(2) {
	top: 194px;
	left: 93px;
	width: 144px;
	height: 88px;
}

.kv .img.slide3 img:nth-child(3) {
	top: 0;
	left: 108px;
	width: 45px;
	height: 51px;
}

.kv .img.slide3 img:nth-child(4) {
	top: 16px;
	left: 155px;
	width: 50px;
	height: 35px;
}

.kv .img.slide3 img:nth-child(5) {
	top: 54px;
	left: 207px;
	width: 90px;
	height: 67px;
}

.kv .img.slide3 img:nth-child(6) {
	top: 284px;
	left: 80px;
	width: 53px;
	height: 40px;
}

.kv .img.slide3 img:nth-child(7) {
	top: 193px;
	left: 239px;
	width: 70px;
	height: 54px;
}

.kv .img.slide3 img:nth-child(8) {
	top: 54px;
	left: 43px;
	width: 48px;
	height: 48px;
}

.kv .img.slide3 img:nth-child(9) {
	top: 284px;
	left: 209px;
	width: 64px;
	height: 42px;
}

.kv .img.slide3 img:nth-child(10) {
	top: 284px;
	left: 135px;
	width: 72px;
	height: 46px;
}

.kv .img.slide3 img:nth-child(11) {
	top: 332px;
	left: 135px;
	width: 38px;
	height: 21px;
}

.kv .img.slide3 img:nth-child(12) {
	top: 101px;
	left: 14px;
	width: 70px;
	height: 69px;
}

.kv .img.slide3 img:nth-child(13) {
	top: 185px;
	left: 21px;
	width: 70px;
	height: 45px;
}

.kv .img.slide3 img:nth-child(14) {
	top: 153px;
	left: 1px;
	width: 32px;
	height: 26px;
}

.kv .img.slide3 img:nth-child(15) {
	top: 153px;
	left: 35px;
	width: 56px;
	height: 29px;
}

.kv .img.slide3 img:nth-child(16) {
	top: 103px;
	left: 0;
	width: 91px;
	height: 48px;
}

.kv .img.slide3 img:nth-child(17) {
	top: 53px;
	left: 43px;
	width: 48px;
	height: 48px;
}

.kv p {
	width: 280px;
	margin: 20px auto 0;
	text-align: center;
}

.kv p img {
	width: 28px;
	margin: 7px 5px;
	opacity: 0;
	animation: fadein 0.6s ease forwards;
}

.kv p img:nth-last-of-type(-n + 4) {
	margin: 7px 3px;
}

.kv p img:nth-child(1) {
	animation-delay: 1s;
}

.kv p img:nth-child(2) {
	animation-delay: 1.4s;
}

.kv p img:nth-child(3) {
	animation-delay: 1.8s;
}

.kv p img:nth-child(5) {
	animation-delay: 1.1s;
}

.kv p img:nth-child(6) {
	animation-delay: 1.2s;
}

.kv p img:nth-child(7) {
	animation-delay: 1.4s;
}

.kv p img:nth-child(8) {
	animation-delay: 1.6s;
}

.kv p img:nth-child(9) {
	animation-delay: 1.2s;
}

.kv p img:nth-child(10) {
	animation-delay: 0.8s;
}

.kv p img:nth-child(11) {
	animation-delay: 1.5s;
}

@keyframes fadein {
	from {
		opacity: 0;
	}

	to {
		opacity: 1;
	}
}

@media (width >= 751px) {
	/* PC */

	.kv {
		min-height: 0;
		margin: 40px 0 0;
	}

	.kv .swiper {
		width: min(1104px, calc(1104 / 1500 * 100vw));
		height: min(620px, calc(620 / 1500 * 100vw));
	}

	.kv .img img {
		object-fit: fill;
	}

	.kv .img.slide1 {
		width: min(976px, calc(976 / 1500 * 100vw));
		height: min(620px, calc(620 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(1) {
		top: min(140px, calc(140 / 1500 * 100vw));
		left: min(192px, calc(192 / 1500 * 100vw));
		width: min(320px, calc(320 / 1500 * 100vw));
		height: min(320px, calc(320 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(2) {
		top: min(180px, calc(180 / 1500 * 100vw));
		left: min(516px, calc(516 / 1500 * 100vw));
		width: min(320px, calc(320 / 1500 * 100vw));
		height: min(200px, calc(200 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(3) {
		top: min(48px, calc(48 / 1500 * 100vw));
		left: min(292px, calc(292 / 1500 * 100vw));
		width: min(88px, calc(88 / 1500 * 100vw));
		height: min(88px, calc(88 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(4) {
		top: 0;
		left: min(384px, calc(384 / 1500 * 100vw));
		width: min(128px, calc(128 / 1500 * 100vw));
		height: min(136px, calc(136 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(5) {
		top: min(32px, calc(32 / 1500 * 100vw));
		left: min(516px, calc(516 / 1500 * 100vw));
		width: min(184px, calc(184 / 1500 * 100vw));
		height: min(144px, calc(144 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(6) {
		top: min(76px, calc(76 / 1500 * 100vw));
		left: min(704px, calc(704 / 1500 * 100vw));
		width: min(160px, calc(160 / 1500 * 100vw));
		height: min(100px, calc(100 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(7) {
		top: min(180px, calc(180 / 1500 * 100vw));
		left: min(840px, calc(840 / 1500 * 100vw));
		width: min(88px, calc(88 / 1500 * 100vw));
		height: min(80px, calc(80 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(8) {
		top: min(264px, calc(264 / 1500 * 100vw));
		left: min(840px, calc(840 / 1500 * 100vw));
		width: min(136px, calc(136 / 1500 * 100vw));
		height: min(80px, calc(80 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(9) {
		top: min(384px, calc(384 / 1500 * 100vw));
		left: min(884px, calc(884 / 1500 * 100vw));
		width: min(64px, calc(64 / 1500 * 100vw));
		height: min(64px, calc(64 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(10) {
		top: min(384px, calc(384 / 1500 * 100vw));
		left: min(720px, calc(720 / 1500 * 100vw));
		width: min(160px, calc(160 / 1500 * 100vw));
		height: min(192px, calc(192 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(11) {
		top: min(384px, calc(384 / 1500 * 100vw));
		left: min(516px, calc(516 / 1500 * 100vw));
		width: min(200px, calc(200 / 1500 * 100vw));
		height: min(136px, calc(136 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(12) {
		top: min(524px, calc(524 / 1500 * 100vw));
		left: min(516px, calc(516 / 1500 * 100vw));
		width: min(200px, calc(200 / 1500 * 100vw));
		height: min(96px, calc(96 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(13) {
		top: min(464px, calc(464 / 1500 * 100vw));
		left: min(336px, calc(336 / 1500 * 100vw));
		width: min(176px, calc(176 / 1500 * 100vw));
		height: min(120px, calc(120 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(14) {
		top: min(464px, calc(464 / 1500 * 100vw));
		left: min(236px, calc(236 / 1500 * 100vw));
		width: min(96px, calc(96 / 1500 * 100vw));
		height: min(80px, calc(80 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(15) {
		top: min(340px, calc(340 / 1500 * 100vw));
		left: min(68px, calc(68 / 1500 * 100vw));
		width: min(120px, calc(120 / 1500 * 100vw));
		height: min(120px, calc(120 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(16) {
		top: min(216px, calc(216 / 1500 * 100vw));
		left: 0;
		width: min(188px, calc(188 / 1500 * 100vw));
		height: min(120px, calc(120 / 1500 * 100vw));
	}

	.kv .img.slide1 img:nth-child(17) {
		top: min(140px, calc(140 / 1500 * 100vw));
		left: min(88px, calc(88 / 1500 * 100vw));
		width: min(100px, calc(100 / 1500 * 100vw));
		height: min(72px, calc(72 / 1500 * 100vw));
	}

	.kv .img.slide2 {
		width: min(1104px, calc(1104 / 1500 * 100vw));
		height: min(588px, calc(588 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(1) {
		top: min(148px, calc(148 / 1500 * 100vw));
		left: min(212px, calc(212 / 1500 * 100vw));
		width: min(320px, calc(320 / 1500 * 100vw));
		height: min(280px, calc(280 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(2) {
		top: min(108px, calc(108 / 1500 * 100vw));
		left: min(536px, calc(536 / 1500 * 100vw));
		width: min(336px, calc(336 / 1500 * 100vw));
		height: min(240px, calc(240 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(3) {
		top: min(64px, calc(64 / 1500 * 100vw));
		left: min(304px, calc(304 / 1500 * 100vw));
		width: min(96px, calc(96 / 1500 * 100vw));
		height: min(80px, calc(80 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(4) {
		top: 0;
		left: min(404px, calc(404 / 1500 * 100vw));
		width: min(128px, calc(128 / 1500 * 100vw));
		height: min(144px, calc(144 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(5) {
		top: min(20px, calc(20 / 1500 * 100vw));
		left: min(624px, calc(624 / 1500 * 100vw));
		width: min(96px, calc(96 / 1500 * 100vw));
		height: min(84px, calc(84 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(6) {
		top: min(20px, calc(20 / 1500 * 100vw));
		left: min(724px, calc(724 / 1500 * 100vw));
		width: min(240px, calc(240 / 1500 * 100vw));
		height: min(84px, calc(84 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(7) {
		top: min(109px, calc(109 / 1500 * 100vw));
		left: min(876px, calc(876 / 1500 * 100vw));
		width: min(88px, calc(88 / 1500 * 100vw));
		height: min(80px, calc(80 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(8) {
		top: min(248px, calc(876 / 1500 * 100vw));
		left: min(876px, calc(1104 / 1500 * 100vw));
		width: min(160px, calc(160 / 1500 * 100vw));
		height: min(100px, calc(100 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(9) {
		top: min(352px, calc(352 / 1500 * 100vw));
		left: min(1020px, calc(1020 / 1500 * 100vw));
		width: min(84px, calc(84 / 1500 * 100vw));
		height: min(76px, calc(76 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(10) {
		top: min(352px, calc(352 / 1500 * 100vw));
		left: min(896px, calc(896 / 1500 * 100vw));
		width: min(120px, calc(120 / 1500 * 100vw));
		height: min(160px, calc(160 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(11) {
		top: min(352px, calc(352 / 1500 * 100vw));
		left: min(700px, calc(700 / 1500 * 100vw));
		width: min(192px, calc(192 / 1500 * 100vw));
		height: min(192px, calc(192 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(12) {
		top: min(352px, calc(352 / 1500 * 100vw));
		left: min(536px, calc(536 / 1500 * 100vw));
		width: min(160px, calc(160 / 1500 * 100vw));
		height: min(136px, calc(136 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(13) {
		top: min(492px, calc(492 / 1500 * 100vw));
		left: min(536px, calc(536 / 1500 * 100vw));
		width: min(160px, calc(160 / 1500 * 100vw));
		height: min(96px, calc(96 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(14) {
		top: min(432px, calc(432 / 1500 * 100vw));
		left: min(324px, calc(324 / 1500 * 100vw));
		width: min(208px, calc(208 / 1500 * 100vw));
		height: min(132px, calc(132 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(15) {
		top: min(432px, calc(432 / 1500 * 100vw));
		left: min(212px, calc(212 / 1500 * 100vw));
		width: min(108px, calc(108 / 1500 * 100vw));
		height: min(92px, calc(92 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(16) {
		top: min(292px, calc(292 / 1500 * 100vw));
		left: 0;
		width: min(208px, calc(208 / 1500 * 100vw));
		height: min(136px, calc(136 / 1500 * 100vw));
	}

	.kv .img.slide2 img:nth-child(17) {
		top: min(168px, calc(168 / 1500 * 100vw));
		left: min(36px, calc(36 / 1500 * 100vw));
		width: min(172px, calc(172 / 1500 * 100vw));
		height: min(120px, calc(120 / 1500 * 100vw));
	}

	.kv .img.slide3 {
		width: min(1056px, calc(1056 / 1500 * 100vw));
		height: min(592px, calc(592 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(1) {
		top: min(132px, calc(132 / 1500 * 100vw));
		left: min(232px, calc(232 / 1500 * 100vw));
		width: min(280px, calc(280 / 1500 * 100vw));
		height: min(344px, calc(344 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(2) {
		top: min(172px, calc(172 / 1500 * 100vw));
		left: min(516px, calc(516 / 1500 * 100vw));
		width: min(360px, calc(360 / 1500 * 100vw));
		height: min(220px, calc(220 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(3) {
		top: 0;
		left: min(272px, calc(272 / 1500 * 100vw));
		width: min(112px, calc(112 / 1500 * 100vw));
		height: min(128px, calc(128 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(4) {
		top: min(40px, calc(40 / 1500 * 100vw));
		left: min(388px, calc(388 / 1500 * 100vw));
		width: min(124px, calc(124 / 1500 * 100vw));
		height: min(88px, calc(88 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(5) {
		top: min(4px, calc(4 / 1500 * 100vw));
		left: min(516px, calc(516 / 1500 * 100vw));
		width: min(224px, calc(224 / 1500 * 100vw));
		height: min(164px, calc(164 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(6) {
		top: min(68px, calc(68 / 1500 * 100vw));
		left: min(744px, calc(744 / 1500 * 100vw));
		width: min(132px, calc(132 / 1500 * 100vw));
		height: min(100px, calc(100 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(7) {
		top: min(172px, calc(172 / 1500 * 100vw));
		left: min(880px, calc(880 / 1500 * 100vw));
		width: min(176px, calc(176 / 1500 * 100vw));
		height: min(136px, calc(136 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(8) {
		top: min(312px, calc(312 / 1500 * 100vw));
		left: min(880px, calc(880 / 1500 * 100vw));
		width: min(84px, calc(84 / 1500 * 100vw));
		height: min(80px, calc(80 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(9) {
		top: min(396px, calc(396 / 1500 * 100vw));
		left: min(880px, calc(880 / 1500 * 100vw));
		width: min(160px, calc(160 / 1500 * 100vw));
		height: min(104px, calc(104 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(10) {
		top: min(396px, calc(396 / 1500 * 100vw));
		left: min(696px, calc(696 / 1500 * 100vw));
		width: min(180px, calc(180 / 1500 * 100vw));
		height: min(116px, calc(116 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(11) {
		top: min(516px, calc(516 / 1500 * 100vw));
		left: min(696px, calc(696 / 1500 * 100vw));
		width: min(96px, calc(96 / 1500 * 100vw));
		height: min(52px, calc(52 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(12) {
		top: min(396px, calc(396 / 1500 * 100vw));
		left: min(516px, calc(516 / 1500 * 100vw));
		width: min(176px, calc(176 / 1500 * 100vw));
		height: min(172px, calc(172 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(13) {
		top: min(480px, calc(480 / 1500 * 100vw));
		left: min(336px, calc(336 / 1500 * 100vw));
		width: min(176px, calc(176 / 1500 * 100vw));
		height: min(112px, calc(112 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(14) {
		top: min(480px, calc(480 / 1500 * 100vw));
		left: min(252px, calc(252 / 1500 * 100vw));
		width: min(80px, calc(80 / 1500 * 100vw));
		height: min(64px, calc(64 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(15) {
		top: min(380px, calc(380 / 1500 * 100vw));
		left: min(88px, calc(88 / 1500 * 100vw));
		width: min(140px, calc(140 / 1500 * 100vw));
		height: min(72px, calc(72 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(16) {
		top: min(256px, calc(256 / 1500 * 100vw));
		left: 0;
		width: min(228px, calc(228 / 1500 * 100vw));
		height: min(120px, calc(120 / 1500 * 100vw));
	}

	.kv .img.slide3 img:nth-child(17) {
		top: min(132px, calc(132 / 1500 * 100vw));
		left: min(108px, calc(108 / 1500 * 100vw));
		width: min(120px, calc(120 / 1500 * 100vw));
		height: min(120px, calc(120 / 1500 * 100vw));
	}

	.kv p {
		width: min(920px, calc(920 / 1500 * 100vw));
		margin: 50px auto 0;
	}

	.kv p img {
		width: min(61px, calc(61 / 1500 * 100vw));
		margin: 0 min(12px, calc(12 / 1500 * 100vw));
		opacity: 0;
		animation: fadein 0.6s ease forwards;
	}

	.kv p img:nth-child(3) {
		margin-right: min(60px, calc(60 / 1500 * 100vw));
	}

	.kv p img:nth-last-of-type(-n + 4) {
		margin: 0 min(8px, calc(8 / 1500 * 100vw));
	}
} /* @media */

/* ------------------
movie
-------------------- */
.movie {
	padding: 30px 20px 50px;
}

.movie .text {
	display: table;
	margin: 0 auto 50px;
	font-size: calc(1.8rem / 1.6);
	font-weight: 700;
	letter-spacing: 0.12em;
}

.movie .text.js-inview {
	opacity: 0;
	transition: 0.8s 0.4s;
	transform: translateY(4rem);
}

.movie .text.js-inview.is-show {
	opacity: 1;
	transform: translateY(0);
}

.movie .img {
	overflow: hidden;
	clear: right;
	text-align: center;
	border: 2px solid #999;
}

.movie .img.js-inview {
	opacity: 0;
	transition: 0.8s 0.4s;
}

.movie .img.js-inview.is-show {
	opacity: 1;
}

.movie .img a {
	position: relative;
	display: block;
}

.movie .img a::after {
	position: absolute;
	top: 50%;
	left: 50%;
	width: 60px;
	height: 60px;
	content: "";
	background: url(/jp-ja/recruit/img/icon_play_movie.svg) no-repeat 50% / cover;
	transform: translate(-50%, -50%);
}

.movie .img.js-inview img {
	opacity: 0;
	transition: transform 0.8s 0.4s;
	transform: scale(1.1);
}

.movie .img.js-inview.is-show img {
	opacity: 1;
	transform: scale(1);
}

@media (width >= 751px) {
	/* PC */

	.movie {
		max-width: 1500px;
		padding: 160px 50px 233px;
		margin: 0 auto;
	}

	.movie .text {
		float: right;
		margin-bottom: 160px;
		font-size: calc(2.2rem / 1.6);
	}

	.movie .img {
		max-width: 760px;
		margin: 0 auto;
	}

	.movie .img a::after {
		width: 120px;
		height: 120px;
	}
} /* @media */

/* ------------------
block
-------------------- */
.block {
	position: relative;
}

.block::before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	width: 100%;
	height: 100%;
	content: "";
	background: linear-gradient(180deg, #323232, #cfcfcf);
	mix-blend-mode: multiply;
}

.block h2 {
	margin-bottom: 50px;
}

.block h2 .en {
	font-size: calc(3rem / 1.6);
	font-weight: 600;
}

.block h2 .jp {
	font-size: calc(1.8rem / 1.6);
	font-weight: 700;
	letter-spacing: 0.12em;
}

.block h2 > span {
	position: relative;
	display: inline-block;
	overflow: hidden;
	line-height: 1.3;
}

.block h2 > span::after {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	width: 0;
	height: 100%;
	content: "";
	background: #fff;
}

.block h2 > .en.js-inview.is-show::after {
	animation: title-effect 1s forwards;
}

.block h2 > .jp.js-inview.is-show::after {
	animation: title-effect 0.8s 0.4s forwards;
}

@keyframes title-effect {
	0% {
		width: 0;
	}

	50% {
		left: 0;
		width: 100%;
	}

	100% {
		left: 102%;
		width: 100%;
	}
}

.block h2 .js-inview .in {
	opacity: 0;
	transition-duration: 0.3s;
}

.block h2 .js-inview.is-show .in {
	opacity: 1;
}

.block h2 .en.js-inview .in {
	transition-delay: 0.6s;
}

.block h2 .jp.js-inview .in {
	transition-delay: 1s;
}

.block .menu .js-inview {
	opacity: 0;
	transition: 0.8s 0.4s;
}

.block .menu .js-inview.is-show {
	opacity: 1;
}

.block .menu a {
	position: relative;
	display: block;
}

.block .menu .arrow {
	position: absolute;
	right: 10px;
	bottom: 10px;
	z-index: 2;
	width: 41px;
	height: 36px;
	overflow: hidden;
	background: var(--blue);
	border-radius: 4px;
}

.block .menu .arrow::before,
.block .menu .arrow::after {
	position: absolute;
	top: 50%;
	width: 19px;
	height: 19px;
	content: "";
	background: url(/jp-ja/recruit/img/icon_link_arrow.svg) no-repeat 50% / cover;
	filter: var(--filter-white);
	transition: 0.5s cubic-bezier(0.33, 1, 0.68, 1);
	transform: translate(-50%, -50%);
}

.block .menu .arrow::before {
	left: -100%;
}

.block .menu .arrow::after {
	left: 50%;
}

.block .menu .img {
	position: relative;
	overflow: hidden;
}

.block .menu .img img {
	width: 100%;
	height: calc(200 / 390 * 100vw);
	object-fit: cover;
}

.block .menu .img::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: "";
	background: linear-gradient(#fff 60%, #002b53);
	mix-blend-mode: multiply;
}

.block .menu .js-inview .img img,
.block .menu .js-inview .img::after {
	opacity: 0;
	transition: transform 0.8s 0.4s;
	transform: scale(1.1);
}

.block .menu .js-inview.is-show .img img,
.block .menu .js-inview.is-show .img::after {
	opacity: 1;
	transform: scale(1);
}

.block .menu p {
	position: absolute;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	padding: 10px 30px 10px 10px;
	line-height: 1.5;
}

.block .menu .en {
	display: block;
	margin-left: 1em;
	font-size: calc(1.4rem / 1.6);
	font-weight: 500;
	text-indent: -1em;
}

.block .menu .en::before {
	position: relative;
	top: 2px;
	font-size: calc(2.6rem / 1.6);
	content: "●";
}

.block .menu .jp {
	display: block;
	margin-left: calc(1.8rem / 1.6);
	font-size: calc(1.8rem / 1.6);
	font-weight: 700;
	letter-spacing: 0.08em;
}

@media (width >= 751px) {
	/* PC */

	.block h2 {
		max-width: 1400px;
		margin: 0 auto 100px;
	}

	.block h2 .en {
		font-size: min(calc(6rem / 1.6), calc(60 / 1200 * 100vw));
	}

	.block h2 .jp {
		font-size: min(calc(2.2rem / 1.6), calc(22 / 1200 * 100vw));
	}

	.block .menu a {
		overflow: hidden;
	}

	.block .menu a:hover .arrow::before {
		left: 50%;
	}

	.block .menu a:hover .arrow::after {
		left: 200%;
	}

	.block .menu .img::after {
		height: 120px;
		background: linear-gradient(#fff, #002b53);
	}

	.block .menu .img img {
		height: auto;
		object-fit: fill;
	}

	.block .menu p {
		padding: 10px 40px 10px 20px;
	}

	.block .menu .en {
		margin-bottom: 5px;
		font-size: min(calc(1.8rem / 1.6), calc(18 / 1200 * 100vw));
		line-height: 1.2;
	}

	.block .menu .en::before {
		font-size: min(calc(3rem / 1.6), calc(30 / 1200 * 100vw));
	}

	.block .menu .jp {
		margin-left: min(calc(2rem / 1.6), calc(20 / 1200 * 100vw));
		font-size: min(calc(2.4rem / 1.6), calc(24 / 1200 * 100vw));
	}
} /* @media */

/* ------------------
company
-------------------- */

.company {
	padding: 30px 20px;
	margin-bottom: 90px;
}

.company .menu li + li {
	margin-top: 20px;
}

@media (width >= 751px) {
	/* PC */

	.company {
		padding: 50px 50px 58px;
		margin-bottom: 180px;
	}

	.company .menu {
		display: grid;
		grid-template-columns: repeat(2, 1fr);
		gap: 60px 27px;
		max-width: 1134px;
		margin: 0 auto;
	}

	.company .menu li + li {
		margin-top: 0;
	}

	.company .menu li:nth-child(1) {
		grid-column: 1 / 3;
	}
} /* @media */

/* ------------------
people
-------------------- */

.people {
	padding: 30px 20px;
	margin-bottom: 90px;
}

.people .img img {
	height: auto;
}

@media (width >= 1021px) {
	/* PC */

	.people {
		padding: 50px 50px 60px;
		margin-bottom: 165px;
	}

	.people::before {
		max-height: 1067px;
	}

	.people .menu {
		margin: 0 -50px;
	}

	.people .menu a {
		max-width: 1500px;
		margin: 0 auto;
	}

	.people .menu a::before,
	.people .menu a::after {
		right: 180px;
	}

	.people .menu a p {
		display: flex;
		max-width: 1134px;
		padding-bottom: 20px;
		margin: 0 auto;
	}

	.people .menu .en {
		margin-right: 40px;
		line-height: 1;
	}
} /* @media */

/* ------------------
environment
-------------------- */

.environment {
	padding: 30px 20px;
	margin-bottom: 90px;
}

.environment .menu li + li {
	margin-top: 20px;
}

@media (width >= 751px) {
	/* PC */

	.environment {
		padding: 50px 50px 60px;
		margin-bottom: 225px;
	}

	.environment .menu {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 0 27px;
		max-width: 1134px;
		margin: 0 auto;
	}

	.environment .menu li + li {
		margin-top: 0;
	}

	.environment .menu li:first-child .en {
		margin-right: -30px;
	}
} /* @media */

/* ------------------
info
-------------------- */

.info {
	padding: 30px 20px;
}

.info .menu li + li {
	margin-top: 20px;
}

.info .menu img {
	object-position: 50% 40%;
}

@media (width >= 751px) {
	/* PC */

	.info {
		padding: 50px 50px 120px;
	}

	.info .menu {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 0 27px;
		max-width: 1134px;
		margin: 0 auto;
	}

	.info .menu li + li {
		margin-top: 0;
	}

	.info .menu li:nth-child(n + 2) .jp {
		margin-left: 0;
	}

	.info .menu li:nth-child(n + 2) a p {
		padding-right: 20px;
		padding-left: 10px;
	}

	.info .menu li a {
		height: 100%;
	}

	.info .menu li .img {
		height: 100%;
	}

	.info .menu li .img img {
		height: 100%;
		object-fit: cover;
	}
} /* @media */

@media (width >= 1201px) {
	/* PC */

	.info .menu {
		grid-template-columns: 2fr 1fr 1fr;
	}
} /* @media */

/* ------------------
contact
-------------------- */

.contact {
	padding: 40px 20px;
}

.contact.js-inview {
	opacity: 0;
	transition: 0.8s 0.4s;
	transform: translateY(4rem);
}

.contact.js-inview.is-show {
	opacity: 1;
	transform: translateY(0);
}

.contact a {
	display: block;
	padding: 12px;
	font-size: calc(1.8rem / 1.6);
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.12em;
	background: #1a79d1;
}

.contact a + a {
	margin-top: 10px;
}

.contact a[target="_blank"]::after {
	display: inline-block;
	width: 18px;
	height: 18px;
	margin-left: 10px;
	content: "";
	background: url(/jp-ja/recruit/img/icon_external.svg) no-repeat 100% 50% /
		auto 100%;
	filter: var(--filter-white);
}

@media (width >= 751px) {
	/* PC */

	.contact {
		padding: 85px 50px;
	}

	.contact a {
		max-width: 1134px;
		padding: 12px 0;
		margin: 0 auto;
		font-size: calc(2.6rem / 1.6);
	}
} /* @media */
