@charset "utf-8";
/* layout.css는 전체적인 레이아웃 스타일을 정의합니다. */ 

#skipToContent a {z-index:100000;position:absolute;top:0;left:0;width:1px;height:1px;font-size:0;line-height:0;overflow:hidden}
#skipToContent a:focus, 
#skipToContent a:active {width:200px;height:50px;background:#21272e;color:#fff;font-size:14px;font-weight:bold;text-align:center;text-decoration:none;line-height:50px}

.only-desktop {display:block;}
.only-desktop-tablet {display:block;}
.only-tablet-mobile {display:none;}
.only-tablet {display:none;}
.only-mobile {display:none;}

#wrapper {position:relative;}

.contain {position:relative; width:100%; max-width:1230px; padding-left:15px;padding-right:15px; margin:0 auto;}
.contain:after {content:" "; display:block; clear:both;}



/* header */
#main #header {position:absolute; top:0; left:0;}
#main #header #gnb ul > li > a {color:#fff;}
#header {position:relative; z-index:90; width:100%; border-bottom:1px solid rgba(255,255,255,.40);transition:.2s ease-in-out;}
#header .contain {position:relative; max-width:1430px;  height:100px;}
.header {position:relative; max-width:1920px; margin:0 auto;}
.sitelogo {position:absolute; top:50%; left:15px;margin-top:-15.5px; z-index:10}
.sitelogo a {display:block; width:142px; height:31px; text-indent:-99999em; background:url('../images/common/logo.png') 50% 50% no-repeat}

#main .sitelogo a {background-image:url('../images/common/logo_main.png')}

#gnb ul {display:flex; justify-content:center;}
#gnb ul > li {position:relative; padding:0 10px;}
#gnb ul > li > a {display:inline-block; position:relative; padding:0 34px; color:#242424; font-size:18px; line-height:100px; font-weight:500; letter-spacing:-.25px;}
#gnb ul > li > a:after {content:"";position:absolute; bottom:-1px; left:50%; width:0; height:2px; background:#ff0000; transition:.2s ease-in-out;}
#gnb ul > li.active > a {color:#ff0000;}
#gnb ul > li.active > a:after {left:0; width:100%;}
#gnb .submenu {position:absolute; left:0; width:100%; top:100px; height:0; overflow:hidden; z-index:102}
#gnb .submenu > ul {display:block; padding:25px 0;transition: all 0.3s ease-in-out;} 
#gnb .submenu > ul > li {padding:0; text-align:center;}
#gnb .submenu > ul > li > a {display:block; color:#454545; font-size:15px;  padding:0;line-height:40px; font-weight:300; letter-spacing:-.30px;}
#gnb .submenu > ul > li > a:hover {color:#ff0000 !important;}

.submenu-bg {display:none; position:absolute; top:100px; left:0; width:100%; background:#fff; opacity:.90; z-index:21}

.util {position:absolute; top:50%; margin-top:-20px;right:150px;}
.util ul {display:flex; margin:0 -4px;}
.util ul li {padding:0 4px; text-align:center;}
.util ul li a {display:inline-flex; align-items:center; padding:0 15px; border-radius:40px; height:40px; color:#fff;}
.util ul li .icon {width:19px; height:19px;}
.util ul li .tit {flex:1 1 auto; min-width:0; width:1%; padding-left:4px; font-size:16px; line-height:1.4em;}
.util ul li:nth-child(1) a {background:#ff0000}
.util ul li:nth-child(2) a {background:#000}
.util ul li:nth-child(2) .icon {width:23px;}

.util-m {overflow:hidden;margin-bottom:10px;}
.util-m ul {display:flex; justify-content:center; margin:0 -4px;}
.util-m ul li {padding:0 4px; text-align:center;}
.util-m ul li a {display:inline-flex; align-items:center; padding:0 15px; border-radius:40px; height:40px; color:#fff;}
.util-m ul li .icon {width:19px; height:19px;}
.util-m ul li .tit {flex:1 1 auto; min-width:0; width:1%; padding-left:4px; font-size:16px; line-height:1.4em;}
.util-m ul li:nth-child(1) a {background:#ff0000}
.util-m ul li:nth-child(2) a {background:#000}
.util-m ul li:nth-child(2) .icon {width:23px;}

#main #header:hover {background:#fff;}
#main #header:hover .sitelogo a {background-image:url('../images/common/logo.png')}
#main #header:hover .btn-m-menu {background:#ff0000}
#main #header:hover #gnb ul > li > a {color:#242424}

/* for mobile */
#main .btn-m-menu {background:none}
.btn-m-menu {position:absolute; top:0; right:0; width:100px; height:100px; background:#ff0000; border-left:1px solid rgba(255,255,255,.40); text-align:center; text-indent:-9999em; z-index:50;}
.btn-m-menu span {position:absolute; right:35px; top:50%; margin-top:-1px; width:18px; height:2px; background:#fff;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; right:0; width:30px; height:2px; background:#fff; transition-duration:0.3s, 0.3s; transition-delay:0.3s, 0s;}
.btn-m-menu span:before {top:-11px; transition-property:top, transform;}
.btn-m-menu span:after {bottom:-11px; transition-property:bottom, transform;}

.mobile-navigation {position:fixed; top:0; right:0; padding:20px 0; width:500px; height:100%; overflow:auto; transition:.3s ease-in-out; -ms-transform:translateX(100%); transform:translateX(100%); background:#fff; z-index:101;}
.mobile-navigation .home {margin-bottom:20px; padding-left:15px;font-size:18px; line-height:1.6em; color:#242424;font-weight:500;}
.mobile-navigation .nav-menu>ul>li {border-bottom:1px solid #dfdfdf;}
.mobile-navigation .nav-menu>ul>li>a {position:relative; padding:14px 15px; display:block; color:#242424; font-size:18px; font-weight:500; line-height:1.3em;}
.mobile-navigation .nav-menu>ul>li>a:after {content:""; position:absolute; top:50%; right:15px; transform:translateY(-75%) rotate(45deg); width:10px; height:10px; border-right:2px solid #2c2c2c; border-bottom:2px solid #2c2c2c;}
.mobile-navigation .nav-menu>ul>li.active>a {color:#ff0000}
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:#ff0000;}
.mobile-navigation .nav-menu .submenu {display:none; margin:-1px 0 0 0;  padding:10px 0;background:#ff0000; padding-bottom:10px;}
.mobile-navigation .nav-menu .submenu>ul>li>a {display:block; position:relative; padding:5px 0 5px 25px; color:#fff; font-size:16px; font-weight:400; line-height:1.3em;}
.mobile-navigation .nav-menu .submenu>ul>li>a:after {content:"";position:absolute; top:14px; left:15px; width:4px; height:4px; border-radius:100%; background:#fff; transition:.2s ease-in-out;}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover {color:#fff}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover:after {background:#fff}
.mobile-navigation .close {position:absolute; top:20px; right:15px; width:24px; height:24px; text-indent:-9999em; overflow:hidden;}
.mobile-navigation .close:before,
.mobile-navigation .close:after {content:" "; position:absolute; top:12px; left:0; width:100%; height:3px; background:#242424; border-radius:3px;}
.mobile-navigation .close:before {transform:rotate(45deg);}
.mobile-navigation .close:after {transform:rotate(-45deg);}
.mobile-overlay {display:none; position:fixed; top:0; left:0; width:100%; height:100%; background:#000; opacity:.76; z-index:98;}

html.menu-opened {overflow:hidden;}
html.menu-opened .mobile-navigation {-ms-transform:translateX(0); transform:translateX(0);}
html.menu-opened .mobile-overlay {display:block;}



/* main */
.main-visual {position:relative; max-width:1920px; margin:0 auto; overflow:hidden;}
.main-visual .item {position:relative; height:0; padding-bottom:56.25%; overflow:hidden;}
.main-visual .item .video-js,
.main-visual .item video,
.main-visual .item iframe {position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover;}
.main-visual .content {position:absolute; bottom:25%; left:0; color:#fff; padding:0 200px; width:100%; z-index:8}
.main-visual .content .contain {max-width:1430px;}
.main-visual .content .title {font-size:45px; line-height:1.4em; text-shadow:3px 3px 3px rgba(0,0,0,.20); margin-bottom:15px;}
.main-visual .content .txt {font-size:26px; line-height:1.538em; text-shadow:3px 3px 3px rgba(0,0,0,.20);}
.main-visual .slick-arrow {position:absolute; top:50%; margin-top:-35px; width:70px;height:70px; font-size:0; border-radius:100%; line-height:0;background-color:rgba(0,0,0,.40); background-repeat:no-repeat; background-position:50% 50%; border:0; z-index:20}
.main-visual .slick-prev {left:100px; background-image:url('../images/main/bt_prev.png');}
.main-visual .slick-next {right:100px; background-image:url('../images/main/bt_next.png');}

.scroll {
	position:absolute; 
	bottom:60px; 
	left:50%; 
	margin-left:-49px; 
	width:98px; 
	height:82px;
	background:url('/images/main/scroll.png') 50% 100% no-repeat;
	background-size:contain;
	z-index:10;
	-webkit-animation: bounce2 .9s linear infinite alternate;
    -moz-animation: bounce2 .9s linear infinite alternate;
    -o-animation: bounce2 .9s linear infinite alternate;
    -ms-animation: bounce2 .9s linear infinite alternate;
    animation: bounce2 .9s linear infinite alternate;
	 
}
@-moz-keyframes bounce2{from{bottom:60px;}to{bottom:50px;}}
@-webkit-keyframes bounce2{from{bottom:60px;}to{bottom:50px;}}
@-o-keyframes bounce2{from{bottom:60px;}to{bottom:50px;}}
@keyframes bounce2{from{bottom:60px;}to{bottom:50px;}}


.main-viavis {margin:100px 0;}
.main-viavis .contain {max-width:1430px;}
.main-viavis .title {text-align:center;}
.main-viavis .title h2 {position:relative; line-height:0; padding-bottom:30px; margin-bottom:40px;}
.main-viavis .title h2:after {content:""; position:absolute; bottom:0; left:0; width:100%; height:14px; background:url('../images/main/tt_shadow.png') 50% 50% no-repeat;}
.main-viavis .title .txt {font-size:20px;line-height:1.7em; margin-bottom:50px;}
.main-viavis .list {margin-top:50px;}
.main-viavis .list ul {display:flex; margin-left:-12px;}
.main-viavis .list ul li {width:25%; padding-left:12px;}
.main-viavis .list ul li .wrap {position:relative;}
.main-viavis .list ul li .pic {border-radius:10px; overflow:hidden; background:#000; transition:.2s ease-in-out;}
.main-viavis .list ul li .pic img {width:100%; transition:.2s ease-in-out;}
.main-viavis .list ul li .text {position:absolute; top:50%; left:0; color:#fff; transform:translateY(-50%);;text-align:center; width:100%; transform:translateY(-50%); z-index:1; opacity:0; transition:.2s ease-in-out;}
.main-viavis .list ul li .num {font-size:20px;line-height:1.4em; font-weight:500; margin-bottom:2px;font-family: 'Roboto', sans-serif;}
.main-viavis .list ul li .tit {font-size:24px;line-height:1.4em; font-weight:500; margin-bottom:7px;}
.main-viavis .list ul li .tt {font-size:16px; line-height:1.375em;}
.main-viavis .list ul li .txt {font-size:15px; line-height:1.467em;}
.main-viavis .list ul li:hover .text {opacity:1;}
.main-viavis .list ul li:hover .pic img {opacity:.40; transform:scale(1.04,1.04);}


.main-more {display:inline-flex; align-items:center; justify-content:center; background:#fff; font-size:16px; line-height:1.4em; color:#686868; padding:0 30px;  height:50px; border:1px solid #ddd;}
.main-more .more {padding-right:28px;}
.main-more .plus {padding-left:28px; position:relative;}
.main-more .plus:after {content:"";position:absolute; top:50%; left:0; width:1px; height:24px; background:#ddd; margin-top:-12px; transition:.2s ease-in-out;}
.main-more:hover {background:#ff0000; border-color:#ff0000; color:#fff;}
.main-more:hover .plus:after {background:#fff;}

.main-design {padding:100px 0; text-align:center; background:#f8f8f8 url('../images/main/design_bg.jpg') 50% 50% no-repeat; overflow:hidden}
.main-design .contain {max-width:1430px;}
.main-design .title {margin-bottom:50px; text-align:center;}
.main-design .title h2 {font-size:40px; line-height:1.4em; color:#242424; margin-bottom:10px;}
.main-design .title .txt {font-size:18px ;line-height:1.4em;}
.main-design .items {margin-bottom:50px;}
.main-design .items a {display:block; position:relative;}
.main-design .items .tit {position:absolute; top:50%; left:0; font-size:30px;line-height:1.4em; font-weight:500; color:#fff; transform:translateY(-50%);;text-align:center; width:100%; transform:translateY(-50%); z-index:1;}
.main-design .slick-list {margin:0 -5px; overflow:visible}
.main-design .slick-slide {padding:0 5px;}

.main-business {background:url('../images/main/virus_bg.jpg') 50% 50% no-repeat; background-size:cover; max-width:1920px; margin:0 auto; width:100%;}
.main-business .contain {max-width:1430px; display:flex; align-items:center; height:240px;}
.main-business .tit {font-size:40px; line-height:1.4em; color:#fff;font-weight:400; margin-right:80px;}
.main-business .btns ul {margin:0 -8px; display:flex;}
.main-business .btns ul li {padding:0 8px;}
.main-business .btns ul li a {display:flex; align-items:center; position:relative; min-width:230px; height:60px; padding:0 30px; background:#fff; box-shadow:3px 3px 3px rgba(0,0,0,.23);font-size:19px; line-height:1.4em; color:#bdbdbd; border-radius:60px;}
.main-business .btns ul li a:after {content:""; position:absolute; top:50%; right:30px; transform:translateY(-50%) rotate(-45deg); width:10px; height:10px; border-right:2px solid #bdbdbd; border-bottom:2px solid #bdbdbd; transition:.2s ease-in-out;}
.main-business .btns ul li a:hover {color:#ff0000}
.main-business .btns ul li a:hover:after {border-color:#ff0000}

.main-solution {margin:100px 0;}
.main-solution .contain {max-width:1430px;}
.main-solution .items {display:flex; align-items:center;}
.main-solution .nav {width:470px; margin-left:80px; margin-right:-60px; position:relative; z-index:2}
.main-solution .nav li {}
.main-solution .nav li a {display:block; position:relative; font-size:26px; line-height:90px; padding-left:30px; color:#8f8f8f; font-weight:500;}
.main-solution .nav li a:after {content:"";position:absolute; top:50%; right:30px; width:35px; height:9px; background:url('../images/main/arrow.png') 50% 50% no-repeat; background-size:contain; margin-top:-4.5px; opacity:0;}
.main-solution .nav li a.active {background:#ff0000; color:#fff; box-shadow:6px 6px 8px rgba(0,0,0,.30);}
.main-solution .nav li a.active:after {opacity:1;}
.main-solution .photo {flex:1 1 auto; width:1%; min-width:0;}
/*.main-solution .photo .pic {box-shadow:3px 3px 3px rgba(0,0,0,.23);}*/
 

.main-netson {padding:100px 0; background-color:#000; background-repeat: no-repeat; background-position: center; background-size: cover; background-image: url(../images/main/netson_bg.jpg);}
.main-netson .contain {max-width:1430px; display:flex; align-items:center;}
.main-netson .info {width:100%}
.main-netson .info .tit {font-size:18px; line-height:1.5em; color:#fff;}
.main-netson .info .tit strong {background:#fff; color:#454545; font-weight:500;}
.main-netson .info .logo {margin-bottom:35px;}
.main-netson .info .txt {margin-bottom:55px; font-size:16px ;line-height:1.5em; color:#fff;}
.main-netson .info .txt strong {font-weight:500;}
.main-netson .photo {width:100%; text-align:center; display: none; }
 
/* sub page */
.sub-visual {position:relative; width:100%; height:300px; overflow:hidden;}
.sub-visual .content {position:absolute; top:50%; left:0;  text-align:left; transform:translateY(-50%); color:#fff;  width:100%; z-index:8}
.sub-visual .tit {font-size:35px; line-height:1.3em; font-weight:500; letter-spacing:-.30px;margin-bottom:15px;text-shadow: 4px 4px 4px rgba(0,0,0,.2);}
.sub-visual .txt{line-height:1.625em;text-shadow: 4px 4px 4px rgba(0,0,0,.2);}
.sub-visual .background {
	position:absolute; 
	top:0; 
	left:0;
	width:100%; height:100%;	
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-size:cover;
	transform:scale(1.09);
    -ms-transform:scale(1.09); /* IE 9 */
    -moz-transform:scale(1.09); /* Firefox */
    -webkit-transform:scale(1.09); /* Safari and Chrome */
    -o-transform:scale(1.09); /* Opera */
	transition: all 2s ease-out 0s;
	transition-delay: 0.1s;
	z-index:0;
}
.sub-visual.load .background {
	transform:scale(1);
    -ms-transform:scale(1); /* IE 9 */
    -moz-transform:scale(1); /* Firefox */
    -webkit-transform:scale(1); /* Safari and Chrome */
    -o-transform:scale(1); /* Opera */
}


.sub-title {margin:60px 0; text-align:center;}
.sub-title h2 {position:relative; color:#242424; font-size:30px; line-height:1.5em; padding-bottom:26px; font-weight:500; letter-spacing:-.40px;}
.sub-title h2:after {content:"";position:absolute; bottom:0; left:50%; width:50px; height:3px; background:#ff0000; margin-left:-25px;}

#lnb {position:relative;}
#lnb:after {content:"";position:absolute; bottom:0; left:0; width:100%; height:1px; background:#ddd; z-index:0}
.lnb {max-width:1200px; margin:0 auto; position:relative; z-index:1}
.lnb ul {display:flex; justify-content:center;}
.lnb ul li {flex:1; text-align:center;}
.lnb ul li a {display:flex; justify-content:center; align-items:center; height:60px; font-size:18px; line-height:1.4em; font-weight:500; color:#242424; border:1px solid #ddd; border-top:0; border-left:0;}
.lnb ul li:first-child a {border-left:1px solid #ddd;}
.lnb ul li.active a {background:#ff0000; border-color:#ff0000;color: #fff;}


.real-cont {padding-bottom:100px;}




/* footer */
#footer {color:#b1b1b1; background:#202020; font-size:14px;line-height:1.643em; padding-bottom:30px;}
#footer address {font-style:normal;}
#footer .bar {padding:0 10px;}
#footer .contain {position:relative; max-width:1430px;}

.foot-menu {margin-bottom:25px; border-bottom:1px solid #6c6c6c;}
.foot-menu ul {display:flex;  margin:0 -15px;}
.foot-menu ul li {padding:0 15px; position:relative;}
.foot-menu ul li:after {content:"";position:absolute; top:50%; margin-top:-7.5px; left:0; width:1px; height:15px; background:#636363}
.foot-menu ul li:first-child:after {display:none}
.foot-menu ul li a {display:block; font-size:15px; color:#b1b1b1; line-height:65px;font-weight:500;}

.foot-row {display:flex;align-items:center;}
.foot-logo {width:175px; margin-right:58px;}
.foot-info {flex:1 1 auto; width:1%; min-width:0;}
.foot-info .tit {font-size:16px; line-height:1.4em; font-weight:700; margin-bottom:10px;}

.scroll-top {position:fixed; bottom:20px; right:15px; width:50px; height:50px; text-indent:-99999em; background:#ff0000 url('/images/common/top.png') 50% 50% no-repeat; border-radius:100%; z-index:20}