.main_visual{
	position: relative;
	overflow-x: hidden;
}
.main_visual .scroll{
	z-index: 3;
	position: absolute;
	bottom: 13rem; left: -3rem;
	display: flex;
	align-items: center;
	text-transform: uppercase;
	color: #fff;
	transform: rotate(-90deg);
}
.main_visual .scroll span{
	position: relative;
	display: inline-block;
	margin-right: 10px;
	width: 8rem; height: 1px;
	background: rgba(255, 255, 255, .25);
}
.main_visual .scroll span::before{
	content: '';
	position: absolute;
	top: 0; right: 0;
	width: 0;
	height: 100%;
	background: #fff;
	animation: scroll 3s linear infinite;
}
.main_visual .swiper-container{
	padding-bottom: 7rem;
	height:calc(960px + 7rem);
}
.main_visual .swiper-wrapper,
.main_visual .swiper-slide,
.main_visual .container{
	height: 100%;;
}
.main_visual .swiper-slide,
.main_visual .swiper-slide .txt_box{
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
.main_visual .swiper-slide .txt_box{
	z-index: 1;
	position:absolute;
	left:15px;
	display: flex;
	flex-direction: column;
	justify-content: flex-end;
	padding: 18rem 8rem;
	width:calc(100% - 30px);
	height:818px;
	bottom: 1rem;
	transform: translateY(7rem);
	color:#fff;
	border-radius: 4rem;
	box-shadow: 0 0 1rem rgba(0, 0, 0, .2);
}
.main_visual .swiper-slide .txt_box h3{
	font-size:6rem;
	font-weight:800;
}
.main_visual .swiper-slide .txt_box p{
	font-size:2.8rem;
	font-weight:300;
	margin-top:2rem;
}
.main_visual .swiper-container > .container{
	z-index: 2;
	position: absolute;
	bottom: 12rem; left: 50%;
	padding-left: calc(8rem + 15px);
	height: 3rem;
	transform: translateX(-50%);
}
.main_visual .swiper-pagination-bullet {
	margin-right: 3rem;
	background: #fff;
	opacity: .3;
}
.main_visual .swiper-pagination-bullet-active {
	opacity: 1;
}
@keyframes scroll{
	0%{width: 0;}
	50%{width: 100%;}
	100%{width: 0;}
}

@media(max-width:991.98px){
	.main_visual .swiper-container{
		height:calc(450px + 7rem);
	}
	.main_visual .swiper-slide .txt_box{
		padding: 0 4rem;
		padding-bottom: 8rem;
		height:350px;
	}
	.main_visual .swiper-slide .txt_box h3{
		font-size:4.5rem;
	}
	.main_visual .swiper-slide .txt_box p{
		font-size:2.2rem;
		margin-top:2rem;
	}
	.main_visual .swiper-container > .container {
    bottom: 4rem;
    padding-left: calc(4rem + 15px);
	}
}
@media(max-width:767.98px){
	.main_visual .scroll{
		display: none;
	}
	.main_visual .swiper-container{
		height:calc(400px + 4rem);
	}
	.main_visual .swiper-slide .txt_box{
		padding-bottom: 6rem;
		height:300px;
		transform: translateY(4rem);
	}
	.main_visual .swiper-slide .txt_box h3{
		font-size:3.5rem;
	}
	.main_visual .swiper-slide .txt_box p{
		margin-top:1.5rem;
	}
	.main_visual .swiper-container > .container {
    bottom: 6rem;
	}
}
@media(max-width:575.98px){
	.main_visual .swiper-slide .txt_box h3{
		font-size:3rem;
	}
	.main_visual .swiper-slide .txt_box p{
		margin-top: 1rem;
		font-size: 1.8rem;
	}
	.main_visual .swiper-slide .txt_box p br{
		display: none;
	}
}


/* 공통 */
#main_container{
	position: relative;
}
#main_container .line{
	z-index: -1;
	position: absolute;
	top: -7rem; left: 50%;
	transform: translateX(-50%);
	display: flex;
	width: 100%;
	height: calc(100% + 7rem);
}
#main_container .line span{
	position: relative;;
	display: inline-block;
	width: 50%;
	height: 100%;
	border-left: 1px solid #eee;
}
#main_container .line span:last-child{
	border-right: 1px solid #eee;
}
#main_container .line span::before{
	content: '';
	position: absolute;
	top: 0; left: 50%;
	width: 1px;
	height: 100%;
	background: #eee;
	transform: translateX(-50%);
}

#main_container section:not(.sec03) .mainTxt_con{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 6.5rem;
}
#main_container section .mainTxt_con .title{
	line-height: 1;
	font-family:'Poppins';
	font-size: 8.8rem;
	font-weight: bold;
}
#main_container section .mainTxt_con .title::after{
	content: '';
	display: inline-block;
	margin-right: 1rem;
	width: 1rem;
	height: 1rem;
	background: #dc202e;
	border-radius: 50%;
}
#main_container section .mainTxt_con .desc{
	font-size: 2rem;
	color: #444;
}
@media (max-width:991.98px) {
	#main_container section .mainTxt_con .title{
		font-size: 7rem;
	}
}
@media (max-width:767.98px) {
	#main_container section:not(.sec03) .mainTxt_con{
		display: block;
		margin-bottom: 4rem;
	}
	#main_container .mainTxt_con br{
		display: none;
	}
	#main_container section .mainTxt_con .title{
		font-size: 6rem;
	}
	#main_container section .mainTxt_con .desc{
		margin-top: 1.5rem;
	}
}
@media (max-width:575.98px) {
	#main_container section .mainTxt_con .title{
		font-size: 4.5rem;
	}
	#main_container section .mainTxt_con .desc{
		font-size: 1.8rem;
	}
}



/*sec01*/
#main_container > .sec01{
	padding-top: 10rem;
}
#main_container > .sec01 .mySwiper{
	position: relative;
	padding-bottom: 7rem;
	overflow: hidden;
}
#main_container > .sec01 .swiper-slide{
	max-width: 1400px;
	height: 64rem;
}
#main_container > .sec01 .item{
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 100%;
	height: 100%;
	font-size: 6rem;
	font-weight: 800;
	color: #fff;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	border-radius: 4rem;
}
#main_container > .sec01 .item a{
	display: block;
	margin-top: 3rem;
	padding: 1.3rem 3.8rem;
	text-align: center;
	font-size: 2rem;
	color: #fff;
	border: 2px solid #fff;
	border-radius: 3.2rem;
}
#main_container > .sec01 .swiper-container-horizontal>.swiper-pagination-bullets{
	bottom: 3.5rem;
	transform: translateY(50%);
}
#main_container > .sec01 .swiper-pagination-bullet{
	width: 6px;
	height: 6px;
	margin-left: 3rem;
}
#main_container > .sec01 .swiper-pagination-bullet:first-of-type{
	margin-left: 0;
}
#main_container > .sec01 .swiper-pagination-bullet-active {
	background: #dc202e;
}
@media (max-width:991.98px) {
	#main_container > .sec01 .swiper-slide{
		height: 50rem;
	}
	#main_container > .sec01 .item{
		font-size: 5rem;
	}
	#main_container > .sec01 .item a{
		margin-top: 2rem;
	}
}
@media (max-width:767.98px) {
	#main_container > .sec01 .swiper-slide{
		height: 40rem;
	}
	#main_container > .sec01 .item{
		font-size: 4rem;
	}
	#main_container > .sec01 .item a{
		padding: 1.3rem 3rem;
	}
}
@media (max-width:575.98px) {
	#main_container > .sec01 .swiper-slide{
		padding: 0 15px;
		height: 30rem;
	}
	#main_container > .sec01 .item{
		font-size: 3rem;
	}
	#main_container > .sec01 .item a{
		min-width: 16rem;
		margin-top: 1rem;
		padding: 1rem 3.5rem;
		font-size: 1.8rem;
	}
}



/*sec02*/
#main_container > .sec02{
	padding-top: 6.5rem;
}
#main_container > .sec02 ul{
	flex-wrap: wrap;
	gap: 1.5rem;
	margin-bottom: 8rem;
}
#main_container > .sec02 ul li{
	position: relative;
	width: calc(25% - 1.15rem);
	padding-top: 33%;
	border-radius: 2rem;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
	overflow: hidden;
}
#main_container > .sec02 ul li a{
	position: absolute;
	top: 0; left: 0;
	width: 100%;
	height: 100%;
	border-radius: 2rem;
}
#main_container > .sec02 .animated-title {
	position: relative; 
	max-width:100%; 
	height: auto; 
	padding: 10.5rem 0;
	overflow-x: hidden; 
	overflow-y: hidden; 
	font-size: 16rem;
	color: #eee;
}
#main_container > .sec02 .animated-title .track {
	position: absolute; 
	top: 0;
	white-space: nowrap;
	will-change: transform;
	animation: marquee 60s linear infinite; 
}

@keyframes marquee {
  from { transform: translateX(0); }
  to { transform: translateX(-50%); }
}

@media (max-width:991.98px) {
	#main_container > .sec02 ul li{
		width: calc(33.3% - 1rem);
		padding-top: 43%;
	}
	#main_container > .sec02 .animated-title {
		padding: 8rem 0;
		font-size: 12rem;
	}
}
@media (max-width:767.98px) {
	#main_container > .sec02 ul li{
		width: calc(50% - .8rem);
		padding-top: 66%;
	}
	#main_container > .sec02 .animated-title {
		padding: 5rem 0;
		font-size: 8rem;
	}
}


/*sec03*/
#main_container > .sec03{
	padding-top: 16rem;
	padding-bottom: 17rem;
	background:url(../_img/main/main_sec03_img.jpg) no-repeat center center / cover;
}
#main_container > .sec03 *{
	color: #fff !important;
}
#main_container > .sec03 .link a{
	display: inline-block;
	margin-top: 1rem;
	margin-right: 5px;
	min-width: 18.5rem;
	padding: 1.3rem 5.5rem;
	text-align: center;
	font-size: 2rem;
	border: 2px solid #fff;
	border-radius: 3.2rem;
}
@media (max-width:575.98px) {
	#main_container > .sec03{
		padding-top: 10rem;
		padding-bottom: 11rem;
	}
	#main_container > .sec03 .link a{
		min-width: 16rem;
		padding: 1.3rem 3.5rem;
		font-size: 1.8rem;
	}
}