
.fp-section.fp-table{height: 100%!important;}

.btn_all_menu {display:none;}
.btn_sitemap {display:none}
.allMenuWrap {display:none}
.btn-language {display:none;}

@media(min-width:1200px) {
	.btn_sitemap {display:block; position:absolute; right:0; top:0; width:90px; height:91px;}
	.allMenuWrap {z-index: 99;position: absolute;width: 100%;right: -100%;top: 0;box-sizing:border-box;background-color: rgba(0, 148, 222, 0.95);transition:right .4s ease-in-out;-webkit-transition:right .4s ease-in-out; opacity:0; display:block;}
	.allMenuWrap.active {right: 0;  opacity:1;}
	.allMenuWrap .allMenuWrap_inner {display: table;table-layout: fixed;height: 100%;width: 100%;}
	.allMenuWrap .allMenu_inner{display: table-cell;vertical-align: middle;height: 100%;padding: 0 15% 0 15%;overflow-y: auto;}
	.allMenu {font-size: 0;text-align: center;}
	.allMenu > li {display:inline-block; width:20%; vertical-align: top;color: #333;box-sizing:border-box;text-align: left;margin-bottom: 30px;}
	.allMenu > li:last-child {margin-bottom: 0;}
	.allMenu > li:last-child {margin-right: 0;}
	.allMenu > li > p {display: none;line-height: 38px;font-weight: bold;}
	.allMenu > li > a {line-height: 35px;font-weight: 700; transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;}
	.allMenu > li > a:after {left: 0;content:'';position: absolute;width: 0;bottom: -6px;height: 2px;background-color: #0094de;transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;}
	.allMenu > li:hover > a {color: #0094de;}
	.allMenu > li:hover > a:after {width: 100%;}
	.allMenu > li > a span {position: absolute;line-height: 14px;font-weight: bold;color: #0094de;left: 0;top: 0;}
	.allMenu .dep2 {padding-top:40px;}
	.allMenu .dep2 > li {display:block;}
    .allMenu .dep2 > li + li{margin-top: 10px;}
	.allMenu .dep2 > li > a{line-height: 30px;color:rgba(255, 255, 255, 1);}
	.allMenu .dep2 > li > a:hover {color: #fff; text-decoration:underline; font-weight: 500;}
	.allMenu .dep3 {margin-top: 4px;}
	.allMenu .dep3 > li > a{line-height: 30px;font-weight: 300;color: #646464;}
	.allMenu .dep3 > li > a:before{content:'-';margin-right: 4px;}
	.allMenu > li  a{color: #fff;display:block;vertical-align: top;}
	.amDim {display: none; position: absolute; width: 100%; background-color: rgba(0,0,0,.5); right: 0; top: 0; z-index: 98;}

	.btn-language {display:block; z-index:100; position:absolute; right:220px; top:31px}
	.btn-language span {padding:0 10px}

	.btn_all_menu {z-index:100;  display:block}
	.btn_sitemap .on {z-index:100; position:absolute; width:40px; height:40px; top: 25px; right:25px; display:block}
	.btn_all_menu div {position: absolute;width: 40px;height: 40px;left: 50%;top: 50%;margin-left: -16.5px;margin-top: -12.5px;}

	.rd-navbar-static .ov .btn_all_menu span{background-color: #0094de;}
  .rd-navbar-static .ov.fff .btn_all_menu span{background-color: #fff;}

	.btn_all_menu span{position: absolute;right: 0;height: 4px;background-color: #fff; transition:all .2s ease-in-out;-webkit-transition:all .2s ease-in-out;width: 100%;border-radius: 0;}
	.rd-navbar-static.rd-navbar--is-stuck .btn_all_menu span{background-color: #0094de;}
	.btn_all_menu span.barTop{top: 0;}
	.btn_all_menu span.barMid{top: 14px;}
	.btn_all_menu span.barBot{top: 28px;}
	.btn_all_menu.on .barTop{width: 100%; transform:rotate(45deg);-webkit-transform:rotate(45deg); top:12px; background:#fff}
	.btn_all_menu.on .barBot{width: 100%; transform:rotate(-45deg);-webkit-transform:rotate(-45deg); top:12px; background:#fff}
	.btn_all_menu.on .barMid {width: 0;}

	.mvisual-wrap {height:937px; overflow:hidden}
	.mvisual-box {position:absolute; top:0; left:0; bottom:0; right:0; max-height:100%; min-height:1000px; margin:0 auto;}
	.mcont-box {position:absolute; top:600px;; left:50%; margin-left:-640px; z-index:10; font-size:0; padding:0; background:none;}
	.mcont-box .mcon-item {width:420px; height:270px; position:relative; display:inline-block; margin-left:30px; vertical-align:top;}
	.mcont-box .mcon-item:first-child {width:420px; height:270px; position:relative; display:inline-block; margin-left:0; vertical-align:top;}
	.mcont-box .mcon-item .item-1 {border-radius:30px;}
	.mcont-box .mcon-item .item-2 {border-radius:30px;}
	.text-box {padding-top:360px; text-align:left;}
	.text-box > span {letter-spacing:-0.5px; font-size:50px}
	.text-box > p {letter-spacing:-0.5px; font-size:22px}
	.mvisual-box .mbg-1 {background:url('../images/visual/main-visual-01.png') no-repeat center 90px; content:''; background-size:cover; min-height:1000px}
	.mvisual-box .mbg-2 {background:url('../images/visual/main-visual-02.png') no-repeat center 90px; content:''; background-size:cover; min-height:1000px}
	.allMenu_inner ul{margin-left: 30px;}
	.allMenu_inner li{padding:0 2px;}
	.allMenu_inner a{margin-left: -20px;}
		.allMenu_inner .fs40 {
        font-size: 30px !important;
        line-height: 1.2em;
    }

	body.lang-en .allMenuWrap .allMenu_inner {
		padding: 0 10%;
	}

	body.lang-en .allMenu .dep2 {
		padding-top: 28px;
	}

	body.lang-en .allMenu .dep2 > li + li {
		margin-top: 4px;
	}

	/* WTS-20 : 영문 2depth 메뉴명이 두 줄로 넘어가지 않게 한 줄 유지
	   - 쓰이지 않던 ul 왼쪽 여백 30px 을 회수해 글자 폭을 확보
	   - 한 줄 고정 후 넘치면 JS(fitAllMenuLabels)가 폰트를 줄여 맞춤(최소 13px)
	   - 그래도 넘칠 때만 말줄임 */
	body.lang-en .allMenu_inner ul {
		margin-left: 0;
	}

	/* 한 줄 고정(nowrap)된 제목이 열 폭을 밀어내지 않도록 (flex min-width:auto 차단) */
	body.lang-en .allMenuWrap .allMenu > li {
		min-width: 0;
	}

	body.lang-en .allMenuWrap .allMenu_inner {
		padding: 0 6%;
	}

	body.lang-en .allMenu .dep2 > li > a {
		font-size: 16px;
		white-space: nowrap;
		overflow: hidden;
		text-overflow: ellipsis;
	}

}

@media(min-width:1400px) and (max-width:1700px) {
	.allMenuWrap .allMenu_inner {
		padding: 0 8%;
	}

	.allMenuWrap .allMenu {
		display: flex;
		align-items: flex-start;
		justify-content: center;
		margin-left: 0;
	}

	.allMenuWrap .allMenu > li {
		display: block;
		flex: 0 0 20%;
		width: auto;
		margin-bottom: 0;
		padding: 0 14px;
	}

	.allMenuWrap .allMenu_inner a {
		margin-left: 0;
	}

	.allMenuWrap .allMenu > li > a {
		display: flex;
		align-items: center;
		min-height: 44px;
		line-height: 1.2;
	}

	.allMenuWrap .allMenu .dep2 {
		padding-top: 24px;
	}

	body.lang-en .allMenuWrap .allMenu_inner {
		padding: 0 5%;
	}

	body.lang-en .allMenuWrap .allMenu > li {
		padding: 0 8px;
	}

	body.lang-en .allMenuWrap .allMenu > li > a.fs40 {
		min-height: 52px;
	}

	body.lang-en .allMenuWrap .allMenu .dep2 {
		padding-top: 18px;
	}
}

@media(min-width:1700px) {
	.allMenu > li {display:inline-block; width:20%; vertical-align: top;color: #333;box-sizing:border-box;text-align: left;margin-bottom: 30px;}
	.allMenu_inner ul{margin-left: 0;}
	.allMenu_inner li{padding:0;}
	.allMenu_inner a{margin-left: 0;}
}

.mvisual-wrap {width:100%; height:100%; position:relative; background:#000}
.mvisual-box {position:absolute; top:0; left:0; bottom:0; right:0; max-height:500px; min-height:500px; margin:0 auto;}
.mvisual-box .mbg-1 {background:url('../images/visual/main-visual-mo-01.png') no-repeat center top; content:''; background-size:cover; min-height:600px}
.mvisual-box .mbg-2 {background:url('../images/visual/main-visual-mo-02.png') no-repeat center top; content:''; background-size:cover; min-height:600px}

.text-box {padding-top:55%; text-align:center;}
.text-box > span {letter-spacing:-0.5px; font-size:25px}
.text-box > p {letter-spacing:-0.5px; font-size:13px}
.mcont-box {position:relative; padding-top:0; background:#fff}
.mcont-box .mcon-item {width:100%; height:200px; position:relative; display:block; margin-left:0; vertical-align:top;}
.mcont-box .mcon-item:first-child {width:100%; height:200px; position:relative; display:block; margin-left:0; vertical-align:top;}
.mcont-box .mcon-item .item-1 {background: rgb(11, 111, 180); background: linear-gradient(132deg, rgba(11, 111, 180,1) 0%, rgba(11, 111, 180,0.9528186274509804) 100%); border-radius:0; display:block; width:100%; height:100%; padding:43px; position:relative;}
.mcont-box .mcon-item .item-2 {background: rgb(11, 111, 180); background: linear-gradient(132deg, rgba(11, 111, 180,1) 0%, rgba(11, 111, 180,0.9528186274509804) 27%); border-radius:0; display:block; width:100%; height:100%; padding:43px; position:relative;}
.mcont-box .mcon-item .item-1 .button-1, .mcont-box .mcon-item .item-2 .button-1 {position:absolute; left:43px; bottom:43px}
.mbox-svg-ico {position:absolute; right:20px; bottom:23px; opacity:.1;}
.mbox-svg-ico svg {fill:#fff;}
.btn-1, .btn-1:hover, .btn-1:active, .btn-1:focus{color:#fff;}
.btn-1:after {content:''; display:inline-block; margin-left:20px; width:50px; height:1px; background:#fff; vertical-align:middle;}
.btn-a {display:inline-block; border:1px solid #fff; padding:10px 30px}
.slick-dots {display:block; bottom:20px;}
.slick-dots li button {width:15px !important; height:15px !important;}
.slick-dots li {width:15px; height:15px;}
.slick-dots li button:before {content:'' !important; width:15px !important; height:15px !important; border:3px solid #fff; border-radius:100px;}

.layout-defult {width:94%; margin:0 auto; position:relative; height:100vh;}
.layout-defult-free {width:100%; margin:0 auto; position:relative; height:100vh;}
.layout-2 {width:94%; margin:0 auto; position:relative; padding:0 10px; height:100vh;}
.layout-3 {width:100%; margin:0 auto; position:relative; padding:0 10px; height:100vh;}
#section-3 {background:url('../images/main/m_visual_3.jpg') no-repeat center top; background-size:cover; overflow:hidden;}
#section-4 { overflow:hidden; padding: 0;}
#fp-nav {display:none}

#m_menu {position:fixed; top:25px; width:100%; z-index:999; text-align:center;}
#m_menu .logo {position:absolute; left:120px; top:0}
#m_menu .menu-box {display:inline-block; text-align:center; padding-top:15px}
#m_menu .tm {position:absolute; right:120px; top:15px}

.sec1-box {position:relative; padding-top:10%}
.sec2-box {position:absolute; left:50%; top:50%; margin:auto; width:100%; transform:translate(-50%,-50%); padding-top:55px}
.sec3-box {position:relative; margin-top:55px}
.sec4-box {position:relative; margin-top:55px}
.sec-box {position:absolute; left:50%; top:50%; margin:auto; width:100%; transform:translate(-50%,-50%);}

#fullpage .fs25 {font-size:17px; letter-spacing:-1.2px;}
#fullpage .fs80 {font-size:35px !important}

@media(min-width:768px) {
	#fp-nav {display:none; font-weight:200}
	#fp-nav > ul > li > a.active .p-menu {color:#fff;  top:0; left:-100px}
	#fp-nav > ul > li > a p.p-menu, .fp-slidesNav > ul > li > a > p.p-menu {top:0;}
	.p-menu {color:rgba(255, 255, 255, 0.4); font-size:15px; position:absolute; left:-100px; top:3px}
	.fp-menu {display:none}
	#fp-nav > ul > li a span, .fp-slidesNav > ul > li > a > span {background:#fff;}
	#fp-nav > ul > li, .fp-slidesNav > ul > li {height:20px;}
	#fp-nav > ul > li > a > span, .fp-slidesNav > ul > li > a > span:before {border:1px solid #fff; border-radius:500px; content:'';}
	}

.film-play-box {position:absolute; top:0; bottom:0; width:100%; height:100%; overflow:hidden;}
.box-div {padding-bottom:0; }
.film-play-box iframe {position: absolute; min-width:100%; min-height:100%; width:auto; height:auto; top:50%; left:50%; transform:translate(-50%,-50%); display:inline-block; vertical-align:baseline;}
.film-play-box:after {display:block; content:""; width:100%; height:100%; background:rgba(63, 63, 63, .1); position:absolute;}
#fullpage .text-box {position:absolute; left:50%; top:50%; color:#fff; z-index:999}
.p-cover {position:absolute; left:0; top:0; width:100%; height:100%; background:url('img/a_main_4.png') no-repeat center; z-index:998;  }

#myMenu {display:none;}

@media (min-width:768px) {
    .film-play-box:after {background:rgba(63, 63, 63, .1);}
	#myMenu {position:absolute; right:100px; top:50%; display:block; transform: translate(0%, -50%); display: none;}
	#myMenu > li.active > a {opacity:1; font-weight:600}
	#myMenu > li {list-style:none; text-decoration:none; text-align:right;}
	#myMenu > li > a {position:relative; color:#fff;opacity: .5; font-size:18px; line-height:40px; font-weight:200;  text-decoration:none; text-transform:uppercase; display:block; content:''; width:50px; height:50px;}
	#myMenu > li > a > span {width:8px; height:8px; display:block; background:#fff; opacity:0.2; border-radius:100%;}
	#myMenu > li > a > span:before {position:absolute; left:-6px; top:-6px; width:20px; height:20px; border:1px solid rgba(255, 255, 255, .7); content:''; display:block; border-radius:50%; opacity:0; transition:0.5s;}
    .fp-viewing-service #myMenu > li > a > span{background: #40a5ea;}
    .fp-viewing-service #myMenu > li > a > span:before{border: 1px solid rgb(181 162 233);}
	#myMenu > li.active > a > span {opacity:1; }
	#myMenu > li.active > a > span:before {opacity:1; }

	.layout-defult {margin:0 auto; position:relative;}
	.layout-defult-free {margin:0 auto; position:relative;}
	.layout-2 { margin:0 auto; position:relative; padding:0}
    .layout-3 {margin:0 auto; position:relative; padding:0;}
	.sec1-box {position:relative; padding-top:252px; margin:0}
	.sec2-box {position:relative; padding-top:50px; margin:0}
	.sec3-box {position:relative; padding-top:200px; margin:0}
	.sec4-box {position:relative;}
	#fullpage .fs80 {font-size:80px !important}
	}
@media (min-width:1440px){
    .layout-defult {width:1330px;}
    .layout-2 {width:1440px}
}

.fadeInUp {position:relative;opacity:0;}
.fadeInUp.up {animation-name:fadeInUp;animation-fill-mode:both;animation-duration:1s;-webkit-animation-name:fadeInUp;-webkit-animation-fill-mode:both;-webkit-animation-duration:1s;}
.fadeInUp.up.up2 {animation-delay:.2s;-webkit-animation-delay:.2s;}
.fadeInUp.up.up3 {animation-delay:.4s;-webkit-animation-delay:.4s;}

@keyframes fadeInUp {
	from {transform:translate3d(0,100%,0);-webkit-transform:translate3d(0,100%,0);}
	to {transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);opacity:1;}
}
@-webkit-keyframes fadeInUp {
	from {transform:translate3d(0,100%,0);-webkit-transform:translate3d(0,100%,0);}
	to {transform:translate3d(0,0,0);-webkit-transform:translate3d(0,0,0);opacity:1;}
}

.service-box {position:relative; text-align:center; display:table; margin:auto; width:100%; font-size:0}
.service-box .service-item {position:relative;}
.service-box .width-16 {display:inline-block; width:33.3%}
.btn-b {padding-right:20px; position:relative; display:block; color:#313131; font-size:16px}
.btn-b:after {content:''; width:40px; height:1px; display:block; position:absolute; left:26%; top:0; bottom:0; margin:auto; background:#000}

.btn-c {padding-right:20px; position:relative; display:block; color:#fff; font-size:16px}
.btn-c:hover {color:#fff;}
.btn-c:after {content:''; width:40px; height:1px; display:block; position:absolute; left:15%; top:0; bottom:0; margin:auto; background:#fff}

.footer-top .blank_div {height:65px; background:#131313; display:block; content:'';}
.footer-style.sub-footer {position:static; transform:translateY(0); }
.footer-style {position:fixed; top:100%; left:0; width:100%; z-index:5; margin-bottom:0; transition:0.5s; transition-timing-function: ease-in-out; height:219px; transform:translateY(100px); }
.fp-viewing-mFooter .footer-style {transform:translateY(-220px);}

.mFooter {position:absolute; top:0;; z-index:999; width:100%;}
.mFooter .copyright {background:#1a1a1a; height:100%; position:relative; padding:20px 10px 40px;}
.mFooter .copyright > div > span {position:absolute; right:0; top:0}

.mFooter-2 {background:url('../images/comm/footer-top.png') no-repeat center top; position:relative; height:220px; width:100%;}
.mFooter-2 .copyright {margin-top:180px; background:#0b0029; height:100%; position:relative;}
.mFooter-2 .copyright > div > span {position:absolute; right:0; top:0}
.mFooter-2 .copyright .copy-top {position:absolute; top:-100px; z-index:999}

.copy-top > ul {position:relative; margin:0 -10px; display:table;}
.copy-top > ul li {display:inline-block; padding:0 15px; position:relative;}
.copy-top > ul li:before {height:75%; background:#2b2b2b; width:1px; position:absolute; top:18%; right:0; content:'';}
.copy-top > ul li:last-child:before {height:75%; background:none; width:0px; position:absolute; top:18%; right:0; content:'';}
.main-visual .video-wrap {position:absolute;  top:0; left:0; width:0; height:100%; background-repeat:no-repeat; background-position:center center; background-size:cover; overflow:hidden; text-align:center;}
.main-visual .video-data {position:absolute; top:0; left:0; width:100%; height:100%; background-repeat:no-repeat; background-position:center center; background-size:cover;}
.main-visual .video-data video {position:absolute; top:0; left:0; width:100%; height:100%;}

@media(min-width:768px) {
	.footer-top .blank_div {height:0; background:#131313; display:block; content:'';}
	.layout-defult .sec2-box .business-text > p {display:block; font-size:40px !important}
	.layout-2.sec2-box .business-text > p {display:block; font-size:40px !important}
    .fp-viewing-mFooter .footer-style {transform:translateY(-210px);}
  }
@media (max-width: 768px) {
    .mFooter { position: static !important; width: 100% !important; z-index: 1 !important;}
    .footer-style { position: static !important;  transform: none !important; height: auto !important; margin-bottom: 0 !important; width: 100% !important; z-index: 1 !important; transition: none !important; box-sizing: border-box;}
}

.swiper-video-main{width: 100%;}
.swiper-video-main .swiper-wrapper{height: 500px;}
 .film-play-box video {min-width:100%;min-height:100%; width:auto; height:auto; position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);}

.m-visual-text-box{position: absolute; top: 42%; left: 50%; transform: translate(-50%, 0%);  text-align: center; z-index: 1; color: #fff; width: 100%;}
.swiper-video-main .swiper-slide-active .m-visual-text-box .slogan-head { animation: text 1s .5s both;}
.swiper-video-main .swiper-slide-active .m-visual-text-box .slogan-body { animation: text 1s .3s both;}
.m-visual-text-box .main-swiper-lnk{display: inline-block; padding: 10px 30px; transition: 0.5s; font-weight: 600; background-color:transparent; border: 1px solid #fff;}
.swiper-video-main .swiper-slide-active .m-visual-text-box .main-swiper-lnk{animation: text 1s .8s both;}
.swiper-video-main .m-visual-text-box .slogan-head {line-height: 1.3;}
.swiper-video-main .m-visual-text-box .slogan-body {line-height: 1.3;}
@media(max-width:767px) {
	body.lang-en .m-visual-text-box {
		left: 50%;
		right: auto;
		top: 50%;
		width: calc(100% - 40px);
		max-width: 360px;
		text-align: center;
		transform: translate(-50%, -50%);
	}

	body.lang-en .m-visual-text-box .slogan-body,
	body.lang-en .m-visual-text-box .slogan-head {
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
}
@media(min-width:768px) and (max-width:1199px) {
	body.lang-en .m-visual-text-box {
		left: 50%;
		top: 50%;
		width: 74vw;
		max-width: 760px;
		text-align: center;
		transform: translate(-50%, -50%);
	}

	body.lang-en .m-visual-text-box .slogan-body,
	body.lang-en .m-visual-text-box .slogan-head {
		margin-left: auto;
		margin-right: auto;
		text-align: center;
	}
}
@keyframes text {
  0% { opacity: 0; transform: translateY(30px);}
  100% { opacity:1; transform: translateY(0);}
}
@media(min-width:992px) {
    .m-visual-text-box{position: absolute; top: 30%;}
}
@media(min-width:1440px) {
    .m-visual-text-box{position: absolute; top: 45%; text-align: left; transform:translate(0%,-50%); left: 0%; text-align: center;}
    .m-visual-text-box .main-swiper-lnk{display: inline-block; padding: 20px 50px; transition: 0.5s; font-weight: 600; background: linear-gradient(to left, #0094de, #26297e); border: 0;}
    .swiper-video-main{display: table-cell;}
    .swiper-video-main .swiper-wrapper{height: 100%;}
}

.main-scroll{position: absolute; bottom: 15%; left: 50%; transform:translate(-50%,0%); max-width: 100px; z-index: 2; display: block;}
.main-scroll img {animation: rotation 6s infinite linear;}
.main-scroll .fa-arrow-down{position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); color: #fff;}
@keyframes rotation{
    100% {
        transform: rotate(360deg);
    }
}

.animated-content{text-transform: uppercase;}
.animated-title{display: none;}
@media(min-width:992px) {
   .animated-title { font-size: 100px; font-family:'Titillium Web', sans-serif !important; font-weight: 700; position: absolute; bottom: 0; max-width: 100%; height: auto; padding: 100px 0; overflow-x: hidden; overflow-y: hidden; width: 100%; opacity: 0.1; display: block; color: #2d2c84;}
    .animated-title .track {position: absolute; white-space: nowrap;will-change: transform;animation: marquee 200s linear infinite; }
    @keyframes marquee {
      from { transform: translateX(0); }
      to { transform: translateX(-50%); }
    }
}

.scroll-item {
	opacity:1;
	position:absolute;
	left:50%;
	top:100vh;
	transform:translate(-50%, -100px);
	z-index:1;
	color:#fff;
	font-size:10px;
	font-weight:600;
	letter-spacing:0em;
	transition:0.3s;
}
.scroll-item > span:before {
	display:block;
	width:24px;
	height:38px;
	margin:0 auto 6px;
	border-radius:12px;
	content:"";
	border:2px solid #fff;
}
.scroll-item > span:after {
	width:4px;
	height:4px;
	border-radius:100%;
	background:#fff;
	content:"";
	display:block;
	position:absolute;
	left:50%;
	top:10px;
	margin-left:-2px;
	animation: scroll-wheel 1.6s ease-out infinite both;
}
@keyframes scroll-wheel {
	0% {
		transform:translateY(0);
		opacity:1;
	}
	50% {
		transform:translateY(6px);
		opacity:0;
	}
	100% {
		transform:translateY(0);
		opacity:1;
	}
}
@media (min-width:1280px) {
	.fp-viewing-company .scroll-item {transform:translate(-50%, -150px); }
}

.overflow-hidden{overflow: hidden;}

.mouse_scroll{display: none;}
@media(min-width:1400px) {
    .mouse_scroll { position: fixed; bottom: 0%;  left: 50%;  transform: translateX(-50%);  z-index: 10; display: flex; flex-direction: column; align-items: center;}
    .mouse_scroll .mouse {color: #fff; font-weight: 600; margin-bottom: 15px; display: block; opacity: 0.6;}
    .mouse_scroll .line {width: 1px; height: 70px; background: rgba(255, 255, 255, 0.4); position: relative; overflow: hidden;}
    .mouse_scroll .line .line-on { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(255, 255, 255, 1); transform: translateY(-100%); animation: scrollEffect 1.5s infinite ease-in-out;}
    @keyframes scrollEffect {
        0% {
            transform: translateY(-100%);
        }
        50% {
            transform: translateY(0);
        }
        100% {
            transform: translateY(100%);
        }
    }
}

.main-introduction .main-introduction-point-1{display: none;}
.main-introduction .main-introduction-point-2{position: absolute; bottom: -20px; left: 0; max-width: 100px;}
.main-introduction .main-introduction-point-3{position: absolute; top: -30px; right: 0;  max-width: 150px}
.main-introduction-con .main-introduction-txt{margin: 0 auto;}
.main-introduction-txt .mit-title{line-height: 1.2;}
.main-introduction-con .mic-bnt{display: inline-block; padding: 14px 40px; transition: 0.5s; font-weight: 600; background: #fff; border: 1px solid #0094de; color: #0094de;}
.main-introduction-con .mic-bnt:hover{background: #0094de; color: #fff;}
@media(min-width:768px) {
    .main-introduction .main-introduction-point-1{display: block; position: absolute; top: 140px; left: 40px; max-width: 200px;}
    .main-introduction .main-introduction-point-2{position: absolute; bottom: 100px; left: 0; max-width: 200px;}
    .main-introduction .main-introduction-point-3{position: absolute; top: 0%; right: 0;  max-width: 300px}
}
@media(min-width:992px) {
    .main-introduction-con .mic-bnt{padding: 16px 60px;}
    .main-introduction-txt .mit-title{line-height: 1.5;}
}
@media(min-width:1440px) {
    .main-introduction .main-introduction-point-1{position: absolute; top: 140px; left: 160px; max-width: 100%;}
    .main-introduction .main-introduction-point-2{position: absolute; bottom: 100px; left: 0; max-width: 100%;}
    .main-introduction .main-introduction-point-3{position: absolute; top: 50%; right: 0; transform: translate(0, -50%); max-width: 100%;}
}

    #section-2 .swiper{position:relative;overflow:hidden}
    #section-2 .swiper-wrapper{display:flex;transition-property:transform;will-change:transform}
    #section-2 .swiper-slide{flex-shrink:0}

#section-2 .product-swiper{
  touch-action: pan-y pan-x !important;
  -ms-touch-action: pan-y pan-x !important;
  -webkit-overflow-scrolling: touch;
  pointer-events:auto; position:relative; z-index:10;
  user-select:none;
}

#section-2 .product-swiper *{
  touch-action: auto !important;
  -ms-touch-action: auto !important;
}

    #section-2 .box{padding:80px 0}
    #section-2 .w1720{max-width:1720px;margin:0 auto;padding:0 24px 0 0;
	 position: relative;
	}
#section-2 .title {
  position: absolute;
  top: -74px;
  left: 0;
  z-index: 2;
}
#section-2 .slideWrap{ margin-top:190px !important; }

    #section-2 .title em.smallTitle{display:block;font-weight:700;font-size:14px;color:#5671c5}
    #section-2 .title h2{margin-top:16px;font-weight:400;font-size:40px;line-height:1.25}
    #section-2 .title h2 b{font-weight:700}
	body.lang-en #section-2 .title {
		top: -40px;
		width: clamp(360px, 38vw, 620px);
		max-width: calc(100vw - 48px);
	}

	body.lang-en #section-2 .title h2 {
		font-size: 28px;
		line-height: 1.28;
	}

    #section-2 .w1720{padding-right:0}
    #section-2 .slideBox{margin-right:calc((100vw - 100%) / -2)}

/* 1201px~1830px 구간: .w1720(max 1720px)이 화면 폭을 꽉 채워 타이틀·메뉴가 화면 왼쪽 끝에 붙는 문제 보정.
   헤더 로고(좌측 약 55px)와 시작선을 맞추고, 화면이 충분히 넓어 자동 여백이 생기면 0이 된다. */
@media (min-width: 1201px) {
    #section-2 { --s2-gutter: max(0px, calc(56px - max(0px, (100vw - 1720px) / 2))); }
    #section-2 .w1720 { padding-left: var(--s2-gutter); }
    #section-2 .title { left: var(--s2-gutter); }
}

    #section-2 .slideWrap{display:flex;gap:220px;align-items:flex-start;margin-top:36px}
	body.lang-en #section-2 .slideWrap{
		gap: 140px;
	}

    #section-2 .optionBox{
      flex:0 0 360px;
      margin-top: 162px; /* 해외사업 추가로 항목 1개(약 38px) 늘어난 만큼 위로 올려 카드 하단과 정렬 */
    }
	body.lang-en #section-2 .optionBox{
		flex-basis: 480px;
	}

    #section-2 .flexBox{display:flex;align-items:center;gap:14px;margin-top:14px}
    #section-2 .fraction{display:flex;align-items:center;gap:2px;font-weight:700}
    #section-2 .fraction em.number{min-width:10px;text-align:right}
    #section-2 .buttons button{all:unset;cursor:pointer;padding:6px 8px;border:1px solid #e5e8f1;border-radius:8px;line-height:1;background:#fff}

    #section-2 .product-pagination{list-style:none;margin:0;padding:0}
    #section-2 .product-pagination.swiper-pagination-bullets{display:block}
    #section-2 .product-pagination .swiper-pagination-bullet{
      width:100%;height:auto;background:transparent;opacity:1;border-radius:0;margin:8px 0;display:block
    }
    #section-2 .product-pagination .swiper-pagination-bullet button{
      all:unset;cursor:pointer;display:block;width:100%;box-sizing:border-box;font-size:20px;line-height:1.45;color:#d5dce9;padding-left:18px;position:relative
    }
	body.lang-en #section-2 .product-pagination .swiper-pagination-bullet button{
		white-space: nowrap;
	}

    #section-2 .product-pagination .swiper-pagination-bullet button:before{
      content:'▸';position:absolute;left:0;top:0;color:#d5dce9;opacity:.6
    }
    #section-2 .product-pagination .swiper-pagination-bullet-active button:before{
      content:'▸';position:absolute;left:0;top:0;color:#0094de;opacity:.6
    }
    #section-2 .product-pagination .swiper-pagination-bullet-active button{ color:#0094de;font-size:22px;font-weight:700; }

    #section-2 .slideBox{flex:1 1 auto;min-width:0}
    #section-2 .product-swiper{overflow:hidden}

    #section-2 .product-swiper .item{
      position:relative;border-radius:18px;background:#f6f7fa;padding:28px;height:auto;box-sizing:border-box
    }
    #section-2 .product-swiper .item a{display:block;color:inherit;text-decoration:none}
    #section-2 .product-swiper .item em{display:block;opacity:.05;font-weight:800;font-size:40px;line-height:1;color:#696969;}
    #section-2 .product-swiper .item dl{margin-top:8px}
    #section-2 .product-swiper .item dt{font-weight:800;font-size:22px;color:#222}
    #section-2 .product-swiper .item dd{margin:10px 0 0 0;color:#6b7280;font-size:15px;line-height:1.5}
    #section-2 .product-swiper .imgBox{margin-top:16px}
    #section-2 .product-swiper .imgBox .img{
      aspect-ratio:4/3;overflow:hidden;border-radius:12px;background:#fff;
      display:flex;align-items:center;justify-content:center
    }
    #section-2 .product-swiper .imgBox img{max-width:100%;height:auto;display:block}
    #section-2 .product-swiper .plus{
      position:absolute;right:16px;bottom:16px;width:40px;height:40px;border-radius:50%;
      background:#fff;display:flex;align-items:center;justify-content:center;border:1px solid #e5e8f1
    }

#section-2 .product-swiper .imgBox img{
  -webkit-user-drag: none;
  user-drag: none;
  user-select: none;
  pointer-events: none;
}

#section-2 .product-swiper a{
  -webkit-user-drag: none;
  user-select: none;
}

#section-2 .optionBox{
  position: relative;
}

#section-2 .flexBox{
    position: absolute;
    left: 447px;
    bottom: 0px;
    transform: none;
}
#section-2 .flexBox .buttons {
  display: inline-flex;
  gap: 6px;
  white-space: nowrap;
}

#section-2 .flexBox .buttons button {
  all: unset;
  cursor: pointer;
  padding: 3px 5px;
  border: 1px solid #e5e8f1;
  border-radius: 6px;
  font-size: 10px;
  line-height: 1;
  background: #fff;
}

#section-2 .fraction .number {
  font-size: 12px;
  font-weight: 700;
  color: #1f2a44;
}

#section-2 .fraction .total {
  font-size: 12px;
  font-weight: 400;
  color: #cfd6e6;
}

#section-2 .fraction span {
  display: inline-block;
  margin: 0 4px;
  color: #d8deec;
  font-size: 10px;
  line-height: 1;
}

#section-2 .fraction span::before {
  content: "/";
}

.drag-cursor{
  position: fixed;
  left: 0; top: 0;
  width: clamp(64px, 6vw, 112px);
  height: clamp(64px, 6vw, 112px);
  transform: translate(-50%, -50%);
  pointer-events: none;
  opacity: 0;
  transition: opacity .18s ease, transform .12s ease;
  z-index: 9999;
  background: url('../images/main/drag_icon.png') no-repeat center/contain;
}

@media (hover: none), (pointer: coarse) {
  .drag-cursor { display: none !important; }
}

    @media (max-width:1200px){
      #section-2{ --mob-gutter:12px; --mob-card-w:320px; }

      #section-2 .box{padding:40px 0}
      #section-2 .w1720{padding:0}
      #section-2 .title h2{font-size:26px;line-height:1.28}
      body.lang-en #section-2 .title{
        width: calc(100% - 32px);
        max-width: 520px;
        margin-left: auto;
        margin-right: auto;
      }
      body.lang-en #section-2 .title h2{font-size:23px;line-height:1.32}
      #section-2 .optionBox{display:none}
      #section-2 .slideWrap{gap:0;margin-top:16px}

      #section-2 .w1720{ padding-left:0 !important; padding-right:0 !important; }
      #section-2 .slideBox{ margin-right:0 !important; padding:0 !important; }
      #section-2 .product-swiper{ width:100vw !important; }
      #section-2 .product-swiper .swiper-slide{ width:100vw !important; background:#f6f7fa; }

      #section-2 .product-swiper .item{
        max-width:var(--mob-card-w);
        margin:0 auto;
        padding:16px;
        border-radius:14px;
        background:#f6f7fa;
        box-sizing:border-box;
      }
      #section-2 .product-swiper .imgBox .img{
        aspect-ratio:16/10;max-height:200px;overflow:hidden;
        display:flex;align-items:center;justify-content:center;background:#fff;border-radius:12px;
      }
  #section-2 .title {
    position: static;
    margin-top: 10px;
	text-align: center;
	   padding-top: 10px!important;
	   padding-bottom: 43px;

  }
  #section-2 .slideWrap {
    margin-top: 0px !important;
}

#section-2 { --mob-card-w:360px; --mob-gutter:12px; }

#section-2 .product-swiper .swiper-slide{
  padding:0 var(--mob-gutter) !important;
  box-sizing:border-box !important;
}

#section-2 .product-swiper .item > a{
  display:block !important;
  width:var(--mob-card-w) !important;
  max-width:var(--mob-card-w) !important;
  margin:0 auto !important;
}

@media (max-width:1200px){

  #section-2 .slideWrap{
    flex-direction: column;
    align-items: center;
    margin-top: 0 !important;
    gap: 0;
  }

  #section-2 .mob-fraction{
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    margin-top: 12px;
  }
}

    }

@media (max-width:768px){
  body.lang-en #section-2 .title{
    padding-bottom: 24px;
  }

  #section-2 .slideBox,
  #section-2 .product-swiper,
  #section-2 .product-swiper .swiper-wrapper,
  #section-2 .product-swiper .swiper-slide{
    height: auto !important;
    min-height: 0 !important;
  }

  #section-2 .product-swiper .swiper-slide.item{
    width:100vw !important;
    max-width:none !important;
    padding:0 var(--mob-gutter) !important;
    box-sizing:border-box !important;
    background:transparent !important;
  }

  #section-2 .product-swiper .item{
    max-width:none !important;
    padding:0 !important;
    background:transparent !important;
    border-radius:0 !important;
    width:auto !important;
  }

  #section-2 .product-swiper .swiper-slide.item > a{
    display:block !important;
    width:var(--mob-card-w) !important;
    max-width:var(--mob-card-w) !important;
    margin:0 auto !important;
    background:#f6f7fa !important;
    padding:16px !important;
    border-radius:14px !important;
  }

  body.lang-en #section-2 .product-swiper .swiper-slide.item > a{
    padding:14px !important;
  }

  body.lang-en #section-2 .product-swiper .item em{
    font-size:34px;
  }

  body.lang-en #section-2 .product-swiper .item dl{
    margin-top:4px;
  }

  body.lang-en #section-2 .product-swiper .item dt{
    font-size:20px;
    line-height:1.22;
  }

  body.lang-en #section-2 .product-swiper .imgBox{
    margin-top:12px;
  }

  body.lang-en #section-2 .product-swiper .imgBox .img{
    max-height:180px;
  }

  body.lang-en #section-2 .mob-fraction{
    margin-top:-150px !important;
    position:relative;
    z-index:2;
  }
}

#section-2{
  --card-radius: 18px;
  --card-radius-hover: 50px;
  --img-radius: 12px;
  --img-radius-hover: 40px;
  --hover-bg: #eef5fc;
  --ring-color: #eef5fc;
  --dt-color-hover: #292a80;
}

#section-2 .product-swiper .item{
  border-radius: var(--card-radius);
  transition: background-color .22s ease, border-radius .22s ease;
  overflow: hidden;
  position: relative;
}

#section-2 .product-swiper .item::before{
  content:"";
  position:absolute; inset:0;
  border-radius: inherit;
  border: 2px solid transparent;
  transition: border-color .22s ease, opacity .22s ease;
  opacity: 0;
  pointer-events: none;
}

#section-2 .product-swiper .imgBox .img{
  border-radius: var(--img-radius);
  transition: border-radius .26s ease;
  overflow: hidden;
}
#section-2 .product-swiper .imgBox .img img{
  transform: scale(1);
  border-radius: inherit;
  transition: transform .6s cubic-bezier(.2,.8,.2,1), border-radius .26s ease;
}

#section-2 .product-swiper .item dt{
  transition: color .25s ease, transform .25s ease;
}

@media (hover:hover) and (pointer:fine){
  #section-2 .product-swiper .item:hover,
  #section-2 .product-swiper .item:focus-within{
    background-color: var(--hover-bg);
    border-radius: var(--card-radius-hover);
  }
  #section-2 .product-swiper .item:hover::before,
  #section-2 .product-swiper .item:focus-within::before{
    border-color: var(--ring-color);
    opacity: 1;
  }
  #section-2 .product-swiper .item:hover .imgBox .img,
  #section-2 .product-swiper .item:focus-within .imgBox .img{
    border-radius: var(--img-radius-hover);
  }
  #section-2 .product-swiper .item:hover .imgBox .img img,
  #section-2 .product-swiper .item:focus-within .imgBox .img img{
    transform: scale(1.04);
    border-radius: var(--img-radius-hover);
  }

  #section-2 .product-swiper .item:hover dt,
  #section-2 .product-swiper .item:focus-within dt{
    color: var(--dt-color-hover);
  }
}

#section-2 .mob-fraction{ display:none; }
@media (max-width:1200px){
  #section-2 .mob-fraction{
    display:flex;
    justify-content:center;
    align-items:center;
    margin-top: 10px;
  }
  #section-2 .mob-fraction .fraction{
    font-weight:700;
    font-size:14px;
  }
}

/* 사업영역 카드 텍스트 규칙
   - dt(검정 제목): 항상 한 줄. 넘칠 경우 JS(fitProductTitles)가 폰트 크기를 줄여 맞춤
   - dd(설명): 최대 3줄까지만 노출 */
#section-2 .product-swiper .item dt{
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-width: 0;
}

#section-2 .product-swiper .item dd{
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 3;
  line-clamp: 3;
  overflow: hidden;
  min-width: 0;
}

/* 영문 사업영역 카드 : 1201~1599px 에서는 카드 폭이 160~250px 라 영문 제목이 한 줄에 안 들어가
   글자가 14px 까지 줄고도 말줄임(…)이 생겼다. 이 구간만 제목 2줄, 설명 4줄까지 허용한다.
   (제목 높이를 2줄로 고정해 카드끼리 설명·이미지 시작 위치를 맞춘다) */
@media (min-width:1201px) and (max-width:1599px){
  body.lang-en #section-2 .product-swiper .item dt{
    white-space: normal;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    line-clamp: 2;
    font-size: 18px;
    line-height: 1.25;
    min-height: 2.5em;
  }
  body.lang-en #section-2 .product-swiper .item dd{
    -webkit-line-clamp: 4;
    line-clamp: 4;
  }
}

/* 영문 메인 비주얼 문구 : 태블릿~작은 노트북(768~1199px)에서 48px 그대로라 4~5줄로 빽빽했다.
   화면 폭에 맞춰 글자 크기를 줄이고 문구 영역을 넓히며, 줄 길이를 고르게(balance) 나눈다 */
body.lang-en .m-visual-text-box .slogan-body,
body.lang-en .m-visual-text-box .slogan-head {
  text-wrap: balance;
}
@media (min-width:768px) and (max-width:1199px){
  body.lang-en .m-visual-text-box {
    width: 88vw;
    max-width: 960px;
  }
  body.lang-en .m-visual-text-box .slogan-body {
    font-size: clamp(28px, 3.6vw, 40px) !important;
    line-height: 1.25;
  }
  body.lang-en .m-visual-text-box .slogan-head {
    font-size: clamp(16px, 1.8vw, 20px) !important;
    margin-top: 24px !important;
  }
}
@media (max-width:767px){
  body.lang-en .m-visual-text-box .slogan-body {
    font-size: 22px !important;
    line-height: 1.25;
  }
  body.lang-en .m-visual-text-box .slogan-head {
    margin-top: 20px !important;
  }
}

.m-technology-box {height: auto;background-size: cover;color: #fff;font-size: 16px;font-weight: 300;background-color: #000;}
#section-4{height: 100%!important;}
.m-technology-box .link_menu {width: 100%;margin: 0 auto;}
.m-technology-box .link_menu li {float: left;width: 100%; height: auto; transition: .3s linear;-webkit-transition: .3s linear;-moz-transition: .3s linear;-o-transition: .3s linear;-ms-transition: .3s linear; border-bottom: 1px solid rgba(255,255,255,0.3); display: table;}
.m-technology-box .link_menu li:last-child{border-bottom: 0;}
.m-technology-box .link_menu li a {display: block;color: #fff; padding: 20px;  border-color: #676767; transition: .3s linear;-webkit-transition: .3s linear;-moz-transition: .3s linear;-o-transition: .3s linear;-ms-transition: .3s linear; height: 100%!important; display: table-cell; vertical-align: middle; text-align: left;}
.m-technology-box .link_menu li:hover {background:rgba(25, 96, 174, .8);}
.m-technology-box .link_menu li a i {width: 78px;height: 78px;display: table;margin: 0 auto;text-indent: -999em;margin-bottom: 30px;}
.m-technology-box .link_menu li a strong {display: block;text-align: center;margin-bottom: 30px;}
.m-technology-box .link_menu li a p {color: rgb(255,255,255,0.8);}
.m-technology-box .link_menu li a:hover p {color:#fff;}
.m-technology-box .link_menu .link_menu-btn{background: rgba(255,255,255,0.1); padding: 8px 60px; border: 1px solid #fff;}
@media(min-width:1240px) {
	.m-technology-box {height: 100%;}
	.m-technology-box {height: 100vh;}
	.m-technology-box .link_menu li {height: 100vh; width: calc(100% / 3);} /* 신기술 3개 (중ㆍ대형 관세척 장치 삭제) */
	.m-technology-box .link_menu li {border-right: 1px solid rgba(255,255,255,0.2); border-bottom: 0;}
	.m-technology-box .link_menu li:last-child{border-right: 0; border-bottom: 0;}
	#section-4{height: auto!important;}
	.m-technology-box .link_menu li a{padding: 60px 40px;}
}
@media(min-width:1640px) {
	.m-technology-box .link_menu li a{padding: 80px 60px;}
}
@media(min-width:768px) {
}

@media(min-width:992px) {

}

.main-information .layout-defult .sec-box{position: relative; left: auto; top: auto; transform: none;}
.m-info-box { font-size: 0;}
.m-info-box .rd-box{padding: 30px 20px; border-radius: 10px; background: #0094de; color: #fff; border: 1px solid #0094de; margin-bottom: 20px;}
.m-info-box .m-notice{padding: 30px 20px; border-radius: 10px; box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.1); background: #fff;}
.m-info-box .m-notice-list .m-notice-title{display: inline-block; width: calc(100% - 84px); vertical-align: middle;transition: 0.5s; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #666;}
.m-info-box .m-notice-list:hover .m-notice-title{color: #0094de;transition: 0.5s;}
.m-info-box .m-notice-list:hover .m-notice-date{color: #000;transition: 0.5s;}
.m-info-box .m-notice-list .m-notice-date{display: inline-block; width: 80px; vertical-align: middle; color: #999;transition: 0.5s;}
.m-info-box .m-notice-list +.m-notice-list{margin-top: 10px;}
.rd-menu-box > a{display: block; padding: 11px 20px 11px 15px; border: 1px solid #fff; transition: 0.5s; position: relative;}
.rd-menu-box > a + a{margin-top: 10px;}
.rd-menu-box > a:after{content: ""; position:absolute; right: 15px; top: 17px; width: 8px; height: 8px; border-color: #fff; border-top: 1px solid #fff;border-left: 1px solid #fff;  -webkit-transform: rotate(
135deg); -moz-transform: rotate(135deg); -ms-transform: rotate(135deg); -o-transform: rotate(135deg);transform: rotate(135deg); }
.rd-menu-box > a:hover{background: #fff; color: #0094de; transition: 0.5s;}
.rd-menu-box > a:hover:after{border-color: #0094de; border-top: 1px solid #0094de;border-left: 1px solid #0094de;}
.m-info2-box{font-size: 0; margin: 0 -10px;}
.m-info2-box .m-info-wh2{width: calc(100% / 2 - 20px); margin: 0 10px; display: inline-block; background: #222; padding: 20px 20px; border-radius: 10px; color: #fff; position: relative;}
.m-info2-box .m-info-wh2 .m-info2-icon{display: none;}
.m-info2-box .m-inquiry{ background: #00BCD4;}
.m-info2-box .m-directions{ background: #FF9800;}
.m-info2-box .m-info-wh1.m-recruit{display: block; padding: 30px 20px; margin-bottom: 20px; border-radius: 10px; background: #f7fcff; box-shadow: 2px 2px 10px rgba(87, 212, 255, 0.1); position: relative;}
.m-info2-box .m-info-wh1.m-recruit .m-recruit-icon{position: absolute; bottom: -15px; right: 10px; max-width: 100px;}
.m-info2-box .w-view-btn-2{background-color: transparent; padding: 8px 20px; border: 1px solid #fff; transition: 0.5s;}
.m-info2-box .m-info-wh2.m-directions:hover .w-view-btn-2{background: #fff; color: #FF9800; transition: 0.5s;}
.m-info2-box .m-info-wh2.m-inquiry:hover .w-view-btn-2{background: #fff; color: #00BCD4; transition: 0.5s;}
.m-info2-box .m-info-wh1.m-recruit .view-btn-2{ background-color: transparent; padding: 8px 40px;border: 1px solid #0094de; color: #0094de; transition: 0.5s;}
.m-info2-box .m-info-wh1.m-recruit:hover .view-btn-2{ background-color: #0094de; color: #fff; transition: 0.5s;}
.m-info2-box .m-info-wh1.m-recruit .m-recruit-title{color: #1894d2;}
.m-info2-box .m-info-wh1.m-recruit .m-recruit-txt{color: #89bad2;}
@media(min-width:768px) {
    .main-information .layout-defult{margin: 0px auto; height: 100vh;}
    .main-information .layout-defult .sec-box{position: absolute; left: 50%; top: 50%; margin: auto; width: 100%;transform: translate(-50%, -50%);}
    .m-info-box {margin: 0 -10px;}
    .m-info-box .m-info-left,
    .m-info-box .m-info-right {width: calc(100% / 2 - 20px); margin: 0 10px; display: inline-block; vertical-align: top;}
    .m-info2-box .m-info-wh2 .m-info2-icon{position: absolute; bottom: 30px; right: 30px; display: block;}
    .m-info-box .rd-box{padding: 60px 40px; margin-bottom: 0px;}
    .m-info-box .m-notice{padding: 60px 40px;}
    .rd-menu-box > a{ display: inline-block; width: calc(100% / 3 - 14px); margin: 0 5px;}
    .rd-menu-box > a + a{margin-top: 0px;}
    .m-info2-box .m-info-wh1.m-recruit .m-recruit-icon{max-width: 150px;}
    .m-info2-box .m-info-wh1.m-recruit{ padding: 40px 40px; margin-bottom: 0;}
    .m-info2-box .m-info-wh2{padding: 40px 20px; }
    .m-info2-box .w-view-btn-2{ padding: 8px 40px;}
}
@media(min-width:1240px) {
    .m-info2-box .m-info-wh1.m-recruit .m-recruit-icon{max-width: 100%;}
}

.main-notification{background: linear-gradient(to bottom, #f7f7f7 0%, #ffffff 100%); padding: 10px 0; overflow: hidden;}
.main-notification .main-notice-list{display: block;}
.main-notification .main-notice-list .main-notice-img{width: 100%; padding-bottom: 66.164%; position: relative; border-radius: 10px; overflow: hidden;}
.main-notification .main-notice-list .main-notice-img img{ position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%); max-width: 100%; width: 100%; height: 100%; object-fit: cover; transition: transform 0.3s ease;}
.main-notification .main-notice-list:hover .main-notice-img img{ transform: translate(-50%,-50%) scale(1.1);}
.main-notification .main-notice-list .main-notice-txt-box{padding: 10px;}
.main-notification .main-notice-list .main-notice-field{background: #666; color: #fff; display: inline-block; padding: 6px 10px;}
.main-notification .main-notice-list .main-notice-field.notice-color-1{background: #0094de;}
.main-notification .main-notice-list .main-notice-field.notice-color-2{background: #444;}
.main-notification .main-notice-list .main-notice-title {width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.main-notification .main-notice-list .main-notice-txt {width: 100%; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.main-notification .main-notice-list .main-notice-date {text-align: right; color: #999;}
@media(min-width:768px) {
    .main-notification{padding: 60px 0;}
}

#typing-hero{
  position:relative; width:100%; height:100%; min-height:420px;
  display:flex; align-items:center; justify-content:center;

  --gap: 18px;
  --thin-fz:  clamp(26px,3.0vw,40px);
  --thin-fw:  300;
  --bold-fz:  clamp(26px,3.0vw,40px);
  --bold-fw:  800;
  --brand-fz: clamp(28px,3.0vw,40px);
  --brand-fw: 800;
  --brand-color: #2a3189;

  --caret-h: 1.30em;
  --logo-mt: 160px;
  --logo-h:  57px;
}
#typing-hero .th-inner{ width:min(1280px,92%); margin:0 auto; }

#typing-hero .th-grid{
  display:grid; grid-template-columns:1fr; gap:var(--gap);
  align-items:center; text-align:center;
}
@media (min-width:992px){
  #typing-hero .th-grid{ grid-template-columns:1fr; }
}

#typing-hero .th-cell{ line-height:1.25; }
#typing-hero .th-cell--thin  { font-weight:var(--thin-fw);  font-size:var(--thin-fz);  color:#ffffff; }
#typing-hero .th-cell--bold  { font-weight:var(--bold-fw);  font-size:var(--bold-fz);  color:#ffffff; }
#typing-hero .th-cell--brand { font-weight:var(--brand-fw); font-size:var(--brand-fz); color:var(--brand-color); }

#typing-hero .th-target{ white-space:pre-wrap; word-break:keep-all; }

#typing-hero .th-caret{
  display:inline-block;
  width:0 !important;
  height:var(--caret-h) !important;
  border-right:3px solid currentColor !important;
  line-height:1; vertical-align:baseline;
  transform:translateY(0.14em) !important;
  visibility:hidden;
  animation: caretBlink 1s steps(1,end) infinite !important;
  animation-play-state: running !important;
  will-change: opacity;
}

#typing-hero .th-cell--thin .th-caret,
#typing-hero .th-cell--bold .th-caret,
#typing-hero .th-cell--brand .th-caret{
  height:var(--caret-h) !important;
}

@keyframes caretBlink{ 0%,49%{opacity:1} 50%,100%{opacity:0} }

@media (prefers-reduced-motion: reduce){
  #typing-hero .th-caret{ animation: caretBlink 1s steps(1,end) infinite !important; }
}

#typing-hero .th-brand{
  margin-top:var(--logo-mt);
  height:calc(var(--logo-h) + 22px);
  display:flex; align-items:center; justify-content:center;
}
#typing-hero .th-brand img{ height:var(--logo-h); width:auto; }

#typing-hero.th-compact{
  --gap:10px;
  --thin-fz:  clamp(20px,2.2vw,30px);
  --bold-fz:  clamp(24px,2.8vw,36px);
  --brand-fz: clamp(26px,3.2vw,42px);
}
#typing-hero.th-roomy{
  --gap:28px;
  --thin-fz:  clamp(24px,2.9vw,38px);
  --bold-fz:  clamp(30px,3.6vw,46px);
  --brand-fz: clamp(34px,4.2vw,54px);
  --logo-mt:32px;
}

#typing-hero{
  position: relative;
  overflow: hidden;
  --bg-dim: 0.35;
}

#typing-hero .th-bg{
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
}

#typing-hero .th-bg::after{
  content:"";
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,var(--bg-dim));
}

#typing-hero .th-bg .th-video{
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

#typing-hero .th-inner{ position: relative; z-index: 1; }
.main-information .layout-defult{
  height: 100vh !important;
  margin: 0 auto !important;
}

#typing-hero{
  min-height: 100vh !important;
  height: 100vh !important;
}

#typing-hero .th-bg{
  position: absolute; inset: 0; z-index: 0; pointer-events: none;
  background:#000;
}
#typing-hero .th-bg .th-video{
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center center !important;
}
#typing-hero .th-bg::after{
  content:""; position:absolute; inset:0;
  background: rgba(255,255,255,0.35);
}

#typing-hero .th-inner{ position: relative; z-index: 1; }

#section-5{
  background: none !important;
  position: relative;
  overflow: hidden;
}

#typing-hero{ min-height: 100vh !important; height: 100vh !important; }
.main-information .layout-defult{ height: 100vh !important; margin: 0 auto !important; }

#typing-hero .th-bg{ position:absolute; inset:0; z-index:0; pointer-events:none; background:#000; }
#typing-hero .th-bg .th-video{
  position:absolute; inset:0; width:100%; height:100%;
  object-fit: cover; object-position: center;
}

#typing-hero .th-bg::after{
  content:""; position:absolute; inset:0;
  background: rgba(255,255,255,0.35);
}

#typing-hero .th-inner{ position: relative; z-index: 1; }

#section-5 .layout-defult {
  width: 100% !important;
  max-width: none !important;
  padding: 0 !important;
  height: 100vh !important;
}

#section-5 #typing-hero {
  width: 100vw;
  margin-left: calc(50% - 50vw);
  margin-right: calc(50% - 50vw);
  min-height: 100vh !important;
  height: 100vh !important;
  position: relative;
  overflow: hidden;
}

#section-5 #typing-hero .th-bg {
  position: absolute;
  inset: 0;
  z-index: 0;
  pointer-events: none;
  background: #000;
}
#section-5 #typing-hero .th-bg .th-video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

#section-5 #typing-hero .th-bg::after {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(255,255,255,0.35);
}

#section-5 #typing-hero .th-inner {
  position: relative;
  z-index: 1;
}

/* WTS-18 : 메인 사업영역 카드 - 제목/설명 줄 수가 달라도 이미지 상·하 위치 통일
   영문은 제목이 1~2줄, 설명이 1~2줄로 제각각이라 imgBox 시작 위치가 최대 54px 어긋났음.
   카드 높이는 swiper 가 이미 균등하게 맞추므로, 이미지를 카드 하단 기준으로 정렬한다. */
@media (min-width:1201px){
  /* 설명이 최대 3줄까지 들어가도 카드가 길어지지 않도록 이미지 높이를 낮춘다 (4:3 -> 16:10) */
  #section-2 .product-swiper .imgBox .img{
    aspect-ratio:16/10;
  }

  #section-2 .product-swiper .item{
    display:flex !important;
    align-items:stretch;
  }
  #section-2 .product-swiper .item > a{
    display:flex !important;
    flex-direction:column;
    flex:1 1 auto;
    min-width:0;
  }
  /* 이미지는 카드 하단 정렬(margin-top:auto)이지만, 설명이 3줄이면 여유 공간이 0이 되어
     텍스트와 이미지가 붙어 보였음. padding-top 으로 최소 간격을 보장한다. */
  #section-2 .product-swiper .imgBox{
    margin-top:auto !important;
    padding-top:16px;
  }
}
