@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;}


.intro {width:100%; height:100%; display:table; table-layout:fixed; text-align:center; overflow:hidden;}
.intro .cell {width:100%; height:100%; display:table-cell; vertical-align:middle;}
.intro .tit { font-size:80px; line-height:0.706em; color:#000;font-weight:700; margin-bottom:55px;}
.intro .tit span {color:#ebb748}
.intro p {font-size:24px; line-height:0.706em; color:#000;font-weight:200;}
.intro-copy {text-align:center; font-size:14px; line-height:1.4em;color:#000; padding:50px 0;}

#wrapper {position:relative;}

.contain {position:relative; width:100%; max-width:1750px; padding-left:15px;padding-right:15px; margin:0 auto;}
.contain:after {content:" "; display:block; clear:both;}

/* header */
#main #header {position:fixed; top:0; left:0; border-bottom:1px solid rgba(255,255,255,.30);}
#header {width:100%; border-bottom:1px solid #ddd; z-index:91;}
#header .contain {position:relative; max-width:1730px; height:100px;}
.sitelogo {position:absolute; top:50%; left:15px; margin-top:-23px; z-index:10}
.sitelogo a {display:block; width:263px; text-indent:-9999999em; height:46px; background:url('../images/common/logo_s.png') 0 50% no-repeat; background-size:contain;}
#main .sitelogo a {background-image:url('../images/common/logo.png')}

#gnb ul {display:flex; justify-content:flex-end;}
#gnb ul > li {position:relative; margin-left:126px;}
#gnb ul > li > a {display:block; position:relative; color:#000; font-size:20px; line-height:100px; font-weight:500; letter-spacing:-.025px;}
#gnb ul > li > a:after {content:"";position:absolute; bottom:-1px; left:50%; width:0; height:2px; background:#edb949; transition: all 0.3s ease-in-out;}
#gnb ul > li > a:hover,
#gnb ul > li.active > a {color:#edb949 !important}
#gnb ul > li.active > a:after {opacity:1; width:100%; left:0;}

#main #gnb ul > li > a {color:#fff}

.header-fixed .sitelogo a {background-image:url('../images/common/logo_s.png') !important}
.header-fixed #header {position:fixed; top:0; left:0; background:#fff !important; border-bottom:1px solid #ddd !important;}
.header-fixed #gnb ul > li > a {color:#000 !important}
.header-fixed #gnb ul > li.active > a {color:#edb949 !important}


/* for mobile */
#main .btn-m-menu span {background:#fff;}
#main .btn-m-menu span:before,
#main .btn-m-menu span:after {background:#fff;}
.btn-m-menu {display:none;position:absolute; top:50%; margin-top:-10px; right:15px; width:27px; height:20px; text-align:center; text-indent:-9999em; z-index:50;}
.btn-m-menu span {position:absolute; right:0; top:50%; margin-top:-1.5px; width:22px; height:2px; background:#242424;}
.btn-m-menu span:before,
.btn-m-menu span:after {content:" "; position:absolute; right:0; width:27px; height:2px; background:#242424; transition-duration:0.3s, 0.3s; transition-delay:0.3s, 0s;}
.btn-m-menu span:before {top:-9px; transition-property:top, transform;}
.btn-m-menu span:after {bottom:-9px; transition-property:bottom, transform;}


.mobile-navigation {position:fixed; top:0; right:0; padding:20px 0; width:300px; 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:700;}
.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:700; line-height:1.3em;}
.mobile-navigation .nav-menu>ul>li>a:after {content:""; position:absolute; top:50%; right:15px; transform:translateY(-50%) 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:#edb949}
.mobile-navigation .nav-menu>ul>li.active>a:after {border-color:#edb949;}
.mobile-navigation .close {position:absolute; top:15px; 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:#454545; 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 */
.scroll {
	position:absolute; 
	bottom:50px; 
	left:50%; 
	margin-left:-26px; 
	width:52px; 
	height:63px;
	text-indent:-9999em;
	text-align:center;
	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:50px;}to{bottom:40px;}}
@-webkit-keyframes bounce2{from{bottom:50px;}to{bottom:40px;}}
@-o-keyframes bounce2{from{bottom:50px;}to{bottom:40px;}}
@keyframes bounce2{from{bottom:50px;}to{bottom:40px;}}

.main-visual {position:relative; height:100vh;}
.main-visual .content {position:absolute; color:#fff; top:50%;  transform:translateY(-50%); left:0; width:100%; z-index:1; text-align:center;}
.main-visual .content .title {display:inline-block; position:relative; top:50px; text-align:left; transition: all  1s ease-out 0s;transition-delay: 1s; opacity:0;}
.main-visual .content .tit {position:relative; font-size:30px;line-height:1.4em; font-family: 'IBM Plex Sans KR', sans-serif;}
.main-visual .content .tit:after {content:"";position:absolute; top:50%; margin-top:-.5px; right:0; width:35%; height:1px; background:#edb949;}
.main-visual .content .victor {width:100%; font-size:70px; line-height:1.4em; top:50px;  position:relative; font-weight:700; margin-top:10px; opacity:0; transition: all  1s ease-out 0s;transition-delay: 1.2s}
.main-visual .content .victor span {color:#edb949}
.main-visual.load .content .title {top:0; opacity:1;}
.main-visual.load .content .victor {top:0; opacity:1;}

.video {position: absolute;right: 0;bottom: 0;top:0;right:0;width: 100%;height: 100%;background-size: 100% 100%; background:url('../images/main/vis.jpg') 50% 50% no-repeat; object-fit: cover;z-index:-1;}
#myVideo{position:absolute; bottom:0;top:0;right:0;width:100%;height:100%;background-size:100% 100%; object-fit:cover;z-index:-1;}

.main-title {display:flex; justify-content:space-between; margin-bottom:85px;}
.main-title h2 {width:700px; font-size:56px; line-height:1.179em; color:#000;}
.main-title .text {position:relative; padding:0 10px 0 30px;font-family: 'IBM Plex Sans KR', sans-serif;}
.main-title .txt {font-size:24px; line-height:1.500em; color:#000;font-weight:600; margin-bottom:5px;}
.main-title .text p {font-size:22px; line-height:1.364em; color:#666;}
.main-title .text .quotes {position:absolute; text-indent:-99999em; width:20px; height:16px;  background-repeat:no-repeat; background-position:50% 50%; background-size:contain}
.main-title .text .quotes.left {top:0; left:0; background-image:url('../images/main/quotes_left.png')}
.main-title .text .quotes.right {bottom:0; right:0; background-image:url('../images/main/quotes_right.png')}

.main-goal {padding:160px 0; border-bottom:1px solid #eaeaea; overflow:hidden;} 
.main-goal .row {display:flex; border-top:1px solid #cecece; padding-top:76px;}
.main-goal .col {width:33.333333%; height:350px; position:relative; border-left:1px solid #cecece; padding:10px 40px;}
.main-goal .col:first-child {border-left:0;}
.main-goal .col a {display:block; width:100%; height:100%;}
.main-goal .col .tit {font-size:28px ;line-height:1.4em; color:#000; font-weight:500; margin-bottom:5px;}
.main-goal .col .cont {font-family: 'IBM Plex Sans KR', sans-serif;}
.main-goal .col .cont .tt {font-size:20px; line-height:1.4em; color:#000; font-weight:600;margin-bottom:15px;}
.main-goal .col .cont .cnt {font-size:16px; line-height:1.625em; color:#888;}
.main-goal .col .cont .arrow-tit {font-size:18px; line-height:1.3em; margin-top:15px; color:#000;font-weight:600; position:relative; padding-left:24px;}
.main-goal .col .cont .arrow-tit:before {content:"";position:absolute; top:4px; left:0; width:17px; height:16px; background:url('../images/main/arrow.png') 50% 50% no-repeat;}
.main-goal .col .cont .icon-wrap {position:absolute; bottom:0; right:40px; width:103px; text-align:center; font-size:16px; line-height:1.4em; color:#666; transition: all 0.2s ease-in-out;}
.main-goal .col .cont .icon {width:100%; height:103px; background-repeat:no-repeat; background-position:50% 50%; margin-bottom:10px; background-size:contain; transition: all 0.2s ease-in-out;}
.main-goal .col:nth-child(1) .cont .icon {background-image:url('../images/main/goal_icon1_on.png')}
.main-goal .col:nth-child(2) .cont .icon {background-image:url('../images/main/goal_icon2_on.png')}
.main-goal .col:nth-child(3) .cont .icon {background-image:url('../images/main/goal_icon3_on.png')}
.main-goal .col:nth-child(1):hover .cont .icon {background-image:url('../images/main/goal_icon1.png')}
.main-goal .col:nth-child(2):hover .cont .icon {background-image:url('../images/main/goal_icon2.png')}
.main-goal .col:nth-child(3):hover .cont .icon {background-image:url('../images/main/goal_icon3.png')}
.main-goal .col:hover .icon-wrap {color:#ff6200}

.main-system {padding:160px 0; border-bottom:1px solid #eaeaea; overflow:hidden;}
.main-system .main-title {display:block}
.main-system .main-title .txt {margin-bottom:0; margin-top:15px;}
.main-system .row {display:flex; align-items:center; }
.main-system .info-left {width:39%}
.main-system .info-right {width:39%; padding-left:40px;}
.main-system .group {display:flex; margin-bottom:70px;}
.main-system .group:last-child {margin-bottom:0;}
.main-system .group .icon {width:78px;}
.main-system .group .info {flex:1 1 auto; min-width:0; width:1%; padding-left:15px;}
.main-system .group .tit {font-size:28px; line-height:1.3em; color:#000;font-weight:500; margin-bottom:10px;}
.main-system .group .cnt {font-size:16px; line-height:1.625em; color:#888;}
.main-system .system {width:22%; text-align:center;}

.main-cert {padding:160px 0; overflow:hidden;}
.main-cert .main-title { align-items:center;}
.main-cert .tab-nav {margin:0 !important; overflow:visible !important ; }
.main-cert .tab-nav ul {display:flex; justify-content:flex-end; margin:0 -20px; padding-bottom:5px;}
.main-cert .tab-nav ul li {width:auto; padding:0 20px; font-family: 'IBM Plex Sans KR', sans-serif;}
.main-cert .tab-nav ul li a {display:block; position:relative; font-size:20px; line-height:1.4em; color:#000; font-weight:500;}
.main-cert .tab-nav ul li a:after {content:"";position:absolute; bottom:-5px; left:50%; width:0; height:1px;background:#edb949; opacity:0; transition: all 0.2s ease-in-out;}
.main-cert .tab-nav ul li a:hover:after,
.main-cert .tab-nav ul li.active a:after {width:100%; left:0; opacity:1;}
.main-cert .list {max-width:1143px; margin:0 auto;}
.main-cert .list ul {display:flex;  margin:0 -36px;}
.main-cert .list ul li {width:33.333333%; padding:0 36px;}
.main-cert .list ul li .pic {position:relative; height:0; padding-bottom:142.3%; overflow:hidden;}
.main-cert .list ul li .pic img {position:absolute; top:50%; left:0; transform:translateY(-50%); -ms-transform:translateY(-50%); -webkit-transform:translateY(-50%); width:100%; height:auto !important; max-width:100%; min-height:100%; object-fit:cover; transition:0.3s;}
.main-cert .list ul li .pic:after {content:"";position:absolute; top:0; left:0; width:100%; height:100%; border:1px solid #c4c4c4; transition: all 0.2s ease-in-out;}
.main-cert .list ul li a:hover .pic:after {border:6px solid #edb949}

.main-system-box {height:234px; background:url('../images/main/system_bg.jpg') 50% 50% no-repeat; background-size:cover; margin-top:30px; position:relative; overflow:hidden;}
.main-system-box .tit {position:absolute; bottom:-28px; right:0;font-size:120px; line-height:1.1em; color:#fff; font-weight:700;}

.main-eq {padding-bottom:80px; overflow:hidden;}
.main-eq ul {display:flex; flex-wrap:wrap; margin:0 -10px -50px;}
.main-eq ul li {width:16.666666%; text-align:center; padding:0 10px; margin-bottom:50px; }
.main-eq ul li .icon {margin-bottom:10px;}
.main-eq ul li .tit {font-size:22px; line-height:1.4em; color:#000; font-weight:500; font-family: 'IBM Plex Sans KR', sans-serif;}
.main-eq ul li p {font-size:16px;line-height:1.4em; color:#888; font-weight:500; letter-spacing:-.03em;}

.main-popup {display:none; position:fixed; top:50%; transform:translate(-50%,-50%); left:50%; max-width:1580px; width:100%; z-index:92}
.main-popup .content-box {position:relative; border:3px solid #666;  background:#fff; padding:120px 60px 60px 60px; box-shadow:4px 4px 4px rgba(0,0,0,.30);}
.main-popup ul {display:flex; margin-left:-24px; position:relative;}
.main-popup ul li {width:calc(25% - 24px);  height:320px; margin-left:24px; background:#f2f2f2; border-radius:10px; padding:30px 15px 30px 30px;}
.main-popup h2 {font-size:36px; line-height:1.5em; color:#b00000; text-align:center;}
.main-popup .icon-tit {display:flex; align-items:center; margin-bottom:14px;}
.main-popup .icon-tit .icon {width:50px;}
.main-popup .icon-tit .tit{flex:1 1 auto; min-width:0; width:1%; font-size:22px ;line-height:1.4em; color:#000;padding-left:20px; font-weight:500;}
.main-popup .line {text-align:center; width:100%; margin-bottom:20px;}
.main-popup .cnt {font-size:16px; line-height:1.625em;font-family: 'IBM Plex Sans KR', sans-serif;}
.main-popup .close {position:absolute; top:46px; right:60px; width:35px; height:35px; z-index:10; text-indent:-99999em;}
.main-popup .close:before, 
.main-popup .close:after {position:absolute; left:18px; top:0;content: ' ';height:100%; width:1px;background-color:#606163;}
.main-popup .close:before {transform:rotate(45deg);}
.main-popup .close:after {transform: rotate(-45deg);}
.main-popup.type2 .content-box {padding:60px;}
.main-popup.type2 h2 {color:#0cb1cf; margin-bottom:20px;}
.main-popup.type2 .line {margin-bottom:0;}

.main-popup-cert {display:none; position:fixed; top:50%; transform:translate(-50%,-50%); left:50%; max-width:825px; width:100%; z-index:92}
.main-popup-cert .content-box {position:relative; border:3px solid #666; text-align:center; background:#fff; padding:40px 120px; box-shadow:4px 4px 4px rgba(0,0,0,.30);}
.main-popup-cert .content-box:after {content:"";display:block;clear:both;}
.main-popup-cert img {display:inline-block;}
.main-popup-cert .close {position:absolute; top:46px; right:60px; width:35px; height:35px; z-index:10; text-indent:-99999em;}
.main-popup-cert .close:before, 
.main-popup-cert .close:after {position:absolute; left:18px; top:0;content: ' ';height:100%; width:1px;background-color:#606163;}
.main-popup-cert .close:before {transform:rotate(45deg);}
.main-popup-cert .close:after {transform: rotate(-45deg);}
.main-popup-cert .slick-arrow {position:absolute; top:50%; width:68px; height:68px; margin-top:-34px; border-radius:100%; text-indent:-999999em; border:1px solid #595c64; background-color:#fff; background-position:50% 50%; background-repeat:no-repeat; z-index:10}
.main-popup-cert .slick-prev {left:-70px; background-image:url('../images/main/slide_prev.png');}
.main-popup-cert .slick-next {right:-70px; background-image:url('../images/main/slide_next.png');}


/* sub page */
.real-cont {padding-bottom:100px;}

.sub-title {display:flex; justify-content: space-between; color:#000; margin-bottom:80px;}
.sub-title h2 {width:660px; font-size:56px; line-height:1.4em;}
.sub-title .cnt {position:relative; padding:0 30px 0 30px; font-family: 'IBM Plex Sans KR', sans-serif;}
.sub-title .cnt .tit {font-size:24px; line-height:1.4em;font-weight:700;}
.sub-title .cnt .txt {font-size:22px; line-height:1.5em; color:#666;}
.sub-title .cnt .quotes {position:absolute; text-indent:-99999em; width:20px; height:16px;  background-repeat:no-repeat; background-position:50% 50%; background-size:contain}
.sub-title .cnt .quotes.left {top:0; left:0; background-image:url('../images/main/quotes_left.png')}
.sub-title .cnt .quotes.right {bottom:10px; right:0; background-image:url('../images/main/quotes_right.png')}

#sub #container {padding-top:60px;}


/* footer */
#footer {background:#292929; color:#aaa; font-size:16px;line-height:1.5em; padding:70px 0; font-family: 'IBM Plex Sans KR', sans-serif;}
#footer address {font-style:normal; margin-bottom:20px;}
#footer .bar {padding:0 10px;}
#footer .contain {position:relative;}

.foot-row {display:flex;}
.foot-logo {width:50px;}
.foot-info {flex:1 1 auto; width:1%; min-width:0; padding-left:55px;}
.foot-info .tit {font-size:18px;  line-height:1.5em;color:#fff; font-weight:500;}

.scroll-top {position:fixed; bottom:326px; right:10px; display:inline-block; text-indent:-99999em; width:58px; height:58px; border:1px solid #949494; background:#fff url('../images/common/top.png') 50% 50% no-repeat; z-index:50}