.main_visual{
	position:relative;
	height:100vh;
	max-height: 1100px;
}
.main_visual .txt{
	z-index: 1;
	position: relative;
	display: flex;
	align-items: center;
	width: 100%; height: 100%;
	color: #fff;
}
.main_visual .txt small{
	display: block;
	color: rgba(255, 255, 255, .5);
}
.main_visual video{
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	object-fit: cover;
	object-position: center;
}
.main_visual .scroll_down{
	cursor: pointer;
	position:absolute;
	left:50%;
	bottom:0;
	z-index:3;
	transform:translateX(-50%);
	color:#fff;
}
.main_visual .scroll_down span{
	position:relative;
	margin: 0 auto;
	display:block;
	margin-top: 1.5rem;
	height:5rem;
	width:1px;
	background: rgba(255, 255, 255, .5);
}
.main_visual .scroll_down span::after{
	content:"";
	position:absolute;
	top:0; left:0;
	width:100%;
	height:50%;
	background:#fff;
	animation: mouse 1s infinite alternate;
}
@keyframes mouse{
	0%{top:0;}
	100%{top:5rem;}
}
@media(max-width:360px){
	.main_visual .txt p br{display: none;}
}



/* 공통 */
#main_container .main_title{
	font-size: 5.4rem;
	font-weight: bold;
}
#main_container .main_title small{
	display: block;
	margin-bottom: 5px;
	font-family: 'Play';
	font-size: 2rem;
	font-weight: bold;
}
#main_container .moreView{
	display: block;
	max-width: 206px;
}
#main_container .moreView img{width: 100%;}
@media(max-width:1199.98px){
	#main_container .main_title{font-size: 4.5rem;}
	#main_container .moreView{max-width: 170px;}
}
@media(max-width:991.98px){
	#main_container .main_title{font-size: 3.5rem;}
	#main_container .moreView{max-width: 170px;}
}
@media(max-width:767.98px){
	#main_container .main_title{font-size: 3rem;}
	#main_container .moreView{max-width: 150px;}
}



/*sec01*/
#main_container > .sec01{
	padding-top: 14rem;
	padding-bottom: 20rem;
}
#main_container > .sec01 .top{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
}
#main_container > .sec01 .main_title small,
#main_container > .sec01 .main_title span{color: #0274b8;}
#main_container > .sec01 ul{
	gap: 3rem;
	margin-top: 8.5rem;
}
#main_container > .sec01 ul li{
	position: relative;
	padding-top: 31.872%;
	width: calc(33.3% - 2rem);
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	border-radius: 50%;
	transition: all .3s;
}
#main_container > .sec01 ul li:nth-child(1){background-image: url(../_img/main/main_sec01_img01.png);}
#main_container > .sec01 ul li:nth-child(2){background-image: url(../_img/main/main_sec01_img02.png);}
#main_container > .sec01 ul li:nth-child(3){background-image: url(../_img/main/main_sec01_img03.png);}
#main_container > .sec01 ul li:nth-child(1):hover{background-image: url(../_img/main/main_sec01_img01_2.png);}
#main_container > .sec01 ul li:nth-child(2):hover{background-image: url(../_img/main/main_sec01_img02_2.png);}
#main_container > .sec01 ul li:nth-child(3):hover{background-image: url(../_img/main/main_sec01_img03_3.png);}
#main_container > .sec01 ul li a{
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 50%;
	color: #fff;
}
#main_container > .sec01 ul li p{
	text-align: center;
	font-size: 4.2rem;
	font-weight: bold;
}
#main_container > .sec01 ul li p:last-of-type{
	margin-top: 0;
	height: 0;
	overflow: hidden;
	transition: all .5s;
}
#main_container > .sec01 ul li:hover p:last-of-type{
	margin-top: 1rem;
	height: 15rem;
}
#main_container > .sec01 ul li p span{
	display: block;
	font-size: 2rem;
	font-weight: 400;
}
#main_container > .sec01 ul li p i{font-size: 3rem;}
@media (max-width:1199.98px) {
	#main_container > .sec01 ul li p{font-size: 3rem;}
	#main_container > .sec01 ul li:hover p:last-of-type{height: 13rem;}
}
@media (max-width:991.98px) {
	#main_container > .sec01{
		padding-top: 12rem;
		padding-bottom: 15rem;
	}
	#main_container > .sec01 ul{
		margin-top: 6rem;
	}
	#main_container > .sec01 ul li p {font-size: 2.5rem;}
	#main_container > .sec01 ul li:hover p:last-of-type{
		height: 11rem;
	}
	#main_container > .sec01 ul li p span{
		padding: 0 2rem;
		font-size: 1.6rem;
	}
	#main_container > .sec01 ul li p span br{display: none;}
}
@media (max-width:767.98px) {
	#main_container > .sec01{
		padding-top: 10rem;
		padding-bottom: 12rem;
	}
	#main_container > .sec01 .top{display: block;}
	#main_container > .sec01 .moreView{margin-top: 2rem;}
	#main_container > .sec01 ul{
		flex-wrap: wrap;
		justify-content: center;
	}
	#main_container > .sec01 ul li{
		padding-top: 0;
		width: 35rem;
		height: 35rem;
	}
	#main_container > .sec01 ul li p span br{display: block;}
}
@media (max-width:575.98px) {
	#main_container > .sec01{
		padding-top: 8rem;
		padding-bottom: 10rem;
	}
	#main_container > .sec01 ul{margin-top: 4.5rem;}
	#main_container > .sec01 ul li{
		width: 30rem;
		height: 30rem;
	}
}



/*sec02*/
#main_container > .sec02{
	padding-top: 14rem;
	padding-bottom: 15rem;
}
#main_container > .sec02 .top{
	display: flex;
	align-items: flex-end;
	justify-content: space-between;
	margin-bottom: 8rem;
}
#main_container > .sec02 .main_title small,
#main_container > .sec02 .main_title span{color: #129595;}
#main_container > .sec02 ul li{
	display: flex;
	align-items: center;
}
#main_container > .sec02 ul li + li{margin-top: 10rem;}
#main_container > .sec02 ul li > div{width: 50%;}
#main_container > .sec02 ul li:nth-child(2) .img{
	order: 1;
	text-align: center;
}
#main_container > .sec02 ul li .img img{max-width: 100%;}
#main_container > .sec02 ul li .txt h4{
	font-size: 3.4rem;
	font-weight: bold;
}
#main_container > .sec02 ul li .txt h4 small{
	display: block;
	margin-bottom: 1rem;
	font-size: 1.8rem;
	font-weight: bold;
}
#main_container > .sec02 ul li:nth-child(1) .txt h4 small{color: #0274b8;}
#main_container > .sec02 ul li:nth-child(2) .txt h4 small{color: #129595;}
#main_container > .sec02 ul li:nth-child(3) .txt h4 small{color: #20b177;}
#main_container > .sec02 ul li .txt p{
	margin-top: 1.5rem;
	font-size: 1.8rem;
	font-weight: 300;
	color:#555555;
}
@media (max-width:991.98px) {
	#main_container > .sec02{padding: 12rem 15px;}
	#main_container > .sec02 .top{margin-bottom: 6rem;}
	#main_container > .sec02 ul li + li{margin-top: 8rem;}
	#main_container > .sec02 ul li .txt h4 {font-size: 2.5rem;}
	#main_container > .sec02 ul li .txt p br{display: none;}
	#main_container > .sec02 ul li .img img{max-width: 90%;}
}
@media (max-width:767.98px) {
	#main_container > .sec02{padding: 10rem 15px;}
	#main_container > .sec02 .top,
	#main_container > .sec02 ul li{display: block;}
	#main_container > .sec02 .moreView{margin-top: 2rem;}
	#main_container > .sec02 ul li + li{margin-top: 6rem;}
	#main_container > .sec02 ul li > div{width: 100% !important;}
	#main_container > .sec02 ul li .img{
		margin-bottom: 3rem;
		text-align: center;
	}
	#main_container > .sec02 ul li .img img{max-width: 250px;}
}
@media (max-width:575.98px) {
	#main_container > .sec02{padding: 8rem 15px;}
}




/*sec03*/
#main_container > .sec03{
	padding-top: 14rem;
	padding-bottom: 15rem;
}
#main_container > .sec03 > div > *{width: 50%;}
#main_container > .sec03 .main_title small,
#main_container > .sec03 .main_title span{color: #20b177;}
#main_container > .sec03 .moreView{margin-top: 4.5rem;}
#main_container > .sec03 li:nth-child(even){
	transform: translateX(-15rem);
}
#main_container > .sec03 li + li{margin-top: 6rem;}
#main_container > .sec03 li a{
	position: relative;
	display: flex;
	padding: 4rem;
	border-radius: 1rem;
	background: #fff;
	box-shadow: 1rem 0 2rem rgba(0, 0, 0, .1);
}
#main_container > .sec03 li a::after{
	content: '';
	position: absolute;
	top: 0; left: 0;
	width: 100%; height: 100%;
	border: 3px solid transparent;
	border-radius: 1rem;
	background-image: linear-gradient(#fff, #fff), 
	linear-gradient(to right top, #0274b8 0%,  #20b177 100%);
	background-origin: border-box;
	background-clip: content-box, border-box;
	opacity: 0;
	transition: all .5s;
}
#main_container > .sec03 li a:hover::after{
	opacity: 1;
}
#main_container > .sec03 li a > div{
	z-index: 1;
	position: relative;
}
#main_container > .sec03 li .logo {
	margin:1rem 0;
}
#main_container > .sec03 li .img{
	width: 14rem;
	height: 14rem;
	background-repeat: no-repeat;
	background-position: center;
	background-size: cover;
	border-radius: 1rem;
}
#main_container > .sec03 li .txt{
	padding-left: 4rem;
	width: calc(100% - 14rem);
}
#main_container > .sec03 li .name{
	font-size: 1.8rem;
	font-weight: 500;
	color: #888888;
}
#main_container > .sec03 li .title{
	margin-top: 5px;
	margin-bottom: 1rem;
	font-size: 2.2rem;
	font-weight: 500;
	color: #000;
	overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
}
#main_container > .sec03 li .desc{
	font-size: 1.8rem;
	font-weight: 300;
	color: #555555;
	word-wrap: break-word; 
	display: -webkit-box; 
	-webkit-line-clamp: 3; 
	-webkit-box-orient: vertical;
	overflow: hidden;
	text-overflow: ellipsis;
}
@media (max-width:991.98px) {
	#main_container > .sec03{padding: 12rem 15px;}
	#main_container > .sec03 > div{flex-wrap: wrap;}
	#main_container > .sec03 > div > *{width: 100%;}
	#main_container > .sec03 .top{
		display: flex;
		align-items: flex-end;
		justify-content: space-between;
		margin-bottom: 6rem;
	}
	#main_container > .sec03 .moreView{margin-top: 3rem;}
	#main_container > .sec03 li:nth-child(even){transform: translateX(0);}
	#main_container > .sec03 li + li{margin-top: 4rem;}
}
@media (max-width:767.98px) {
	#main_container > .sec03{padding: 10rem 15px;}
	#main_container > .sec03 .top{display: block; margin-bottom: 4rem;}
	#main_container > .sec03 li + li{margin-top: 3rem;}
	#main_container > .sec03 li a {padding: 3rem;}
	#main_container > .sec03 li .title {
    margin: 5px 0;
    font-size: 2rem;
	}
}
@media (max-width:575.98px) {
	#main_container > .sec03{padding: 8rem 15px;}
	#main_container > .sec03 li .img {
		width: 9rem;
		height: 9rem;
	}
	#main_container > .sec03 li .txt {
		padding-left: 3rem;
		width: calc(100% - 9rem);
	}
	#main_container > .sec03 li .logo {
		margin:0.5rem 0;
	}
	#main_container > .sec03 li .logo > img {
		max-width:4rem;
	}
	#main_container > .sec03 li .desc{
		-webkit-line-clamp: 2; 
	}
}




/* sec04 */
#main_container > .sec04{
	padding-top: 14rem;
	padding-bottom: 12rem;
}
#main_container > .sec04 .top .main_title small,
#main_container > .sec04 .top .main_title span{color: #0274b8;}
#main_container > .sec04 .top ul{
	flex-wrap: wrap;
	margin-top: 6rem;
}
#main_container > .sec04 .top ul li{width: 20%;}
#main_container > .sec04 .top ul li img{width: 100%;}
#main_container > .sec04 .bottom{
	margin: 0 auto;
	margin-top: 15rem;
	padding-top: 13rem;
	padding-bottom: 14rem;
	max-width: 1800px;
	border-radius: 3rem;
	background: url(../_img/main/main_sec04_img.png) no-repeat center center / cover;
}
#main_container > .sec04 .bottom .main_title{color: #fff;}
#main_container > .sec04 .bottom .moreView{margin-top: 4.5rem;}
@media (max-width:1199.98px) {
	#main_container > .sec04 .bottom{margin: 0 15px;margin-top: 10rem;}
}
@media (max-width:991.98px) {
	#main_container > .sec04{padding: 12rem 0;}
	#main_container > .sec04 .top ul{margin-top: 4rem;}
	#main_container > .sec04 .top ul li{width: 25%;}
	#main_container > .sec04 .bottom{
		margin-top: 8rem;
		padding: 8rem 0;
	}
	#main_container > .sec04 .bottom .moreView{margin-top: 3rem;}
}
@media (max-width:767.98px) {
	#main_container > .sec04{padding: 10rem 0;}
	#main_container > .sec04 .top ul{margin-top: 3rem;}
	#main_container > .sec04 .top ul li{width: 33.3%;}
	#main_container > .sec04 .bottom{
		margin-top: 6rem;
		padding: 6rem 0;
	}
}
@media (max-width:575.98px) {
	#main_container > .sec04{padding: 8rem 0;}
	#main_container > .sec04 .top ul li{width: 50%; text-align: center;}
	#main_container > .sec04 .top ul li img{max-width: 180px;}
	#main_container > .sec04 .bottom{padding: 5rem 0;}
}

