@charset "utf-8";
/* layout.css는 전체적인 레이아웃 스타일을 정의합니다. */ 

#wrapper {position:relative;}

#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;}

.contain {*zoom:1; width:100%; max-width:1400px; margin:0 auto;}
.contain:after {content:" "; display:block; clear:both;}

/* header */
#header {position:absolute; top:0; left:0; width:100%; height:100px; z-index:90;}
/* #header:after {content:""; position:absolute; bottom:0; left:0; width:100%; height:1px; background:rgba(255,255,255,0.4);} */
#header .contain {position:relative; height:100px; z-index:2;}
#header .sitelogo {position:absolute; top:50%; left:0; transform:translateY(-50%); z-index:10;}

#header .top-download {position:absolute; top:50%; right:0; transform:translateY(-50%); width:140px; height:40px; border-radius:20px; text-align:center; background:#0056a9; font-size:16px; line-height:40px; color:#fff; font-weight:500; z-index:10;}
#header .top-download span {position:relative; padding-left:32px;}
#header .top-download span:after {content:""; position:absolute; top:50%; left:0; margin-top:-11px; width:22px; height:22px; background:url('../images/common/icon_down.png') 0 0 no-repeat; background-size:100% 100%;}

#gnb {width:100%; text-align:center;}
#gnb > ul {display:inline-flex;}
#gnb > ul > li {position:relative; height:100px; text-align:center; font-weight:500; font-size:20px; line-height:100px;}
#gnb > ul > li > a {display:block; position:relative; padding:0 40px; color:#161616; z-index:20;}
#gnb > ul > li.active > a,
#gnb > ul > li:hover > a {color:#0056a9;}

.header-fixed #wrapper {padding-top:100px !important;}
.header-fixed #header {position:fixed; background:#fff; z-index:100;}

#sub #wrapper {padding-top:100px !important;}

/* for mobile */
.btn-m-menu {display:none; position:absolute; top:50%; right:30px; width:30px; height:30px; margin-top:-15px; text-indent:-9999em; z-index:50;}
.btn-m-menu span {position:absolute; right:0; top:14px; width:23px; height:2px; background:#0056a9; transition:.3s ease-in-out;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; right:0; width:30px; height:2px; background:#0056a9; transition:.3s ease-in-out;}
.btn-m-menu span:before {top:-10px;}
.btn-m-menu span:after {bottom:-10px;}

.btn-m-menu:hover span { width:30px;}
.btn-m-menu:hover span:before,
.btn-m-menu:hover span:after {width:23px;}

.mobile-navigation {display:none; position:fixed; top:0; right:0; width:280px; height:100%; overflow:auto; transition:.3s ease-in-out; -ms-transform:translateX(100%); transform:translateX(100%); background:#fff; z-index:102;}
.mobile-navigation .home {padding:20px;}
.mobile-navigation .home img {height:45px;}
.mobile-navigation .nav-menu>ul {border-top:1px solid #ddd;}
.mobile-navigation .nav-menu>ul>li {border-bottom:1px solid #ddd;}
.mobile-navigation .nav-menu>ul>li>a {position:relative; padding:10px 48px 10px 20px; display:block; color:#2c2c2c; font-size:17px; font-weight:700; line-height:1.5em;}
.mobile-navigation .nav-menu>ul>li>a:after {content:""; position:absolute; top:50%; right:20px; transform:translateY(-75%) rotate(45deg); width:13px; height:13px; border-right:1px solid #505050; border-bottom:1px solid #505050;}
.mobile-navigation .nav-menu>ul>li.active>a {background:#0056a9; color:#fff;}
.mobile-navigation .nav-menu>ul>li.active>a:after {transform:translateY(-35%) rotate(-135deg); border-color:#fff;}
.mobile-navigation .nav-menu .submenu {display:none; margin:-1px 0 0 0; padding:10px 0; border-top:1px solid #fff;}
.mobile-navigation .nav-menu .submenu>ul>li>a {display:block; padding:5px 18px; color:#2c2c2c; font-size:15px; font-weight:400; line-height:1.4em;}
.mobile-navigation .nav-menu .submenu>ul>li>a:hover {color:#0056a9;}
.mobile-navigation .close {position:absolute; top:20px; right:18px; width:26px; height:26px; 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:#0056a9; 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:0.6; z-index:101;}

html.menu-opened {overflow:hidden;}
html.menu-opened .mobile-navigation {-ms-transform:translateX(0); transform:translateX(0);}
html.menu-opened .mobile-overlay {display:block;}

/* #sub #header {position:relative; top:auto; left:auto; background:linear-gradient(to right, #60c175, #28865e, #1f685a);}
#sub #header:after {display:none;} */

/* main */
.main-vs {position:relative; height:980px; overflow:hidden; z-index:1;}
.main-vs .img {position:absolute; top:0; left:50%; width:1920px; height:980px; margin-left:-960px;}
.main-vs .m-img {display:none;}
.main-vs .txt {position:absolute; top:285px; left:50%; margin-left:-700px; max-width:1400px; width:100%;}
.main-vs .txt h2 {font-size:40px; line-height:52px; color:#161616; font-weight:500; margin-bottom:20px;}
.main-vs .txt ul li {position:relative; padding-left:32px; font-size:18px; line-height:35px; font-weight:500; color:#161616;}
.main-vs .txt ul li:after {content:""; position:absolute; top:8px; left:0; width:22px; height:22px; background:url('../images/main/arrow1.png') 0 0 no-repeat; background-size:100% 100%;}

.main-private {position:relative; height:750px; z-index:2;}
.main-private:before {content:""; position:absolute; top:0; left:50%; margin-left:-960px; width:1130px; height:1472px; background:url('../images/main/private_bg.png') 0 0 no-repeat; background-size:cover; margin-top:-208px; z-index:-1;}
.main-private .inner {display:flex; align-items:center; height:750px; width:calc(100% + 97px); margin-left:-97px;}
.main-private .inner .img {flex:1 1 766px; max-width:766px; margin-right:144px; line-height:0;}
.main-private .inner .txt {flex:1 auto; width:1%;}
.main-private .inner .txt h2 {font-size:35px; line-height:1.3em; font-weight:400; color:#0056a9; margin-bottom:25px;}
.main-private .inner .txt p {font-size:16px; line-height:32px; color:#454545; margin-bottom:35px;}
.main-private .inner .txt .more a {display:block; width:200px; height:60px; border-radius:5px; background:#9637d8; text-align:center; font-size:18px; line-height:60px; font-weight:500; color:#fff;}
.main-private .inner .txt .more a span {position:relative; padding-left:35px;}
.main-private .inner .txt .more a span:after {content:""; position:absolute; top:50%; left:0; margin-top:-11px; width:22px; height:22px; background:url('../images/main/arrow2.png') 0 0 no-repeat; background-size:100% 100%;}

.main-protection {position:relative; height:750px; z-index:3;}
.main-protection .inner {display:flex; align-items:center; height:750px; width:calc(100% + 103px); margin-right:-103px;}
.main-protection .inner .img {flex:1 1 724px; max-width:724px; text-align:right; line-height:0; order:2;}
.main-protection .inner .txt {flex:1 auto; width:1%; order:1;}
.main-protection .inner .txt h2 {font-size:35px; line-height:1.3em; font-weight:400; color:#0056a9; margin-bottom:25px;}
.main-protection .inner .txt p {font-size:16px; line-height:32px; color:#454545; margin-bottom:22px;}
.main-protection .inner .txt .available-platform {margin-bottom:45px;}
.main-protection .inner .txt .available-platform .tt {font-size:16px; line-height:1.3em; font-weight:500; color:#454545; margin-bottom:10px;}
.main-protection .inner .txt .available-platform ul {display:flex;}
.main-protection .inner .txt .available-platform ul li {padding-right:10px;}
.main-protection .inner .txt .available-platform ul li a {display:block; width:51px; height:51px; border-radius:100%; background:#454545; line-height:0; text-align:center;}
.main-protection .inner .txt .more a {display:block; width:200px; height:60px; border-radius:5px; background:#9637d8; text-align:center; font-size:18px; line-height:60px; font-weight:500; color:#fff;}
.main-protection .inner .txt .more a span {position:relative; padding-left:35px;}
.main-protection .inner .txt .more a span:after {content:""; position:absolute; top:50%; left:0; margin-top:-11px; width:22px; height:22px; background:url('../images/main/arrow2.png') 0 0 no-repeat; background-size:100% 100%;}

/* sub page */
#contArea {width:100%; max-width:1400px; margin:0 auto;}
#contArea.wide {max-width:none;}
.real-cont {min-height:350px; _height:350px; padding-bottom:100px;}

/* footer */
#footer {position:relative; clear:both; z-index:10; width:100%; background:#151922;}
#footer .contain {position:relative;}
.foot-info {position:relative; font-size:14px; line-height:1.6em; color:#73757a; font-weight:500; padding:32px 0;}
.foot-info address {font-style:normal;}
.foot-info span {display:inline-block; position:relative; padding:0 14px 0 0;}
.foot-info .copy {}

.foot-links {position:relative; width:100%; padding:20px 0; display:flex; align-items:center; justify-content:space-between;}
.foot-links:after {content:""; position:absolute; bottom:0; left:0; width:100%; height:1px; background:rgba(255,255,255,0.3);}
.foot-links p {font-size:16px; line-height:1.3em; font-weight:500; color:#73757a;}
.foot-links ul {display:flex;}
.foot-links ul li {padding-left:10px;}
.foot-links ul li a {display:block; line-height:0;}