/* 공통*/
.sub-title{ padding-left: 24px; position: relative; margin-bottom: 10px; font-size: 25px;}
.sub-title:before { left: 0; background: #00bcd4;}
.sub-title:after { left: 6px; background: #0094de;}
.sub-title:before, .sub-title:after { position: absolute; top: 50%; transform: translateY(-60%); width: 14px; height: 14px; opacity: .8; border-radius: 100%; content: "";}
.sub-con-title{font-size: 20px; font-weight: 800; padding: 0 0 20px 15px;  position: relative; }
.sub-con-title:before{content: ""; position: absolute; left: 0; top: 6px; background: #186acc; width: 4px; height: 15px;}
.blue-bg-box{background: #f1faff; padding: 20px; color: #85a6b6; border-radius: 10px;}
.blue-bg-box li{position: relative; padding-left: 12px;}
.blue-bg-box li:before{content: ""; position: absolute; left: 0; top: 7px; width: 3px; height: 3px; border-radius: 50%; background: #8babbb;}
.blue-bg-box li + li{margin-top: 7px;}
.sub-title-mini{display: inline-block; padding-left: 10px; word-break: keep-all; color: #33a9e5;}
.br-txt br{display: none;}
.border-radius-img{border-radius: 20px; overflow: hidden;}
.keep-all{word-break: keep-all;}
@media (min-width: 992px) {
    .sub-title{ padding-left: 45px; margin-bottom: 20px; font-size: 40px;}
    .sub-title:before, .sub-title:after { width: 20px; height: 20px;}
    .sub-title:after {left: 14px;}
    .sub-con-title{font-size: 26px; padding: 0 0 20px 20px;}
    .sub-con-title:before{content: ""; position: absolute; left: 0; top: 7px; background: #186acc; width: 8px; height: 23px;}
    .blue-bg-box{padding: 40px;}
    .blue-bg-box li{padding-left: 16px;}
    .blue-bg-box li + li{margin-top: 15px;}
    .blue-bg-box li:before{content: ""; position: absolute; left: 0; top: 9px; width: 4px; height: 4px; }
    .br-txt br{display: block;}
}

/*스크롤시 이미지 커지게*/
.top-bg-box .sub-top-video{ position: absolute; left: 50%; transform: translate(-50%, -50%); top: 50%;}
.spreadImageBox {box-sizing:inherit !important; -webkit-box-sizing:inherit !important; position:relative; height:410px}
.spreadImageBox .spreadImage.typeEdgeL {display:block;position:absolute;width:100%;height:100%;left:0;top:0;overflow:hidden;transition:width .9s ease}
.spreadImageBox .spreadImage.typeEdgeL img {display:block;position:absolute;left:0;top:0; max-width:inherit}
.spreadImageBox .spreadImage.typeEdgeR {display:block;position:absolute;width:100%;height:100%;right:0;top:0;overflow:hidden;transition:width .9s ease;}
.spreadImageBox .spreadImage.typeEdgeR img {display:block;position:absolute;right:0;top:0; max-width:inherit}
.spreadImageBox .spreadImage.typeFull {display:block;position:absolute; width:1290px;height:100%;left:50%;transform:translateX(-50%);top:0;overflow:hidden;transition:width .9s ease;}
.spreadImageBox .spreadImage.typeFull:before{content: ""; position: absolute; top: 0; left: 0; z-index: 1; width: 100%; height: 100%; background: rgba(0,0,0,0.0.5);}
.spreadImageBox .spreadImage.typeFull img {display:block;position:absolute;left:50%;top:0;margin:0 0 0 -1000px; max-width:inherit; filter: grayscale(0%);}

@media all and (max-width:999px) {
   .spreadImageBox {height:415px}
   .spreadImageBox .spreadImage.typeFull {width:1120px}
}
@media all and (max-width:799px) {
   .spreadImageBox {min-height:150px; max-height:100%; height:100%;}
   .spreadImageBox .spreadImage.typeFull {width:100% !important}
   .spreadImageBox .spreadImage.typeEdgeR {position:unset;}
   .spreadImageBox .spreadImage.typeEdgeR img {display:block;position:absolute;left:0;top:0; max-width:100%}
   .spreadImageBox .spreadImage.typeEdgeL {position:unset;}
   .spreadImageBox .spreadImage.typeEdgeL img {display:block;position:absolute;left:0;top:0; max-width:100%}
   .spreadImageBox .spreadImage.typeFull img{display: block; position: absolute; top: 50%;left: 50%; width: 100%;  height: 150px; transform: translate(-50%, -50%); object-fit: cover;max-width: 100%; filter: grayscale(0%); margin: inherit;} 
}

/* 회전이미지*/
.rotation-shape{position: absolute; top: 0px; right: 10px; animation: rotate360_image 10s linear infinite; z-index: -1; max-width: 85px;}
@keyframes rotate360_image{
    100% {
        transform: rotate(360deg);
    }
}
@media (min-width: 768px) {
    .rotation-shape{max-width: 120px; right: 60px; top: 80px;}
}

/* 인사말 */
.greeting-con{overflow: hidden;}
.greeting-con .greeting-left{margin-bottom: 20px;}
.greeting-con .greeting-left .greeting-img-box img { width: 100%; height: auto; display: block;}
.spread-box{ font-size: 26px; background: #fff; padding-bottom: 20px; position: relative; z-index: 1; max-width: 100%; margin: 0px auto; line-height: inherit; overflow: hidden;}
.spread-line { position: relative; color: #000; line-height: 1.6;  white-space: normal; overflow: visible; display: inline;}
.inline-word { position: relative;color: #000; display: inline;}
.inline-word.navy{color: #004098;}
.inline-word::after { content: attr(data-text); position: absolute; top: 0; left: 0; width: 0%; height: 100%; color: #004098;  overflow: hidden; white-space: nowrap; transition: width 2s ease; pointer-events: none; z-index: 2;}
.spread-line.visible .inline-word::after {width: 100%;}
.spread-line::after { content: attr(data-text); position: absolute; top: 0; left: 0; width: 0%; height: 100%; color: #000; overflow: hidden; white-space: nowrap; transition: width 2s ease; pointer-events: none; z-index: 1;}
.spread-line.visible::after { width: 100%;}
.spread-line:nth-child(2)::after { transition-delay: 0.1s; }
.spread-line:nth-child(3)::after { transition-delay: 0.7s; }
.spread-line:nth-child(4)::after { transition-delay: 1s; }
.spread-line:nth-child(5)::after { transition-delay: 1.7s; }
.inline-word::after { transition-delay: 1s; }
.spread-line::after,
.inline-word::after { font-family: inherit;  font-weight: inherit;  font-size: inherit; line-height: inherit; letter-spacing: inherit;}
.about-con-box{padding: 0 10px; color: #999; word-break: keep-all;}
@media (min-width: 768px) {
    .spread-box{ font-size: 30px; padding-bottom: 15px;} 
    .greeting-con .greeting-left{width: calc(40% - 54px); margin-right: 50px; display: inline-block; vertical-align: top; margin-bottom: 0;}
    .greeting-con .greeting-right{width: 60%; display: inline-block;}
}
@media (min-width: 1240px) {
    .spread-box{ font-size: 50px; padding-bottom: 30px; max-width: 1440px;} 
    .spread-line{ display: block;}
    /*
    .inline-word {color: #ccc; display: inline-block;}
    .inline-word.navy{color: inherit;}
    */
    .about-ts-box{padding: 0 20px;}
}
/* 모바일 */
@media (max-width: 768px) {
   .greeting-con .greeting-left .greeting-img-box { width: 100%; height: 300px; overflow: hidden;}
   .greeting-con .greeting-left .greeting-img-box img { width: 100%; height: auto; position: relative; top: -80px;}
}

/*모달*/
.modal{background: rgba(0,0,0,0.6);}
.modal-header{background: #333; color: #fff; position: relative;}
.modal-header .close{position: absolute; margin-top: 0!important; right: 10px; top: 50%; transform: translate(-50%,-50%); opacity: 1; text-shadow: none; color: #fff;}
.modal .dl-list dt{font-size: 18px; margin-bottom: 10px;}
.modal .ident-1{text-indent: -1em; margin-left: 1em;}
.modal .ident-08{text-indent: -0.8em; margin-left: 0.8em;}

/*모달*/
.modal .modal-header {padding: 20px; background: linear-gradient(to right, #04004c, #00b6c2); border: 0;}
.modal .modal-header .modal-title{ width: calc(100% - 30px);}
.modal .modal-body{padding: 20px; background: #fff; overflow: auto; height: 450px;}
.modal .close{font-size: 24px;}
.modal .modal-dialog{min-width: 100%; transform: translate(-50%, -50%)!important; top: 50%; left: 50%; margin: 0;}
@media(min-width:992px) {
    .modal .modal-header {padding: 30px;}
    .modal .modal-body{padding: 30px; height: 810px;}
    .modal .close{font-size: 30px;}
    .modal .modal-dialog{min-width: 768px;}
}

/* 기술개요*/
.sub-con-layout-01{word-break: keep-all; position: relative; overflow: hidden;}
.sub-con-layout-01 .left-title{margin-bottom: 20px;}
.sub-con-layout-01 .left-title .sub-txt-point{max-width: 20px;}
.sub-con-layout-01 + .sub-con-layout-01{padding-top: 40px; margin-top: 40px; border-top: 1px solid #ddd;}
.sub-con-layout-01 .over-number{position: absolute; top: 0;; right: 0; color: #eee; font-weight: 700; font-size: 80px;}
.ul-design-box{background: #f7f7f7; padding: 20px; border-radius: 10px; color: #666;}
.ul-design-box li + li{margin-top: 10px;}
.ul-design-box li{position: relative; padding-left: 14px;}
.ul-design-box li:before{content: "";position: absolute;top: 8px;left: 0;width: 3px;height: 3px;border-radius: 50%;background: #9c9c9c;}
.ul-black-design-box li + li{margin-top: 10px;}
.ul-black-design-box li{position: relative; padding-left: 14px;}
.ul-black-design-box li:before{content: "";position: absolute;top: 8px;left: 0;width: 3px;height: 3px;border-radius: 50%;background: #000;}
.bg-sub-con{padding: 60px 0; margin: 40px 0; background: #f3f8fc;}
.bg-sub-con.no-bottem-bg-sub{background: linear-gradient( to bottom, #f3f8fc 0%, #f3f8fc 92%, #ffffff 100%);}
.fff-bg-imgbox{padding: 20px; border-radius: 20px; background: #fff; text-align: center;}
@media (min-width: 992px) {
    .sub-con-layout-01{ min-height: 320px;}
    .sub-con-layout-01 .left-title{width: 30%; display: inline-block; margin-bottom: 0;}
    .sub-con-layout-01 .left-title .sub-txt-point{max-width: 40px;}
    .sub-con-layout-01 .right-more-txt{width: calc(70% - 44px); margin-left: 40px; display: inline-block; vertical-align: top;}
    .ul-design-box{padding: 30px;}
    .ul-design-box li:before{content: "";position: absolute;top: 8px;left: 0;width: 4px;height: 4px;}
    .ul-black-design-box li:before{content: "";position: absolute;top: 8px;left: 0;width: 4px;height: 4px;}
    .sub-con-layout-01 + .sub-con-layout-01{padding-top: 80px; margin-top: 80px; min-height: 400px;}
    .sub-con-layout-01 .over-number{position: absolute; bottom: 0; left: 0; top: inherit; right: inherit; }
    .bg-sub-con{padding: 120px 0; margin: 80px 0;}
    .fff-bg-imgbox{padding: 40px;}
}

/* 컬러 표*/
.color-table{margin-top: 0px;}
.color-table .basic-table{border-top: 0;}
.color-table thead tr th{background: #8ea7c5; color: #fff;}
.color-table thead tr th.bg-th{background: #186acc;}
.color-table .border-td{border-left: 1px solid #186acc;}
.color-table thead tr th:first-child{ background: #003c7e;}
.color-table tbody tr th:first-child{ background: #f3f8fc;}
.color-table thead tr th:last-child,
.color-table tbody tr td:last-child { border-left: 3px solid #186acc !important; border-right: 3px solid #186acc !important;}
.color-table tbody tr:last-child td:last-child {border-bottom: 3px solid #186acc !important;}
.color-table .basic-table thead tr.no-bg-th:first-child th { background: #fff; color: #186acc; text-align: center; border: 0 !important;}
@media (min-width: 1180px) {
    .color-table{margin-top: -50px;}
}

/* === 제품 상세 레이아웃 === */
.product-detail-list + .product-detail-list{margin-top: 80px;}
.product-detail-wrap { display: flex; width: 100%; align-items: stretch;}
.product-detail-wrap .left-area { width: 50%; background: #f3f8fc; min-height: 600px; display: flex; flex-direction: column; justify-content: center; align-items: center; border-radius: 20px 0 0 20px; position: relative; padding: 40px 120px; text-align: center;}
.product-detail-wrap .slide-area { flex: 1;  width: 100%; display: flex; justify-content: center; align-items: center; position: relative; flex-direction: column-reverse;}
.product-title { color: #003c7e; margin: 5px 0 10px;}
.product-detail-wrap .swiper { width: 100%; position: relative; overflow: hidden; }
.product-detail-wrap .swiper-wrapper {width: 100%;}
.product-detail-wrap .swiper-slide { display: flex; justify-content: center; align-items: center;}
.product-detail-wrap .swiper-slide img { width: 100%; height: auto; max-height: 400px; object-fit: contain;}
.product-detail-wrap .right-area { width: 50%; padding: 0px; }
.product-detail-wrap table { width: 100%; height: 100%; border-collapse: collapse; border-top: 2px solid #000; border-bottom: 2px solid #000;}
.product-detail-wrap table tr { border-bottom: 1px solid #e0e0e0;}
.product-detail-wrap table td:first-child { background-color: #003c7e; color: #fff; font-weight: 600; text-align: center; width: 30%; padding: 12px;}
.product-detail-wrap table td:last-child { padding: 12px; color: #333;}
.product-detail-wrap .swiper-button-prev,
.product-detail-wrap .swiper-button-next { position: absolute; top: 50%; transform: translateY(-50%); width: 40px; height: 40px; background: transparent; font-size: 0; border-radius: 50%; z-index: 2; cursor: pointer;}
.product-detail-wrap .swiper-navigation-icon{display: none;}
.product-detail-wrap .swiper-button-prev {left: -60px;}
.product-detail-wrap .swiper-button-next {right: -60px;}
.product-detail-wrap .swiper-button-prev::after,
.product-detail-wrap .swiper-button-next::after { content: ''; display: block; width: 10px; height: 10px; border: solid #186acc; border-width: 0 3px 3px 0; padding: 8px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.product-detail-wrap .swiper-button-prev::after { transform: translate(-50%, -50%) rotate(135deg);}
.product-detail-wrap .swiper-button-next::after {transform: translate(-50%, -50%) rotate(-45deg);}
.product-detail-wrap .product-inquiry-lnk a{display: inline-block;  background: linear-gradient(to right, #33c9dd, #186acc); padding: 12px 60px; border-radius: 60px; color: #fff; margin-bottom: 20px;}
@media (max-width: 768px) {
  .product-detail-list + .product-detail-list{margin-top: 40px;}
  .product-detail-wrap {flex-direction: column;}
  .product-detail-wrap .left-area { border-radius: 0; width: 100%; min-height: 250px; padding: 30px 50px;}
  .product-detail-wrap .right-area {width: 100%;}
  .product-detail-wrap .swiper-slide img {max-height: 200px;}
  .product-detail-wrap .swiper-button-prev {left: -30px;}
  .product-detail-wrap .swiper-button-next {right: -30px;}
  .product-detail-wrap .swiper-button-prev,
  .product-detail-wrap .swiper-button-next { width: 20px; height: 20px;}
  .product-detail-wrap .swiper-button-prev::after,
  .product-detail-wrap .swiper-button-next::after {padding: 5px;}
  .product-detail-wrap .product-inquiry-lnk a{padding: 12px 40px;}
}

/* 제품문의모달 */
.modal-inquiry-con .form-control{ font-size: 16px; padding: 12px; height: auto;}
.modal-inquiry-con .ess{color: #EF1014;}
.modal-inquiry-con .bg-btn{background: #186acc; text-align: center; width: 100%; border: 0; padding: 14px; color: #fff; border-radius: 5px;}
@media (max-width: 992px) {
    .modal-inquiry-con .form-control{ font-size: 14px; padding: 10px;}
}

/* 체크박스 */
.custom-checkbox-label { display: flex; align-items: center; cursor: pointer; user-select: none;}
.custom-checkbox-input { display: none;}
.custom-checkbox-box { width: 18px; height: 18px; border: 1px solid #ccc; border-radius: 4px; margin-right: 8px; position: relative; flex-shrink: 0; background-color: #f0f0f0;  transition: background-color 0.2s, border-color 0.2s;}
.custom-checkbox-input:checked + .custom-checkbox-box { background-color: #007bff; border-color: #007bff;}
.custom-checkbox-input:checked + .custom-checkbox-box::after { content: ""; position: absolute; left: 5px; top: 1px; width: 6px; height: 12px; border: solid white; border-width: 0 2px 2px 0; transform: rotate(45deg);}
.custom-checkbox-label a { margin-left: 6px; font-size: 14px; color: #aaa; font-weight: 500;}
@media (max-width: 992px) {
    .custom-checkbox-label a {font-size: 12px;}
}

/* === 제품내용 100% 넓이일때=== */
.product-detail-wh100{position: relative; width: 100%; background: #f3f8fc; border-radius: 20px 0 0 20px;  padding: 40px 120px; display: block;}
.product-detail-wh100 .swiper-button-prev,
.product-detail-wh100 .swiper-button-next{background: none;}
.product-detail-wh100 .swiper-button-prev {left: 60px;}
.product-detail-wh100 .swiper-button-next {right: 60px;}
.product-detail-wh100 .swiper-button-prev::after,
.product-detail-wh100 .swiper-button-next::after { content: ''; display: block; width: 10px; height: 10px; border: solid #186acc; border-width: 0 3px 3px 0; padding: 8px; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);}
.product-detail-wh100 .swiper-button-prev::after { transform: translate(-50%, -50%) rotate(135deg);}
.product-detail-wh100 .swiper-button-next::after {transform: translate(-50%, -50%) rotate(-45deg);}
.product-detail-wrap.product-detail-wh100 .swiper-slide img{width: auto; max-height: inherit;}
@media (max-width: 768px) {
  .product-detail-wh100{border-radius: 20px 0 0 20px; padding: 30px 50px;}
  .product-detail-wh100 .swiper-button-prev {left: 15px;}
  .product-detail-wh100 .swiper-button-next {right: 15px;}
  .product-detail-wh100 .swiper-button-prev,
  .product-detail-wh100 .swiper-button-next { width: 20px; height: 20px;}
  .product-detail-wh100 .swiper-button-prev::after,
  .product-detail-wh100 .swiper-button-next::after {padding: 5px;}
}

/* 보급사례 */
.supply-case-con {width: calc(100% / 2 - 44px); margin: 0 20px 40px; display: inline-block; vertical-align: top;}
.supply-case-box .swiper { width: 100%; height: 300px; position: relative;}
.supply-case-box .swiper-slide img { width: 100%; height: 100%; object-fit: cover; display: block; border-radius: 10px 10px 0 0;}
.supply-case-box .swiper-navigation-icon{display: none;}
.supply-case-box .swiper-button-prev,
.supply-case-box .swiper-button-next { position: absolute; top: calc(50% + 20px); transform: translateY(-50%); width: 40px; height: 40px; background: transparent; font-size: 0; border-radius: 50%; z-index: 2; cursor: pointer;}
.supply-case-box .swiper-button-prev {left: 20px;}
.supply-case-box .swiper-button-next {right: 20px;}
.supply-case-box .swiper-button-prev::after,
.supply-case-box .swiper-button-next::after { content: ''; display: block; width: 10px; height: 10px; border: solid #186acc; border-width: 0 3px 3px 0; padding: 8px; position: absolute; top: calc(50% + 20px); left: 50%; transform: translate(-50%, -50%);}
.supply-case-box .swiper-button-prev::after { transform: translate(-50%, -50%) rotate(135deg);}
.supply-case-box .swiper-button-next::after {transform: translate(-50%, -50%) rotate(-45deg);}
.supply-case-box .case-item table { width: 100%; border-collapse: collapse;}
.supply-case-box .case-item th { width: 35%; text-align: left; background-color: #f0f0f0; font-weight: 600; background: #003c7e; color: #fff; padding: 12px; border: 1px; border-style: solid; border-color: #d4d4d4;}
.supply-case-box .case-item tr:first-child td{ background: #f3f8fc;}
.supply-case-box .case-item td { padding: 12px; border: 1px; border-style: solid; border-color: #d4d4d4;}
@media (max-width: 768px) {
    .supply-case-con {width: 100%; margin: 0 0 40px; display: block;}
}

/* 비전 */
.bottom-before{position: relative; padding-bottom: 30px;}
.bottom-before:before{content: ""; position: absolute; left: calc(50% - 25px); bottom: 0; background: #186acc; width: 50px; height: 8px;}
.vision-box{position: relative; padding-bottom: 40vh;}
.vision-box .vision-txt{position: relative; z-index: 1;}
.vision-box .vision-arrow{position: absolute; bottom: 5%; left: 50%; transform: translateX(-50%); z-index: 0;}

@media (max-width: 992px) {
    .vision-box{ padding-bottom: 16vh;}
    .bottom-before{ padding-bottom: 20px;}
    .bottom-before:before{content: ""; position: absolute; left: calc(50% - 10px); width: 20px; height: 4px;}
}

/* 연혁 */
.history-box{padding-bottom: 120px;}
.history-box .year-menu {display: none;}
.history-box .year-menu ul { list-style: none; padding: 0; margin: 0;}
.history-box .year-menu li { margin: 30px 0; cursor: pointer; font-weight: 700; color: #ccc;}
.history-box .year-menu li.active { color: #186acc; font-weight: 800;}
.history-box .timeline { position: relative; border-left: 2px solid #eee; padding-left: 20px;}
.history-box .timeline-progress { position: absolute; top: 0; left: -1px; width: 2px; background-color: #186acc; height: 0; z-index: 0; transition: height 0.3s ease;}
.history-box .timeline-item { position: relative; padding-left: 40px; z-index: 1;}
.history-box .timeline-item::before { content: ''; position: absolute; left: -9px; top: 14px; width: 16px; height: 16px; box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.2); border-radius: 50%; background: #fff; transition: border-color 0.3s ease, background-color 0.3s ease;}
.history-box .timeline-item.active { color: #186acc;}
.history-box .timeline-item.active::before { border-color: #186acc; background-color:#186acc;}
.history-box .content {border-top: 2px solid #000; padding: 30px 0; overflow: hidden;}
.history-box .year-title { margin-bottom: 10px;}
.timeline-item.visited::before { background-color: #186acc; border-color: #186acc;}
.year-section .history-list + .history-list {padding-top: 30px; margin-top: 30px; border-top: 1px solid #ddd;}
.year-section .history-list .year-title{width: 100px;}
.year-section .history-list .history-detail{width: 100%; margin-left: 0px; display: inline-block; vertical-align: top;}
.year-section .history-list .history-detail .entry .month{ display: inline-block; background: #eff6ff; padding: 4px 12px; border-radius: 10px; margin-right: 15px; color: #186acc; font-weight: 700;}
.year-section .history-list .history-detail .entry .month-history{word-break: keep-all; margin-top: 10px!important;}
.year-section .history-list .history-detail .entry .month-history li + li{ padding-top: 10px; margin-top: 10px; border-top: 1px dashed #bbb;}
.year-section .history-list .history-detail .entry{font-weight: 500; position: relative;}
.year-section .history-list .history-detail .entry:first-child{margin-top: 0;}
.year-section .history-list .history-detail .entry + .entry{margin-top: 30px;}
.year-section + .year-section{padding-top: 40px; margin-top: 40px; border-top: 1px solid #ddd;}
.year-section .history-list .year-title.highlight { color: #186acc;}
@media (min-width: 768px) {
    .history-box{padding-bottom: 100px;}
    .year-section .history-list .year-title{width: 150px; display: inline-block;}
    .year-section .history-list .history-detail{width: calc(100% - 174px); margin-left: 20px;}
}
@media (min-width: 992px) {
    .history-box{padding-bottom: 170px;}
    .history-box .content { padding: 50px 0;}
    .history-box .year-menu {width: 28%; padding: 20px; position: sticky; top: 120px; display: inline-block;}
    .history-box .content {width: calc(100% - 28% - 4px); display: inline-block; vertical-align: top;}
    .year-section .history-list + .history-list {padding-top: 50px; margin-top: 50px;}
    .year-section .history-list .history-detail .entry .month-history{  margin-top: 5px!important; display: inline-block; width: calc(100% - 92px); vertical-align: top;}
    .year-section .history-list .history-detail .entry:first-child{margin-top: 10px;}
    .year-section .history-list .history-detail .entry:before{width: 6px; height: 6px; top: 12px;}
}

/* 연혁아래 이미지 */
.basicSet  .history-img-box { display: flex; flex-wrap: wrap; gap: 20px; list-style: none; padding: 0; margin-top: 20px!important;}
.history-img-box li { flex: 1 1 100%;  max-width: 100%;}
.history-img-box.two li { flex: 1 1 calc(50% - 10px); max-width: calc(50% - 10px);}
.history-img-box.three li { flex: 1 1 calc(33.333% - 13.333px); max-width: calc(33.333% - 13.333px);}
.history-img-box.grid li { flex: 1 1 calc(50% - 10px); max-width: calc(50% - 10px);}
.history-img-box li img { width: 100%; aspect-ratio: 16 / 9;  object-fit: cover; border-radius: 8px; display: block;}

/* 서브 메뉴 탭*/
.threedepth-tabmenu { padding:40px 20px 30px; text-align:center; overflow-y:hidden; overflow-x:auto; -ms-overflow-style:none; scrollbar-width: none; max-width:1480px; margin:0 auto;}
.threedepth-tabmenu::-webkit-scrollbar {display: none;}
.threedepth-tabmenu .list-table-box {width:100%; display: table; border-collapse: collapse; table-layout: fixed;}
.threedepth-tabmenu .tab-item { display:block; line-height:3.900em; padding:0 1em; font-size:1.250em; color:#111111; border:1px solid transparent; background:#f1f4f8; cursor:pointer; position:relative;}
.threedepth-tabmenu .tab-item:hover,
.threedepth-tabmenu .active .tab-item{ color:#213f9a;}
.threedepth-tabmenu .active .tab-item { z-index:1; border-color:#213f9a; background:#fff; font-weight:700; box-shadow:10px 10px 20px rgba(0, 0, 0, .08);}
@media (max-width: 800px) {
	.threedepth-tabmenu .tab-item {line-height:2.800em; }
}
@media (min-width: 1200px) {
	.threedepth-tabmenu {padding:60px 20px 30px; }
    .threedepth-tabmenu .list-table-box {min-width:800px; }
    .list-table-box .list-td-item, .td-item {display:table-cell; }
}

/* 소재지 */
.location-sub .cont{display: none;}
.location-sub { padding-top: 40px; padding-bottom: 200px; overflow: hidden; border-top: 1px solid #d2d2d2;}
.location-sub .contact-header { padding: 1.5em 0; position: relative;}
.location-sub .contact-header h4 { margin: 0.5em; font-size: 1.5em;}
.location-sub .list-table-box { width: 100%; table-layout: fixed; display: table;}
.location-sub .list-td-item { display: table-cell; vertical-align: top; padding-top: 1.5em;}
.location-sub .list-td-item:first-child { width: 50%; padding-right: 1.5em;}
.location-sub .list-td-item:last-child {width: 30%;}
.location-sub .location-info { padding-bottom: 40px;}
.location-sub .location-info li { position: relative; padding-left: 5em; font-size: 1.125em; color: #7d7d7d;}
.location-sub .location-info li + li {margin-top: 1em;}
.location-sub .location-info .info-txt { position: absolute; left: 0; top: 0; font-weight: 700; color: #111;}
.sub-map-box {width: 100%;}
.sub-map-box .root_daum_roughmap {width: 100% !important;}
.sub-map-box .root_daum_roughmap .border1,
.sub-map-box .root_daum_roughmap .border2,
.sub-map-box .root_daum_roughmap .border3,
.sub-map-box .root_daum_roughmap .border4 {border: 0; background: none;}

@media (min-width: 992px) { /*pc*/
    /* 사진이 있는 경우만 */
    .location-sub:not(.no-location-img) .list-td-item:last-child {position: relative; overflow: hidden;}
    .location-sub:not(.no-location-img) .list-td-item:last-child img { position: absolute; top: 0%; left: 50%; width: 100%; height: 100%; transform: translate(-50%, 0%); object-fit: cover; object-position: top; display: block;}
}
/* 이미지 없는 경우만 */
.location-sub.no-location-img .list-td-item {width: 100%; display: block;}

@media (max-width: 992px) { /*모바일*/
    .location-sub {padding-top: 0; padding-bottom: 0;}
    .location-sub .contact-header{ padding-bottom: 0;}
    .location-sub .contact-header .sub-con-title{padding-bottom: 0;}
    .location-sub .list-table-box {display: block;}
    .location-sub .list-td-item { display: block; width: 100%;}
    .location-sub .list-td-item:first-child{ width: 100%; padding-right: 0;}
    .location-sub .list-td-item:last-child{width: 100%;}
    .location-sub .list-td-item:last-child img { position: static; width: 100%; height: auto;}
}

/* 사업분야 */
.business-sub-img{border-radius: 20px; overflow: hidden;}
.sub-con-layout-01 .border-btn{text-align: center; display: block; width: 100%; background: linear-gradient(to right, #33c9dd, #186acc); padding: 16px 60px; color: #fff; margin-bottom: 20px; border-radius: 5px; font-weight: 700;} 

/* 사업모델*/
.sub-design-section { display: flex; flex-wrap: wrap; justify-content: center; gap: 30px; word-break: keep-all;}
.sub-design-item { text-align: center; width: 100%;}
.sub-design-section .sub-design-item + .sub-design-item {margin-top: 30px;}
.sub-design-img-box { position: relative; border-radius: 20px; overflow: hidden;}
.sub-design-img-box img { width: 100%; height: auto; display: block; border-radius: 20px;}
.sub-design-divider { width: 4px; height: 60px; background-color: #186acc; margin: -20px auto 0; position: relative;}
.sub-design-title-en { font-weight: 700; margin-bottom: 8px; margin-top: 10px;}
.sub-design-title-ko { font-weight: 700; color: #186acc; margin-bottom: 16px;}
.sub-design-desc { color: #999; line-height: 1.6;}

@media (min-width: 768px) {
  .sub-design-item { width: calc(50% - 15px);  margin-top: 0;}
  .sub-design-section .sub-design-item + .sub-design-item { margin-top: 0;}
}

@media (min-width: 992px) {
  .sub-design-item { width: calc(33.333% - 50px);}
  .sub-design-section {gap: 60px;}
}

/* 투자정보 */
.ir-support .list-inline-box {margin: 0 -20px;}
.ir-support .list-inline-item { width: 100%; padding: 10px 20px; text-align: center;}
.ir-support dt {font-size: 1.250em;}
.ir-support dd { font-size: 1.125em; min-height: auto;}
.ir-support .cs-info-box { height: auto; padding: 3.500em 0; transition: 0.3s;}
.ir-support .cs-info-box:hover { border-color: #111; box-shadow: 0.750em 0.750em 1.875em rgba(0, 0, 0, .12);}

@media (min-width: 992px) {
	.ir-support { max-width: 1000px; margin: 0 auto;}
	.ir-support .list-inline-item {width: calc(50% - 4px); display: inline-block;}
}
.cs-info-box { display: table; width: 100%; border: 1px solid #d2d2d2;}
.cs-info-box dl { display: table-cell; vertical-align: top; padding: 30px 40px;}
.cs-info-box dt {font-size: 1.125em;}
.cs-info-box dt>strong { font-size: 1.500em; font-weight: 600;}
.cs-info-box dt>p { font-weight: 300; opacity: .7;}
.cs-info-box .cs-item { padding-left: 40px; position: relative;}
.cs-info-box .cs-item+.cs-item {margin-top: 20px;}
.cs-info-box .cs-item i{ font-size: 14px; position: absolute; left: 9px; top: 50%; transform: translateY(-50%); color: #fff;}
.cs-info-box .cs-item:before { content: ""; width: 32px; height: 32px; background: #f0f0f0; border-radius: 100%; position: absolute; left: 0; top: 50%; transform: translateY(-50%);}
.cs-info-box .cs-item.bb:before {background: #333;}

@media (min-width: 992px) {
	.cs-info-box {height: 180px;}
}

@media (min-width: 1200px) {
	.cs-info-box {height: 240px;}
}

/* 채용 */
.stage-box .stage-list{width: 100%; display: inline-block; vertical-align: top; border-radius: 6px; text-align: center; box-shadow: 2px 2px 20px rgba(0, 0, 0, .1); position:relative; margin-bottom: 60px; word-break: keep-all;} 
.stage-box .stage-list .stage-con{display: block; padding: 40px 10px 30px 10px; }
.stage-box .stage-list .stage-number{background:#186acc; display: inline-block; color: #fff; font-weight: 700; position: absolute; top: 0; left: 50%; transform: translate(-50%,-50%); width: 40px; height: 40px; border-radius: 50%;}
.stage-box .stage-list .stage-number .stage-number-txt{position: absolute; top: 50%; left: 50%; transform: translate(-50%,-50%); }
.stage-box .stage-list .stage-txt{font-weight: 700; word-break: keep-all;}
.stage-box .stage-list:after{content: ""; position: absolute; bottom: -20px; left: calc(50% - 4px); transform: rotate(225deg) translate(-50%,0%); position: absolute; width: 8px; height: 8px; border-color: #999; border-top: 2px solid #999; border-left: 2px solid #999;
    -webkit-transform: rotate(225deg) translate(-50%,0%);
    -moz-transform: rotate(225deg) translate(-50%,0%);
    -ms-transform: rotate(225deg) translate(-50%,0%);
    -o-transform: rotate(225deg) translate(-50%,0%);
}
.stage-box .stage-list:last-child:after{content: none;}
.stage-list .stage-img img{max-width: 60px;}
.stage-con .more{border: 0; background: #444; color: #fff; padding: 12px 16px; min-width: 140px; text-align: left; border-radius: 6px; position: relative; margin-top: 20px; transition: 0.5s;}
.stage-list .stage-con:hover .more{background: #186acc; transition: 0.5s;}
.stage-con .more:after{content: ""; position: absolute; top: calc(50% - 7px); right: 20px; transform: rotate(135deg) translate(0%,-50%); position: absolute; width: 8px; height: 8px; border-color: #fff; border-top: 2px solid #fff; border-left: 2px solid #fff;
    -webkit-transform: rotate(135deg) translate(0%,-50%);
    -moz-transform: rotate(135deg) translate(0%,-50%);
    -ms-transform: rotate(135deg) translate(0%,-50%);
    -o-transform: rotate(135deg) translate(0%,-50%);
}
@media (min-width:768px) {
    .basicSet .stage-box{margin: 0 -30px!important;}
    .stage-box .stage-list{width: calc(100% / 5 - 64px); margin: 40px 30px 30px 30px;}
    .stage-box .stage-list .stage-con{padding: 50px 30px 30px 30px; }
    .stage-list .stage-img img{max-width: 80px;}
    .stage-con .more{padding: 14px 20px; min-width: 160px; }
    .stage-box .stage-list .stage-txt{min-height: 46px;}
    .stage-box .stage-list .stage-number{width: 50px; height: 50px;}
    .stage-box .stage-list:after{content: ""; position: absolute; top: 50%; bottom: auto; left: auto; right: -30px; transform: rotate(135deg) translate(0%,-50%); position: absolute; width: 8px; height: 8px; border-color: #999; border-top: 2px solid #999; border-left: 2px solid #999;
    -webkit-transform: rotate(135deg) translate(0%,-50%);
    -moz-transform: rotate(135deg) translate(0%,-50%);
    -ms-transform: rotate(135deg) translate(0%,-50%);
    -o-transform: rotate(135deg) translate(0%,-50%);}
}

/* 신규프로젝트 */
.new-project-con + .new-project-con{margin-top: 40px;}
.new-project-box .new-project-item{margin-top: 20px;}
.new-project-box .new-project-item table th{display: block;}
.new-project-box .new-project-item table td{display: block;}
.blue-lnk{background: #186acc; color: #fff; display: inline-block; padding: 14px 30px;}
.blue-lnk:hover{background: #222; transition: 0.5s;}
.blue-lnk:visited{ color: #fff!important;}

@media (min-width:768px) {
    .new-project-con + .new-project-con{margin-top: 60px;}
    .new-project-box .new-project-left{width: calc(50% - 20px); margin: 0 10px; display: inline-block; vertical-align: middle;}
    .new-project-box .new-project-item{width: calc(50% - 24px); margin-left: 20px; margin-top: 0; display: inline-block; vertical-align: middle;}
}

@media (min-width:992px) {
    .blue-lnk{padding: 16px 50px;}
    
}

/*신규프로젝트 모달*/
#new-project-Modal.modal .modal-body{max-height: 500px; height: auto;}
#new-project-Modal table { width: 100%; border-collapse: collapse;}
#new-project-Modal th {width: 25%;text-align: left;background-color: #f0f0f0;font-weight: 700; background: #eeeeee;color: #666; padding: 12px;border: 1px;border-style: solid;border-color: #d4d4d4;}
#new-project-Modal td { padding: 12px; border: 1px; border-style: solid; border-color: #d4d4d4; font-weight: 600;}

@media (min-width:768px) {
}



/* 소재지 */

/* =============================================
   소재지 탭 CSS — 기존 공통 CSS에 추가
   (kor/css/ 또는 en/css/ 공통 파일에 삽입)
   ============================================= */

/* 탭 목록 래퍼 */
.location-tab-wrap {
    margin-bottom: 40px;
}

/* 탭 리스트 */
.location-tab-list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0;
    border-bottom: 2px solid #e9ecef;
    flex-wrap: wrap;             /* 5개 이상이면 자동 줄바꿈 */
    gap: 0;
}

/* 탭 아이템 */
.location-tab-item {
    padding: 14px 28px;
    font-size: 15px;
    font-weight: 600;
    color: #868e96;
    cursor: pointer;
    border-bottom: 3px solid transparent;
    margin-bottom: -2px;
    transition: color .2s, border-color .2s;
    white-space: nowrap;
}

.location-tab-item:hover {
    color: #008c9a;
}

.location-tab-item.active {
    color: #008c9a;
    border-bottom-color: #008c9a;
}

/* 탭 콘텐츠 */
.location-tab-content {
    display: none;
}

.location-tab-content.active {
    display: block;
}

/* 반응형 — 모바일에서 탭 글자 축소 */
@media (max-width: 768px) {
    .location-tab-item {
        padding: 12px 16px;
        font-size: 13px;
    }
}

@media (max-width: 480px) {
    .location-tab-item {
        padding: 10px 12px;
        font-size: 12px;
    }
}