/* main css */
/* Hide scrollbar for Chrome, Safari and Opera */
body::-webkit-scrollbar {
  display: none;
}

/* Hide scrollbar for IE, Edge and Firefox */
body {
  -ms-overflow-style: none;  /* IE and Edge */
  scrollbar-width: none;  /* Firefox */
}


.floating_box {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 20px;
	position: absolute;
	bottom: 100px;
	right: 55px;
	z-index: 999;
}

.scroll_down {
	z-index: 999;
	position: absolute !important;
	bottom: 30px;
	right: 0px;
	top: unset !important;
	margin: unset !important;
	transform: unset !important;
	padding: unset !important;
}
.scroll_down::after {
	content: '';
	display: inline-block;
	position: absolute;
	width: 8px;
	height: 8px;
	background-color: #de6a08;
	border-radius: 50%;
	top: calc(50% + 3px);
	transform: translateX(0) translateY(-50%);
	left: 50%;
	animation: scroll_down ease-in-out 1.5s infinite;
}
@keyframes scroll_down {
	from {
		transform: translateX(10px) translateY(-50%);
		opacity: 1;
	}
	to {
		transform: translateX(70px) translateY(-50%);
		opacity: 0;
	}
}






#fp-nav.fp-right {
	left: 40px;
}

.fp-sr-only {
	display:none !important;
}

#fp-nav ul li, .fp-slidesNav ul li {
	margin: 0;
	margin-bottom: -8px;
	width: 20px;
	height: auto;
}

#fp-nav ul li a {
	margin-bottom: -8px;
}

#fp-nav ul li:hover a,
#fp-nav ul li a.active {
	margin-bottom: -8px;
}

#fp-nav ul li a, .fp-slidesNav ul li a {
	display:inline-block;
	width: 20px;
}

#fp-nav ul li a span, .fp-slidesNav ul li a span {
	display:inline-block;
	border-radius:50%;
	background-color:#5c525b;
	width: 7px;
	height: 7px;
	position:static;
	font-size:0px;
	margin-left: 9px;
}

#fp-nav ul li a.active span, #fp-nav ul li:hover a span,  .fp-slidesNav ul li:hover a span,
#fp-nav ul li a.active span, #fp-nav ul li:hover a.active span, .fp-slidesNav ul li a.active span, .fp-slidesNav ul li:hover a.active span {
	display:inline-block;
	width: 19px;
	height: 7px;
	border-radius:20px;
	background-color:#0081cc;
	margin: 0;
	position:static;
	font-size:0px;
}

#fp-nav ul li:last-child {
	display:none !important;
}
.fp-controlArrow {
	display: none !important;
}


.section_01 .open_banner.blog {
	top: 280px;
	right: 128px;
}	

.section_01 .swiper-container {
	overflow: hidden;
	position: relative;
}

.section_01 .swiper-slide {
	position: relative;
	overflow: hidden;
	/*height: calc(var(--vh));*/
	/*min-height: 960px;*/
	height: 100vh;
}

.section_01 .swiper-slide .bg_wrap {
	position:absolute;
	width: 100%;
	height:100vh;
	top: 0;
	left: 0;
	z-index: 2;
}

.section_01 .swiper-slide .bg_wrap, .section_01 .swiper-slide .bg {
	position:absolute;
	width: 100%;
	height:100vh;
	top: 0;
	left: 0;
	z-index: 3;
}

.section_01 .swiper_main_slider .swiper-slide.swiper-slide-active .bg {
	/*animation: zoomOut 4.8s .2s ease both;*/
}
.section_01.active .swiper_main_slider .swiper-slide .bg {
	animation: zoomOut 4.8s .2s ease both;
}

@keyframes zoomOut {
	from {
		transform:scale3d(1.08, 1.08, 1.08);
	}

	to {
		transform:scale3d(1, 1, 1);
	}
}

.section_01 .swiper_main_slider .swiper-slide.first .bg {
	background-image: url('../img/main/section01_slider01_bg.png?new');
	background-size: cover;
	background-position: center;
	background-position-y: bottom;
	height: 100vh;
	width: 100vw;
}

.section_01 .swiper_main_slider .swiper-slide.second .bg {
	background-image: url('../img/main/section01_slider02_bg.jpg?new');
	background-size :cover;
	background-position: center;
	background-position-y: bottom;
	height: 100vh;
	width: 100vw;
}

.section_01 .swiper_main_slider .text__box {
	position: absolute;
	z-index: 4;
	top: calc(50% - 100px);
	transform: translate(-50%, -50%);
	left: 50%;
	text-align: center;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 35px;
}

.section_01.active .swiper_main_slider .first .text01 {
	animation: s1_slider_ani01 1s .4s ease-in-out both;
}

@keyframes s1_slider_ani01 {
	0% {
		filter:blur(7px);
		opacity: 0;
	}
		100% {
		filter:blur(0);
		opacity: 1;
	}
}

.section_01 .swiper_main_slider .first .text02 {
	margin-bottom: 15px;
}
.section_01.active .swiper_main_slider .first .text02 {
	animation: s1_slider_ani02 1s 1.2s ease-in-out both;
}

@keyframes s1_slider_ani02 {
	0% {
        transform: translateY(-40px);
		opacity: 0;
		visibility:hidden;
    }
   
    100% {
		transform: translateY(0px);
		opacity: 1;
		visibility:visible;
    }
}


.section_01.active .swiper_main_slider .first .text03 {
	animation: s1_slider_ani03 1s 1.6s ease-in-out both;
}

@keyframes s1_slider_ani03 {
	0% {
		transform: translateY(40px);
		opacity: 0;
		visibility:hidden;
	}

	100% {
		transform: translateY(0px);
		opacity: 1;
		visibility:visible;
	}
}




.section_01 .swiper_main_slider .second .text__box {
	top: 50%;
	left: 50%;
	height: 600px;
}

.section_01 .swiper_main_slider .second .text__box .ani01 {
	position:absolute;
	left: calc(50% - 420px);
	top: 32%;
	width: 360px;
}

.section_01 .swiper_main_slider .second .text__box .ani02 {
	position:absolute;
	left: calc(50% - 830px);
	top: 70%;
	width: 112px;
}

.section_01 .swiper_main_slider .second .text__box .ani07 {
	position:absolute;
	left: calc(50% - 520px);
	top: 86%;
	width: 106px;
}

.section_01 .swiper_main_slider .second .text__box .ani03 {
	position:absolute;
	right: calc(50% - 650px);
	top: 78%;
	width: 96px;
}

.section_01 .swiper_main_slider .second .text__box .ani04 {
	position:absolute;
	right: calc(50% - 820px);
	top: 56%;
	width: 96px;
}

.section_01 .swiper_main_slider .second .text__box .ani05 {
	position:absolute;
	right: calc(50% - 780px);
	top: 35%;
	width: 248px;
}

.section_01 .swiper_main_slider .second .text__box .ani06 {
	position:absolute;
	right: calc(50% - 890px);
	top: 20%;
	width: 110px;
}

.section_01 .swiper_main_slider .second.swiper-slide-active .text__box .ani01 {
	animation: s1_slider2_ani 1s 1.4s ease-in-out both;
}
.section_01 .swiper_main_slider .second.swiper-slide-active .text__box .ani02 {
	animation: fadeIn .5s .6s ease both;
}
.section_01 .swiper_main_slider .second.swiper-slide-active .text__box .ani07 {
	animation: fadeIn .5s .8s ease both;
}
.section_01 .swiper_main_slider .second.swiper-slide-active .text__box .ani03 {
	animation: fadeIn .5s 1.1s ease both;
}
.section_01 .swiper_main_slider .second.swiper-slide-active .text__box .ani04 {
	animation: fadeIn .5s 1.4s ease both;
}
.section_01 .swiper_main_slider .second.swiper-slide-active .text__box .ani05 {
	animation: fadeIn .5s 1.7s ease both;
}
.section_01 .swiper_main_slider .second.swiper-slide-active .text__box .ani06 {
	animation: fadeIn .5s 2s ease both;
}

@keyframes s1_slider2_ani {
	0% {
        transform: translateY(20px);
		opacity: 0;
		visibility:hidden;
    }
   
    100% {
		transform: translateY(0px);		
		opacity: 1;
		visibility:visible;
    }
}

@keyframes fadeIn {
	from {
		opacity: 0;
		visibility:hidden;
	}

	to {
		opacity: 1;
		visibility:visible;
	}
}

.section_01 .swiper_main_slider .second .text__ {
	position:absolute;
	z-index: 4;
	top: 25%;
	transform:translate(-50%, -50%);
	right: 10%;
	text-align: right;
}

.section_01 .swiper_main_slider .second .text__ .top {
	margin-bottom: 20px;
}	

.section_01 .swiper_main_slider .second.swiper-slide-active .text__ .top {
	animation: fadeIn .7s .5s ease-in-out both;
}

.section_01 .swiper_main_slider .second.swiper-slide-active .text__ .bt {
	animation: s1_slider_ani02 1s 1s ease both;
}

.section_01 .swiper-btn-prev {
	position:absolute;
	display:block;
	top: auto;
	bottom: 5%;
	left: calc(50% - 60px);
	width: 12px;
	height: 18px;
	background-image:url('../img/main/section01_slider_arrow.png?new') !important;
	background-position: 0 center !important;
	background-size: auto !important;
}

.section_01 .swiper-btn-next {
	position:absolute;
	display:block;
	top: auto;
	bottom: 5%;
	left: calc(50% + 60px);
	width: 12px;
	height: 18px;
	background-image:url('../img/main/section01_slider_arrow.png?new') !important;
	background-position: 100% center !important;
	background-size: auto !important;
}

.section_01 .swiper-btn-prev::after,
.section_01 .swiper-btn-next::after {
	content: none;
}

.section_01 .swiper-pagination {
	left: calc(50% + 3px);
	width: 60px;
	top: auto;
	bottom: 4.5%;
	display:flex;
	justify-content:center;
	transform:translateX(-50%);
	height: auto;
}

.section_01 .swiper-horizontal>.swiper-pagination-bullets .swiper-pagination-bullet, 
.section_01 .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
	margin: 0 20px;
}

.section_01 .swiper-pagination-bullet {
	width: 30px;
    height: 30px;
    opacity: 1;
    background: none;
    border-radius: 100%;
    position: relative;
	font-size: 0;
}

.section_01 .swiper-pagination-bullet::after {
	content: '';
    width: 7px;
    height: 7px;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: #fff;
    border-radius: 100%;
}

.section_01 .swiper-pagination-bullet-active:before {
    content: '';
    width: 7px;
    height: 7px;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    background-color: #fff;
    border-radius: 100%;
}

.section_01 .swiper-pagination-bullet-active:after {
    content: '';
    width: 25px;
    height: 25px;
    position: absolute;
    left: -11px;
    top: 2px;
    border-radius: 100%;
    border: 2px solid #a9aba7;
    background: none;
}

.section_01 .scroll {
    position: absolute;
    top: 55%;
    right: 20px;
    z-index: 100;
    transform: translate(-50%, -50%);
    text-align: center;
    font-family: 'Montserrat-SemiBold';
    font-size: 12px;
	letter-spacing: 1px;
}

.section_01 .scroll span {
    width: 1px;
    height: 75px;
    background-color: #6a7178;
    position: absolute;
    left: 17px;
    bottom: 30px;
}

.section_01 .scroll span::before {
    width: 10px;
    height: 10px;
    background-color: #0081cc;
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    top: 50%;
    border-radius: 50%;
    animation: scrollMagic 1.35s linear 0s infinite;
}

@keyframes scrollMagic {
    0%{opacity:0;  transform:translate(-50%, -30px) scale(1);}
    10%{opacity:1; transform:translate(-50%, -30px) scale( 1 );}
    50%{transform:translate(-50%, 15px) scale( 1 );}
    55%{opacity:1; transform:translate(-50%, 15px) scale(1);}
    60%{opacity:.4;}
    80%{opacity:0;transform:translate(-50%, 15px) scale(5);}
    100%{opacity:0;transform:translate(-50%, 15px) scale(5);}
}

.section_02 .row {
	position:relative;
	padding: 0;
	background-image: url('../img/main/section02_bg_row_n.png?new');
	width: 100vw;
	height: 100vh;
	background-size: cover;
}

.section_02 .bg {
	position:absolute;
	background-image: url('../img/main/section02_bg.png?new');
	background-position: 100% center;
	background-size: cover;
	width: 872px;
	height: 763px;
	right: 0;
	top: 0px;
	z-index: 10;
}

.section_02.active .bg {
	animation: s2_bg_ani .7s .5s ease-in-out both;
}

@keyframes s2_bg_ani {
	0% {
        transform: translateX(50px);
		opacity: 0;
		visibility:hidden;
    }
   
    100% {
		transform: translateX(0px);		
		opacity: 1;
		visibility:visible;
    }
}



.section_02 .title {
	position:absolute;
	left: calc(50% - 100px);
	top: 38%;
	transform:translateY(-50%);
	z-index: 6;
}

.section_02 .title .title_text {
	font-family:'Montserrat-Medium';
	font-size: 55px;
	letter-spacing: -1px;
	color: #0081cc;
}

.section_02 .title .title_text b {
	font-family:'Montserrat-ExtraBold';
}

.section_02.active .title_logo {
	animation: s1_slider_ani01 .5s .3s ease both;
}

.section_02.active .title_text {
	animation: fadeInLeft 1s .5s ease both;
}

@keyframes fadeInLeft {
	from {
		margin-left: -30px;
		opacity: 0;
		visibility:hidden;
	}

	to {
		margin-left: 0;
		opacity: 1;
		visibility:visible;
	}
}

.section_02 .swiper-container {
	position:absolute;
	width: 100%;
	left: 0px;
	top: 80px;
	/*overflow:hidden;*/
	min-width: 1405px;
}



.section_02 .swiper-slide {
	height: 880px;
}

.section_02 .swiper-slide .img_box {
	position:absolute;
	display: flex;
	align-items:center;
	justify-content: space-between;
	width: 1405px;
	height: 880px;
	left: 0;
	top: 0px;
	z-index: 4;
}


.section_02 .swiper-slide .img_box .lt_text {
	font-size: 14px;
	font-family: 'Montserrat-SemiBold';
	color: #000;
	writing-mode: vertical-rl;
	letter-spacing: 2px;
	position: absolute;
	z-index: 30;
}

.section_02 .swiper-slide .img_box .lt_text b {
	color: #0081cc;
	font-family:'Montserrat-Bold';
}

.section_02 .swiper-slide.swiper-slide-active .img_box .lt_img {
	animation: s2_slider_lt_img_ani .7s .3s ease both;
}

@keyframes s2_slider_lt_img_ani {
	0% {
        transform: translateX(-40px);
		opacity: 0;
		visibility:hidden;
    }
   
    100% {
		transform: translateX(0px);		
		opacity: 1;
		visibility:visible;
    }
}

.section_02 .swiper-slide .text_box {
	position:absolute;
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: flex-start;
	left: 128px;
	bottom: 0;
	z-index: 30;
	gap: 70px;
}

.section_02 .swiper-slide.swiper-slide-active .text_box .number {
	animation: s2_slider_number_ani .7s .5s ease both;
}

@keyframes s2_slider_number_ani {
	0% {
        transform: translateY(20px);
		opacity: 0;
		visibility:hidden;
    }
   
    100% {
		transform: translateY(0px);		
		opacity: 1;
		visibility:visible;
    }
}

.section_02 .swiper-slide .text_box .text_zone {
	margin-top: -25px;
	font-size: 21px;
	font-family:'NotoSansKR-Light';
	color: #000;
}

.section_02 .swiper-slide .text_box .text_zone b {
	font-size: 23px;
	font-family:'NotoSansKR-Regular';
	letter-spacing: -1px;
} 

.section_02 .swiper-slide .text_box .text_zone span {
	font-size: 14px;
}

.section_02 .swiper-slide .text_box .text_zone .fs {
	font-size: 16px;
}

.section_02 .swiper-slide.swiper-slide-active .text_box .text_zone {
	animation: fadeIn .7s .9s ease both;
}

.section_02 .page_number {
	position:absolute;
	top: 30%;
	left: 300px;
	right: auto;
	width: 210px;
	font-size: 18px;
	font-family:'Montserrat-SemiBold';
	display:flex;
	justify-content:space-between;
	z-index: 10;
	color: #ffffff;
}

.section_02 .page_number .num {
	font-family:'Montserrat-Bold';
}

.section_02 .swiper-pagination-progressbar {
	position:absolute;
	top: calc(30% + 12px);
	left: 337px;
	right: auto;
	width: 134px;
	height: 2px;
	z-index: 20;
	background-color:#e8e7e7;
}

.section_02 .swiper-pagination-progressbar span {
	background-color:#0081cc !important;
}

.section_02 .swiper-pagination-progressbar .swiper-pagination-progressbar-fill,
.section_02 .swiper-pagination-progressbar span{
	transition:transform .55s cubic-bezier(.22,1,.36,1);
	transform-origin:left center;
}

.section_02 .owl-nav {
	position:absolute;
	left: 540px;
	top: 29%;
	display:flex;
	z-index: 20;
}

.section_02 .owl-nav [class*=owl-] {
	display:inline-block;
	background-image:url('../img/main/section02_slider_arrow.png?new') !important;
	background-position:0 center;
	width: 40px;
	height: 40px;
	cursor:pointer;
	margin: 0 5px;
	filter: brightness(0) invert(1);
}

.section_02 .owl-nav .owl-next {
	background-position:100% center !important;
}


/* 3) 원하는 레이어 순서 강제 */
.section_02 .swiper-slide .img_box{ position:relative; z-index:5; }   /* lt_img (아래) */
.section_02 .swiper-slide .text_box {
	position: absolute;
	z-index: 30;
}


.sec02_title {
	position: absolute;
	top: 15%;
	left: 300px;
	z-index: 9999;
}


.circle_text {
	position: absolute;
	left: calc(50% + 20px);
	top: 12%;
	width: 133px;
	height: 133px;
	display: flex;
	justify-content: center;
	align-items: center;
	z-index: 6;
}
.circle_text img {
	position:relative;
	z-index: 5;
}
.circle_text::before {
	display:block;
	content:'';
	width: 100%;
	height: 100%;
	background-image:url('../img/main/circle_text.png');
	background-repeat: no-repeat;
	background-position:center;
	position:absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	animation:circleRotate 7s linear infinite;
}

@keyframes circleRotate {
	0% {
		transform:rotate(0deg);
	}

	100% {
		transform:rotate(360deg);
	}
}





























.section_03 .bg {
	position: absolute;
	width: 100%;
	height: 100vh;
	top: 0;
	left: 0;
	z-index: 3;
	background-image: url("../img/main/sec03_bg.png");
	background-size: cover;
}

.section_03.active .bg {
	animation: zoomOut 4.8s .2s ease both;
}

.section_03 .row {
	position: relative;
	padding: 0;
	min-width: 1660px;
	height: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	gap: 95px;
}

.sec03_title {
	position: relative;
	z-index: 999;
	opacity: 0;
	transform: translateY(40px);
}
.section_03.active .sec03_title {
	animation: sec03_title ease-in-out 1s .5s forwards;
}
@keyframes sec03_title {
	from {
		opacity: 0;
		transform: translateY(40px);
	}
	to {
		opacity: 1;
		transform: translateY(0px);
	}
}

.sec03_con {
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 70px;
	z-index: 999;
}
.sec03_con01 {
	position: relative;
	opacity: 0;
	transform: translateX(30px);
}
.section_03.active .sec03_con01 {
	animation: sec03_con01 ease-in-out 1s 1s forwards;
}
@keyframes sec03_con01 {
	from {
		opacity: 0;
		transform: translateX(30px);
	}
	to {
		opacity: 1;
		transform: translateX(0px);
	}
}

.sec03_con02 {
	position: relative;
	opacity: 0;
	transform: translateX(-30px);
}
.section_03.active .sec03_con02 {
	animation: sec03_con02 ease-in-out 1s 1s forwards;
}
@keyframes sec03_con02 {
	from {
		opacity: 0;
		transform: translateX(-30px);
	}
	to {
		opacity: 1;
		transform: translateX(0px);
	}
}















/* slide pager */
.slide-pager {
	position: fixed;
	left: 24px;
	top: 50%;
	transform: translateY(-50%);
	z-index: 10010;
	display: flex;
	flex-direction: column;
	gap: 12px;
	pointer-events: auto
}
.slide-pager button {
	display: flex;
	align-items: center;
	gap: 8px;
	background: none;
	border: 0;
	color: #fff;
	font: 600 16px/1;
	cursor: pointer;
	font-family:'Montserrat-SemiBold';

}

.slide-pager button i {
	display: block;
	width: 12px;
	height: 12px;
	background: #ffffff5c;
	border-radius: 2px;
	transition: .25s
}

.slide-pager button em {
	opacity: 0;
	transform: translateX(-6px);
	white-space: nowrap;
	transition: .25s;
	font-size: 18px;
	font-family: 'Montserrat-SemiBold';
}

.slide-pager button.active i{background:#fff;width:22px}
.slide-pager button.active em{opacity:1;transform:translateX(0)}
.slide-pager.hidden{opacity:0;pointer-events:none}

/* 기본 fullPage 점 네비가 겹치면 숨김 (원하면 제거) */
#fp-nav{display:none!important;}