@charset "utf-8";
/* 회사소개 공통 */
.sub1-tit { font-size: 56px; font-weight: 600; letter-spacing: -.02em; line-height: 1.25em; color: #2c2c2c; margin-bottom: 90px; }
.sub1-tit.mg { margin-bottom: 50px;}

/* CEO 인사말 */
.gt { position: relative; }
.gt h2 { font-size: 48px; font-weight: 800; color: #047fde; line-height: 1.3em; margin-bottom: 24px; }
.gt h3 { font-size: 36px; font-weight: 800; line-height: 1em; color: #047fde;}
.gt img { position: absolute; border-radius: 24px;}
.gt-img1 { right: 0; top: 0; }
.gt-img2 { left: 0; top: 260px; }
.gt .big { text-align: center; font-size: 56px; font-weight: 600; color: #2c2c2c; line-height: 1.25em; margin-top: 280px; position: relative; z-index: 1;}
.gt .txtbox { margin-top: 240px; padding-left: 480px; }
.gt .txtbox h4 { font-size: 32px; font-weight: 600; line-height: 1.47em; color: #2c2c2c; }
.gt .txtbox p { font-size: 18px; margin-top: 30px; }
.gt-sb { position: absolute; left: 0; bottom: 70px; z-index: -1; font-size: 140px; font-weight: 900; line-height: 1.07em; color: #f4f4f4;}
.gt-sb span { display: inline-block; padding-left: 110px; }

/* CI */
.ci {color: var(--dark);}
.ci .contain {max-width: 1460px;}
.ci .art1 {padding-bottom: 160px;}
.ci .art1 .ci-tit {font-size: 56px; font-weight: 700; letter-spacing: -.04em; line-height: 1.5em; margin-bottom: 90px;}
.ci .art1 .ci-sub-tit {font-size: 48px; font-weight: 700; letter-spacing: -.04em; line-height: 1.5em; margin-bottom: 40px;}
.ci .art1 figcaption {font-size: 20px; font-weight: 500; letter-spacing: -.04em; line-height: 1.85em; margin-bottom: 90px;}
.ci .art1 img {margin: -20px; max-width: calc(100% + 40px);}
.ci .art2 {padding: 100px 0; background-color: #f8f8f8; text-align: center;}
.ci .art2 .ci-sub-tit {font-size: 48px; font-weight: 700; letter-spacing: -.04em; line-height: 1.5em; margin-bottom: 40px;}
.ci .art2 p {font-size: 20px; font-weight: 500; letter-spacing: -.04em; color: #505050; line-height: 1.85em; margin-bottom: 40px;}
.ci .art2 h4 {font-size: 30px; font-weight: 700; letter-spacing: -.04em; line-height: 1.5em;}

/* 비전 및 경영이념 */
.vs-fx { display: flex; gap: 20px;}
.vs-fx .left { width: calc(73% - 10px); padding: 65px 70px; background-repeat: no-repeat; background-position: center; background-size: cover; border-radius: 24px; }
.vs-fx .left.bg1 { background-image: url(../images/sub/sub1-2-bg1.jpg);}
.vs-fx .left.bg2 { background-image: url(../images/sub/sub1-2-bg2.jpg);}
.vs-fx .left h3 { font-size: 38px; font-weight: 800; letter-spacing: -.02em; line-height: 1.4em; color: #047fde; }
.vs-fx .left .txtbox { margin-top: 95px;}
.vs-fx .left p { font-size: 18px; margin-top: 15px; }
.vs-fx .right { width: calc(27% - 10px); border-radius: 24px; overflow: hidden;}
.vs-fx .right.bd { border: 1px solid #047fde; display: flex; align-items: center; justify-content: center; }
.vs-fx.rv { flex-direction: row-reverse; margin-top: 20px; }

/* 연혁 */
.hst { position: relative; }
.hst::after { content: ""; position: absolute; left: 0; right: 0; margin: auto; width: 1px; height: 94.8%; background: #ddd; top: 0; z-index: -1;}
.hst .group { padding-bottom: 140px; position: relative; display: flex; }
.hst .group::before { content: ""; position: absolute; left: 0; right: 0; margin: auto; top: 0; width: 20px; height: 20px; border-radius: 20px; background: #047fde; border: 5px solid #e1f0fb; z-index: 1;}
.hst .group .left { width: 50%;  display: flex; gap: 10px; flex-wrap: wrap;justify-content:flex-end;padding-right:180px;}
.hst .group .left img { border-radius: 24px; }
.hst .group .right { width: 50%; padding-left: 80px; }
.hst .group .right .year { line-height: 1em; font-size: 56px; font-weight: 800; color: #2c2c2c; letter-spacing: -.02em; margin-bottom: 55px; }
.hst .group .right ul li { display: flex; }
.hst .group .right ul li .year2 { width: 98px; font-size: 20px; font-weight: 600; line-height: 2.5em; color: #2c2c2c; letter-spacing: -.02em; }
.hst .group .right ul li .txt { flex: 1 1 auto; min-width: 0; width: 1%; font-size: 20px; line-height: 2.5em; color: #2c2c2c; letter-spacing: -.03em;}
.hst .group .right ul li:last-child { margin-bottom: 0; }
.hst .group.rv { flex-direction: row-reverse;}
.hst .group.rv .left { padding-left: 180px; text-align: right; justify-content:flex-start;padding-right:0;}
.hst .group.rv .right { padding-left: 0; padding-right: 80px; text-align: right;}
.hst .group.rv .right ul li { flex-direction: row-reverse;}
.hst-img-fx { display: flex; gap: 10px;  flex-wrap: wrap;}
.hst-last { text-align: center; padding-top: 40px; position: relative; }
.hst-last::before { content: ""; position: absolute; left: 0; right: 0; margin: auto; top: 0; width: 20px; height: 20px; border-radius: 20px; background: #047fde; border: 5px solid #e1f0fb; z-index: 1;}
.hst-last h3 { line-height: 1em; font-size: 56px; font-weight: 800; color: #2c2c2c; letter-spacing: -.02em; margin-bottom: 25px; }
.hst-last p { font-size: 20px; line-height: 1.5em; margin-bottom: 54px; }
.hst-last img { border-radius: 24px;}

/* 사업장 공통 */
.ds { display: flex; align-items: flex-start;}
.ds .left { width: 35.7%; padding-right: 100px; position: sticky; top: 130px;}
.ds .right { width: 64.3%; }
.ds-tab li { border-top: 1px solid #ddd;}
.ds-tab li:last-child { border-bottom: 1px solid #ddd;}
.ds-tab li a { padding: 35px 30px; position: relative; display: block; }
.ds-tab li a .tit { line-height: 1.2em; font-size: 32px; font-weight: 800; letter-spacing: -.02em; color: #ccc; position: relative; }
.ds-tab li a .tit::after { content: ""; position: absolute; right: 0; top: 0; bottom: 0; margin: auto; width: 12px; height: 12px; border-radius: 12px; background: #047fde; display: none; }
.ds-tab li .info { display: none; }
.ds-tab li .info .box { margin-bottom: 33px; }
.ds-tab li .info .box:last-child { margin-bottom: 0; }
.ds-tab li .info .box .ctr { line-height: 1em; font-size: 16px; font-weight: 400; letter-spacing: -.02em; color: #047fde; margin-bottom: 12px; }
.ds-tab li .info .box .txt { line-height: 1.3em; font-size: 24px; font-weight: 800; letter-spacing: -.02em; color: #047fde;}
.ds-tab li .info .box .txt sup { font-size: 14px;}
.ds-tab li.active { border-top: 1px solid #047fde;}
.ds-tab li.active + li { border-top: 1px solid #047fde;}
.ds-tab li.active a .tit { color: #047fde;}
.ds-tab li.active a .tit::after { display: block;}
.ds-tab li.active .info { display:block; padding-bottom: 35px; padding-left: 30px;}
.ds-tab li:last-child.active { border-bottom: 1px solid #047fde;}
.ds-big { margin-bottom: 20px; border-radius: 24px; overflow: hidden;}
.ds-map { border-radius: 24px; overflow: hidden; height: 420px; margin-bottom: 45px; }
.ds-map iframe { width: 100%; height: 420px;}
.ds .right .ds-wrap { padding-bottom: 100px; border-bottom: 1px solid #ddd;}
.ds .right .ds-wrap:last-child { padding-bottom: 0; border: none; }
.ds-tit { font-size: 24px; font-weight: 700; letter-spacing: -.02em; line-height: 1.4em; color: #2c2c2c; margin: 22px 0 45px; }
.ds-wrap h2 { font-size: 28px; line-height: 1.4em; color: #2c2c2c; letter-spacing: -.02em; font-weight: 600; margin-bottom: 16px; }
.ds-wrap p { font-size: 18px; line-height: 1.5em; margin-bottom: 35px; }
.ds-span { display: flex; align-items: center; gap: 50px; flex-wrap: wrap;}
.ds-span span { display: inline-flex; font-size: 24px; font-weight: 600; line-height: 1.4em; color: #2c2c2c; align-items: center; gap: 5px; }
.ds-span span strong { display: inline-block; margin-right: 10px; background: #047fde; color: #fff; line-height: 1em; border-radius: 18px; padding: 11px 15px 9px; line-height: 1em; font-size: 16px; font-weight: 400; }
.ds-partner { display: flex; flex-wrap: wrap; gap: 10px;}
.ds-partner li { width: calc(100%/4 - 8px); }
.ds-partner li .thumb {position:relative; padding-bottom:55%; overflow:hidden; border-radius: 16px; }
.ds-partner li .thumb img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; 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;}
.ds-partner li .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08); border-radius: 16px; }
.ds-list { display: flex; flex-wrap: wrap; gap: 10px; }
.ds-list li { width: calc(100%/4 - 8px); display: flex; align-items: center; justify-content: center; text-align: center; border-radius: 16px; background: #f4f4f4; line-height: 1.5em; font-size: 18px; font-weight: 500; letter-spacing: -.02em; color: #2c2c2c; min-height: 120px;}

/* 주요 고객사 */
.pt-list { display: grid; grid-template-columns: repeat(6, 1fr); gap: 10px;}
.pt-list li { width: auto; }
.pt-list li.merged { grid-column: span 2; grid-row: span 2; border-radius: 16px; overflow: hidden;}
.pt-list li.merged2 { grid-column: span 2; grid-row: span 3; border-radius: 16px; overflow: hidden;}
.pt-list li .thumb {position:relative; padding-bottom:55%; overflow:hidden; border-radius: 16px; }
.pt-list li .thumb img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; 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;}
.pt-list li .thumb:after {content:""; position:absolute; top:0; left:0; right:0; bottom:0; border:1px solid rgba(0,0,0,.08); border-radius: 16px; }

/* 홍보센터 */
.pm-sch { margin-bottom: 60px; background: #f4f4f4; padding: 60px; border-radius: 24px; display: flex;}
.pm-sch .input { height: 60px; border: none; border-radius: 30px; padding: 0 40px; }
.pm-sch .cate .input { background: #fff url(/images/sub/pm-select-down.png) right 40px center no-repeat;}
.pm-sch-wrap { margin-left: 10px; flex: 1 1 auto; min-width: 0; width: 1%; display: flex; }
.pm-sch-wrap .input { flex: 1 1 auto; min-width: 0; width: 1%; margin-right: 10px; }
.pm-sch-wrap button { width: 180px; height: 60px; border-radius: 30px; color: #fff; display: flex; align-items: center; justify-content: center; background: #047fde; font-weight: 600;  border: none;}
.promotion-list ul {display:flex; flex-wrap:wrap; margin:0 -10px;}
.promotion-list ul li {width:25%; padding:0 10px; margin-bottom:75px; text-align:left;}
.promotion-list ul li.none {width:100%; padding:70px 0; margin:0; text-align:center; color:#767676;}
.promotion-list ul li a {display:block;}
.promotion-list ul li .thumb {position:relative; padding-bottom:100%; margin-bottom:25px; overflow:hidden; border-radius: 24px; }
.promotion-list ul li .thumb img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; 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;}
.promotion-list ul li .date {color:#a8a8a8; font-size:16px; line-height:1em; margin-bottom:15px; font-weight: 400; }
.promotion-list ul li .tit {color:#2c2c2c; font-size:20px; line-height:1em; font-weight: 600; color: #2c2c2c; overflow:hidden; text-overflow:ellipsis; word-break:break-all; white-space:normal; display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical;}

/* R&D 공통 */
.sub3-tab { display: flex; gap: 10px; margin-bottom: 120px; }
.sub3-tab li { flex: 1; border: 1px solid #ddd; border-radius: 16px; text-align: center;}
.sub3-tab li a { display: flex; align-items: center; justify-content: center; height: 86px; font-size: 24px; font-weight: 800; letter-spacing: -.02em; line-height: 1.4em; color: #ccc; }
.sub3-tab.fz li a { font-size: 20px; }
.sub3-tab li.active { background: #047fde; border: none; }
.sub3-tab li.active a { color: #fff; }
.sub3-txt { font-size: 18px; padding-left: 100px; margin-bottom: 110px; line-height: 1.666em;}
.sub3-box { margin-bottom: 100px; }
.sub3-box.mg { margin-bottom: 0; }
.sub3-tit { font-size: 38px; font-weight: 800; line-height: 1.4em; color: #2c2c2c; margin-bottom: 50px; }

/* R&D introduction */
.rnd-it-list { display: flex; gap: 99px; flex-wrap: wrap;}
.rnd-it-list li { flex: 1;}
.rnd-it-list li img { border-radius: 24px; }
.rnd-it-list li .tit { font-size: 28px; font-weight: 600; letter-spacing: -.02em; position: relative; color: #2c2c2c; line-height: 1.444em; margin-top: 35px; padding-left: 29px; }
.rnd-it-list li .tit::before { content: ""; position: absolute; left: 0; width: 12px; height: 12px; border-radius: 12px; background: #047fde; top: 11px;}
.rnd-it-list li:nth-of-type(even) { margin-top: 55px; }
.rnd-it-list li:nth-of-type(even) .tit { margin-top: 0; margin-bottom: 30px; }
.rnd-it-list.list2 li .tit { padding-left: 0; font-size: 24px;}
.rnd-it-list.list2 li .tit::before { position: relative; left: auto; display: block; margin-bottom: 25px; }
.rnd-it-list.list2 li:nth-of-type(even) .tit { margin-top: 35px; margin-bottom: 0;}

/* R&D Technology - cae */
.gray-fx { display: flex; gap: 20px; flex-wrap: wrap;}
.gray-fx>div { width: calc(100%/2 - 10px); background: #f4f4f4; border-radius: 24px; padding: 45px 50px; }
.gray-fx>div.fx { display: flex; flex-direction: column; justify-content: space-between;}
.gray-fx>div .sub3-tit { margin-bottom: 32px;}
.gray-fx>div h3 { margin-bottom: 50px; }
.gray-fx>div h3 strong { line-height: 1em; font-size: 20px; font-weight: 800; color: #047fde; background: #fff; border-radius: 24px; padding: 15px 20px; display: inline-block; margin-right: 20px; }
.gray-fx>div h3 span { display: inline-block; font-size: 16px; font-weight: 400; color: #2c2c2c; line-height: 1em; }
.cae-list { display: grid; grid-template-columns: repeat(2, 1fr); gap: 40px 6px;}
.cae-list li { width: auto; text-align: center;}
.cae-list li img { border-radius: 16px; }
.cae-list li .tit { font-size: 20px; font-weight: 500; color: #2c2c2c; line-height: 1em; margin-top: 18px; }
.cae-list li.merged { grid-column: span 2; }
.cae-list li.merged img { border-radius: 0;}
.cae-list li.merged .imgbox { text-align: center; border-radius: 16px; background: #fff;}
.cae-process { display: flex; flex-wrap: wrap; justify-content: space-between;}
.cae-process li { text-align: center; position: relative;}
.cae-process li::after { content: ""; position: absolute; right: -45px; top: 80px; width: 18px; height: 17px; background: url(../images/sub/sub3-2-right.png) center no-repeat; background-size: contain;}
.cae-process li .circle { width: 175px; height: 175px; border: 1px solid #047fde; color: #047fde; display: flex; align-items: center; justify-content: center; margin: 0 auto 24px; border-radius: 100%; font-size: 18px; font-weight: 600; line-height: 1.5em;}
.cae-process li:last-child::after { display: none;}
.cae-process li:last-child .circle { background: #047fde; color: #fff;}
.cae-process.af li::after { right: -75px; }
.cae-process.af .txt strong { font-weight: 600; line-height: 2em; display: block;}
.cae-process.af .num { position: absolute; left: 0; right: 0; margin: auto; top: -24px; width: 48px; height: 48px; border-radius: 100%; display: flex; align-items: center; justify-content: center; background: #047fde; color: #fff;  font-size: 16px; font-weight: 700; line-height: 1em; letter-spacing: -.02em;}
.cae-process.af li:last-child .num { background: #fff; color: #047fde; border: 1px solid #047fde;}
.cae-process.mg { margin-top: 70px; }

/* R&D Technology - mold */
.mold-tit { font-size: 48px; font-weight: 800; color: #047fde; line-height: 1.4em; margin-bottom: 60px; }
.mold-txt { font-size: 22px; line-height: 1.666em; font-weight: 400; color: #2c2c2c;}
.mold-txt.mg { margin-bottom: 25px;}
.mold-list { display: flex; gap: 50px 21px; flex-wrap: wrap;}
.mold-list li { width: calc(100%/3 - 14px);}
.mold-list.list1 li { background: #f4f4f4; border-radius: 24px; padding: 42px 50px; }
.mold-list.list1 li .txt { font-size: 20px; line-height: 1.7em; color: #2c2c2c; margin-bottom: 60px; }
.mold-list.list1 li .iconbox {text-align: right; }
.mold-list.list2 li .imgbox { border: 1px solid #ddd; border-radius: 24px; overflow: hidden;}
.mold-list.list2 li .txtbox { position: relative; text-align: center; }
.mold-list.list2 li .txtbox .num { width: 32px; height: 32px; border-radius: 32px; line-height: 1em; background: #047fde; color: #fff; font-size: 16px; font-weight: 800; position: absolute; left: 0; right: 0; margin: auto; top: -16px; display: flex; align-items: center; justify-content: center;}
.mold-list.list2 li .txtbox .tit { font-size: 24px; font-weight: 600; line-height: 1.3em; color: #2c2c2c; padding-top: 35px;}
.mold-list.list3 li { border-radius: 24px; overflow: hidden;}
.mold-list.list3 li.bd { border: 1px solid #ddd;}
.mold-wrap { padding-bottom: 70px; border-top: 1px solid #2c2c2c; padding-top: 22px; }
.mold-wrap:last-child { padding-bottom: 0;}
.mold-wrap h4 { font-size: 24px; font-weight: 700; line-height: 1.3em; color: #2c2c2c; margin-bottom: 45px; }

/* R&D Technology - Lightweight */
.lw { display: flex; justify-content: space-between; align-items: flex-start;}
.lw .imgbox { text-align: center; }
.lw .imgbox img { border-radius: 24px; }
.lw .txtbox { display: flex; justify-content: center; align-items: center; gap: 30px; padding-top: 86px; }
.lw .txtbox .circle { display: flex; align-items: center; justify-content: center; background: #047fde; width: 120px; height: 120px; border-radius: 100%; text-align: center; color: #fff; }
.lw .txtbox .circle p { line-height: 1.2em; font-weight: 600; margin-bottom: 7px; }
.lw .txtbox .circle strong { display: block; font-size: 24px; font-weight: 800; line-height: 1.2em; }
.lw .txtbox .circle2 { width: 80px; height: 80px; border-radius: 100%; background: #b8daf4;}
.lw .txtbox .circle3 { width: 60px; height: 60px; border-radius: 100%; background: #d5e8f7;}
.lw .imgbox .tit { font-size: 24px; font-weight: 600; line-height: 1.2em; color: #2c2c2c; margin-top: 27px; }

/* R&D Technology - Electronics */
.et-list { margin-bottom: 45px; }
.et-list>li { position: relative; font-size: 18px; margin-bottom: 10px; padding-left: 11px; line-height: 1.5em; }
.et-list>li::before { content: ""; position: absolute; left: 0; width: 6px; height: 2px; background: #505050; top: 13px; }
.et-list>li:last-child { margin-bottom: 0; }
.et-listsub { margin-top: 10px; }
.et-listsub li { position: relative; margin-bottom: 10px; padding-left: 10px; line-height: 1.5em; font-size: 16px; color: #878787;}
.et-listsub li::before { content: ""; position: absolute; left: 0; width: 5px; height: 2px; background: #878787; top: 10px; }
.et-imgbox { border-radius: 16px; overflow: hidden; background: #fff;}

:root { --slider-active-width: 490px; }
.owl-carousel .owl-stage {display:flex; align-items:center;}
.owl-carousel .owl-stage:after {display:none;}
.owl-carousel .owl-item {flex-shrink:0;}

.center-slider {position:relative; overflow:hidden;}
.center-slider .item {width:var(--slider-active-width); }
.center-slider .owl-item .item .imgbox {transform: scale(.8); transition:.6s ease; margin:0; border-radius: 24px; overflow: hidden;}
.center-slider .owl-item .item .txtbox {position: relative; top: -26px;}
.center-slider .owl-item.active.center .item .imgbox {transform:scale(1);}
.center-slider .owl-item .item .tit { font-size: 20px; line-height: 1.3em; color: #2c2c2c; text-align: center; font-weight: 600;}
.center-slider .owl-item .item .txt { font-size: 15px; font-weight: 400; letter-spacing: -.02em; line-height: 1.2em; margin-top: 7px; text-align: center;}
.center-slider .owl-item.active.center .item .txtbox { margin-top: 18px; top: 0;}
.center-slider .owl-item.active.center .item .txtbox .tit { font-size: 24px; }
.center-slider .owl-item.active.center .item .txtbox .txt { font-size: 16px; }
.owl-carousel .owl-nav { display: flex; align-items: center; gap: 10px; justify-content: center; margin-top: 70px; }
.center-slider .owl-nav button {position:relative; width:60px; height:60px; border-radius: 100%; background-size: 11px; border: 1px solid #ddd !important;}
.center-slider .owl-prev { background-image: url(../images/sub/sub3-3-left.png) !important; background-repeat: no-repeat !important; background-position: center !important; transition: .2s;}
.center-slider .owl-prev:hover { background-image: url(../images/sub/sub3-3-left-w.png) !important; background-color: #047fde !important; border: none !important;}
.center-slider .owl-prev span { display: none;}
.center-slider .owl-next { background-image: url(../images/sub/sub3-3-right.png) !important; background-repeat: no-repeat !important; background-position: center !important; transition: .2s;}
.center-slider .owl-next span { display: none;}
.center-slider .owl-next:hover { background-image: url(../images/sub/sub3-3-right-w.png) !important; background-color: #047fde !important; border: none !important;}
.global-map img { width: 100%; }

/* 비전 및 가치 수정 */
.esg-pd { padding: 100px 0;}
.esg-pd.pb { padding-bottom: 100px; padding-top: 0; }
.esg-pd.pt { padding-top: 100px; padding-bottom: 0; }
.esg-pd.pt160 { padding-top: 160px; }
.esg-pd.tc { text-align: center; }
.esg-pd.gray { background: #f8f8f8; }
.vs-subtit { display: inline-block; background: #047fde; font-size: 24px; color: #fff; font-weight: 800; letter-spacing: -.02em; padding: 15px 30px; line-height: 1em; border-radius: 30px; }
.vs-tit { font-weight: 800; background: linear-gradient(to left, #63b8f8, #2c2c2c 90%); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; margin: 25px 0;}
.vs-tit2 { font-size: 28px; font-weight: 800; letter-spacing: -.02em; line-height: 1.2em; color: #ccc; margin-bottom: 90px; }
.vs-tit2 span { color: #2c2c2c; }
.vs-list { display: flex; justify-content: center; margin-bottom: 135px; }
.vs-list li { width: 280px; height: 280px; border-radius: 100%; border: 1px solid #ddd; display: flex; align-items: center; justify-content: center; line-height: 1em; background: rgba(255,255,255,0.6); font-size: 32px; font-weight: 700; letter-spacing: -.02em; color: #047fde; position: relative;}
.vs-list li:nth-child(2) { margin-left: -30px;}
.vs-list li:last-child { margin-left: -30px;}
.vs-background { position: absolute; left: 0; top: 52%; z-index: -1; right: 0; margin: auto; transform: translateY(-50%);}
.vs-tit3 { font-size: 32px; font-weight: 800; letter-spacing: -.02em; line-height: 1.2em; color: #2c2c2c; }
.vs-tit3 span { color: #047fde; }
.vs-txt { font-size: 18px; margin-top: 35px; line-height: 1.666em; }
.vs-tit6 { margin-top: 35px; font-size: 24px; color: #2c2c2c; font-weight: 700; letter-spacing: -.02em; line-height: 1.556em; }
.vs-tit6 span { color: #047fde; }
.vs-list2 { display: flex; flex-wrap: wrap; gap: 20px; }
.vs-list2 li { width: calc(100%/4 - 15px); background: #fff; text-align: center; padding: 55px 10px; border-radius: 24px; }
.vs-list2 li .tit { line-height: 1.2em; font-size: 28px; font-weight: 800; letter-spacing: -.02em; color: #2c2c2c; margin: 40px 0 25px; }
.vs-list2 li .txt { font-size: 18px; line-height: 1.6666em; }
.vs-pp { display: flex; margin-bottom: 100px; flex-wrap: wrap; }
.vs-pp .left { width: 66%; }
.vs-pp .left h4 { font-size: 22px; font-weight: 700; line-height: 1.2em; letter-spacing: -.02em; color: #047fde; margin-bottom: 30px; }
.vs-pp .left p { font-size: 18px; line-height: 1.6666em; }
.vs-pp .right { width: 34%; border-radius: 24px; overflow: hidden;}
.vs-clr { display: flex; flex-wrap: wrap; gap: 20px; }
.vs-clr li { width: calc(100%/2 - 10px); background: #eff5f9; display: flex; align-items: center; padding: 20px; border-radius: 24px; }
.vs-clr li .white { background: #fff; border-radius: 16px; text-align: center; padding: 35px 0; width: 160px; height: 175px; display: flex; align-items: center; justify-content: center ;}
.vs-clr li .white .num { font-size: 16px; line-height: 1em; font-weight: 800; letter-spacing: -.02em; color: #a8a8a8; margin-bottom: 27px; }
.vs-clr li .white .tit { line-height: 1.5em; font-size: 22px; font-weight: 800; letter-spacing: -.02em; color: #047fde; }
.vs-clr li .txt { flex: 1 1 auto; min-width: 0; width: 1%; font-size: 18px; line-height: 1.666em; padding-left: 40px; }
.vs-clr li .txt span { font-weight: 700; color: #2c2c2c; }
.vs-clr.w100 { margin: 60px 0; }
.vs-clr.w100 li{ width: 100%; }
.vs-clr.w100 .txt { font-size: 24px; }
.vs-clr.auto li .white { height: auto;}
.vs-clr.auto li .txt .numbering { display: flex; flex-wrap: wrap; gap: 10px 50px;}
.vs-clr.auto li .txt .numbering .group { display: inline-flex; align-items: center;}
.vs-clr.auto li .txt .numbering .group .num { width: 32px; height: 32px; border-radius: 32px; background: #047fde; display: flex; align-items: center; justify-content: center; line-height: 1em; color: #fff; font-size: 14px; font-weight: 700; letter-spacing: -.02em; }
.vs-clr.auto li .txt .numbering .group .title { flex: 1 1 auto; min-width: 0; width: 1%; padding-left: 10px; font-size: 24px; font-weight: 700; letter-spacing: -.02em; line-height: 1.2em; color: #2c2c2c; }
.vs-clr.auto li.al { align-items: flex-start;}
.vs-clr.auto li.al .white { height: 100%; }
.vs-clr.auto li.al .txt { padding: 50px 0; padding-left: 40px; }
.vs-clr.auto li .txt .col { margin-bottom: 60px; }
.vs-clr.auto li .txt .col:last-child { margin-bottom: 0; }
.vs-clr.auto li .txt .col .title { font-size: 24px; font-weight: 700; letter-spacing: -.02em; color: #2c2c2c; line-height: 1.2em; padding-bottom: 30px; margin-bottom: 25px; border-bottom: 1px solid #ddd;}
.vs-clr.auto li .txt .col .fx { display: flex; flex-wrap: wrap; gap: 0 10px;}
.vs-clr.auto li .txt .col .fx p { display: inline-block; position: relative; width: calc(100%/2 - 5px); padding-left: 28px; font-size: 18px; }
.vs-clr.auto li .txt .col .fx p::before { content: ""; position: absolute; left: 0; width: 16px; height: 16px; background: url(../images/sub/esg-chk.png) center no-repeat; background-size: contain; top: 11px; } 
.vs-clr.auto li .txt .flex { display: flex; flex-wrap: wrap; gap: 60px 30px; margin-bottom: 100px; }
.vs-clr.auto li .txt .flex .col { margin-bottom: 0; width: calc(100%/2 - 15px); }
.vs-clr.auto li .txt .flex .col .title strong { font-weight: 700; padding-left: 15px; color: #047fde; }
.vs-clr.auto li .txt .circle { display: flex; justify-content: space-between;}
.vs-clr.auto li .txt .circle .in { width: 180px; height: 180px; border-radius: 100%; background: #fff; display: flex; align-items: center; justify-content: center; line-height: 1em; border: 1px solid #047fde; position: relative; font-size: 24px; font-weight: 800; color: #2c2c2c; letter-spacing: -.02em; }
.vs-clr.auto li .txt .circle .in::after { content: ""; position: absolute; right: -45px; top: 0; bottom: 0; margin: auto; width: 24px; height: 24px; background: url(../images/sub/esg-plus.png) center no-repeat; background-size: contain; }
.vs-clr.auto li .txt .circle .in.total { background: #047fde; color: #fff; }
.vs-clr.auto li .txt .circle .in.total::after { display: none; }

/* ESG 정책 */
.esg1 { display: flex; align-items: center; margin-bottom: 100px; }
.esg1 .img { width: 36%; padding: 70px 100px; background: #f7f7f7; border-radius: 24px; }
.esg1 .img .thumb {position:relative; padding-bottom:130%; overflow:hidden; border-radius: 24px; box-shadow: 28px 28px 32px rgba(0,0,0,0.1);}
.esg1 .img .thumb img {position:absolute; top:50%; left:0; transition:.4s ease-in-out; 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;}
.esg1 .info { width: 64%; padding-left: 100px; }
.esg1 .info .tit { font-size: 38px; font-weight: 800; letter-spacing: -.02em; line-height: 1.3em; color: #2c2c2c; letter-spacing: -.02em; }
.esg1 .info .txt { line-height: 1.666em; font-size: 18px; margin: 35px 0 80px;}
.esg-btns { display: flex; gap: 10px; }
.esg-download { display: flex; align-items: center; width: 160px; height: 48px; border-radius: 24px; border: 1px solid #2c2c2c; line-height: 1em; font-size: 16px; font-weight: 500; letter-spacing: -.02em; color: #2c2c2c; position: relative; padding-left: 25px; }
.esg-download.wt { width: auto; padding-right: 80px; border: 1px solid #ddd; display: inline-flex; }
.esg-download::after { content: ""; position: absolute; right: 20px; top: 0; bottom: 0; margin: auto; width: 22px; height: 22px; background: url(../images/sub/esg-download.png) center no-repeat; background-size: contain;}
.esg-preview { display: flex; align-items: center; width: 160px; height: 48px; border-radius: 24px; border: 1px solid #2c2c2c; line-height: 1em; font-size: 16px; font-weight: 500; letter-spacing: -.02em; color: #2c2c2c; position: relative; padding-left: 25px; }
.esg-preview::after { content: ""; position: absolute; right: 20px; top: 0; bottom: 0; margin: auto; width: 22px; height: 22px; background: url(../images/sub/esg-preview.png) center no-repeat; background-size: contain;}

/* ESG 공통 */
.esg-tit { font-size: 38px; font-weight: 800; letter-spacing: -.02em; line-height: 1.3em; color: #2c2c2c; margin-bottom: 30px; }
.esg-tit.fx { display: flex; align-items: center; gap: 30px; flex-wrap: wrap;}
.esg-txt { font-size: 18px; line-height: 1.666em; margin-bottom: 28px; }
.esg-txt:last-child { margin-bottom: 0; }
.esg-fx { display: flex; }
.esg-fx .left { width: 29%; }
.esg-fx .right { width: 71%; }

/* Environmental */
.ev-list { border-top: 2px solid #2c2c2c;}
.ev-list li { border-bottom: 1px solid #ddd; padding: 35px 40px; width: 100%; }
.ev-list li .tit { position: relative; line-height: 1.7em; font-size: 20px; font-weight: 600; letter-spacing: -.02em; color: #2c2c2c; padding-left: 42px; }
.ev-list li .tit::before { content: ""; position: absolute; left: 0; width: 19px; height: 22px; background: url(../images/sub/esg-shield.png) center no-repeat; background-size: contain; top: 5px; }
.ev-list2 li { border: 1px solid #ddd; margin-bottom: 10px; border-radius: 24px; padding: 35px 40px 28px; }
.ev-list2 li:last-child { margin-bottom: 0; }
.ev-list2 li .clr { line-height: 1em; font-size: 20px; font-weight: 800; letter-spacing: -.02em; color: #047fde; margin-bottom: 15px; }
.ev-list2 li .tit { font-size: 20px; line-height: 1.7em; letter-spacing: -.02em; color: #2c2c2c; font-weight: 500; }
.esg-organ { border-radius: 24px; background: #f4f4f4; text-align: center; padding: 90px 15px; margin-top: 60px; }
.esg-group { margin-top: 60px; border-top: 1px solid #2c2c2c;}
.esg-group h3 { font-size: 24px; font-weight: 700; line-height: 1.2em; color: #2c2c2c; letter-spacing: -.02em; margin: 25px 0 40px;}
.esg-gray-txt { text-align: right; display: block; margin-top: 24px; font-size: 16px; letter-spacing: -.02em; line-height: 1.3em; color: #a8a8a8; }
.esg-tbl-wrap { overflow: auto;}
.esg-tbl { width: 100%; border-collapse: collapse; border-top: 2px solid #047fde; position: relative;}
.esg-tbl.rl::after { content: ""; position: absolute; left: 12%; width: 22%; height: 100%; top: 0; border: 2px solid #047fde; border-top: none; box-shadow: 0px 0px 48px rgba(0,0,0,0.1);}
.esg-tbl tr { border-bottom: 1px solid #ddd;}
.esg-tbl tr.bd { border-top: 1px solid #2c2c2c; border-bottom: 1px solid #2c2c2c;}
.esg-tbl tr th { font-size: 18px; font-weight: 600; letter-spacing: -.02em; color: #2c2c2c; padding: 20px 10px; line-height: 1.2em; background: #f9fcfe; }
.esg-tbl tr th.clr { color: #047fde;}
.esg-tbl tr td { font-size: 18px; line-height: 1.5em; letter-spacing: -.02em; padding: 18px 10px; text-align: center;}
.esg-tbl tr td.bg { background: #f9fcfe; font-weight: 600; color: #2c2c2c; }
.esg-tbl tr td.clr { color: #047fde;}
.esg-tbl tr th.tl { text-align: left; color: #a3b9c9; padding-left: 20px; }
.esg-tbl.bd tr th { border-right: 1px solid #ddd;}
.esg-tbl.bd tr th:last-child { border: none; }
.esg-tbl.bd tr td { border-right: 1px solid #ddd;}
.esg-tbl.bd tr td:last-child { border-right: none; }
.esg-tbl.bd tr td { text-align: left; padding-left: 20px; }
.esg-tbl.bd tr td.bg { text-align: center; padding-left: 0; }
.esg-tbl.bd tr td.tl { font-weight: 500; color: #2c2c2c;}
.esg-tbl.bd tr td p { margin-bottom: 8px; }
.esg-tbl.bd tr td p.bf { position: relative; padding-left: 10px;}
.esg-tbl.bd tr td p.bf::before { content: ""; position: absolute; left: 0; width: 5px; height: 2px; background: #505050; top: 12px; }
.esg-tbl.bd tr td p:last-child { margin-bottom: 0; }
.esg-group-img { text-align: center; margin-bottom: 60px; }
.esg-group-img img { border-radius: 24px; border: 1px solid #ddd;}
.esg-group-img .tit { font-size: 20px; font-weight: 800; letter-spacing: -.02em; line-height: 1.2em; color: #2c2c2c; margin-top: 25px; }
.ev-circle { border-top: 2px solid #2c2c2c;}
.ev-circle li { display: flex; align-items: center; padding: 45px 40px; border-bottom: 1px solid #ddd;}
.ev-circle li .circle { width: 140px; height: 140px; border-radius: 100%; background: #f4f4f4; align-items: center; justify-content: center; display: flex; }
.ev-circle li .txtbox { padding-left: 70px; flex: 1 1 auto; min-width: 0; width: 1%;}
.ev-circle li .txtbox .tit { font-size: 24px; font-weight: 800; letter-spacing: -.02em; line-height: 1.2em; color: #047fde; margin-bottom: 30px; }
.ev-circle li .txtbox .txt { line-height: 1.666em; margin-bottom: 28px; }
.ev-circle li .txtbox .txt strong { font-size: 18px; font-weight: 700; color: #2c2c2c; }
.ev-circle li .txtbox .txt:last-child { margin-bottom: 0; }
.ev-img-list { display: flex; flex-wrap: wrap; gap: 70px 20px; }
.ev-img-list li { width: calc(100%/2 - 10px); text-align: center; }
.ev-img-list li img { border-radius: 24px; border: 1px solid #ddd;}
.ev-img-list li .tit { font-size: 24px; font-weight: 800; color: #2c2c2c; letter-spacing: -.02em; line-height: 1.2em; margin-top: 26px; }
.ev-fx { display: flex; align-items: center;}
.ev-fx .left { width: 34%; border-radius: 24px; overflow: hidden;}
.ev-fx .right { width: 66%; padding-left: 70px; }
.ev-fx .right h3 { font-size: 24px; font-weight: 800; letter-spacing: -.02em; line-height: 1.25em; color: #047fde; }
.ev-fx .right p { font-size: 18px; line-height: 1.666em; margin-top: 28px; }
.esg-process { display: flex; gap: 21px; flex-wrap: wrap;}
.esg-process li { width: calc(100%/3 - 14px); border-top: 2px solid #dfdfdf;}
.esg-process li .tit { font-size: 28px; font-weight: 700; letter-spacing: -.02em; line-height: 1.2em; color: #2c2c2c; padding: 30px 0 40px; position: relative; }
.esg-process li .tit::before { content: ""; position: absolute; left: 0; width: 60px; height: 2px; top: -2px; background: #2c2c2c; }
.esg-process li .tit span { font-size: 16px; font-weight: 600; color: #047fde; letter-spacing: -.02em; display: inline-block; padding-left: 15px; }
.esg-process li .txt { font-size: 20px; font-weight: 500; line-height: 1.7em; letter-spacing: -.02em; color: #2c2c2c; }
.esg-swp { margin-top: 60px; position: relative; }
.esg-swiper { width: 100%; position: relative; overflow: hidden;}
.esg-swiper-slide { width: 100%; position: relative; text-align: center; }
.esg-swiper-slide img { border-radius: 24px; }
.esg-swiper-slide .tit { font-size: 24px; font-weight: 800; letter-spacing: -.02em; line-height: 1.2em; color: #2c2c2c; margin-top: 25px; }
.esg-prev::after, .esg-next::after { display: none; }
.esg-prev, .esg-next { width: 60px; height: 60px; border-radius: 100%; border: 1px solid #ddd; transition: .2s; background-repeat: no-repeat; background-position: center; background-size: 11px; top: 45%;}
.esg-prev { left: -100px; background-image: url(../images/sub/esg-leftbt.png);}
.esg-prev:hover { background-color: #047fde; border-color: #047fde; background-image: url(../images/sub/esg-leftbt-w.png);}
.esg-next { right: -100px; background-image: url(../images/sub/esg-rightbt.png);}
.esg-next:hover { background-color: #047fde; border-color: #047fde; background-image: url(../images/sub/esg-rightbt-w.png);}
.ev-list3 { display: flex; flex-wrap: wrap; gap: 21px;}
.ev-list3 li { width: calc(100%/3 - 14px); background: #f8f8f8; border-radius: 24px; padding: 43px 40px;}
.ev-list3 li .tit { font-size: 24px; font-weight: 800; letter-spacing: -.02em; line-height: 1.2em; color: #047fde; padding-bottom: 30px; border-bottom: 1px dashed #ddd; margin-bottom: 30px; }
.ev-list3 li .txt p { position: relative; font-size: 17px; margin-bottom: 12px; padding-left: 10px; }
.ev-list3 li .txt p:last-child { margin-bottom: 0; }
.ev-list3 li .txt p::before { content: ""; position: absolute; left: 0; width: 4px; height: 4px; border-radius: 5px; background: #505050; top: 11px; }
.ev-txtbox { display: flex; align-items: center; background: #f8f8f8; padding: 65px 0; border-radius: 24px; }
.ev-txtbox .tit { font-size: 24px; font-weight: 800; letter-spacing: -.02em; color: #047fde; line-height: 1.2em; width: 36%; text-align: center; }
.ev-txtbox .txt { width: 64%; padding-left: 50px; border-left: 2px solid #ddd;}
.ev-txtbox .txt p { font-size: 17px; margin-bottom: 14px; }
.ev-txtbox .txt p:last-child { margin-bottom: 0; }

/* 윤리경영 */
.et-fx { display: flex; gap: 20px; }
.et-fx .left { width: 22%; border-radius: 24px; border: 1px solid #ddd; overflow: hidden;}
.et-fx .right { width: 78%; border-radius: 24px; background: #f8f8f8; padding: 50px;}
.et-fx .right .tit { font-size: 24px; font-weight: 800; color: #047fde; letter-spacing: -.02em; padding-bottom: 30px; border-bottom: 1px dashed #ddd; margin-bottom: 30px; }
.et-fx .right .txt p { margin-bottom: 25px; font-size: 20px; font-weight: 500; line-height: 1.7em; letter-spacing: -.02em; color: #2c2c2c; }
.et-fx .right .txt p:last-child { margin-bottom: 0; }
.et-list { background: #f8f8f8; border-radius: 24px; padding: 20px 50px;}
.et-list li { border-bottom: 1px dashed #ddd; padding: 25px 0 35px; padding-left: 29px; font-size: 20px; font-weight: 500; line-height: 1.666em; letter-spacing: -.02em; color: #2c2c2c;}
.et-list li:last-child{ border: none; }
.et-list li::before { content: ""; position: absolute; left: 0; top: 33px; width: 16px; height: 16px; background: url(../images/sub/esg-chk.png) center no-repeat; background-size: contain; }
.et-list.bf li { padding-left: 0; }
.et-list.bf li::before { display: none;}
.et-list.bf li .tit { font-size: 20px; font-weight: 800; letter-spacing: -.02em; color: #047fde;  line-height: 1.2em; margin-bottom: 15px; }
.et-list.bf li .txt { font-size: 18px; color: #2c2c2c; }
.et-link { display: flex; gap: 20px; flex-wrap: wrap;}
.et-link>div { width: calc(100%/2 - 10px); border-radius: 24px; border: 1px solid #ddd; padding: 30px 50px; display: flex; align-items: center; justify-content: space-between;}
.et-link>div .tit { font-size: 20px; font-weight: 800; line-height: 1.2em; color: #047fde; letter-spacing: -.02em; }
.et-link>div a { display: flex; border: 1px solid #ddd; width: 168px; height: 64px; border-radius: 32px; align-items: center; padding-left: 33px; font-size: 16px; line-height: 1em; font-weight: 600; color: #2c2c2c; letter-spacing: -.02em; position: relative; background: #f8f8f8; }
.et-link>div a::after { content: ""; position: absolute; right: 25px; top: 0; bottom: 0; margin: auto; width: 22px; height: 22px; background: url(../images/sub/esg-download.png) center no-repeat; background-size: contain;}

/* 20251103 유지보수 (시험 및 측정장비) */
.test-fx { display: flex; align-items: flex-start; gap: 100px; }
.test-thumb { width: 76%; }
.test-thumb .big { width: 100%; position: relative; margin-bottom: 60px; border-radius: 24px; overflow: hidden;}
.test-thumb .big img { width: 100%; transition: opacity .3s ease-in-out; }
.test-thumb img { width: 100%; }
.test-thumb .small { display: flex; flex-wrap: wrap; gap: 24px; }
.test-thumb .small .col { width: calc(100%/3 - 16px); border-radius: 24px; overflow: hidden; position: relative; cursor: pointer;}
.test-thumb .small .col::after { content: ""; position: absolute; left: 0; right: 0; top: 0; bottom: 0; margin: auto; border: 2px solid #67dfd0; border-radius: 24px; transition: .3s; opacity: 0; }
.test-thumb .small .col.active::after { opacity: 1; }
.test-thumb .small .col:hover::after { opacity: 1; }
.test-list { width: 24%; }
.test-list ul { border-top: 2px solid #047fde; }
.test-list li { border-bottom: 1px solid #ddd; text-align: center; font-size: 18px; padding: 20px 5px; }
.test-list li.title { font-weight: 600; color: #2c2c2c; background: #f9fcfe; }
.test-swiper { width: 100%; position: relative; overflow: hidden; }
.test-swiper .item { display: block; position: relative; }
.test-btns { position: relative; display: flex; justify-content: center; align-items: center ; gap: 10px; }
.test-prev::after, .test-next::after { display: none; }
.test-prev, .test-next { position: relative; top: auto; margin-top: 0; width: 60px; height: 60px; border-radius: 100%; background-size: 11px; border: 1px solid #ddd; background-repeat: no-repeat; background-position: center; transition: .3s; background-color: #fff; margin-top: 120px; }
.test-prev { left: auto; background-image: url(../images/sub/sub3-3-left.png);}
.test-prev:hover { background-color: #047fde; border-color: #047fde; background-image: url(../images/sub/sub3-3-left-w.png);}
.test-next { left: auto; background-image: url(../images/sub/sub3-3-right.png); right: auto;}
.test-next:hover { background-color: #047fde; border-color: #047fde; background-image: url(../images/sub/sub3-3-right-w.png);}
