.phase03-cont01 {
	position: relative;
}

.phase03-cont01 .top-img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	transform: scale(1.05);
	transition: opacity 1.2s cubic-bezier(0.4, 0, 0.2, 1), transform 1.2s cubic-bezier(0.4, 0, 0.2, 1);
	transition-delay: 0.5s;
}

.phase03-cont01 .top-img.fadeup-top-img {
	opacity: 1;
	transform: scale(1);
}

.phase03-cont02 {
	position: relative;
}

.phase03-cont02 .videos {
	position: absolute;
	top: 23.8rem;
	left: 47.4rem;
	width: 18.55rem;
	height: 40.5rem;
	border-radius: 2.5rem;
	overflow: hidden;
	z-index: 5;
}

.phase03-cont02 .videos video {
	width: 22.7rem;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}

.phase03-cont03 {
	position: relative;
}

.phase03-cont03 .infinity.infi01 {
	top: 96rem;
	bottom: auto;
}

.phase03-cont03 .infinity.infi02 {
	bottom: 142rem;
}

.phase03-cont03 .infinity {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 28.125rem;
}

.phase03-cont03 .infinity img {
	width: auto;
	height: 28.125rem;
}

.phase03-cont03 .infinity ul {
	display: block;
	white-space: nowrap;
	width: max-content;
}

.phase03-cont03 .infinity ul li {
	display: inline-block;
	margin-right: 1.4rem;
	font-size: 2rem;
	font-weight: 700;
	color: #fff;
	vertical-align: top;
}

.phase03-cont04 {
	position: relative;
}

.phase03-cont04 .cards {
	position: absolute;
	top: 20rem;
	left: 0;
	width: 100%;
	height: 100%;
	left: 50%;
	transform: translateX(-50%);
	width: 77rem;
}

.phase03-cont04 .cards ul {
	display: flex;
	gap: 1.25rem 1.5rem;
	align-items: flex-start;
	flex-wrap: wrap;
}

.phase03-cont04 .cards ul li {
	width: 18rem;
	height: 38.4rem;
	position: relative;
}

.phase03-cont04 .cards ul li .img {
	width: 100%;
	height: 100%;
}

.phase03-cont04 .cards ul li .img img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.phase03-cont04 .cards ul li .img-on {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	opacity: 0;
	transition: opacity 0.3s ease-in-out;
}

.phase03-cont04 .cards ul li .img-on img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.phase03-cont04 .cards ul li:hover .img-on {
	opacity: 1;
}

.phase03-cont05 {
	position: relative;
}

.phase03-cont05 .abs01 {
	position: absolute;
	top: 62.81rem;
	left: 21.84rem;
	width: 12rem;
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont05 .abs02 {
	position: absolute;
	top: 62.81rem;
	left: 40.41rem;
	width: 12rem;
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 3rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont05 .abs03 {
	position: absolute;
	top: 62.81rem;
	left: 55.53rem;
	width: 12rem;
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 3rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont05 .abs04 {
	position: absolute;
	top: 62.81rem;
	left: 70.89rem;
	width: 12rem;
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont05 .abs01 .count-num {
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont05 .abs02 .count-num {
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 3rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont05 .abs03 .count-num {
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 3rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont05 .abs04 .count-num {
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont06 {
	position: relative;
	margin-top: -1px;
}

.phase03-cont07 {
	position: relative;
	margin-top: -1px;
}

.phase03-cont07 .videos {
	position: absolute;
	top: 45.31rem;
	left: 71.75rem;
	width: 16.5rem;
	height: 27.5rem;
	overflow: hidden;
	z-index: 5;
}

.phase03-cont07 .videos video {
	width: 100%;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}

.phase03-cont07 .abs01 {
	position: absolute;
	top: 77.81rem;
	left: 31.16rem;
	width: 16rem;
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont07 .abs02 {
	position: absolute;
	top: 77.81rem;
	left: 44.53rem;
	width: 16rem;
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont07 .abs03 {
	position: absolute;
	top: 77.81rem;
	left: 66.97rem;
	width: 16rem;
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont07 .abs01 .count-num {
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont07 .abs02 .count-num {
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont07 .abs03 .count-num {
	color: var(--black, #000);
	font-family: "Helvetica Now Display";
	font-size: 4.5rem;
	font-weight: 800;
	line-height: 100%;
	letter-spacing: -0.045rem;
	text-transform: uppercase;
}

.phase03-cont08 {
	position: relative;
	margin-top: -1px;
}

.phase03-cont08 .guide-img {
	position: relative;
	z-index: 10;
}

.phase03-cont08 .videos {
	position: absolute;
	top: 25.3rem;
	left: 50%;
	transform: translateX(-50%);
	width: 60rem;
	height: 36.6875rem;
	z-index: 5;
}

.phase03-cont08 .videos video {
	width: 100%;
	position: relative;
	left: 50%;
	transform: translateX(-50%);
}

.phase03-cont08 a {
	width: 22.875rem;
	position: absolute;
	left: 50%;
	transform: translateX(-50%);
	top: 65.94rem;
}

.phase03-cont09 {
	position: relative;
}

.next-page {
	padding: 3.75rem 0 12.5rem;
}

@media (max-width: 959px) {
	.phase03 {
		padding-top: 7rem;
	}
	.phase03-cont02 {
		position: relative;
	}
	.phase03-cont02 .videos {
		position: absolute;
		top: 31.6rem;
		left: 16.1rem;
		width: 9.7rem;
		height: 21.2rem;
		border-radius: 1.4rem;
		overflow: hidden;
		z-index: 5;
	}
	.phase03-cont02 .videos video {
		width: 13rem;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
	}
	.phase03-cont03 {
		position: relative;
	}
	.phase03-cont03 .infinity.infi01 {
		top: 141rem;
		bottom: auto;
	}
	.phase03-cont03 .infinity.infi02 {
		bottom: 103rem;
	}
	.phase03-cont03 .infinity {
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		height: 28.1rem;
	}
	.phase03-cont03 .infinity img {
		width: auto;
		height: 28.1rem;
	}
	.phase03-cont03 .infinity ul {
		display: block;
		white-space: nowrap;
		width: max-content;
	}
	.phase03-cont03 .infinity ul li {
		display: inline-block;
		margin-right: 2.5rem;
		font-size: 2rem;
		font-weight: 700;
		color: #fff;
		vertical-align: top;
	}
	.phase03-cont04 {
		position: relative;
	}
	.phase03-cont04 .cards {
		position: absolute;
		top: 28rem;
		left: 0;
		width: 100%;
		height: 100%;
		left: 50%;
		transform: translateX(-50%);
		padding: 0 2.75rem;
		box-sizing: border-box;
	}
	.phase03-cont04 .cards ul {
		display: flex;
		gap: 1.88rem 2rem;
		align-items: flex-start;
		flex-wrap: wrap;
	}
	.phase03-cont04 .cards ul li {
		width: 18.7rem;
		height: 39.9rem;
		position: relative;
	}
	.phase03-cont04 .cards ul li .img {
		width: 100%;
		height: 100%;
	}
	.phase03-cont04 .cards ul li .img img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.phase03-cont04 .cards ul li .img-on {
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		opacity: 0;
		transition: opacity 0.3s ease-in-out;
	}
	.phase03-cont04 .cards ul li .img-on img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.phase03-cont04 .cards ul li:hover .img-on {
		opacity: 1;
	}
	.phase03-cont05 .abs01 {
		position: absolute;
		top: 53.81rem;
		left: 4.06rem;
		width: 12rem;
		color: var(--black, #000);
		font-family: "Helvetica Now Display";
		font-size: 4.25rem;
		font-weight: 800;
		line-height: 100%;
		letter-spacing: -0.045rem;
		text-transform: uppercase;
	}
	.phase03-cont05 .abs02 {
		position: absolute;
		top: 55.08rem;
		left: 19.41rem;
		width: 12rem;
		color: var(--black, #000);
		font-family: "Helvetica Now Display";
		font-size: 3rem;
		font-weight: 800;
		line-height: 100%;
		letter-spacing: -0.045rem;
		text-transform: uppercase;
	}
	.phase03-cont05 .abs03 {
		position: absolute;
		top: 55.08rem;
		left: 32.4rem;
		width: 12rem;
		color: var(--black, #000);
		font-family: "Helvetica Now Display";
		font-size: 3rem;
		font-weight: 800;
		line-height: 100%;
		letter-spacing: -0.045rem;
		text-transform: uppercase;
	}
	.phase03-cont05 .abs04 {
		position: absolute;
		top: 106.91rem;
		left: 9.81rem;
		width: 12rem;
		color: var(--black, #000);
		font-family: "Helvetica Now Display";
		font-size: 4.25rem;
		font-weight: 800;
		line-height: 100%;
		letter-spacing: -0.045rem;
		text-transform: uppercase;
	}
	.phase03-cont05 .abs01 .count-num {
		color: var(--black, #000);
		font-family: "Helvetica Now Display";
		font-size: 4.25rem;
		font-weight: 800;
		line-height: 100%;
		letter-spacing: -0.045rem;
		text-transform: uppercase;
	}
	.phase03-cont05 .abs02 .count-num {
		color: var(--black, #000);
		font-family: "Helvetica Now Display";
		font-size: 3rem;
		font-weight: 800;
		line-height: 100%;
		letter-spacing: -0.045rem;
		text-transform: uppercase;
	}
	.phase03-cont05 .abs03 .count-num {
		color: var(--black, #000);
		font-family: "Helvetica Now Display";
		font-size: 3rem;
		font-weight: 800;
		line-height: 100%;
		letter-spacing: -0.045rem;
		text-transform: uppercase;
	}
	.phase03-cont05 .abs04 .count-num {
		color: var(--black, #000);
		font-family: "Helvetica Now Display";
		font-size: 4.25rem;
		font-weight: 800;
		line-height: 100%;
		letter-spacing: -0.045rem;
		text-transform: uppercase;
	}
	.phase03-cont07 .videos {
		position: absolute;
		top: 71rem;
		left: 50%;
		transform: translateX(-50%);
		width: 27.5rem;
		height: 45.8125rem;
		overflow: hidden;
		z-index: 5;
	}
	.phase03-cont07 .videos video {
		width: 100%;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
	}
	.phase03-cont07 .abs01 {
		/*display: none;*/
		left:2rem; top:147rem;
	}
	.phase03-cont07 .abs02 {
		/*display: none;*/
		left:2rem; top:154.5rem;
	}
	.phase03-cont07 .abs03 {
		/*display: none;*/
		left:2rem; top:162rem;
	}
	.phase03-cont08 {
		position: relative;
	}
	.phase03-cont08 .guide-img {
		position: relative;
		z-index: 10;
	}
	.phase03-cont08 .videos {
		position: absolute;
		top: 38.5rem;
		left: 50%;
		transform: translateX(-50%);
		width: 40rem;
		height: auto;
		z-index: 5;
	}
	.phase03-cont08 .videos video {
		width: 100%;
		position: relative;
		left: 50%;
		transform: translateX(-50%);
	}
	.phase03-cont08 a {
		width: 27.3rem;
		position: absolute;
		left: 50%;
		transform: translateX(-50%);
		top: auto;
		bottom: 0;
	}
	.next-page {
		padding: 7.5rem 0 10rem;
	}
}
