@charset "utf-8";
/* 공통 */

/* 회사소개 */
.about { position: relative;}
.about-bg { position: absolute; right: -150px; top: -500px; z-index: -1;}
.about-box { margin-top: 50px; display: flex;}
.about-left { width: 50%;}
.about-right { padding-left: 20px; width: 50%;}
.about-titbox { display: flex; align-items: center;}
.about-titbox h3 { line-height: 1.2em; font-size: 40px; letter-spacing: -.025em; font-weight: 700; color: #595959;}
.about-titbox h3 span { color: #0a55a0;}
.about-titbox h4 { font-size: 24px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #333; padding-left: 10px;}
.about-right b { font-size: 20px; font-weight: 400; letter-spacing: -.025em; line-height: 1.3em; color: #555; display: block; margin-top: 5px;}
.about-txtbox { margin-top: 0px;}
.about-txtbox p { font-size: 18px; font-weight: 400; letter-spacing: -.025em; line-height: 1.6em; color: #333; margin-top: 20px;}

/* ceo메세지 */
.ceo { display: flex; margin-top: 95px;}
.ceo-left { padding-right: 50px; width: 30%; text-align: center; position: relative; display: flex; justify-content: end;}
.ceo-left img { position: absolute; left: 0; right: 0; top: 0; margin: auto; z-index: -1;}
.ceo-right { padding-left: 50px; width: 70%; border-left: 1px solid #ddd; padding-bottom: 20px;}
.ceo-left h3 { text-align: left; font-size: 46px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #091f3c; font-family: 'GmarketSans'; padding: 50px 0;}
.ceo-titbox { display: flex; align-items: flex-start; gap: 15px;}
.ceo-titbox p { display: inline-block; position: relative; font-size: 22px; letter-spacing: -.025em; line-height: 1em; font-weight: 700; color: #0175c8;}
.ceo-titbox b { font-size: 60px ; color: #bababa; letter-spacing: -.025em; font-weight: 700; font-family: 'GmarketSans'; display: inline-block; padding-top: 10px;}
.ceo-right>p { font-size: 18px; font-weight: 400; color: #333; line-height: 1.6em; letter-spacing: -.025em; margin-top: 30px;}
.ceo-right>b {display: block; font-size: 18px; font-weight: 700; color: #333; line-height: 1.3em; letter-spacing: -.025em; margin-top: 80px;}

/* ci/bi */
.ci-sec1 { padding-bottom: 110px; }
.ci-sec1 .contain { max-width: 1460px; display: flex; gap: 60px;}
.ci-sec1 .contain::after { content: none;}
.ci-sec1 .contain>div { width: calc(100%/2 - 30px);}
.ci-box { width: 100%; position: relative; padding: 20px 10px; display: flex; align-items: center; justify-content: center; height: 300px;}
.ci-box::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; border: 1px solid #ddd;}
.ci-text { display: flex; margin-top: 45px; padding-left: 30px;}
.ci-text .tit { font-size: 24px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #333; padding-right: 55px;}
.ci-sec1-txt { padding-left: 55px; border-left: 1px solid #ddd;}
.ci-sec1-txt li { font-size: 18px; font-weight: 600; line-height: 1.2em; letter-spacing: -.025em; color: #555; position: relative; display: flex; align-items: center; padding-left: 40px; padding-top: 7px;}
.ci-sec1-txt li span:first-child { font-size: 20px;}
.ci-sec1-txt li span { padding: 0 5px; margin-bottom: 12px;}
.ci-sec1-txt li::before { content: ""; position: absolute; left: 0; top: 0; width: 34px; height: 34px; background-size: contain; }
.ci-sec1-txt li.clr1::before { background: url(../images/sub/red.png) center no-repeat; background-size: contain;}
.ci-sec1-txt li.clr2::before { background: url(../images/sub/blue.png) center no-repeat; background-size: contain;}
.ci-sec1-txt li.clr3::before { background: url(../images/sub/black.png) center no-repeat; background-size: contain;}
.ci-sec1-txt b { font-size: 18px; display: block; margin-bottom: 15px; line-height: 1.5em; font-weight: 700; letter-spacing: -.025em; color: #333;}
.ci-sec1-txt p { font-size: 18px; font-weight: 600; line-height: 1.5em; letter-spacing: -.025em; color: #555;}
.ci-sec2 { padding: 90px 0; background: #f2f2f2;}
.ci-sec2 .contain { text-align: center;}
.ci-sec2 p { font-size: 18px; font-weight: 600; letter-spacing: -.025em; line-height: 1.5em; color: #555; margin-top: 40px;}

/* 연혁 */
.hst1 { padding: 45px 0 80px; }
.hst1 .contain { max-width: 1460px;}
.hst-box { display: flex; align-items: center;}
.hst-left { position: relative; padding-left: 65px;}
.hst-left .year { font-size: 50px; font-weight: 700; line-height: 1em; letter-spacing: -.025em; color: #fff; position: absolute; top: 50%; transform: translateY(-50%); left: 105px;}
.hst-left .year2 { left: auto; right: 45px;}
.hst-left .year3 { left: 45px;}
.hst-left .year4 { font-size: 40px;}
.hst-right { padding-left: 90px; }
.hst-right ul li { position: relative; margin-bottom: 12px;}
.hst-right ul li:last-child { margin-bottom: 0;}
.hst-right ul li .month { font-size: 18px; font-weight: 700; letter-spacing: -.025em; line-height: 1em; color: #333; position: absolute; left: 0; top: 3px;}
.hst-right ul li .txt { font-size: 18px; font-weight: 300; letter-spacing: -.025em; line-height: 1.3em; color: #555; padding-left: 90px;}
.hst2 { padding: 100px 0; background: url(../images/sub/hst_bg1.jpg) center no-repeat; background-size: cover;}
.hst2 .contain { max-width: 1460px;}
.hst-fx { flex-direction: row-reverse; justify-content: space-between; align-items: flex-start;} 
.hst-fx .hst-left { padding-left: 0;}
.hst-fx .hst-right { padding-left: 140px;}
.hst-fx .hst-right ul li .month { color: #fff;}
.hst-fx .hst-right ul li .txt { color: #fff;}
.hst3 { padding: 100px 0;}
.hst3 .contain { max-width: 1460px;}
.hst-right2 { padding-left: 150px; padding-bottom: 60px;}
.hst4 { padding: 100px 0 130px; background: url(../images/sub/hst_bg2.jpg) center no-repeat; background-size: cover;}
.hst4 .contain { max-width: 1460px;}
.hst5 { padding-top: 75px;}
.hst5 .contain { max-width: 1460px;}

/* 특허/인증/수상 */
.patent-box { margin-bottom: 90px; display: flex; gap: 50px; justify-content: flex-start;}
.patent-box:last-child { margin-bottom: 0;}
.patent-inbox .tit{ font-size: 24px; font-weight: 600; letter-spacing: -.025em; line-height: 1.2em; color: #333; position: relative; margin-bottom: 35px;}
.patent-inbox .tit::before { content: ""; display: block; width: 38px; height: 1px; margin-bottom: 10px; background: #000;}
.patent-list { display: flex; gap: 20px;}
.patent-list li { position: relative;}
.patent-list li::after { content: ""; position: absolute; right: 0; top: 0; left: 0; bottom: 0; margin: auto; border: 1px solid #ddd;}

/* 고객사/파트너사 */
.partner { margin-bottom: 110px;}
.partner:last-child { margin-bottom: 0;}
.partner .tit{ font-size: 24px; font-weight: 600; letter-spacing: -.025em; line-height: 1.2em; color: #333; position: relative; margin-bottom: 35px;}
.partner .tit::before { content: ""; display: block; width: 38px; height: 1px; margin-bottom: 10px; background: #000;}

/* sub2 메인 */
.sub2 {position: relative; height: 760px; overflow: hidden; width: 100%; display: flex; background: #e1e1e1; align-items: center;}
.sub2-left { height: 100%; width: 55%; position: relative; overflow: hidden;  clip-path: polygon(0% 0%, 85% 0%, 100% 70%, 92% 100%, 0% 100%);}  
.sub2 video { position:absolute; top:0; left:0; width:100%; height:100%; object-fit:cover; }
.sub2-right { height: 100%; width: 45%; background: #e1e1e1 url(../images/sub/sub2_main_sb.png) 400px -400px no-repeat; z-index: 1;  overflow: hidden; display: flex; align-items: center; }
.sub2-right-box { position: relative; padding: 200px 100px 0;}
.sub2-right-box>h2 { font-size: 60px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #000;}
.sub2-right-box>b { font-size: 60px; font-weight: 400; letter-spacing: -.025em; line-height: 1.2em; color: #000; display: block;}
.sub2-right-box>p { font-size: 20px; font-weight: 500; line-height: 1.5em; color: #555; margin-top: 30px; padding-left: 5px;}
.sub2-right-box .sub2-img { position: absolute; right: -100px; bottom: -100px;}
.sub2-sec1 { padding-top: 120px; text-align: center;}
.sub2-sec1 .contain { max-width: 1460px;}
.sub2-sec1 .contain>h3 { font-size: 40px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #333; margin-bottom: 20px;}
.sub2-sec1 .contain>p { line-height: 1.3em; font-size: 23px; font-weight: 300; color: #555; letter-spacing: -.025em;}
.sub2-box { margin-top: 150px;}
.sub2-box .tit { font-size: 40px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #0175c8; margin-bottom: 70px;}
.sub2-team { border: 1px solid #ddd; display: flex; padding: 75px 10px; align-items: center;}
.sub2-team>div { width: 50%; text-align: center;}
.sub2-team-left b { font-size: 18px; display: block; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #333; margin-bottom: 12px;}
.sub2-team-tit { font-size: 40px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #333; justify-content: center;}
.sub2-team-left .subtit { font-size: 24px; font-weight: 700; line-height: 1.2em; letter-spacing: -.025em; color: #333; margin-top: 10px;}
.sub2-team-list {position: relative !important; bottom: auto !important; justify-content: center; margin-top: 40px;}
.sub2-list { display: flex; gap: 12px; flex-wrap: wrap;}
.sub2-list li { border: 1px solid #ddd; height: 200px; border-radius: 20px; overflow: hidden; width: calc(100%/7 - 11px);}
.sub2-list li .bg { width: 100%; height: 100%; position: absolute; left: 0; top: 0; background-position: center; background-size: cover; background-repeat: no-repeat; transition: .4s;}
.sub2-list li a { display: flex; align-items: center; justify-content: center; text-align: center; width: 100%; height: 100%; font-size: 16px; color: #fff; font-weight: 700; letter-spacing: -.025em; position: relative;} 
.sub2-list li a p { z-index: 1;}
.sub2-list li:hover >a .bg { transform: scale(1.1);}
.sub2-list li:hover >a { color: #fff;}
.sub2-list li .bg1 { background-image: url(../images/sub/sub2_main1_1.jpg);}
.sub2-list li .bg2 { background-image: url(../images/sub/sub2_main1_2.jpg);}
.sub2-list li .bg3 { background-image: url(../images/sub/sub2_main1_3.jpg);}
.sub2-list li .bg4 { background-image: url(../images/sub/sub2_main1_4.jpg);}
.sub2-list li .bg5 { background-image: url(../images/sub/sub2_main1_5.jpg);}
.sub2-list li .bg6 { background-image: url(../images/sub/sub2_main1_6.jpg);}
.sub2-list li .bg7 { background-image: url(../images/sub/sub2_main1_7.jpg);}
.sub2-video { margin-top: 80px;}


/* core-solution */
.core-sec1 { padding-bottom: 100px; text-align: center;}
.core-sec1 .contain { max-width: 1460px;}
.core-sec1 h3 { font-size: 40px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #525252; }
.core-sec1 h3 span { color: #0a55a0;}
.core-sec1 h4 { font-weight: 700; font-size: 30px; letter-spacing: -.025em; color: #595959; line-height: 1.2em; margin-top: 25px;}
.core-sec1 h4.clr1 { color: #333;}
.core-sec1 h4 span { color: #0a55a0;}
.core-sec1 b { font-size: 20px; font-weight: 700; letter-spacing: -.025em; color: #333; display: block; margin-top: 15px; line-height: 1.2em;}
.core-sec1 p { line-height: 1.3em; font-weight: 300; font-size: 20px; letter-spacing: -.025em; color: #555; margin-top: 10px;}
.core-sec2 { background: #f2f2f2; padding-top: 110px;}
.core-sec2 .contain { max-width: 1460px;}
.core-sec2-box { padding-left: 140px; position: relative; display: flex;}
.core-sec2-left { width: 37%; position: relative;}
.core-sub-tit { display: block; font-size: 20px; font-weight: 700; line-height: 1.2em; letter-spacing: -.025em; color: #333; margin-bottom: 10px;}
.core-sub-txt { font-size: 18px; font-weight: 300; letter-spacing: -.025em; line-height: 1.6em; color: #333; position: relative; padding-left: 12px;}
.core-sub-txt::before { content: ""; position: absolute; left: 0; top: 11px; width: 4px; height: 4px; border-radius: 100%; background: #0175c8;}
.core-sec2-right { width: 63%; position: relative; overflow: hidden;}
.core-sec2-img { position: relative; bottom: -55px;}
.core-sec2-list { position: absolute; bottom: -71px; display: flex; gap: 20px; width: 100%; flex-wrap: wrap;}
.core-sec2-list li { border-radius: 100%; background: #0175c8; text-align: center; width: 142px; height: 142px; overflow: hidden;} 
.core-sec2-list li>a { display: flex; width: 100%; align-items: center; height: 100%; justify-content: center;}
.core-sec2-list li p { color: #fff; font-size: 16px; font-weight: 300; letter-spacing: -.025em; line-height: 1.2em; margin-top: 10px;}
.core-sec2-list2 { position: relative; bottom: auto; margin-top: 75px;}
.core-sec2-list3 { position: relative; bottom: auto; margin-top: 35px;}
.core-sec2-list2 li{ display: flex; align-items: center; justify-content: center;}
.core-sec2-list3 li{ display: flex; align-items: center; justify-content: center;}
.core-sec2-list4 li { background: #fff;}
.core-sec2-list4 li p { color: #0175c8;}
.hover-list li { transition: .2s;}
.hover-list li:hover { background: #139fde;}
.core-sec3 { padding-top: 170px; }
/* .core-sec3 .contain { text-align: center; display: flex; justify-content: center;} */
.core-link { font-size: 20px; font-weight: 700; line-height: 1.3em; display: block; letter-spacing: -.025em; color: #333; position: relative;}
.core-link::before { display: block; content: ""; width: 180px; height: 180px; border-radius: 100%; margin: 0 auto 18px; background-size: 84px; background: url(../images/sub/core1_1_bt.png) center no-repeat; background-color: #0f2549;}

/* key function */
.key-sec1 { padding-bottom: 130px; text-align: center;}
.key-sec1 .tit { font-size: 40px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #525252; }
.key-sec1 .tit span { color: #0175c8;}
.key-sec1 p { line-height: 1.3em; font-weight: 300; font-size: 20px; letter-spacing: -.025em; color: #555; margin-top: 30px; }
.mind-tit { font-size: 40px; text-align: center !important; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #0175c8; }
.mind-tit span { text-align: center;}
.key-sec2 { padding: 85px 0 100px; background: #daebff;}
.key-sec2 .contain { max-width: 1460px; display: flex;}
.key-left { width: 50%; padding: 0 75px;} 
.key-right { width: 50%; padding-left: 55px;}

/* features */
.feature { padding: 75px 0 120px; background: #daebff;}
.feature .contain { max-width: 1460px;}
.feature-top { display: flex; justify-content: flex-start;}
.feature-right { padding-top: 20px; padding-left: 65px;}
.feature-txt { font-size: 18px; font-weight: 300; letter-spacing: -.03em; line-height: 1.5em; color: #333; padding-left: 18px; position: relative; margin-bottom: 6px;}
.feature-txt:first-child { margin-top: 15px;}
.feature-txt::before {content: ""; position: absolute; left: 6px; top: 11px; width: 4px; height: 4px; border-radius: 100%; background: #0175c8;}
.feature-txt span { font-weight: 700;}
.feature-mg { font-weight: 300 !important; padding-left: 108px;}
.feature-btm { margin-top: 40px; background: #0f2549; border-radius: 30px; padding: 70px 60px; padding-right: 0;}
.feature-btm>b {color: #fff; font-size: 20px; display: block; letter-spacing: -.025em; line-height: 1.2em; font-weight: 700;}
.feature-list { display: flex; gap: 20px; flex-wrap: wrap; margin-top: 50px;}
.feature-list li { display: flex; width: auto; position: relative;}
.feature-list li .imgbox { width: 102px; height: 102px; border-radius: 100%; display: flex; align-items: center; justify-content: center; background: #0175c8;}
.feature-list li .txtbox { padding-left: 15px; padding-top: 10px;}
.feature-list li .txtbox .tit { font-size: 18px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #fff; position: relative; padding-left: 12px; margin-bottom: 10px;}
.feature-list li .txtbox .tit::before { content: ""; position: absolute; left: 0px; top: 8px; width: 4px; height: 4px; border-radius: 100%; background: #fff;}
.feature-list li .txtbox p { font-size: 18px; font-weight: 300; letter-spacing: -.025em; line-height: 1.5em; color: #ccc; padding-left: 8px;}
.feature-list li:nth-child(2) { margin-left: 20px;}
.feature-list li:nth-child(3) { margin-left: 60px;}

/* system component */
.system-sec1 { padding: 110px 0 85px; text-align: center; background: #daebff;}
.system-sec2 { padding: 80px 0;}
.system-sec2 .contain { max-width: 1460px;}
.system-list { display: flex; gap: 30px;}
.system-list li { width: calc(100%/7);}
.system-list li .num { width: 60px; height: 60px; border-radius: 100%; margin: 0 0 20px; background: #00a99d; display: flex; align-items: center; justify-content: center; font-size: 24px; font-weight: 700; color: #fff; letter-spacing: -.025em; line-height: 1em;}
.system-list li .tit { font-size: 20px; font-weight: 700; line-height: 1.2em; letter-spacing: -.025em;color: #333; margin-bottom: 10px;}  
.system-list li .txt { font-size: 18px; font-weight: 300; line-height: 1.5em; letter-spacing: -.025em; color: #555; text-align: left !important;}
.system-sec3 { padding-top: 100px; text-align: center;}

/* reference */
.mind { position: relative; max-width: 1000px; width: 100%; margin: 160px auto 0;}
.mind-map { position: absolute; left: 0; right: 0; margin: auto; top: 0; bottom: 0; margin: auto; z-index: -1;}
.circle { width: 210px; height: 210px; border-radius: 100%; position: relative; z-index: -1; overflow: hidden; border: 6px solid #bad0e7; z-index: 1; background: #fff;}
.circle p { font-size: 18px; font-weight: 700; line-height: 1.2em; color: #333; position: absolute; right: 30px; top: 0;}
.circle2 p { top: 30px;}
.circle-center { right: 45px !important;}
.circle a { display: block; width: 100%; height: 100%;}
.big1 { display: flex; justify-content: space-between; padding: 100px 100px 150px;}
.big2 { display: flex; justify-content: space-between;}
.big1 .circle:nth-child(2) { margin-top: -160px;}
.big2 .circle:first-child {margin-top: -20px; margin-left: 40px;}
.big2 .circle:last-child {margin-top: -50px; margin-right: 40px;}
.big2 .circle:nth-child(2) { margin-top: 210px;}
.big2 .circle:nth-child(3) { margin-top: 210px;}
.sec2-icon {  transition: transform 0.3s ease-in-out; position: relative;}
.circle:hover { background: #f5f5f5;} 
.circle:hover img { transform: scale(1.1);}

/* PS-LTE */
.lte-sec1 { padding-bottom: 75px;}
.lte-sec2 { padding: 65px 0 70px; background: #daebff;}
.lte2-sec2 { padding: 65px 0 70px;}
.lte-sec2 .contain { max-width: 1460px;}
.lte2-sec2 .contain { max-width: 1460px;}
.lte2-sec2 .lte-sec2-box { flex-direction: row-reverse;}
.lte2-sec2 .lte-sec2-right { padding-left: 100px;}
.lte-sec2-box { display: flex;}
.lte-sec2-box>div { width: 50%;}
.lte-sec2-box2 { align-items: center;}
.lte-sec2-left { text-align: center;}
.lte-sec2-right { padding-top: 30px; padding-left: 20px;}
.lte-txtbox { margin-bottom: 25px;}
.lte-txtbox:last-child { margin-bottom: 0;}
.lte-subtxt { font-size: 20px; font-weight: 700; letter-spacing: -.025em; line-height: 1.3em; color: #333; margin-bottom: 15px; display: inline-block;}
.ref-linkbox {display: flex; align-items: center; margin-bottom: 12px;}
.ref-linkbox b { margin-bottom: 0;}
.ref-link { display: inline-block; width: 50px; height: 50px; border-radius: 5px; margin-left: 15px; font-size: 10px; color: #0175c8; font-weight: 500; background: #fff; text-align: center; line-height: 1.7em;}
.ref-link img{ margin-top: 8px;}
.lte-txt { font-size: 18px; line-height: 1.6em; letter-spacing: -.025em; font-weight: 400; color: #333;}
.lte-sec2-list { display: flex; flex-wrap: wrap; margin-top: 40px; gap: 14px;}
.lte-sec2-list li {background: #fff; border-radius: 5px; width: calc(100%/3 - 10px); padding: 15px 15px; display: flex; align-items: center; padding-right: 0;}
.lte-sec2-list li p { padding-left: 12px; font-size: 15px; font-weight: 300; letter-spacing: -.03em; line-height: 1.25em; color: #555;}
.lte-sec3 { padding: 100px 0;}
.lte-sec3 .contain { max-width: 1460px;}
.lte-list { padding: 0 140px; display: flex; gap: 60px 30px; flex-wrap: wrap;}
.lte-list li { width: calc(100%/3 - 20px); text-align: center;}
.lte-list li .imgbox { position: relative; width: 100%; margin-bottom: 15px;}
.lte-list li .imgbox::after { content: ""; position: absolute; left: 0; right: 0; top: 0;bottom: 0; margin: auto; border: 1px solid #ddd;}
.lte-list li .imgbox img { width: 100%;}
.lte-list li .tit { font-size: 18px; font-weight: 700; line-height: 1.2em; letter-spacing: -.025em; color: #555;}
.lte-sec4 { padding: 100px 0; background: #f2f2f2; text-align: center;} 
.lte-sec4 .contain { max-width: 1460px;}
.lte-sec4 .tit { font-size: 20px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; margin-bottom: 15px; color: #525252;}
.lte-sec4 .txt { font-size: 18px; font-weight: 300; line-height: 1.5em; letter-spacing: -.025em; color: #555;}
.lte-sec4-box { display: flex; margin-top: 95px;}
.lte-sec4-box>div { width: 50%;}
.lte-sec4-box>div img { width: 100%; height: 100%; object-fit: cover;}
.lte-sec4-right { position: relative; border-left: 2px solid #f2f2f2;}
.lte-sec4-right ul { display: flex; flex-wrap: wrap; height: 100%;}
.lte-sec4-right ul li{ width: calc(100%/3); border-right: 2px solid #f2f2f2; border-bottom: 2px solid #f2f2f2;}
.lte-sec4-right ul li:nth-of-type(3n) { border-right: 2px solid #f2f2f2;}
.lte-sec4-right ul li:nth-last-child(-n+3) {border-bottom: none; }
.lte-m { padding: 60px 0 100px; background: #f2f2f2; } 
.lte-m .contain { max-width: 1460px; display: flex;}
.lte-m-left { width: 50%; padding-left: 180px; padding-top: 30px;}
.lte-m-right { width: 50%; padding-left: 25px; text-align: center;}
.lte-r-box { display: flex; margin-top: 95px; justify-content: space-between; gap: 100px;}
.lte-r-box img { width: 100%;}
.lte-r-left { width: 46%; position: relative;} 
.lte-r-left::after { content: ""; position: absolute; right: -75px; top: 0; bottom: 0; margin: auto; width: 46px; height: 86px; background-size: contain; background: url(../images/sub/ref1_3_right.png) center no-repeat;}
.lte-r-right { width: 54%;}  
.g-text { margin-top: 25px !important;}

/* 5g 특화망 */
.private { display: flex; margin-top: 95px; }
.private2 { justify-content: center;}
.private>div { width: 50%; text-align: center;}
.private-right { padding-right: 140px;}
.private-right .tit { font-size: 26px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #0175c8; margin-bottom: 10px;}
.private-list { display: flex; gap: 10px; flex-wrap: wrap;}
.private-list li { width: calc(100%/2 - 5px); border-radius: 5px; position: relative; overflow: hidden;}
.private-list li>img { width: 100%;}
.pri-logobox { width: 135px; height: 37px; border-radius: 8px; display: flex; align-items: center; justify-content: center; background: #fff; position: absolute; right: 12px; bottom: 12px;}

/* sub3 메인*/
.sub3 {position: relative; height: 760px; overflow: hidden; width: 100%; display: flex; align-items: center; background: url(../images/sub/sub3_main.jpg) center no-repeat; background-size: cover;}
.sub3 .tit { font-size: 60px; font-weight: 700; line-height: 1.2em; color: #004074; margin-bottom: 15px;}
.sub3 .txt { font-size: 20px; font-weight: 500; line-height: 1.5em; color: #fff; margin-bottom: 80px;}
.sub3-sec1 { padding: 120px 0; text-align: center;}
.sub3-sec1 .contain { max-width: 1460px;}
.sub3-tit { font-size: 40px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #0175c8; text-align: center;}
.sub3-sec1 .contain .tit2 { color: #fff; position: absolute; text-align: left; bottom: 65px; left: 70px; font-size: 40px; line-height: 1.3em;}
.sub3-big { width: 100%; height: 500px; background: url(../images/sub/sub3_main1_1.jpg) center no-repeat; background-size: cover; position: relative; margin-bottom: 105px;}
.sub3-sec1 .txt { font-size: 20px; font-weight: 300; letter-spacing: -.025em; line-height: 1.5em; color: #555; margin-top: 30px;}
.sub3-list1 { display: flex; margin-top: 130px; padding: 0 90px;}
.sub3-list1 li { width: calc(100%/6); text-align: center;}
.sub3-list1 li a { display: block; width: 100%;}
.sub3-list1 li p { line-height: 1.5em; font-size: 18px; font-weight: 500; letter-spacing: -.025em; color: #333; margin-top: 25px;}
.sub3-sec2 { padding: 120px 0; background: #f2f2f2;  overflow: hidden;}
.sub3-sec2 .contain { max-width: 1560px;}
.sub3-hst { margin-top: 75px; position: relative;}
.sub3-hst::after { content: ""; left: 0; right: 0; margin: auto; top: 0; background: #555;  width: 1px; height: 100%; position: absolute; z-index: 0;}
.sub3-hst .year { width: 123px; height: 123px; border-radius: 100%; background: #2b3141; margin: auto; display: flex; align-items: center; justify-content: center; color: #fff; font-size: 24px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; font-family: 'GmarketSans'; position: relative; z-index: 1;}
.group-box { width: 100%; margin-left: 50%; padding: 45px 0 50px 40px;}
.group-box2 { width: 50%; margin-left: 0; text-align: right; padding: 45px 40px 50px 0;}
.group-box p { font-size: 18px; font-weight: 300; letter-spacing: -.025em; line-height: 1.3em; color: #555; padding-left: 20px; position: relative; margin-bottom: 10px; display: flex;}
.group-box p::before { content: ""; position: absolute; width: 11px; height: 2px; left: 0; top: 10px; background: #ababab;}
.group-box p span { font-weight: 900; color: #333; display: inline-block; padding: 0 10px; width: 60px;}
.group-box2 p { flex-direction: row-reverse; padding-left: 0; padding-right: 20px;}
.group-box2 p::before { left: auto; right: 0;}
.sub3-sec3 { padding-top: 120px;}
.sub3-sec3 .contain { max-width: 1460px;}
.sub3-sec3 .sub3-tit { margin-bottom: 60px;}
.sea-box { margin-bottom: 120px;}
.sea-box:last-child { margin-bottom: 0;}
.sub3-list2 { display: flex; gap: 40px;}
.sub3-list2 li { border: 1px solid #ddd; height: 300px; border-radius: 10px; overflow: hidden; flex: 1;}
.sub3-list2 li .bg { width: 100%; height: 100%; position: absolute; left: 0; top: 0; background-position: center; background-size: cover; background-repeat: no-repeat; opacity: 1; transition: .4s;}
.sub3-list2 li a { display: flex; align-items: center; justify-content: center; text-align: center; width: 100%; height: 100%; font-size: 24px; color: #fff; font-weight: 700; letter-spacing: -.025em; position: relative;} 
.sub3-list2 li a p { z-index: 1;}
.sub3-list2 li:hover >a .bg { transform: scale(1.1);}
.sub3-list2 li:hover >a { color: #fff;}
.sub3-list2 li .bg1 { background-image: url(../images/sub/sub3_main2_1.jpg);}
.sub3-list2 li .bg2 { background-image: url(../images/sub/sub3_main2_2.jpg);}
.sub3-list3 { display: flex; gap: 40px;}
.sub3-list3 li { border: 1px solid #ddd; height: 200px; border-radius: 20px; overflow: hidden; flex: 1;}
.sub3-list3 li .bg { width: 100%; height: 100%; position: absolute; left: 0; top: 0; background-position: center; background-size: cover; background-repeat: no-repeat; opacity: 1; transition: .4s;}
.sub3-list3 li a { display: flex; align-items: center; justify-content: center; text-align: center; width: 100%; height: 100%; font-size: 18px; color: #fff; font-weight: 700; letter-spacing: -.025em; position: relative;} 
.sub3-list3 li a p { z-index: 1;}
.sub3-list3 li:hover >a .bg { transform: scale(1.1);}
.sub3-list3 li:hover >a { color: #fff;}
.sub3-list3 li .bg1 { background-image: url(../images/sub/sub3_main3_1.jpg);}
.sub3-list3 li .bg2 { background-image: url(../images/sub/sub3_main3_2.jpg);}
.sub3-list3 li .bg3 { background-image: url(../images/sub/sub3_main3_3.jpg);}
.sub3-list3 li .bg4 { background-image: url(../images/sub/sub3_main3_4.jpg);}

/* 차세대 해양통신망(VDES) */
.vdes-sec1 { padding: 50px 0 120px;}
.vdes-sec1 .contain { max-width: 1460px;}
.vdes-subtit { font-size: 20px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #333; display: block; margin-bottom: 20px;}
.vdes-subtxt { font-size: 18px; font-weight: 500; letter-spacing: -.025em; line-height: 1.5em; color: #333; margin-bottom: 10px;}
.vdes-txt { font-size: 18px; font-weight: 300; letter-spacing: -.025em; line-height: 1.5em; color: #555; position: relative; padding-left: 12px;}
.vdes-txt::before { content: ""; left: 0; top: 11px; background: #333; width: 3px; height: 3px; border-radius: 100%; position: absolute;}
.vdes-txt span { font-weight: 700;} 
.vdes-txt ul { margin-top: 5px;}
.vdes-sec1 img { width: 100%; margin-top: 40px;}
.vdes-sec2 { padding: 100px 0; background: #f2f2f2;}
.vdes-sec2 .contain { max-width: 1460px;}
.vdes-box { margin-bottom: 105px;}
.vdes-box:last-child { margin-bottom: 0;}
.vdes-sec2-list1 { display: flex; gap: 40px; flex-wrap: wrap; margin-top: 70px;}
.vdes-sec2-list1 li { width: calc(100%/2 - 20px); background: #fff;text-align: center; position: relative; border-radius: 5px; }
.vdes-sec2-list1 li::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; border: 1px solid #ddd; border-radius: 5px;}
.vdes-sec2-list1 li .titbox { display: flex; align-items: center; justify-content: center; border-radius: 21px; background: #0096d5; position: absolute; left: 30px; top: -21px; font-size: 20px; font-weight: 500; letter-spacing: -.025em; color: #fff; z-index: 1; padding: 8px 20px; line-height: 1.2em;}
.vdes-sec2-list1 li:nth-of-type(2n) .titbox{ background: #4159a7;}
.vdes-listbox { width: 100%; position: relative; background: #fff; border-radius: 5px; margin-top: 70px;}
.vdes-listbox::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; border: 1px solid #ddd; border-radius: 5px;}
.vdes-listbox:last-child { margin-top: 45px;}
.vdes-listbox .titbox { display: flex; align-items: center; justify-content: center; border-radius: 21px; background: #0175c8; position: absolute; left: 30px; top: -21px; font-size: 20px; font-weight: 400; letter-spacing: -.025em; color: #fff; z-index: 1; padding: 8px 20px; line-height: 1.2em;}
.vdes-sec2-list2 { display: flex; width: 100%; padding: 50px 0 65px;}
.vdes-sec2-list2 li { width: calc(100%/3); text-align: center; border-right: 1px solid #c7c7c7;  position: relative;}
.vdes-sec2-list2 li:last-child { border-right: none}
.listtxt { height: 34px; border-radius: 17px; background: #ddd; margin: auto; text-align: center; display: flex; align-items: center; justify-content: center; font-size: 16px; font-weight: 700; line-height: 1.2em; color: #333; letter-spacing: -.025em; margin-top: 20px; position: absolute; left: 0; right: 0; bottom: -40px;padding: 0 20px; width: fit-content;}
.vdes-sec3 { padding: 100px 0;}
.vdes-sec3 .contain { max-width: 1460px;}
.vdes-sec4 { padding: 100px 0; background: #f2f2f2;}
.vdes-sec4 .contain { max-width: 1460px;}
.vdes-sec4-list { display: flex; margin-top: 40px; gap: 30px;}
.vdes-sec4-list li {width: 260px; height: 100px; display: flex; align-items: center; justify-content: center; background: #fff;}
.tech1-1 { margin-top: 100px; width: 100%;}
.tech1-2 { margin-top: 100px; width: 100%;}
.free-imgbox { margin-top: 30px; display: flex; align-items: center; justify-content: center;}

/* 엔에스원 소프트 빅데이터센터 */
.bd-sec2 { padding: 100px 0; background: #daebff;}
.bd-sec2 .contain { max-width: 1460px; display: flex;}
.bd-sec2 .contain>div img{ width: 100%; }
.bd-sec2-left { width: 50%;}
.bd-sec2-right { width: 50%;}
.bd-sec3 { padding: 100px 0;}
.bd-sec3 .contain { max-width: 1460px;}
.bd-sec4 { padding: 100px 0; background: #f2f2f2;}
.bd-sec4 .contain { max-width: 1460px; position: relative;}
.bd-sec4-list { display: flex; margin-top: 40px; gap: 40px 160px; flex-wrap: wrap; z-index: 1; position: relative;}
.bd-sec4-list li { width: calc(100%/2 - 80px); border-radius: 10px; overflow: hidden;}
.bd-sec4-list li .tit { padding: 18px 10px; line-height: 1.2em; letter-spacing: -.025em; font-size: 20px; font-weight: 700; color: #fff; text-align: center; background: #5bacff; position: relative;}
.bd-sec4-list li .txt { display: flex; align-items: center; justify-content: center; background: #fff; height: 210px;}
.bd-sec4-center { position: absolute; left: 0; right: 0; margin: auto; top: 50%; transform: translateY(-50%); z-index: 0;}
.bd-sec5 { padding: 100px 0;}
.bd-sec5 .contain { max-width: 1460px;}
.bd-sec5-box { display: flex; gap: 40px; margin-top: 30px;}
.bd-sec5-box>div { width: calc(100%/2 - 20px);}
.bd-sec5-imglist { margin-top: 45px; display: flex; gap: 40px;}
.bd-sec5-imglist li { width: calc(100%/2 - 20px);}
.bd-sec5-imglist li img { width: 100%;}
.bd-logolist { display: flex; gap: 10px; margin-top: 40px;}
.bd-logolist li {padding: 12px 15px; display: flex; align-items: center; justify-content: center; width: 255px; height: 80px;}

/* mcp-기반 해사서비스 */
.mcp-img { margin-top: 100px; display: flex; align-items: center; justify-content: center;}
.mcp-sec2 { padding: 100px 0; background: #daebff;}
.mcp-sec2 .contain { max-width: 1460px; display: flex; justify-content: center; }
.mcp-sec2 .contain>div { display: flex; width: 50%;}
.cb-sec2 .contain>div { width: 100%;}
.mcp-sec2-left { padding-left: 210px;}
.mcp-circle { width: 100px; height: 100px; border-radius: 100%; display: flex; align-items: center; justify-content: center; background: #0175c8;}
.mcp-txtbox { padding-left: 50px; padding-top: 10px;}
.mcp-list { display: flex; flex-wrap: wrap; gap: 36px;}
.mcp-list li { width: calc(100%/2 - 18px);border: 1px solid #ddd;padding: 25px 0 25px 25px; display: flex;}
.mcp-list li .imgbox { width: 39%;}
.mcp-list li .imgbox img { width: 100%;}
.mcp-list li .txtbox { padding-left: 30px; width: 61%;}
.mcp-list li .txtbox b { font-size: 20px; font-weight: 700; line-height: 1.2em; letter-spacing: -.025em; color: #333; display: block; margin-bottom: 10px;}
.mcp-list li .txtbox p { font-size: 18px; font-weight: 300; letter-spacing: -.04em; line-height: 1.444em; color: #555; padding-left: 12px; position: relative;}
.mcp-list li .txtbox p::before { content: ""; left: 0; top: 11px; background: #333; width: 3px; height: 3px; border-radius: 100%; position: absolute;}
.mcp-demo { display: flex; margin-top: 40px;}
.mcp-txtbox2 { padding-left: 35px; padding-top: 5px;}

/* 해양사이버보안 */
.cyber-sec3 { padding: 100px 0;}
.cyber-sec3 .contain { max-width: 1460px; display: flex;  }
.cyber-sec3 .contain>div { display: flex; width: 50%;}
.cyber-sec4 { background: #f2f2f2; padding: 100px 0; text-align: center;}
.cyber-sec4 .contain { max-width: 1460px;}
.cyber-sec4 .tit { font-size: 24px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #333; margin-bottom: 15px;}
.cyber-sec4 .txt { font-size: 18px; font-weight: 300; letter-spacing: -.025em; line-height: 1.444em; color: #333;}
.cyber-sec4 .imgbox { width: 100%; margin-top: 75px; padding: 50px 10px; display: flex; align-items: center; justify-content: center; border: 1px solid #ddd; background: #fff; margin-bottom: 50px;}

/* 채용 */
.rc-sec1 { width: 100%; height: 400px; display: flex; align-items: center; justify-content: center; padding: 20px 10px; background: url(../images/sub/sub5_1.jpg) center no-repeat; background-size: cover; text-align: center;}
.rc-sec1 .tit { font-size: 28px; font-weight: 700; line-height: 1.3em; color: #fff;}
.rc-sec1 .txt { font-size: 20px; font-weight: 200; letter-spacing: -.01em; line-height: 1.8em; color: #fff; margin-top: 10px;}
.rc-sec2 { text-align: center; padding-top: 160px;}
.rc-sec2 .tit { font-size: 40px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #525252;}
.rc-sec2-list { display: flex; margin-top: 90px; gap: 80px;}
.rc-sec2-list li { width: calc(100%/4); text-align: center;}
.rc-sec2-list li .imgbox { width: 290px; height: 290px; border-radius: 100%; margin: auto; background-size: cover; background-position: center; background-repeat: no-repeat; display: flex; align-items: center; justify-content: center; font-size: 24px; font-weight: 700; letter-spacing: -.025em; color: #fff; font-family: 'GmarketSans';}
.rc-sec2-list li .imgbox.bg1 { background-image: url(../images/sub/sub5_1_1.jpg);}
.rc-sec2-list li .imgbox.bg2 { background-image: url(../images/sub/sub5_1_2.jpg);}
.rc-sec2-list li .imgbox.bg3 { background-image: url(../images/sub/sub5_1_3.jpg);}
.rc-sec2-list li .imgbox.bg4 { background-image: url(../images/sub/sub5_1_4.jpg);}
.rc-sec2-list li .tit { font-size: 20px; margin-top: 30px; font-weight: 700; letter-spacing: -.03em; line-height: 1.3em; color: #333;}
.rc-sec2-list li .txt { font-size: 18px; font-weight: 300; letter-spacing: -.03em; line-height: 1.3em; margin-top: 5px; color: #555;}
.sub5-mail { display: flex; justify-content: center; align-items: center; margin-top: 120px;}
.sub5-mail a { width: 400px; height: 60px; line-height: 1.2em; display: flex; align-items: center; justify-content: center; text-align: center; color: #fff; border-radius: 30px; background: #0175c8; font-size: 20px; font-weight: 300; letter-spacing: -.025em;}

/* 오시는길 */
.mapbox { border-bottom: 1px solid #ddd;}
.root_daum_roughmap .wrap_controllers { display: none;}
.lct { padding-top: 45px; padding-left: 65px; display: flex; gap: 65px;}
.lct-box { display: flex; align-items: center;}
.lct-circle { width: 80px; height: 80px; border-radius: 100%; display: flex; align-items: center; justify-content: center; background: #0175c8;}
.lct-circle.clr1 { background: #32446e;}
.lct-text { padding-left: 20px;}
.lct-text .tit { font-size: 18px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2em; color: #333; margin-bottom: 5px; display: block;}
.lct-text .txt { font-size: 18px; font-weight: 300; letter-spacing: -.025em; line-height: 1.2em; color: #555; padding-right: 20px; display: inline-block;}
.lct-text .txt:last-child { padding-right: 0;}