.main_visual{
	margin: 0 auto;
	padding: 14rem 15px 0 15px;
	max-width: 1690px;
	overflow:hidden;
}
.main_visual .inner{
	position: relative;
	border-radius: 3rem;
	overflow: hidden;
}
.main_visual .swiper-slide{
	height:900px;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
}
.main_visual .contents{
	z-index:2;
	position:absolute;
	left:50%; top:50%;
	width:100%;
	color:#fff;
	transform:translate(-50%,-50%);
}
.main_visual .contents h2{
	line-height: 1.3;
	font-size: 6rem;
	font-weight: bold;
}
.main_visual .contents h2 span{color: #c1b4fe;}
.main_visual .contents p{
	margin-top: 3rem;
	margin-bottom: 9rem;
	line-height: 1.6;
	font-size: 1.8rem;
}
.main_visual .contents > div{align-items: center;}
.main_visual .paging{
	position: relative;
	width:60px;
	height:60px;
}
.main_visual .paging::after{
	content:"";
	position:absolute;
	left:0; top:0;
	width:100%;
	height:100%;
	border-radius:100%;
	border:5px solid rgba(255,255,255,.6);
	transform:scale(.94);
}
.main_visual #mv_autoplay{
	cursor: pointer;
	z-index: 10;
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
	font-size:1.8rem;
	color:#fff;
	outline: none;
	background: none;
	border: none;
}
.main_visual .paging svg{transform: rotate(-88deg);}
.main_visual .paging .page_circle{
	fill: transparent;
	stroke: rgb(255, 255, 255);
	stroke-width: 5;
	stroke-linecap: round;
	stroke-dasharray: 163.36px;
	stroke-dashoffset: 163.36px;
}
.main_visual .mv_pagination{
	margin-left:2rem;
	display: flex;
	align-items: center;
	gap: 7px;
	font-size:1.6rem;
	font-weight: 300;
}
.main_visual .mv_pagination .swiper-pagination-current{font-weight: bold;}
@media(max-width:1600px){
	.main_visual{padding: 12rem 15px 0 15px;}
}
@media(max-width:1199.98px){
	.main_visual{padding: 8.5rem 15px 0 15px;}
}
@media(max-width:991.98px){
	.main_visual .swiper-slide{height:500px;}
	.main_visual .contents h2{font-size: 5rem;}
	.main_visual .contents p{
		margin-top: 2rem;
		margin-bottom: 6rem;
		font-size: 1.8rem;
	}
}
@media(max-width:767.98px){
	.main_visual .swiper-slide{height:400px;}
	.main_visual .contents h2{font-size: 4rem;}
	.main_visual .contents p{
		margin-top: 1.5rem;
		margin-bottom: 3rem;
	}
}
@media(max-width:575.98px){
	.main_visual .swiper-slide{height:350px;}
	.main_visual .contents h2{font-size: 3.5rem;}
	.main_visual .contents p{
		margin-top: 1rem;
		margin-bottom: 2rem;
	}
	.main_visual .contents p br{display: none;}
}




/* ---------- 공통 ---------- */
#main_container .main_title{
	line-height: 1.4;
	font-size: 4rem;
	font-weight: 600;
}
#main_container .main_title p{
	font-size: 2rem;
	font-weight: 400;
	color: #666;
}
@media (max-width:991.98px) {
	#main_container .main_title{font-size: 3rem;}
	#main_container .main_title p{font-size: 2rem;}
}
@media (max-width:767.98px) {
	#main_container .main_title{font-size: 2.8rem;}
	#main_container .main_title p{font-size: 1.8rem;}
}




/* ---------- sec01 ---------- */
#main_container > .sec01{
	padding: 8rem 15px 9rem 15px;
}
#main_container > .sec01 .link{
	display: flex;
	justify-content: flex-end;
	gap: 2rem;
	margin-top: 6rem;
}
#main_container > .sec01 .link div,
#main_container > .sec01 .link div a{transition: all .3s ease-in-out;}
#main_container > .sec01 .link div{width: 39.3%;}
#main_container > .sec01 .link div:hover{width: 46.4%;}
#main_container > .sec01 .link div a{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
	padding: 5rem 7rem 6rem 7rem;
	height: 334px;
	background: #fff;
	border-radius: 3rem;
}
#main_container > .sec01 .link div:hover a{
	color: #fff;
	background: #c4baf5;
}
#main_container > .sec01 .link dt{
	font-size: 2.6rem;
	font-weight: 500;
	color: #222;
}
#main_container > .sec01 .link dd{
	margin-top: 2rem;
	font-size: 1.8rem;
	color: #444;
}
#main_container > .sec01 .link p{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#main_container > .sec01 .link p span{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 6rem;
	height: 6rem;
	font-size: 3.2rem;
	color: #222;
	background: #fff;
	border-radius: 50%;
	opacity: 0;
}
#main_container > .sec01 .link dl *,
#main_container > .sec01 .link p span,
#main_container > .sec01 .link p img{transition: all .3s ease-in-out;}
#main_container > .sec01 .link div:hover p span{opacity: 1;}
#main_container > .sec01 .link div:hover p img{filter: brightness(0) invert(1);}
#main_container > .sec01 .link div:hover dl *{color: #fff;}
@media (max-width:1199.98px) {
	#main_container > .sec01 .link div{width: 40%;}
	#main_container > .sec01 .link div a {padding: 4rem;}
	#main_container > .sec01 .link dd br {display: none;}
}
@media (max-width:991.98px) {
	#main_container > .sec01{padding: 8rem 15px;}
	#main_container > .sec01 .link{margin-top: 4rem;}
	#main_container > .sec01 .link div a {height: 30rem;}
	#main_container > .sec01 .link dt{font-size: 2rem;}
	#main_container > .sec01 .link dd{margin-top: 1rem; font-size: 1.8rem;}
	#main_container > .sec01 .link p span{
		width: 4.5rem;
		height: 4.5rem;
		font-size: 2.5rem;
	}
	#main_container > .sec01 .link p img {max-width: 50px;}
}
@media (max-width:767.98px) {
	#main_container > .sec01{padding: 6rem 15px;}
	#main_container > .sec01 .link{margin-top: 3rem;}
	#main_container > .sec01 .link div{width: 42%;}
	#main_container > .sec01 .link div:hover{width: 50%;}
	#main_container > .sec01 .link p span{
		width: 3.5rem;
		height: 3.5rem;
		font-size: 2.2rem;
	}
	#main_container > .sec01 .link p img {max-width: 40px;}
}
@media (max-width:575.98px) {
	#main_container > .sec01 .link{flex-wrap: wrap;}
	#main_container > .sec01 .link div,
	#main_container > .sec01 .link div:hover{width: 100%;}
	#main_container > .sec01 .link div a {height: auto; padding: 3rem;}
	#main_container > .sec01 .link p{margin-top: 3rem;}
	#main_container > .sec01 .link dd br {display: block;}
}




/* ---------- sec02 ---------- */
#main_container > .sec02{display: flex;}
#main_container > .sec02 .left{
	padding: 14rem 11rem;
	display: flex;
	align-items: flex-end;
	justify-content: flex-end;
	width: 35.15%;
	background: url(../_img/main/main_sec02_img1.jpg) no-repeat center center / cover;
}
#main_container > .sec02 .left .main_title{color: #fff;}
#main_container > .sec02 .left a{
	display: block;
	margin-top: 4rem;
	padding: 1.5rem 2rem;
	max-width: 17rem;
	font-size: 1.8rem;
	font-weight: bold;
	color: #fff;
	border-radius: 3.5rem;
	border: 2px solid #fff;
}
#main_container > .sec02 .right{
	padding: 8rem 3.5rem;
	width: 64.85%;
	background: #fff;
}
#main_container > .sec02 .right ul{
	flex-wrap: wrap;
	max-width: 1180px;
}
#main_container > .sec02 .right ul li{
	cursor: pointer;
	padding: 5rem 7.5rem;
	width: 50%;
}
#main_container > .sec02 .right ul li img{filter:brightness(0) invert(0);}
#main_container > .sec02 .right ul li dl{
	margin-top: 1.5rem;
	margin-bottom: 2.5rem;
}
#main_container > .sec02 .right ul li dt{
	margin-bottom: 1.5rem;
	font-size: 2.6rem;
	font-weight: 500;
	color: #222;
}
#main_container > .sec02 .right ul li dd{
	line-height: 1.6;
	font-size: 1.8rem;
	color: #444;
}
#main_container > .sec02 .right ul li i{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 6rem;
	height: 6rem;
	font-size: 3.2rem;
	color: #222;
	background: #fff;
	border-radius: 50%;
	border: 1px solid #dedede;
}
#main_container > .sec02 .right ul li img,
#main_container > .sec02 .right ul li dt,
#main_container > .sec02 .right ul li i{transition: all .3s ease-in-out;}
#main_container > .sec02 .right ul li:hover img{filter:brightness(1) invert(0);}
#main_container > .sec02 .right ul li:hover dt{color: #9b8ff5;}
#main_container > .sec02 .right ul li:hover i{
	color: #fff;
	background: #c4baf5;
	border-color: #c4baf5;
}
@media (max-width:1199.98px) {
	#main_container > .sec02 .left{padding: 10rem; padding-right: 5rem;}
	#main_container > .sec02 .right {padding: 6rem 3rem;}
	#main_container > .sec02 .right ul li {padding: 4rem 6rem;}
}
@media (max-width:991.98px) {
	#main_container > .sec02 {display: block;}
	#main_container > .sec02 > div{width: 100% !important;}
	#main_container > .sec02 .left{
		display: block;
		padding: 5rem 0;
	}
	#main_container > .sec02 .right ul,
	#main_container > .sec02 .left .main_title {
		margin: 0 auto;
		padding: 0 15px;
    max-width: 720px;
	}
	#main_container > .sec02 .left a {
    margin-top: 2.5rem;
		padding: 1rem 1.5rem;
		text-align: center;
    font-size: 1.8rem;
	}
	#main_container > .sec02 .right {padding:2.5rem 0;}
	#main_container > .sec02 .right ul li {padding:2.5rem;}
	#main_container > .sec02 .right ul li img{max-width: 45px;}
	#main_container > .sec02 .right ul li dl{
		margin-top: 1rem;
		margin-bottom: 1.5rem;
	}
	#main_container > .sec02 .right ul li dt{
		margin-bottom: 1rem;
		font-size: 2.4rem;
	}
	#main_container > .sec02 .right ul li dd{font-size: 1.8rem;}
	#main_container > .sec02 .right ul li i{
		width: 4.5rem;
		height: 4.5rem;
		font-size: 2.5rem;
	}
}
@media (max-width:767.98px) {
	#main_container > .sec02 .left{padding: 4rem 0;}
	#main_container > .sec02 .right ul,
	#main_container > .sec02 .left .main_title {
    max-width: 540px;
	}
	#main_container > .sec02 .left a {margin-top: 2rem;}
	#main_container > .sec02 .right {padding:2rem 0;}
	#main_container > .sec02 .right ul li {padding:2rem;}
	#main_container > .sec02 .right ul li img{max-width: 40px;}
	#main_container > .sec02 .right ul li dl{
		margin-top: 5px;
		margin-bottom: 1rem;
	}
	#main_container > .sec02 .right ul li dt{
		margin-bottom: 5px;
		font-size: 2.2rem;
	}
	#main_container > .sec02 .right ul li dd{font-size: 1.6rem;}
	#main_container > .sec02 .right ul li i{
		width: 3.5rem;
		height: 3.5rem;
		font-size: 2.2rem;
	}
}
@media (max-width:575.98px){
	#main_container > .sec02 .right{padding: 4rem 0;}
	#main_container > .sec02 .right ul {gap:4rem}
	#main_container > .sec02 .right ul li {
		padding: 0;
		width: 100%;
	}
}




/* ---------- sec03 ---------- */
#main_container > .sec03{padding: 11rem 15px;}
#main_container > .sec03 .top{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#main_container > .sec03 .top .sw_btn div{font-size: 3.2rem;}
#main_container > .sec03 .top .sw_btn div:first-child{
	position: relative;
	margin-right: 2.5rem;
	padding-right: 2.5rem;
}
#main_container > .sec03 .top .sw_btn div:first-child::after{
	content: '';
	position: absolute;
	top: 50%; right: 0;
	width: 1px; height: 3.4rem;
	background: #d3d3d3;
	transform: translateY(-50%);
}
#main_container > .sec03 .mySwiper{
	margin-top: 4rem;
	margin-bottom: 12rem;
	overflow: hidden;
}
#main_container > .sec03 .txt_area a{
	position: relative;
	display: block;
	padding: 4rem;
	background: #fff;
	border-radius: 3rem;
	color:#222;
	border: 2px solid #fff;
	transition: all .3s;
}
#main_container > .sec03 .txt_area a:hover{border-color: #c4baf5;}
#main_container > .sec03 .txt_area b{
	line-height: 1;
	font-size: 7rem;
	font-weight: 700;
	color: #c4baf5;
}
#main_container > .sec03 .txt_area .title{
	margin-top: -2rem;
	overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
	font-size: 2.6rem;
	font-weight: 500;
}
#main_container > .sec03 .txt_area .desc{
	margin-top: 2.5rem;
	margin-bottom: 4rem;
	word-wrap: break-word; 
	display: -webkit-box; 
	-webkit-line-clamp: 4; 
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
	font-size: 1.8rem;
}
#main_container > .sec03 .txt_area .date{
	font-size: 1.8rem;
	color: #666;
}
#main_container > .sec03 .bottom{
	padding: 6rem 0;
	text-align: center;
	border-radius: 3rem;
	box-shadow: 1rem 0 3rem rgba(0,0,0,.05);
	background: url(../_img/main/main_sec03_img1.jpg) no-repeat center center / cover;
}
#main_container > .sec03 .bottom .main_title p{
	margin-bottom: 5px;
	font-size: 2.4rem;
	color: #222;
}
#main_container > .sec03 .bottom a{
	display: inline-block;
	margin-top: 2rem;
	padding: 1.5rem 4.5rem;
	font-size: 1.8rem;
	font-weight: 600;
	color: #fff;
	background: #222;
	border-radius: 3rem;
}
@media (max-width:1400px){
	#main_container > .sec03 .top{max-width: 90%;}
}
@media (max-width:991.98px) {
	#main_container > .sec03 {padding: 8rem 15px;}
	#main_container > .sec03 .mySwiper{
		margin-top: 3rem;
		margin-bottom: 5rem;
	}
	#main_container > .sec03 .top .sw_btn div {font-size: 3rem;}
	#main_container > .sec03 .top .sw_btn div:first-child {
    margin-right: 2rem;
    padding-right: 2rem;
	}
	#main_container > .sec03 .top .sw_btn div:first-child::after {height: 3rem;}
	#main_container > .sec03 .txt_area a {padding: 3rem;}
	#main_container > .sec03 .txt_area b{font-size: 6rem;}
	#main_container > .sec03 .txt_area .title{font-size: 2.2rem;}
	#main_container > .sec03 .txt_area .desc,
	#main_container > .sec03 .txt_area .date{font-size: 1.8rem;}
	#main_container > .sec03 .txt_area .desc {
    margin-top: 1.5rem;
    margin-bottom: 3rem;
	}
	#main_container > .sec03 .bottom{padding: 4rem 0;}
	#main_container > .sec03 .bottom .main_title p{font-size: 2.4rem;}
	#main_container > .sec03 .bottom a{
		margin-top: 1.5rem;
		padding: 1rem 4rem;
		font-size: 1.8rem;
	}
}
@media (max-width:767.98px) {
	#main_container > .sec03 {padding: 6rem 15px;}
	#main_container > .sec03 .mySwiper{
		margin-top: 2rem;
		margin-bottom: 4rem;
	}
	#main_container > .sec03 .top .sw_btn div {font-size: 2.5rem;}
	#main_container > .sec03 .top .sw_btn div:first-child {
    margin-right: 1.5rem;
    padding-right: 1.5rem;
	}
	#main_container > .sec03 .top .sw_btn div:first-child::after {height: 2.5rem;}
	#main_container > .sec03 .txt_area b{font-size: 5.5rem;}
	#main_container > .sec03 .txt_area .desc {
    margin-top: 1rem;
    margin-bottom: 2rem;
	}
	#main_container > .sec03 .bottom{padding: 3.5rem 0;}
	#main_container > .sec03 .bottom .main_title p{font-size: 2rem; margin-bottom: 3px;}
	#main_container > .sec03 .bottom a{padding: 1rem 3.5rem;}
}


/* ---------- sec04 ---------- */
#main_container > .sec04 h3{width: 28.57%;}
#main_container > .sec04 ul{width: 71.43%;}
#main_container > .sec04 ul li + li{margin-top: 1.5rem;}
#main_container > .sec04 ul li a{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 5.5rem 7rem;
	color: #222;
	/* background: #f5f3ff; */
	background: #fff;
	border-radius: 3rem;
}
#main_container > .sec04 ul li .txt{
	padding-right: 3rem;
	width: calc(100% - 6rem);
}
#main_container > .sec04 ul li .txt span{
	font-size: 1.8rem;
	color: #666;
}
#main_container > .sec04 ul li .txt p{
	overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
	font-size: 2.4rem;
	font-weight: 600;
}
#main_container > .sec04 ul li i{
	display: flex;
	align-items: center;
	justify-content: center;
	width: 6rem;
	height: 6rem;
	font-size: 3.2rem;
	border-radius: 100%;
	background: #fff;
}
#main_container > .sec04 ul li a,
#main_container > .sec04 ul li i{transition: all .3s ease-in-out;}
#main_container > .sec04 ul li:hover a{
	background: #fff;
}
#main_container > .sec04 ul li:hover i{
	color: #fff;
	background: #c4baf5;
}
@media (max-width:991.98px){
	#main_container > .sec04 h3{width: 40%;}
	#main_container > .sec04 ul{width: 60%;}
	#main_container > .sec04 ul li a{padding: 3rem; padding-right: 5rem;}
	#main_container > .sec04 ul li .txt{
		padding-right: 2rem;
		width: calc(100% - 4.5rem);
	}
	#main_container > .sec04 ul li .txt span{font-size: 1.8rem;}
	#main_container > .sec04 ul li .txt p{font-size: 2.2rem;}
	#main_container > .sec04 ul li i{
		width: 4.5rem;
		height: 4.5rem;
		font-size: 2.5rem;
	}
}
@media (max-width:767.98px){
	#main_container > .sec04 > div:first-child{flex-wrap: wrap;}
	#main_container > .sec04 > div:first-child > *{width: 100% !important;}
}