@charset "utf-8";

.sub-tab {padding:var(--space-8); width:fit-content; display:flex; justify-content:center; margin:0 auto var(--space-80);  border:1px solid #ddd; border-radius:500px; background:#fff; overflow:hidden;}
.sub-tab ul li { width:auto;}
.sub-tab ul li a { display:flex; align-items:center; justify-content:center; min-width:192px; height:clamp(40px, calc(48 / var(--inner) * 100vw), 48px); padding:0 12px; font-size:var(--font-size-16); font-weight:600; line-height:1.625em; letter-spacing:-0.03em; text-align:center; color:#bebebe; border-radius:80px;}
.sub-tab ul li.active a { background:#003578; color:#fff; }

.doc-cnt { padding:var(--space-100) 0; }
.doc-cnt.blue-bg { background:#f7f9fb; }

.s-heading {text-align:center; margin-bottom:var(--space-80); }

.s-cate { margin:0 0 var(--space-15); font-size:var(--font-size-16); font-weight:600; line-height:1.625em; letter-spacing:-0.03em; color:#bebebe; }

.s-tit {font-size:var(--font-size-40); font-weight:600; line-height:1.3em; letter-spacing:-0.03em; color:#242424; }
.s-tit strong { font-weight:700; }

.overview-intro .visual {margin-bottom:var(--space-80); text-align:center; display:flex; flex-direction:column; align-items:center; justify-content:center; background:url("/images/sub/overview.jpg") no-repeat center / cover;  height:clamp(220px, calc(400 / var(--inner) * 100vw), 400px); border-radius:800px; overflow:hidden; padding:0 20px;}
.overview-intro .visual .en { margin:0 0 var(--space-12); font-size:var(--font-size-16); font-weight:400; line-height:1.5em; letter-spacing:0.48em; color:rgba(255, 255, 255, 0.6); }
.overview-intro .visual .tit { margin:0 0 var(--space-25); font-size:var(--font-size-50); font-weight:800; line-height:1.2em; letter-spacing:-0.03em; color:#fff; }
.overview-intro .visual .txt {font-size:var(--font-size-18); font-weight:500; line-height:1.444em; letter-spacing:-0.02em; color:#fff; }
.overview-intro .content { display:flex;}
.overview-intro .content .s-heading {width:42.85%; text-align:left; padding:0 var(--space-50);}
.overview-intro .content .body { flex:1; min-width:0;}
.overview-intro .content .body .lead {margin-bottom:var(--space-25); font-size:var(--font-size-24); font-weight:600; line-height:1.5em; letter-spacing:-0.03em; color:#242424; }
.overview-intro .content .body .txt {font-size:var(--font-size-18); font-weight:400; line-height:1.667em; letter-spacing:-0.03em; color:#454545; }
.overview-intro .content .body .em { display:block; margin:0 0 var(--space-8); font-size:var(--font-size-20); font-weight:700; line-height:1.4em; letter-spacing:-0.03em; color:#003578; }

.strategy .cards { display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-30);}
.strategy .card { position:relative; flex:1; min-width:0; padding:var(--space-40); border-radius:24px; background:#fff; box-shadow:0 0 4px rgba(0, 0, 0, 0.16); }
.strategy .card:first-child { border-top:3px solid #003578; }
.strategy .card:last-child { border-top:3px solid var(--color-success); }
.strategy .card .cate { margin:0 0 var(--space-10); font-size:var(--font-size-14); font-weight:500; line-height:1.5em; letter-spacing:-0.03em; color:#bebebe; }
.strategy .card h4 { margin:0 0 var(--space-30); font-size:var(--font-size-28); font-weight:600; line-height:1.143em; letter-spacing:-0.03em; color:#242424; }
.strategy .card .txt { margin:0 0 var(--space-30); font-size:var(--font-size-16); font-weight:400; line-height:1.75em; letter-spacing:-0.03em; color:#454545; }
.strategy .card .tags ul { display:flex; flex-wrap:wrap; gap:var(--space-10);}
.strategy .card .tags li { padding:4px var(--space-10); border:1px solid rgba(0, 53, 120, 0.2); border-radius:60px; background:rgba(0, 53, 120, 0.04); font-size:var(--font-size-14); font-weight:500; line-height:1.571em; letter-spacing:-0.03em; color:#003578; }
.strategy .card:last-child .tags li { border-color:rgba(1, 147, 214, 0.2); background:rgba(1, 147, 214, 0.04); color:var(--color-success); }
.strategy .card .ico { position:absolute; right:var(--space-40); top:var(--space-40); width:clamp(34px, calc(64 / var(--inner) * 100vw), 64px); height:clamp(34px, calc(64 / var(--inner) * 100vw), 64px); border-radius:8px; }
.strategy .card .ico img {width:100%; height:100%; object-fit:contain;}

.overview .s-tit {color:#fff;}
.overview .items {display:grid; grid-template-columns:repeat(4, 1fr);}
.overview .items .item {flex:1; padding:var(--space-30) var(--space-20) var(--space-40); text-align:center; border-right:1px dashed rgba(255, 255, 255, 0.4); }
.overview .items .item:last-child { border-right:0; }
.overview .items .item .ico {margin:0 auto; width:clamp(44px, calc(88 / var(--inner) * 100vw), 88px); height:clamp(44px, calc(88 / var(--inner) * 100vw), 88px); }
.overview .items .item .ico img { width:100%; height:100%;}
.overview .items .item .num {margin:var(--space-20) 0 var(--space-12);  font-size:var(--font-size-40); font-weight:700; line-height:1.2em; letter-spacing:-0.03em; color:#fff; }
.overview .items .item .num .unit { font-size:var(--font-size-28); font-weight:700; line-height:1.4em; vertical-align:top; }
.overview .items .item .txt {font-size:var(--font-size-16); font-weight:400; line-height:1.625em; letter-spacing:-0.03em; color:#fff; }

.greeting { display:flex; align-items:center; gap:var(--space-100);}
.greeting .image { flex-shrink:0; width:clamp(280px, calc(560 / var(--inner) * 100vw), 560px); border-radius:clamp(20px, calc(40 / var(--inner) * 100vw), 40px); overflow:hidden; }
.greeting .image img { display:block; width:100%; height:100%; object-fit:cover; }
.greeting .lead {font-size:var(--font-size-32); font-weight:500; line-height:1.375em; letter-spacing:-0.03em; color:#242424; }
.greeting .lead strong { font-weight:700; color:#003578; }
.greeting .bar {margin:var(--space-25) 0; width:1px; height:clamp(20px, calc(60 / var(--inner) * 100vw), 60px); background:#ddd; }
.greeting .summary {margin-bottom:var(--space-25); font-size:var(--font-size-18); font-weight:500; line-height:1.667em; letter-spacing:-0.03em; color:var(--color-primary); }
.greeting .text {margin-bottom:var(--space-40);}
.greeting .text p {font-size:var(--font-size-18); font-weight:400; line-height:1.667em; letter-spacing:-0.03em; color:#454545; }
.greeting .sign { display:flex; align-items:center; gap:var(--space-12); }
.greeting .sign .name { margin:0; font-size:var(--font-size-20); font-weight:500; line-height:1.2em; letter-spacing:-0.03em; color:#242424; }
.greeting .sign .name strong { font-weight:600; }

.business-panels {display:flex; align-items:flex-start; gap:var(--space-30);}
.business-panels .content {flex:1; margin-bottom:20px;}
.business-panels .content .cate {margin-bottom:var(--space-12); font-weight:600; color:#BEBEBE;}
.business-panels .content .tit {margin-bottom:var(--space-30); font-weight:600; font-size:var(--font-size-32); line-height:1.25em; }
.business-panels .content .text {margin-bottom:var(--space-60); font-size:var(--font-size-18); font-weight:400; line-height:1.667em; letter-spacing:-0.03em; color:#454545; }
.business-panels .content .btn { display:inline-flex; align-items:center; justify-content:center; gap:var(--space-10); height:clamp(40px, calc(54 / var(--inner) * 100vw), 54px); padding:0 var(--space-20); border:1px solid #242424; border-radius:8px; font-size:var(--font-size-16); font-weight:500; line-height:1em; letter-spacing:-0.03em; color:#242424; box-sizing:border-box; }
.business-panels .content .btn svg { flex-shrink:0; display:block; width:11px; height:8px; }
.business-panels .content .btn:hover {background:var(--color-primary); color:#fff;}
.business-panels .content .btn:hover svg path {fill:#fff;}
.business-panels .image {overflow:hidden; flex-shrink:0; border-radius:40px; aspect-ratio:720/450; width:51.42%; }
.business-panels .image img { display:block; width:100%; height:100%; object-fit:cover; }

.business-gall .slider { position:relative; }
.business-gall .slider .items {margin:0 calc(var(--space-10) * -1);}
.business-gall .slider .item {padding:0 var(--space-10);}
.business-gall .slider .item .img {aspect-ratio:335/210; border-radius:24px; overflow:hidden;}
.business-gall .slider .item .img img {width:100%; height:100%;}
.business-gall .slick-arrow {width:28px; height:16px; font-size:0; line-height:0; border:0; position:absolute; top:39%; background-size:contain; background-repeat:no-repeat; background-position:50% 50%; background-color:transparent;}
.business-gall .slick-prev {left:calc(var(--space-60) * -1); background-image:url("/images/sub/business-prev.png");}
.business-gall .slick-next {right:calc(var(--space-60) * -1); background-image:url("/images/sub/business-next.png");}
.business-gall .slick-dots {margin-top:var(--space-40); line-height:0; text-align:center;}
.business-gall .slick-dots li {display:inline-block; margin:0 var(--space-5);}
.business-gall .slick-dots li button {border:0; font-size:0; line-height:0; background-color:#DFE6EE; border-radius:60px; width:clamp(10px, calc(12 / var(--inner) * 100vw), 12px); height:clamp(10px, calc(12 / var(--inner) * 100vw), 12px);}
.business-gall .slick-dots li.slick-active button {width:24px; background-color:#003578;}

.history-banner {margin-bottom:var(--space-100); background:url('/images/sub/history-banner.jpg') no-repeat center / cover; display:flex; flex-direction:column; align-items:center; justify-content:center; margin-bottom:var(--space-100); height:clamp(220px, calc(366 / var(--inner) * 100vw), 366px); padding:0 var(--space-30); border-radius:800px; overflow:hidden; text-align:center; color:#fff; }
.history-banner .en {margin-bottom:var(--space-12); font-size:var(--font-size-16); font-weight:500; line-height:1.5em; letter-spacing:-0.03em; color:rgba(255, 255, 255, 0.8); }
.history-banner h3 {font-size:var(--font-size-40); font-weight:600; line-height:1.2em; letter-spacing:-0.03em; color:#fff; }
.history-banner .bar {margin:var(--space-20) 0; display:block; width:40px; height:2px; background:#fff; }
.history-banner .txt {font-size:var(--font-size-16); font-weight:400; line-height:1.5em; letter-spacing:-0.03em; color:#fff; }

.history-content { position:relative; }
.history-content::before { content:""; position:absolute; left:42.85%; top:0.8em; bottom:2.8em; width:1px; background:#ddd; }
.history-content .group { display:flex; padding-bottom:var(--space-80); }
.history-content .group:last-child { padding-bottom:0; }
.history-content .title { width:42.85%; font-size:var(--font-size-48); font-weight:600; line-height:1.25em; letter-spacing:-0.03em; color:#003578; }
.history-content .content { flex:1; min-width:0; }
.history-content .content .item { display:flex; align-items:flex-start; gap:var(--space-35); padding-bottom:var(--space-60); }
.history-content .content .item:last-child { padding-bottom:0; }
.history-content .content .item .year { flex-shrink:0; display:flex; align-items:center; gap:var(--space-15); width:88px; font-size:var(--font-size-24); font-weight:600; line-height:1.25em; letter-spacing:-0.03em; color:#242424; }
.history-content .content .item .year::before {margin-left:-6px; content:""; flex-shrink:0; width:13px; height:13px; background:url("/images/sub/history-dot.svg") no-repeat center / contain; }
.history-content .content .item .cnt { flex:1; min-width:0; padding-top:2px; }
.history-content .content .item .cnt dl { margin:0 0 var(--space-30); }
.history-content .content .item .cnt dl:last-child { margin-bottom:0; }
.history-content .content .item .cnt dt {font-size:var(--font-size-18); font-weight:500; line-height:1.4em; letter-spacing:-0.03em; color:#242424; }
.history-content .content .item .cnt dd { margin:var(--space-8) 0 0; font-size:var(--font-size-16); font-weight:400; line-height:1.5em; letter-spacing:-0.02em; color:#454545;}

.clients-cnt { display:flex; }
.clients-cnt .heading { flex-shrink:0; width:clamp(200px, calc(300 / var(--inner) * 100vw), 300px); }
.clients-cnt .heading .cate { margin:0 0 var(--space-15); color:#003578; font-weight:600;}
.clients-cnt .heading .tit {font-size:var(--font-size-32); font-weight:600; line-height:1.25em; letter-spacing:-0.03em; color:#242424; }
.clients-cnt .table { flex:1; min-width:0; border:1px solid #ddd;}
.clients-cnt .table table { width:100%; border-collapse:collapse; border-spacing:0;}
.clients-cnt .table thead th {padding:var(--space-15); background:#0c2340; border-right:1px solid rgba(255, 255, 255, 0.2); font-size:var(--font-size-18); font-weight:600; line-height:1.444em; letter-spacing:-0.03em; text-align:center; color:#fff; }
.clients-cnt .table thead th:last-child { border-right:0; }
.clients-cnt .table tbody td {border-right:1px solid #ddd; padding:var(--space-20); border-top:1px solid #ddd; background:#fff; font-size:var(--font-size-16); font-weight:400; line-height:1.5em; letter-spacing:-0.03em; text-align:center; vertical-align:middle; color:#454545; }
.clients-cnt .table tbody td.name { font-weight:500; color:#242424; }
.clients-cnt .table tbody td:last-child { border-right:0; }
.clients-cnt .logos { flex:1; min-width:0;}
.clients-cnt .logos .group:not(:last-child) {margin-bottom:var(--space-100);}
.clients-cnt .logos .group h4 {margin-bottom:var(--space-20); font-size:var(--font-size-22); font-weight:600; line-height:1.364em; letter-spacing:-0.03em; color:#242424; }
.clients-cnt .logos .group .items {text-align:center; display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-30);}
.clients-cnt .logos .item p {margin-top:var(--space-25); font-size:var(--font-size-18); font-weight:500; line-height:1.556em; letter-spacing:-0.03em; color:#242424; }

.location-cnt {margin-bottom:var(--space-100); display:flex; }
.location-cnt:last-child {margin-bottom:0;}
.location-cnt .heading { flex-shrink:0; width:clamp(200px, calc(300 / var(--inner) * 100vw), 300px); }
.location-cnt .heading .cate { margin:0 0 var(--space-15); font-size:var(--font-size-16); font-weight:600; line-height:1.625em; letter-spacing:-0.03em; color:#003578; }
.location-cnt .heading .tit { font-size:var(--font-size-32); font-weight:600; line-height:1.25em; letter-spacing:-0.03em; color:#242424; }
.location-cnt .content { flex:1; min-width:0;}
.location-cnt .map-area {border-radius:24px; overflow:hidden; margin-bottom:var(--space-30);}
[lang="en"] .location-cnt .map-area {height:clamp(250px, calc(450 / var(--inner) * 100vw), 450px);}
[lang="en"] .location-cnt .map-area iframe {width: 100%; height: 100%;}
.location-cnt .map-area .root_daum_roughmap .wrap_map {height:clamp(250px, calc(450 / var(--inner) * 100vw), 450px) !important;}
.location-cnt .map-area .root_daum_roughmap { width:100% !important;}
.location-cnt .map-area .root_daum_roughmap .wrap_controllers {border:0;}
.location-cnt .info-area {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-30);}
.location-cnt .box {position:relative; display:flex; padding:var(--space-40); border-radius:24px; background:rgba(0, 53, 120, 0.03);}
.location-cnt .box .txt h4 { margin-bottom:var(--space-12); font-size:var(--font-size-24); font-weight:600; line-height:1.167em; letter-spacing:-0.03em; color:#242424; }
.location-cnt .box .txt p { font-size:var(--font-size-16); font-weight:400; line-height:1.875em; letter-spacing:-0.03em; color:#454545; }
.location-cnt .box .ico {position:absolute; right:var(--space-40); top:var(--space-40); width:clamp(30px, calc(48 / var(--inner) * 100vw), 48px); height:clamp(30px, calc(48 / var(--inner) * 100vw), 48px);}
.location-cnt .box .ico img {width:100%; height:100%; object-fit:contain; }

.plant-group:not(:last-child) {margin-bottom:var(--space-100);}
.plant-group h3 { margin:0 0 var(--space-30); font-family:var(--font-oswald); font-size:var(--font-size-28); font-weight:500; line-height:1.286em; letter-spacing:-0.03em; color:#242424; }
.plant-group .body { display:flex; gap:var(--space-60); }
.plant-group .visual { flex-shrink:0; width:clamp(280px, calc(600 / var(--inner) * 100vw), 600px); border-radius:24px; overflow:hidden; }
.plant-group .visual img { display:block; width:100%; height:100%; object-fit:cover; }
.plant-group .list { flex:1; min-width:0; border-top:1px solid #ddd;}
.plant-group .list ul li {border-bottom:1px solid #ddd; }
.plant-group .list ul li a {position:relative; display:flex; align-items:center; padding:var(--space-28) var(--space-100) var(--space-28) var(--space-30);}
.plant-group .list .label { font-size:var(--font-size-20); font-weight:600; line-height:1.5em; letter-spacing:-0.03em; color:#242424; }
.plant-group .list .arrow {transition:.3s; position:absolute; right:var(--space-30); display:block; width:32px; height:32px; border:1px solid #ddd; border-radius:24px; background:#fff url("/images/sub/plant-arrow.png") no-repeat center; }
.plant-group .list ul li a:hover .arrow {background-image:url("/images/sub/plant-arrow-w.png"); background-color:var(--color-primary); border-color:var(--color-primary);}

.pop-certi {position:relative;}
.pop-certi .img {aspect-ratio:720/925;}
.pop-certi .img img {width:100%; height:100%; background-size:contain;}
.pop-certi .close {font-size:0; position:absolute; right:0; top:-60px; display:block; width:40px; height:40px; background:url('/images/sub/pop-close.png') no-repeat 50% 50% /contain;}

.local-certi {padding:var(--space-100) 0; background:#f7f9fb;}
.local-certi .contain {display:flex;}
.local-certi .head {width:31%;}
.local-certi .head .label {margin:0 0 var(--space-15); font-size:var(--font-size-16); font-weight:600; line-height:1.625em; letter-spacing:-0.03em; color:var(--color-primary);}
.local-certi .head h3 {margin:0 0 var(--space-15); font-size:var(--font-size-32); font-weight:600; line-height:1.3em; letter-spacing:-0.03em; color:#242424;}
.local-certi .head .txt {font-size:var(--font-size-16); font-weight:400; line-height:1.667em; letter-spacing:-0.03em; color:#868686;}
.local-certi .table {flex:1;}
.local-certi .table table {border:1px solid #ddd; width:100%; border-collapse:collapse; border-spacing:0;}
.local-certi .table thead th {padding:var(--space-15); background:#0c2340; border-right:1px solid rgba(255, 255, 255, 0.2); font-size:var(--font-size-18); font-weight:600; line-height:1.444em; letter-spacing:-0.03em; text-align:center; color:#fff;}
.local-certi .table thead th:last-child {border-right:0;}
.local-certi .table tbody td {padding:var(--space-15); border-top:1px solid #ddd; border-right:1px solid #ddd; background:#fff; font-size:var(--font-size-16); font-weight:400; line-height:1.5em; letter-spacing:-0.03em; text-align:center; vertical-align:middle; color:#454545;}
.local-certi .table tbody td:last-child {border-right:0;}
.local-certi .table tbody td.country {}
.local-certi .table tbody td.country .flag {margin-right:4px;}
.local-certi .table tbody td.country .name strong {font-weight:600; color:#242424;}

.inquiry-form {border-top:1px solid #242424;}
.inquiry-form .group {border-bottom:1px solid #ddd; display:flex; align-items:center; padding:var(--space-60) 0;}
.inquiry-form .group .title {width:clamp(180px, calc(400 / var(--inner) * 100vw), 400px);}
.inquiry-form .group .title h3 {font-size:var(--font-size-32); font-weight:700; line-height:1.25em; letter-spacing:-0.03em; color:#242424;}
.inquiry-form .form {flex:1; display:flex; flex-direction:column; gap:var(--space-20);}
.inquiry-form .form dl {display:flex;}
.inquiry-form .form dt {padding-top:1.3em; flex-shrink:0; width:clamp(90px, calc(140 / var(--inner) * 100vw), 140px); font-size:var(--font-size-18); font-weight:600; line-height:1em; color:#242424;}
.inquiry-form .form dt .required {font-style:normal; font-weight:600; color:var(--color-success);}
.inquiry-form .form dd {flex:1;}
.inquiry-form .form .input {width:100%; height:clamp(40px, calc(60 / var(--inner) * 100vw), 60px); border:0; border-radius:8px; background-color:#f8f8f8; font-size:var(--font-size-16); font-weight:500; line-height:1.5em; color:#454545;}
.inquiry-form .form .input::placeholder {color:#bebebe; font-weight:500;}
.inquiry-form .form textarea.input {height:260px; padding:var(--space-20); line-height:1.5em; resize:none;}
.inquiry-form .form .captcha-wrap {display:flex; align-items:center; gap:var(--space-10); height:60px;}
.inquiry-form .form .captcha-wrap #kcaptcha_image {flex-shrink:0; width:120px; height:60px; border-radius:8px; object-fit:cover;}
.inquiry-form .form .captcha-wrap .input {flex:1; min-width:0;}
.inquiry-form .submit-area {display:flex; flex-direction:column; align-items:center; gap:var(--space-60); margin-top:var(--space-60);}
.inquiry-form .form-agree {width:100%; margin:0;}
.inquiry-form .form-agree h3 {margin:0 0 19px; font-size:var(--font-size-18); font-weight:600; line-height:1em; letter-spacing:-0.03em; color:#242424;}
.inquiry-form .form-agree .scroll-box {height:180px; padding:var(--space-20); overflow-y:auto; border:1px solid #ddd; background:#fff; font-size:var(--font-size-16); font-weight:400; line-height:1.5em; color:#686868;}
.inquiry-form .form-agree .check {display:flex; align-items:center; justify-content:center; gap:var(--space-12); margin-top:19px; font-size:var(--font-size-18); font-weight:500; line-height:1.5em; color:#454545;}
.inquiry-form .form-agree .checkbox label:before {width:24px; height:24px; margin-right:11px; border:1px solid #ddd; border-radius:5px; background:#fff;}
.inquiry-form .form-agree .checkbox input:checked + label:before {background:#fff url("/images/sub/inquiry-check.svg") 50% 50% no-repeat; background-size:14px auto; border-color:#ddd;}
.inquiry-form .form-agree .check a {display:inline-flex; align-items:center; justify-content:center; height:24px; margin-left:0; padding:0 10px; border:1px solid #ddd; background:#fff; font-size:13px; font-weight:400; line-height:1em; letter-spacing:-0.06em; color:#686868;}
.inquiry-form .submit .btn-pack.focus {display:inline-flex; align-items:center; justify-content:center; width:clamp(160px, calc(240 / var(--inner) * 100vw), 240px); height:clamp(40px, calc(60 / var(--inner) * 100vw), 60px); padding:0; border:0; border-radius:60px; font-size:var(--font-size-18); font-weight:600; line-height:1em; background:#003578; color:#fff;}
