.gray_box{background: #f5f5f5;border: 1px solid #C8C8C8;padding: 2.5rem 1.875rem;}
.tab_list{display: flex;justify-content: center;gap: 1.875rem;margin-bottom: 6.25rem;}
.tab_list > li > *{display: flex;align-items: center;justify-content: center;width: 17.5rem;height: 3.9375rem;border-radius: 999px;background: #bfbfbf;color: #fff;font-size: 1.25rem;;font-weight: 700;line-height: 1;transition: background 0.3s;}
.tab_list > li > *:hover,
.tab_list > li.active > *{background: var(--primary);}
/* 기업정보 > ceo */
.ceo_area{display: flex;gap: 5rem;}
.ceo_area .img{width: 49.3%;border-radius: 1.875rem;overflow: hidden;}
.ceo_area .img img{width: 100%;height: 100%;object-fit: cover;}
.ceo_area .cont{flex: 1;display: flex;flex-direction: column;gap: 4.375rem;padding-top: 133px;background: url(../../images/sub/logo_kbi_gray.svg) no-repeat right top;}
.ceo_area .cont .desc{color: #000;font-size: 1.125rem;font-weight: 500;line-height: 160%;letter-spacing: -0.045rem;text-transform: uppercase;word-break: keep-all;}
.ceo_area .ceo_name{display: flex;justify-content: flex-end;gap: .625rem;align-items: center;font-size: 1.125rem;font-weight: 500;line-height: 160%; letter-spacing: -0.045rem;text-transform: uppercase;}
.ceo_area .ceo_name strong{font-size: 1.5rem;font-weight: 700;line-height: 160%;letter-spacing: 0.3rem;text-transform: uppercase;}

@media screen and (max-width:1420px) {
  .ceo_area{gap: 3.5rem;}
  .ceo_area .cont{gap: 3rem;padding-top: 5.5rem;background-size: min(240px, 48%);}
  .tab_list > li{flex: 1 1;}
  .tab_list > li > *{width: 100%;flex: 1 1;display: flex;}
}

@media screen and (max-width:1024px) {
  .ceo_area{gap: 2.5rem;}
  .ceo_area .img{width: 44%;}
  .ceo_area .cont{gap: 2rem;padding-top: 4rem;background-size: min(200px, 52%);}
  .tab_list{gap: .625rem;}
}

@media screen and (max-width:768px) {
  .ceo_area{flex-direction: column;gap: 2rem;}
  .ceo_area .img{width: 100%;}
  .ceo_area .img img{max-height: 380px;}
  .ceo_area .cont{gap: 2rem;padding-top: 4rem;background-size: 180px auto;}
  .ceo_area .cont .desc{font-size: 1rem;}
  .tab_list > li > *{font-size: 1rem;}
}

@media screen and (max-width:400px) {
  .ceo_area .cont{background-size: 140px auto;}
  .ceo_area .ceo_name{justify-content: flex-start;}
}

/* 기업정보 > 기업개요 */ 
.overview_area{display: flex;gap: 2.25rem;}
.overview_area .item{padding: 87px 2.8125rem;background:#EAEAEA;display: flex;flex-direction: column;gap: 3.75rem;flex: 1 1;border-radius: 1.25rem;}
.overview_area .item .cont{display: flex;flex-direction: column;gap: .9375rem;}
.overview_area .title{font-size: 1.75rem;font-weight: 600;letter-spacing: -0.07rem;}
.overview_area .desc{font-size: 1.125rem;font-weight: 500;line-height: 180%;letter-spacing: -0.045rem;}
.overview_area .value{margin-top: auto;display: flex;justify-content: flex-end;gap: .9375rem;align-items: center;font-size: 1.75rem;font-weight: 600;line-height: 180%;letter-spacing: -0.07rem;}
.overview_area .value strong{font-size: 4rem;font-weight: 600;letter-spacing: -0.16rem;}

.overview_area .item.active{background: var(--primary);}
.overview_area .item.active > *{color: #fff;}

@media screen and (max-width:1420px) {
  .overview_area{gap: 1.5rem;}
  .overview_area .item{padding: 4rem 2rem;gap: 2.5rem;}
  .overview_area .value strong{font-size: 3.25rem;}
}

@media screen and (max-width:1024px) {
  .overview_area{display: grid;grid-template-columns: repeat(3, minmax(0, 1fr));gap: 1rem;}
  .overview_area .item{padding: 2.75rem 1.5rem;gap: 1.75rem;}
  .overview_area .title{font-size: 1.5rem;}
  .overview_area .desc{font-size: 1rem;line-height: 160%;}
  .overview_area .value{font-size: 1.25rem;}
  .overview_area .value strong{font-size: 2.75rem;}
  .overview_area .item.active > *{color: #fff;}
}

@media screen and (max-width:768px) {
  .overview_area{grid-template-columns: 1fr;gap: 1rem;}
  .overview_area .item{padding: 2.5rem 1.5rem;gap: 2rem;}
  .overview_area th:nth-child(1) {width: 100px !important;}
}

@media screen and (max-width:400px) {
  .overview_area .item{padding: 2rem 1.25rem;}
  .overview_area .value strong{font-size: 2.5rem;}
}

/* 기업정보 > 연혁 */ 
.history_area{display: flex;flex-direction: column;gap: 
  9.8125rem;}
.history_area .item{display: flex;gap: 6.5625rem;flex: 1 1;}
.history_area .item:nth-child(2n){flex-direction: row-reverse;}
.history_area .item .img {overflow: hidden;border-radius: 1.875rem;}
.history_area .item .img img{width: 100%;height: 100%;object-fit: cover;}
.history_area .item .cont{display: flex;flex-direction: column;gap: 3.75rem;}
.history_area .item .tit{color: #D71837;font-size: 4rem;font-weight: 700;line-height: 160%;}
.history_area .item .history_list{display: flex;flex-direction: column;gap: 1.25rem;}
.history_area .item .history_list > li{display: flex;font-size: 1.125rem;line-height: 140%;gap: 1.5625rem;}
.history_area .item .history_list > li  > strong{font-weight: 800;width: 7.5rem;}
.history_area .item .history_list > li .desc{flex: 1;word-break: keep-all;color: var(--gray-700, #4D4D4D);font-weight: 500;letter-spacing: -0.045rem;}
.history_area .item .desc li + li {margin-top: 5px;}

@media screen and (max-width:1420px) {
  .history_area{gap: 6.5rem;}
  .history_area .item,
  .history_area .item:nth-child(2n){gap: 4rem;}
  .history_area .item .cont{gap: 3rem;}
  .history_area .item .tit{font-size: 3.5rem;}
}

@media screen and (max-width:1024px) {
  .history_area{gap: 4.5rem;}
  .history_area .item,
  .history_area .item:nth-child(2n){gap: 2.75rem;}
  .history_area .item .cont{gap: 2.5rem;}
  .history_area .item .tit{font-size: 3rem;line-height: 1.3;}
}

@media screen and (max-width:768px) {
  .history_area{gap: 4rem;}
  .history_area .item,
  .history_area .item:nth-child(2n){flex-direction: column;gap: 2rem;}
  .history_area .item .img img{max-height: 360px;}
  .history_area .item .cont{gap: 2rem;}
  .history_area .item .tit{font-size: 2.5rem;line-height: 1.25;}
  .history_area .item .history_list > li{gap: 1rem;}
  .history_area .item .history_list > li > strong{width: 6.25rem;flex-shrink: 0;}
}

@media screen and (max-width:400px) {
  .history_area .item .tit{font-size: 2rem;}
  .history_area .item .history_list > li{flex-direction: column;gap: 0.25rem;}
  .history_area .item .history_list > li > strong{width: auto;}
}

/* 조직도 */


.org_area {
  --accent: #d71837;
  --line: #dedede;
  --head: #e2e2e2;
  --border: #e2e2e2;
  --card-width: 200px;
  --top-gap: 102px;
  --column-gap: 40px;

  position: relative;
  width: min(100%, 1414px);
  margin: 0 auto;
  padding-top: 0;
}

.org_ceo {
  display: flex;
  width: 336px;
  height: 6.8125rem;
  margin: 0 auto;
  align-items: center;
  justify-content: center;
  border-radius: 30px;
  background: var(--accent);
  color: #fff;
  font-size: 1.5rem;
  font-weight: 700;
  line-height: 1.35;
  letter-spacing: 0;
  text-align: center;
}

.org_ceo::after {
  position: absolute;
  top: 109px;
  left: 50%;
  width: 1px;
  height: 81px;
  transform: translateX(-50%);
  border-left: 2px dotted var(--line);
  content: "";
}

.org_list {
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, var(--card-width)));
  gap: var(--column-gap);
  justify-content:space-between;
  margin-top: var(--top-gap);
}

.org_list::before {
  position: absolute;
  top: -39px;
  left: calc((100% - ((var(--card-width) * 6) + (var(--column-gap) * 5))) / 2 + 95px);
  width: calc((var(--card-width) * 5) + (var(--column-gap) * 5) + 8px);
  border-top: 2px dotted var(--line);
  content: "";
}

.org_group {
  position: relative;
  display: flex;
  width: var(--card-width);
  flex-direction: column;
  gap: 15px;
  align-items: stretch;
}

.org_group::before {
  position: absolute;
  top: -39px;
  left: 50%;
  width: 1px;
  height: 39px;
  transform: translateX(-50%);
  border-left: 2px dotted var(--line);
  content: "";
}

.org_group::after {
  position: absolute;
  top: -8px;
  left: 50%;
  width: 8px;
  height: 8px;
  transform: translateX(-50%);
  border-radius: 50%;
  background: var(--accent);
  content: "";
}

.org_group h4,
.org_group li {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: center;
  margin: 0;
  text-align: center;
  letter-spacing: 0;
}

.org_group h4 {
  min-height: 92px;
  padding: 18px 20px;
  border-radius: 30px;
  background: var(--head);
  color: #111;
  font-size: 20px;
  font-weight: 700;
  line-height: 1.35;
}

.org_group ul {
  display: flex;
  flex-direction: column;
  gap: 15px;
  padding: 0;
  margin: 0;
  list-style: none;
}

.org_group li {
  min-height: 80px;
  padding: 16px 18px;
  border: 1px solid var(--border);
  border-radius: 30px;
  background: #fff;
  color: #111;
  font-size: 18px;
  font-weight: 400;
  line-height: 1.35;
  word-break: keep-all;
}

@media (max-width: 1320px) {
  .org_area {
    --card-width: 190px;
    --column-gap: 24px;
  }
}

@media (max-width: 1160px) {

  .org_area {
    --top-gap: 62px;
  }

  .org_list {
    grid-template-columns: repeat(3, minmax(180px, 1fr));
    gap: 32px 20px;
  }

  .org_list::before{width: 67%;left: 50%;transform: translateX(-50%);}



  .org_group {
    width: 100%;
  }
}

@media (max-width: 760px) {


  .org_area {
    --top-gap: 28px;
  }

  .org_ceo {
    width: min(100%, 280px);
    height: 88px;
    border-radius: 24px;
    font-size: 1.125rem;
  }
  .org_ceo:after{
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    width: 1px;
    height: 100%;
    transform: translateX(-50%);
    border-left: 2px dotted var(--line);
    content: "";
    z-index: -1;
  }

  .org_list {
    grid-template-columns: repeat(1, minmax(0, 1fr));
    gap: 24px 14px;
  }

  .org_ceo{min-width: 100%;position: relative;}
  .org_list::before{display: none;z-index: -1;}
  .org_group::before{z-index: -1;}

  .org_group {
    gap: 10px;
  }

  .org_group h4 {
    min-height: 72px;
    padding: 14px 12px;
    border-radius: 22px;
    font-size: 1rem;
  }

  .org_group ul {
    gap: 10px;
  }

  .org_group li {
    min-height: 58px;
    padding: 12px 10px;
    border-radius: 20px;
    font-size: 16px;
  }
}

@media (max-width: 430px) {

  .org_list {
    grid-template-columns: 1fr;
    gap: 18px;
  }
}

/* R&D > 생산설비 */
.facility_list .item_cont{gap: 1.25rem;}
.facility_list .item_cont .img{display: flex;min-height: 21.25rem;align-items: center;justify-content: center;border: 1px solid #e5e5e5;border-radius: 0;background: #fff;padding: 1.25rem;}
.facility_list .item_cont .img img{width: auto;max-width: 74%;height: auto;max-height: 18.75rem;object-fit: contain;}
.facility_list .item:nth-child(3) .img img,
.facility_photo_item .img img{max-width: 58%;max-height: 18rem;}
.facility_photo_item .item_cont > div{flex: 1 1;}
.facility_photo_item .est_tit{margin-bottom: 2.375rem;}

@media screen and (max-width:1420px) {
  .facility_list .item_cont .img{min-height: 19.5rem;}
}

@media screen and (max-width:1024px) {
  .facility_list .item_cont{gap: 1rem;}
  .facility_list .item_cont .img{min-height: 17.5rem;}
  .facility_list .item_cont .img img{max-width: 82%;max-height: 15.5rem;}
  .facility_list .item:nth-child(3) .img img,
  .facility_photo_item .img img{max-width: 68%;max-height: 15rem;}
}

@media screen and (max-width:768px) {
  .facility_list .item_cont{gap: 1.5rem;}
  .facility_list .item_cont .img{min-height: 15.625rem;}
  .facility_list .item_cont .img img{max-width: 78%;max-height: 13.75rem;}
  .facility_list .item:nth-child(3) .img img,
  .facility_photo_item .img img{max-width: 64%;max-height: 13.75rem;}
  .facility_photo_item .est_tit{margin-bottom: 1.5rem;}
}

@media screen and (max-width:400px) {
  .facility_list .item_cont .img{min-height: 13.75rem;}
  .facility_list .item_cont .img img{max-width: 86%;max-height: 12rem;}
  .facility_list .item:nth-child(3) .img img,
  .facility_photo_item .img img{max-width: 72%;max-height: 12rem;}
}

/* 기업정보 > 사업장현황 */
.est_list{display: flex;flex-direction: column;gap: 6.25rem;}
.est_list .item{display: flex;flex-direction: column;gap: 2.375rem;;}
.est_list .est_tit{font-size: 1.875rem;font-weight: 500;letter-spacing: -0.075rem;}
.est_list .item_cont{display: flex;gap: 3.125rem;}
.est_list .item_cont > div{flex: 1 1;max-width: calc((100% - 3.125rem)/2);}
.est_list .item_cont .img{border-radius: 1.875rem;overflow: hidden;}
.est_list .item_cont .img img{width: 100%;height: 100%;object-fit: cover;}
.est_list .item_cont th{text-align: left;}

@media screen and (max-width:1420px) {
  .est_list{gap: 5rem;}
  .est_list .item_cont{gap: 2.25rem;}
}

@media screen and (max-width:1024px) {
  .est_list{gap: 4rem;}
  .est_list .item_cont{gap: 1.75rem;}
}

@media screen and (max-width:768px) {
  .est_list{gap: 4rem;}
  .est_list .est_tit{font-size: 1.5rem;}
  .est_list .item_cont{flex-direction: column;gap: 1.5rem;}
  .est_list .item_cont > div{max-width: 100%;}
  .est_list .item_cont .img img{max-height: 360px;}
  .item_two + .item_two{margin-top: 2.5rem;}
}

@media screen and (max-width:640px) {
  .est_list .item_cont .img {height: 200px;min-height: 200px;}
  .est_list .item_cont .img img{max-height: 90%;}
}

/* 비전 */
.vision_wrap{display: flex;flex-direction: column;align-items: center;}
.vision_wrap .tit_wrap{padding: 1.25rem;max-width: 37.5rem;width: 90%;border-radius: 70px;background: #EDEDED;display: flex;flex-direction: column;text-align: center;align-items: center;justify-content: center;gap: .25rem;margin-bottom: 9.625rem;position: relative;}
.vision_wrap .tit_wrap:after{content: '';background: url(../../images/sub/bg_vision.svg) no-repeat center top;width: 100%;height: 9.625rem;position: absolute;left: 0;bottom: -8.375rem;}
.vision_wrap .tit_wrap h5{font-size: 1.75rem;font-weight: 600;line-height: 180%;letter-spacing: -1.12px;}
.vision_wrap .tit_wrap .desc{font-size: 1.125rem;font-weight: 500;line-height: 180%;letter-spacing: -0.72px;}
.vision_wrap .vision_list{position: relative;display: flex;justify-content: space-between;width: 100%;}
.vision_wrap .vision_list:before{content: '';display: block;border-top: 2px dashed #e5e5e5;position: absolute;left: 0;top: 8.25rem;height: 2px;width: 100%;}
.vision_wrap .vision_list .item{width: 16.5625rem;display: flex;flex-direction: column;gap:2.1875rem;position: relative;z-index: 2;}
.vision_wrap .vision_list .item .ico{width:  16.5625rem;height: 16.5625rem;border-radius: 50%;border: 3px solid #D71837;background: #FFF;display: flex;justify-content: center;align-items: center;}
.vision_wrap .vision_list p{text-align: center;font-size: 1.375rem;font-weight: 700;line-height: 160%; }

.policy_list{display: flex;gap: 2.25rem;}
.policy_list .item{border-radius: 30px;border: 1px solid #C8C8C8;padding: 4.375rem;display: flex;flex-direction: column;gap: 1.625rem;text-align: center;align-items: center;flex: 1 1;}
.policy_list .item p{font-size: 1.75rem;font-weight: 600;line-height: 180%;letter-spacing: -0.07rem}


@media screen and (max-width:1200px) {
  .bg_border_box{padding: 3.125rem;}
}

@media screen and (max-width:1024px) {
  .vision_wrap .vision_list{flex-direction: column;gap: 5rem;align-items: center;}
  .vision_wrap .vision_list .item{background: #fff;gap: 1.25rem;padding-bottom: 1.25rem;}
  .vision_wrap .vision_list::before{width: 2px;height: 100%;border-top: none;border-right: 2px dashed #e5e5e5;top: 0;left: 50%;transform: translateX(-50%);}

  .policy_list{flex-direction: column;}
  .policy_list .item{padding: 2.5rem 1.875rem;}

}

@media screen and (max-width:768px) {
  .policy_list .item .ico{justify-content: center;display: flex;align-items: center;}
  .policy_list .item .ico img{width: 3.125rem;}
  .policy_list .item p{font-size: 1.25rem;}
}

@media screen and (max-width:768px) {
  .bg_border_box{padding: 1.875rem !important;}
  .vision_wrap .tit_wrap{margin-bottom: 50px;}
  .vision_wrap .tit_wrap:after{background-size: 200px;height: 50px;bottom: -40px;}
  .vision_wrap .vision_list{gap: 1.875rem;}
  .vision_wrap .vision_list .item{width:100%;align-items: center;}
  .vision_wrap .vision_list .item .ico{width: 9.375rem;height: 9.375rem;}
  .vision_wrap .vision_list .item .ico img {max-width: 50%;max-height: 50%;}
}

/* ci */
.ci_wrap{display: flex;flex-direction: column;gap: 7.5rem;}
.ci_wrap .ci_area{border-radius: 1.875rem;overflow: hidden;border: 1px solid #e5e5e5;background: url(../../images/sub/bg_ci.svg) repeat;padding: 3.75rem;display: flex;justify-content: center;align-items: center;max-height: 24.625rem;}
.ci_wrap .ci_area img{max-height: 95%;max-width: 95%;}
.ci_wrap .btn_wrap{display: flex;justify-content: flex-end;margin-top: 2.125rem;}
.btn_file{display:flex;padding: .625rem .625rem .625rem 2.5rem; align-items: center;gap: 28px;border-radius: 60px;background: var(--gray-50, #F8F8F8);font-size: 1.25rem;font-weight: 600;letter-spacing: -0.4px;text-align: center;transition: all 0.3s;}
.btn_file:after{content: '';width: 60px;height: 60px;background: url(../../images/sub/ico_link.svg) no-repeat center #787878;border-radius: 50%;}
.btn_file:hover{transform: translateY(-3px);}

@media screen and (max-width:768px) {
  .ci_wrap .ci_area{max-height: 12.5rem;}
  .ci_wrap .ci_area img{max-height: 10rem;}
  .btn_file:after{width: 40px;height: 40px;background-size: 10px;}
  .btn_file{gap: .9375rem;padding: .625rem .625rem .625rem 1.5625rem;font-size: 1.125rem;}
}

.subsidi_page .add_txt{background: url(../../images/sub/bg_subsi.png) no-repeat center;background-size: cover;}
.subsidi_page ul li a:hover{
  text-decoration: underline;
}


.overview_page .add_txt{background: url(../../images/sub/bg_company_overview.png) no-repeat center;background-size: cover;font-weight: 700 !important;}
.overview_page .add_txt p{font-weight: 700 !important;}
.red{color: #D71837;}




/* 계열사 소개. */
.ico_desc_list{display: flex;flex-wrap: wrap;gap: 2.3125rem;}
.ico_desc_list > .item{width: calc((100% - 2.3125rem) /2);padding: 2.5rem 2.8125rem;border-radius: 30px;border: 1px solid #C8C8C8;background: #FFF;display: flex;gap: 4.375rem;}
.ico_desc_list > .item .ico{display: flex;justify-content: center;align-items: center;width: 10.5rem;height: 10.5rem;background: #f7f7f7;border-radius: 50%;}
.ico_desc_list .cont{display: flex;flex-direction: column;gap: .9375rem;flex: 1 1;}
.ico_desc_list .cont .tit{color: var(--gray-900, #1A1A1A); font-size: 1.375rem;font-weight: 700; line-height: 160%; }
.ico_desc_list .cont .desc{display: flex;gap: .9375rem;}
.ico_desc_list .cont .desc ul {flex: 1 1;}

@media screen and (max-width:1400px) {
  .ico_desc_list > .item{gap: 1.875rem;}
  .ico_desc_list > .item .ico{width: 9.375rem;height: 9.375rem;}
  .ico_desc_list .cont .desc{flex-direction: column;gap: .3125rem;}
}

@media screen and (max-width:1024px) {
  .ico_desc_list {flex-direction: column;gap: 1.5625rem;}
  .ico_desc_list > .item{width: 100%;}
  .ico_desc_list > .item .ico img {max-width: 50%;max-height: 50%;}
}


@media screen and (max-width:768px) {
  .ico_desc_list > .item{flex-direction: column;}
  .ico_desc_list > .item .ico{width: 6.25rem;height: 6.25rem;margin: auto;}
}



/* 글로벌 네트워크 */
.global_tab {margin: 3.75rem 0 5rem 0;}
.global_tab.process_tab  button{background: transparent;color: #000;}
.global_tab.process_tab  button.active,
.global_tab.process_tab  button:hover{color: #fff;}
.map_col01{width: 20%;}
.global_page .process_panel table {margin-top: 3.125rem;}


/*제품정보*/
.product_img {display: flex;justify-content: center;align-items: center;border-radius: 1.875rem;border: 1px solid #C8C8C8;background: #FFF;overflow: inherit !important;padding: 20px;min-height: 328px;}
.est_list .item_cont .img.product_img  img{object-fit:contain;width: auto;height: auto;max-width: 80%;max-height: 90%;}
.product_view{background: #fafafa;padding: 8.75rem 0;margin-bottom: 5.625rem;text-align: center;}
.product_view img{max-width: 100%;}

@media screen and (max-width:1024px) {
  .product_view{padding: 5rem 0;margin-bottom: 4.375rem;}
}

/* R&D > 생산공정 */
.process_area{max-width: 1420px;margin: 0 auto;}
.process_tab{display: flex;justify-content: center;gap: 1.875rem;margin-bottom: 6.25rem;}
.process_tab button{display: flex;align-items: center;justify-content: center;width: 17.5rem;height: 3.9375rem;border-radius: 999px;background: #bfbfbf;color: #fff;font-size: 1.25rem;;font-weight: 700;line-height: 1;transition: background 0.3s;}
.process_tab button:hover,
.process_tab button.active{background: var(--primary);}
.process_panel[hidden]{display: none;}
.process_list{--column-gap: 4.375rem;--row-gap: 4.375rem;--connector: #e8ebef;position: relative;display: grid;grid-template-columns: repeat(4, minmax(0, 1fr));gap: var(--row-gap) var(--column-gap);padding: 0;margin: 0 auto;list-style: none;counter-reset: process;}
.process_card{position: relative;z-index: 1;min-width: 0;padding: 1.875rem 1.5625rem;border: 1px solid #e4e4e4;background: #fff;display: flex;flex-direction: column;}
.process_card:nth-child(n+5):nth-child(-n+8){grid-row: 2;}
.process_card:nth-child(n+9):nth-child(-n+12){grid-row: 3;}
.process_card:nth-child(n+13):nth-child(-n+16){grid-row: 4;}
.process_card:nth-child(8n+5){grid-column: 4;}
.process_card:nth-child(8n+6){grid-column: 3;}
.process_card:nth-child(8n+7){grid-column: 2;}
.process_card:nth-child(8n+8){grid-column: 1;}
.process_card:nth-child(8n+1)::after,
.process_card:nth-child(8n+2)::after,
.process_card:nth-child(8n+3)::after,
.process_card:nth-child(8n+9)::after,
.process_card:nth-child(8n+10)::after,
.process_card:nth-child(8n+11)::after{content: "";position: absolute;left: 100%;top: 50%;width: var(--column-gap);height: 0.625rem;transform: translateY(-50%);background: var(--connector);}
.process_card:nth-child(8n+5)::after,
.process_card:nth-child(8n+6)::after,
.process_card:nth-child(8n+7)::after{content: "";position: absolute;right: 100%;top: 50%;width: var(--column-gap);height: 0.625rem;transform: translateY(-50%);background: var(--connector);}
.process_card:nth-child(8n+4)::after,
.process_card:nth-child(8n+8)::after{content: "";position: absolute;left: 50%;top: 100%;width: 1.875rem;height: 3.125rem;transform: translateX(-50%);background: var(--connector);clip-path: polygon(30% 0, 70% 0, 70% 58%, 100% 58%, 50% 100%, 0 58%, 30% 58%);}
.process_card:last-child::after{display: none;}
.process_card .num{display: inline-flex;width: 2.8125rem;height: 2.8125rem;align-items: center;justify-content: center;margin-bottom: 0.625rem;border-radius: 50%;background: #f0f0f0;color: #111;font-size: 1.25rem;;font-weight: 700;line-height: 1;}
.process_card p{font-size: 1.125rem;font-weight: 400;letter-spacing: -0.045rem;word-break: keep-all;line-height: 140%;margin-bottom: .9375rem;}
.process_card .img{position: relative;overflow: hidden;width: 100%;aspect-ratio: 1 / 0.77;background: #f5f5f5;}
.process_card .img img{width: 100%;height: 100%;object-fit: cover;}

@media screen and (max-width:1420px) {
  .process_list{--column-gap: 3rem;}
  .process_tab{margin-bottom: 5rem;}
}

@media screen and (max-width:1024px) {
  .process_tab{gap: 1rem;margin-bottom: 4rem;}
  .process_tab button{width: 14rem;height: 3.5rem;}
  .process_list{--column-gap: 2rem;--row-gap: 3rem;grid-template-columns: repeat(3, minmax(0, 1fr));}
  .process_card{grid-row: auto !important;grid-column: auto !important;}
  .process_card::after{display: none;}
}

@media screen and (max-width:768px) {
  .process_tab{gap: 0.625rem;margin-bottom: 3rem;}
  .process_tab button{width: auto;min-width: 0;flex: 1;height: 3rem;font-size: 0.9375rem;}
  .process_list{grid-template-columns: repeat(2, minmax(0, 1fr));gap: 1.5rem;max-width: none;}
  .process_card{padding: 1.25rem;}
  .process_card p{min-height: auto;font-size: 0.875rem;}
  .process_card .num{width: 2.1875rem;height: 2.1875rem;font-size: 1rem;}
  .process_tab.global_tab{flex-wrap: wrap;justify-content: flex-start;flex-direction: row !important;  display: grid;
    grid-template-columns: repeat(4, 1fr);gap:.625rem 0 !important}
  .process_tab.global_tab button{flex:none;height: 2.5rem;padding: .625rem;width: auto !important;font-size: .8125rem !important;}
}

@media screen and (max-width:480px) {
  .process_list{grid-template-columns: 1fr;}
}


/* ESG > 대표이사 메시지 */
.esg_ceo_page .cont_title{margin-bottom: 6.25rem;}
.esg_ceo_visual{background: url(../../images/sub/img_esg_ceo_message.png) no-repeat center #000;display: flex;justify-content: center;align-items: center;padding: 18.75rem 1.25rem;background-size: cover;}
.esg_ceo_visual h4{text-align: center;color: #FFF;text-align: center;font-family: Roboto;font-size: 3.4375rem;font-weight: 300;line-height: 120%}
.esg_ceo_visual h4 strong{font-weight: 700;}
.esg_ceo_message{position: relative;padding: 8.75rem 0 4rem;background: url(../../images/sub/logo_kbi_gray.svg) no-repeat left top;background-size: 28.125rem;margin-top: 7.5rem;}
.esg_ceo_message .brand_bg img{width: 100%;height: auto;filter: grayscale(1);}
.message_cols{display: grid;grid-template-columns: repeat(2, minmax(0, 1fr));gap: 6.25rem;}
.message_col + .message_col{position: relative;}
.message_col + .message_col::before{content: "";position: absolute;left: -3.125rem;top: 0;width: 1px;height: 100%;background: #cfcfcf;}
.message_col p{margin: 0;color: #111;font-size: 1.125rem;font-weight: 500;line-height: 180%;letter-spacing: -0.045rem;word-break: keep-all;}
.message_col p + p{margin-top: 2.25rem;}
.message_col .sign{display: flex;align-items: center;justify-content: flex-end;gap: 0.75rem;margin-top: 5rem;font-size: 1.125rem;font-weight: 500;}
.message_col .sign strong{font-size: 1.625rem;font-weight: 800;letter-spacing: 0.13rem;}

/* 사이버 감사실 */
.report_wrap h2{font-size: 1.875rem;font-weight: 500;letter-spacing: -0.075rem;margin-bottom: 1.25rem}
.report_wrap .desc{font-size: 1.125rem;letter-spacing: -0.0313rem;line-height: 160%;margin-bottom: 1.875rem;}
.report_wrap .desc:last-child{margin-bottom: 0}
.report_wrap .item + .item {margin-top: 3.125rem;}
ol.esg_process {margin-left:0; display: flex; list-style: none; gap:36px;}
ol.esg_process li {position: relative; padding:24px; display: flex; align-items: center; justify-content: space-between; flex-direction: column; flex:1; height:200px; border:1px solid #c8c8c8; background-color:#f5f5f5;}
ol.esg_process li::after {content: url("../../images/sub/ico_arrow_right.svg"); position: absolute; top:50%; transform: translateY(-50%); left:100%; display: block; width:36px; text-align: center;background-size: 20px;}
ol.esg_process li:last-child::after {display: none;} 
ol.esg_process li div.icon {display: flex; align-items: center; justify-content: center; flex:1;}
ol.esg_process li p {margin-bottom:0;}
.report .btn-wrap{display: flex;justify-content: center;margin-top: 3.75rem;}
.report_btn{display: flex;padding: 1.625rem 4.375rem;gap: 30px;align-items: center;border-radius: 10px;background: var(--Primary, #DF414E);color: #fff;font-size: 1.375rem;font-weight: 600;line-height: 100%;letter-spacing: -0.88px;}
.report .write_area .u-basic-border{border: 1px solid #c8c8c8;width: 100% !important;padding: 1.25rem;margin-bottom: 1.25rem;}
.report .write_area{display: flex;flex-direction: column;gap: 3.125rem;}
.report .write_area .item + .item{margin-top: 3.125rem;}
.report .write_area .item .title h4{font-size: 1.875rem;font-weight: 500;letter-spacing: -0.075rem;padding-bottom: 1.25rem;border-bottom: 2px solid var(--primary);}
.report .write_area  .category_list{display: flex;gap: 1.25rem;flex-wrap: wrap;background: #f5f5f5;padding: 1.25rem;border-bottom: 1px solid #c8c8c8;}
.report .write_area .cont{display: flex;flex-direction: column;}
.form_row{padding: 1.25rem 0;border-bottom: 1px solid #c8c8c8;display: flex;gap: .9375rem;align-items: center;}
.form_row label{width: 8.75rem;font-size: 1.125rem;font-weight: 500;letter-spacing: -0.0313rem;}
.form_row > *:not(label){flex: 1 1;}
.form_row input,
.form_row textarea{border: 1px solid #eee;padding: .625rem .9375rem;}

/* 인재상 */
.num_box{display: flex;gap: 1.25rem;}
.num_box .item{border-radius: 1.875rem;background: #F9F9F9;padding: 3.125rem 1.25rem;display: flex;flex-direction: column;align-items: center;gap: 1.875rem;flex: 1 1;}
.num_box .num{border-radius: 50px;background: var(--Primary, #D81F36);width: 3.125rem;height: 3.125rem;display: flex;justify-content: center;align-items: center;color: #FFF;font-size: 1.125rem;font-weight: 900;letter-spacing: -0.18px;margin:0 auto .9375rem auto;}
.num_box .tit{font-size: 1.375rem;font-weight: 700;line-height: 180%;letter-spacing: -0.22px;color: var(--title-color, #333);}
.num_box .dot_list{align-items: center;}
.add_txt{height: 100vh;;display: flex;justify-content: center;align-items: center;background: #000;background-size: cover;margin: 4.375rem 0;width: 100%;}
.talent_page .add_txt{background: url(../../images/sub/img_talent.png) no-repeat center}
.add_txt .inner{height: 100%;display: flex;justify-content: center;align-items: center;}
.add_txt .inner p{color: #FFF;text-align: center;font-size: 3.4375rem; font-weight: 300;line-height:120%}
.dot_list{display: flex;flex-direction: column;gap: .625rem;}
.add_txt .inner p strong{font-weight: 700;}
.dot_list li{position: relative;padding-left: 10px;font-size: 1.125rem;line-height: 140%;}
.dot_list li::before{content: '';display: block;width: 3px;height: 3px;border-radius: 50%;background: #333;position: absolute;left: 0;top: 11px;}

@media screen and (max-width:1024px) {
  .add_txt{height: auto;min-height: 25rem;}
  .add_txt .inner p{font-size: 2.8rem;}
  .report_wrap h2,
  .report .write_area .item .title h4{font-size: 1.25rem;}
  ol.esg_process{flex-wrap: wrap;}
  ol.esg_process li{width: calc((100% - 36px) / 2);}
  ol.esg_process li:nth-child(2n):after{display: none;}
}

@media screen and (max-width:768px) {
  .add_txt .inner p{font-size: 2rem}
  .talent_page .add_txt{background-size:cover}
}

.talent_list{margin-top: 3.125rem;display: flex;flex-direction: column;gap: 3.4375rem;}
.talent_list > .item{border: 1px solid #C8C8C8;background: var(--gray-0, #FFF);padding: 3.125rem 7.8125rem;display: flex;gap:9.25rem;border-radius: 1.875rem;}
.talent_list .circle{width: 153px;height: 153px;border: 3px solid #D71837;display: flex;justify-content: center;align-items: center;color: var(--Primary, #D81F36); font-size: 3rem;font-weight: 500;line-height: 180%;letter-spacing: -1.92px;flex-shrink: 0;border-radius: 50%;}
.talent_list .cont{flex: 1 1;display: flex;flex-direction: column;gap: 1.25rem;}
.talent_list .cont h4{color: var(--gray-900, #1A1A1A);font-size: 1.375rem;font-weight: 700;line-height: 160%;letter-spacing: -0.88px;}

@media screen and (max-width:1024px) {
  .talent_list > .item{padding: 2.5rem 3.125rem;gap: 3.125rem;}
}

@media screen and (max-width:768px) {
  .num_box{flex-direction: column;}
  .num_box .item{gap: .9375rem;}
  .talent_list > .item{padding: 2.5rem 1.875rem;flex-direction: column;align-items: center;gap: 1.5625rem;}
  .talent_list .circle{width: 7.5rem;height: 7.5rem;font-size: 2.5rem;}
  .talent_list  .cont h4{text-align: center;}
  .talent_list  .cont .dot_list{align-items: center;}
}

@media screen and (max-width:1420px) {
  .esg_ceo_page .cont_title{margin-bottom: 5rem;}
  .esg_ceo_message{padding-top: 6rem;}
  .message_cols{gap: 4rem;}
  .message_col + .message_col::before{left: -2rem;}
}

@media screen and (max-width:1024px) {
  .esg_ceo_page .cont_title{margin-bottom: 4rem;}
  .esg_ceo_message{padding: 5rem 0 3rem;background-size: 300px;}
  .message_cols{gap: 3rem;}
  .message_col p{font-size: 1rem;line-height: 170%;}
  .message_col + .message_col::before{left: -1.5rem;}
  .esg_ceo_visual{padding: 6.25rem 0;}
  .esg_ceo_visual h4{font-size: 2.5rem;}
}

@media screen and (max-width:768px) {
  .esg_ceo_page .cont_title{margin-bottom: 3rem;}
  .esg_ceo_message{padding-top: 4.375rem;margin: 5rem 0;background-size: 200px;}
  .esg_ceo_message .brand_bg{top: 3.25rem;width: 18rem;}
  .message_cols{grid-template-columns: 1fr;gap: 2rem;}
  .message_col + .message_col::before{display: none;}
  .message_col p + p{margin-top: 1.5rem;}
  .message_col .sign{margin-top: 3rem;}
}

@media screen and (max-width:400px) {
  .message_col .sign{font-size: 1rem;}
  .message_col .sign strong{font-size: 1.375rem;}
}

/* 인사 제도 */
.hr_list{display: flex;flex-direction: column;gap: 3.3125rem;}
.sub_tit{color: var(--gray-000, #000);font-size: 1.875rem;font-weight: 500;line-height: 100%;letter-spacing: -1.2px;text-transform: uppercase;margin-bottom: 2.375rem;}
.global_page .sub_tit{margin-bottom: 1.25rem}
.global_page .desc{margin-bottom: 1.25rem;font-size: 1rem;line-height: 160%;word-break: keep-all;color: #555;}
.global_page .sub_tit .desc{margin-bottom: 2.8125rem;}

@media screen and (max-width:768px) {
  .sub_tit{font-size: 1.3rem;margin-bottom: 1.5625rem;}
}
.hr_list .box{border-radius: 30px;border: 1px solid #C8C8C8;background: #FFF;display: flex;padding: 4.5rem 1.875rem;}
.hr_list  .ico{display: flex;width: 30%;justify-content: center;align-items: center;}
.hr_list  .ico img {max-width: 100%;}
.hr_list  .cont{flex: 1 1;}
.hr_list .dot_list li{color: #4d4d4d;font-size: 1.125rem;}
.tct{text-align: center;}
.img_wrap{display: flex;justify-content: center;}
.img_wrap img{max-width: 100%;}
.bg_gray{background: #FAFAFA;padding: 5rem 0 ;margin-top: 4.375rem;}
.bg_gray .right_txt{color: var(--gray-700, #4D4D4D);font-size: 1.125rem;font-weight: 500;line-height: 170%;letter-spacing: -0.72px;
  text-align: right;margin-top: 5.625rem;}
.bg_border_box{border-radius: 30px;border: 1px solid #E5E5E5;background: #FFF;padding: 3.75rem 5rem;}

 .add_img{flex-direction: column;} 
.add_img .box_wrap{display: flex;gap: 1.25rem;}
.add_img .box_wrap > *{flex: 1 1;border-radius: 1.875rem;}
.add_img .box_wrap .img{overflow: hidden;}
.add_img .box_wrap .img img {object-fit: cover;width: 100%;height: 100%;}
.mg50{margin: 3.125rem 0;}
.mg60{margin: 3.75rem 0;}
.mg80{margin: 5rem 0;}

@media screen and (max-width:1024px) {
  .hr_list .box{flex-direction: column;align-items: center;gap: 3.125rem;}
}

@media screen and (max-width:768px) {
  .hr_list .box{padding: 1.875rem;}
  .hr_list .ico {max-width: 5.625rem;}
  .add_img .box_wrap{flex-direction: column;}
  .hr_list .left_border{border-left: 0 !important;padding-left: 0 !important;}
}



/* 채용 절차 */
.recruit_page .step_section {
  margin:5.625rem 0 6.25rem 0;
}

.recruit_page .step_list {
  display: flex;
  align-items: center;
  gap: 0;
  list-style: none;
  position: relative;
  justify-content: space-between;
}
.recruit_page .step_list:after{
  content: '';display: block;width: 100%;height: 1px;background: #A9A9A9;position: absolute;left: 0;top: 50%;transform: translateY(-50%);
}

.recruit_page .step_list .step_item {
  display: flex;
  flex-direction: column;
  align-items: center;
  position: relative;
  
}


.recruit_page .step_circle {
  width: 230px;
  height: 230px;
  border-radius: 50%;
  border: 1px solid #d9d9d9;
  background: #fff;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 12px;
  transition: border-color 0.2s;
  position: relative;
  z-index: 2;
}

/* 마지막 step (최종합격자 발표) — 빨간 테두리 */
.recruit_page .step_item.is_final .step_circle {
  border: 3px solid #d81f36;
}

.recruit_page .step_num {
  font-size: 14px;
  font-weight: 700;
  color: #000;
  letter-spacing: -0.02em;
}

.recruit_page .step_name {
  font-size: 20px;
  font-weight: 400;
  color: #555;
  text-align: center;
  line-height: 1.4;
}

.recruit_page .step_item.is_final .step_name {
  font-weight: 700;
  color: #d81f36;
}

/* ────────────────────────────
   전형방법 CARD GRID
──────────────────────────── */
.recruit_page .method_section {
  margin: 5.625rem 0;
}

.recruit_page .method_grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 16px;
  list-style: none;
}

.recruit_page .method_card {
  background: #f7f7f7;
  border-radius: 30px;
  padding: 39px 1.75rem;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 34px;
  min-height: 250px;
}

/* 아이콘 영역 */
.recruit_page .ico {
width: 120px;
height: 120px;
border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
}

.recruit_page .ico img {
  max-width:100%;
}

/* 텍스트 영역 */
.recruit_page .method_body {
  flex: 1;
}

.recruit_page .method_top {
  display: flex;
  align-items: center;
  gap: 14px;
  margin-bottom: 14px;
}

.recruit_page .method_num_badge {
  width: 40px;
  height: 40px;
  min-width: 40px;
  border-radius: 50%;
  background: #d81f36;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  letter-spacing: -0.02em;
}

.recruit_page .method_name {
  font-size: 1.375rem;
  font-weight: 700;
  color: #1a1a1a;
  line-height: 1.6;
}

.recruit_page .method_desc {
  font-size: 18px;
  font-weight: 400;
  color: #1a1a1a;
  line-height: 1.6;
}

/* ── 반응형 ── */
@media (max-width: 1024px) {
  .recruit_page .step_list:after{display: none;}
  .recruit_page .step_list {
    flex-wrap: wrap;
    gap: 24px;
    justify-content: center;
  }
  .recruit_page .step_list .step_item:not(:last-child)::after {
    display: none;
  }
  .recruit_page .step_circle {
    width: 160px;
    height: 160px;
  }
}

@media (max-width: 768px) {
  .recruit_page .method_grid {
    grid-template-columns: 1fr;
  }
  .recruit_page .section_title {
    font-size: 22px;
  }
  .recruit_page .method_card {
    padding: 28px 24px;
  }
}

.left_border_list .item .box{padding: 2.5rem;align-items: center;}
.left_border_list .item .ico{min-width: 160px;}
.left_border_list .item .left_border{color: var(--gray-900, #1A1A1A);font-size: 18px;font-weight: 400;line-height: 160%;border-left: 1px solid #000;padding-left: 1.875rem;}

/* 브로슈어 */
.gallery_download.board .gallery_list > li{background: #fff;border: 1px solid #C8C8C8;padding: 30px;display: flex;gap: 3.125rem;background: #fefefe;align-items: flex-start;}
.gallery_download.board .gallery_list li > a{width: 300px;margin-bottom: 0;}

.gallery_download.board .gallery_list li > a .img{width: 100%;}
.board.gallery_download .gallery_list li .info{flex: 1 1;}
.gallery_download.board .num{width: 50px;height: 50px;background:var(--primary);color: #fff;display: flex;justify-content: center;align-items: center;border-radius: 50%;font-size: 1.25rem;font-weight: 700;}
.gallery_download.board .title{font-size: 1.625rem !important;color: #000 !important;}
.gallery_download.board .desc{color: #555;}
.gallery_download.board .info_bottom{margin-top: 1.875rem;}
.gallery_download.board .info_bottom h4{font-size: 1.25rem;font-weight: 500;border-bottom: 1px solid #000;padding-bottom: .9375rem;margin-bottom:1.875rem;}
.gallery_download.board  .info_desc{display: flex;gap: 5rem;}
.gallery_download.board  .info_desc .item{color: #555;}
.gallery_download.board  .info_desc h5{font-weight: 700;margin-bottom: 1.25rem;font-size: 1.125rem;color: #333;}
.gallery_download.board  .info_desc  ul{display: flex;flex-direction: column;gap: .625rem;}
.gallery_download.board  .info_desc  .multi-col{ display: grid;
  grid-template-columns: auto auto;gap: .625rem 1.25rem;}
.gallery_download.board  .info_desc  ul li{word-break: keep-all;}

/* contactus */
.chk_privacy_wrap{display: flex;flex-direction: column;gap: 1.25rem;margin-bottom: 5rem;}
.chk_privacy_wrap textarea{max-height: 12.5rem;font-size:.875rem;padding: .9375rem;color: #555;}

.row_list-03{flex-wrap: wrap;flex-direction: row;}
.row_list-03 .item{width: calc((100% - (3.3125rem*2))/3);flex: none;display: flex;flex-direction: column;}
.row_list-03 .item .ico{width: 20%;display: flex;justify-content: center;align-items: center;min-width: 160px;}
.row_list-03 .item .box{height: 100%;gap: 1.875rem}
.welfare_page .add_txt{background: url(../../images/sub/bg_welfare.png) no-repeat center;background-size: cover;}

@media screen and (max-width:1024px) {
  .row_list-03{gap: 1.875rem;}
  .row_list-03 .item{width: calc((100% - (1.875rem))/2);}
}

@media screen and (max-width:768px) {
  .row_list-03{gap: 2.5rem 1.25rem;}
  .row_list-03 .item{width:calc((100% - 1.25rem)/2);}
  .hr_list.row_list-03 .ico {max-width: 5rem;max-height: 3rem;min-width: auto;width: auto;}
  .hr_list.row_list-03 .ico img{max-height: 100%;}
  .row_list-03 .item .cont{width: 100%;}
}

@media screen and (max-width:640px) {
  .row_list-03 .item{width: 100%;}
}



/** 공통테이블 **/
.basic_table { position: relative; } 
.basic_table .scroll_table { border-top:2px solid #4C4C4C; border-bottom:0.0625rem solid #4C4C4C; text-align: right; } 
.basic_table table { width:100%; color:#1F1F1F; letter-spacing: -0.0125rem; table-layout: fixed; } 
.basic_table table caption { overflow: hidden; width: 0; height: 0; visibility: hidden; font-size: 0; line-height: 0; } 
.basic_table thead th { padding:20px 0; border-bottom:1px solid var(--gray-300); border-right:1px solid var(--gray-200); background-color: #fafafa; font-size: 1.125rem; font-weight: 600; text-align: center; } 
.basic_table thead th:last-child { border-right:0; } 
.basic_table thead tr:last-child th:last-child { border-right: none; } 
.basic_table thead th.end_line { border-right:0.0625rem solid var(--gray-200); } 
.basic_table tbody td ,.basic_table tbody th { padding:1.25rem; border-top:1px solid #E4E4E4; border-right:1px solid var(--gray-200); vertical-align: middle; font-size:1.125rem; line-height: 1.4; text-align: center; } 
.basic_table tbody th { font-size: 1.125rem; font-weight: 500; } 
.basic_table tbody td:last-child { border-right:0; } 
.basic_table .text-left { text-align: left; } 

.basic_table table.financial tbody td { text-align: right; } 
.basic_table table.financial tbody th { font-weight: 600; text-align: left; } 
.basic_table table.financial tbody th:not(.title) { padding-left:38px; font-weight: 400; } 
.basic_table table tbody tr.total { background-color: rgba(255, 255, 255, 0.3); } 
.basic_table table tbody tr.total th,
.basic_table table tbody tr.total td { background-color: #fafafa; font-size:1.25rem; font-weight: 600; text-align: center; } 



@media screen and (max-width:1024px) { 
 .basic_table tbody td ,
 .basic_table tbody th ,
 .basic_table thead th { padding:0.9rem 0.5rem; } 
}

 @media screen and (max-width:640px) { 
 .basic_table thead th ,
 .basic_table tbody th { font-size:1rem; } 
 .basic_table tbody th strong { font-size:1.2rem; } 
}


/** 공통테이블 상단 **/
.basic_table .table_top { display: flex; align-items: flex-end; justify-content: flex-end; } 
.basic_table .table_top .scroll_info { display: none; margin-bottom:0.625rem; width:50%; letter-spacing:-1px; } 
.basic_table .table_top .scroll_info span { padding-right:15px; position: relative; font-size:0.8889rem; animation: scrollInfo 1.5s ease-in-out infinite; } 
.basic_table .table_top .top_txt { margin-bottom:0.625rem; line-height: 1.2; color:var(--gray-500); } 


@keyframes scrollInfo { 
 0%, 100% { transform: translateX(0); } 
 50% { transform: translateX(10px); } 
}

@media screen and (max-width:1024px) { 
 .basic_table .table_top { justify-content: space-between; } 
 .basic_table .table_top .scroll_info { display: block; font-size:0.8rem; } 
}

 @media screen and (max-width:640px) { 
 .basic_table .table_top p { font-size:0.8rem; } 
}

.basic_table .error { color:#ff0000; } 


/** 공통테이블 스크롤 **/
.scroll_table_w { position:relative; } 
.scroll_table_w .scroll_img_w { display:none; position:absolute; top:1rem; left:50%; transform:translateX(-50%); } 

@media screen and (max-width:1434px) { 
 .scroll_table_w.need_scroll.large .scroll_table { overflow-x:auto; } 
 .scroll_table_w.need_scroll.large .scroll_table table { width:1000px; } 
}

 @media screen and (max-width:1024px) { 
 .scroll_table_w.need_scroll .scroll_table { overflow-x:auto; } 
 .scroll_table_w.need_scroll .scroll_table table { width:1024px; } 
}

 @media screen and (max-width:640px) { 
 .scroll_table_w.need_scroll.medium.scroll_table { overflow-x:auto; } 
 .scroll_table_w.need_scroll.medium .scroll_table table { width:750px; } 
 .scroll_table_w.need_scroll.small.scroll_table { overflow-x:auto; } 
 .scroll_table_w.need_scroll.small .scroll_table table { width:640px; } 
}


/** 공통테이블 하단 Info **/
.table_info { margin-top:1.5625rem; } 
.table_info p { padding-left:0.75rem; position: relative; font-weight: var(--medium); line-height: 1.75rem; color:#979797; letter-spacing: -0.0125rem; } 
.table_info p::after { position: absolute; top: 0%; left: 0; content: '-'; } 

.border_top_title{padding-top: 3.5rem;margin-bottom: 0;}

@media screen and (max-width:640px) { 
 .table_info { margin-top:1.2rem; } 
 .table_info p { line-height: 1.4; } 
}
/* 제무정보 */
.stock_page .inner {display: flex; justify-content: center; flex-direction: column;}
.stock_page .dart_box { padding:3.125rem;  border-radius: 1.875rem;border: 1px solid #e5e5e5;display: flex;justify-content: center;align-items: baseline;}

.stock_page .dart_box iframe {width:750px; height:720px; background-color: #fff;}

.dart_notice{text-align: center;margin: 1.875rem;font-weight: 500;font-size: 1.125rem;}


@media screen and (max-width:1024px){
  .stock_page .dart_box {padding:1.8rem 0rem; overflow-x: auto;width:100%;}
} 







.board_table.write label{font-size: 1.125rem;justify-content: center;font-weight: 600;}


@media screen and (max-width:768px) {
  .overview_page .table_style01 th, 
  .overview_page .table_style01 td{padding: 1rem;}
}


/* ===== header / hero ===== */
.policy_hero {
  background: var(--gray-900);
  padding: 6.25rem 0 3.75rem;
}
 
.policy_hero .eyebrow {
  color: var(--gray-300);
  font-size: 1rem;
  font-weight: 600;
  letter-spacing: 0.1rem;
  text-transform: uppercase;
  margin-bottom: 1rem;
}
 
.policy_hero h1 {
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  letter-spacing: -0.06rem;
  margin: 0 0 1.25rem;
}
 
.policy_hero .effective {
  color: var(--gray-300);
  font-size: 1rem;
  font-weight: 500;
}
 
.policy_hero .effective strong {
  color: var(--primary);
  font-weight: 700;
}
 
/* ===== intro ===== */
.policy_intro p {
  font-size: 1.125rem;
  line-height: 180%;
  color: var(--gray-700);
  letter-spacing: -0.02rem;
  word-break: keep-all;
  margin: 0;
}

.policy .tab_list{display: none !important;}
 
/* ===== tab-style anchor nav (같은 룩앤필의 pill nav 재사용) ===== */
.tab_list {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 0.75rem;
  margin: 3.75rem 0 6.25rem;
}
 
.tab_list > li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 0 1.375rem;
  height: 3rem;
  border-radius: 999px;
  background: var(--gray-250, #BFBFBF);
  color: #fff;
  font-size: 0.9375rem;
  font-weight: 700;
  line-height: 1;
  white-space: nowrap;
  transition: background 0.3s;
}
 
.tab_list > li > a:hover {
  background: var(--primary);
}
 
/* ===== 본문 섹션 ===== */
.content {
  padding-top: 3.75rem;
  padding-bottom: 9.375rem;
}
 
.article_section {
  scroll-margin-top: 2rem;
}
 
.article_section {
  margin-top: 6.25rem;
}
 
.sub_tit {
  display: flex;
  align-items: center;
  gap: 1.125rem;
  font-size: 1.875rem;
  font-weight: 700;
  letter-spacing: -0.05rem;
  color: var(--title-color);
  padding-bottom: 1.25rem;
  border-bottom: 2px solid var(--gray-900);
  margin-bottom: 2.25rem;
}
 
.sub_tit .num {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 2.375rem;
  height: 2.375rem;
  border-radius: 50%;
  background: var(--primary);
  color: #fff;
  font-size: 1.0625rem;
  font-weight: 700;
  flex-shrink: 0;
}
 
.article_section h3 {
  font-size: 1.1875rem;
  font-weight: 700;
  color: var(--gray-900);
  margin: 2.25rem 0 0.875rem;
}
 
.article_section h3:first-of-type {
  margin-top: 0;
}
 
.article_section p.desc {
  font-size: 1.0625rem;
  line-height: 175%;
  color: var(--gray-700);
  letter-spacing: -0.02rem;
  word-break: keep-all;
  margin: 0 0 1rem;
}
 
/* dot list (동그라미 목록) */
.dot_list {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin: 0 0 1.25rem;
  padding: 0;
  list-style: none;
}
 
.dot_list li {
  position: relative;
  padding-left: 0.875rem;
  font-size: 1.0625rem;
  line-height: 165%;
  color: var(--gray-700);
  word-break: keep-all;
}
 
.dot_list li::before {
  content: '';
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--gray-700);
  position: absolute;
  left: 0;
  top: 0.7rem;
}
 
/* circled number list (①②③) */
.circle_list {
  list-style: none;
  counter-reset: circled;
  margin: 0 0 1.5rem;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
 
.circle_list > li {
  counter-increment: circled;
  position: relative;
  padding-left: 1.75rem;
  font-size: 1.0625rem;
  line-height: 175%;
  color: var(--gray-700);
  word-break: keep-all;
}
 
.circle_list > li::before {
  content: counter(circled);
  position: absolute;
  left: 0;
  top: 0.2rem;
  width: 1.25rem;
  height: 1.25rem;
  border: 1px solid var(--primary);
  border-radius: 50%;
  color: var(--primary);
  font-size: 0.75rem;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
}
 
.circle_list .num_list {
  list-style: none;
  counter-reset: numbered;
  margin: 0.75rem 0 0;
  padding-left: 0;
  display: flex;
  flex-direction: column;
  gap: 0.4375rem;
}
 
.circle_list .num_list li {
  counter-increment: numbered;
  padding-left: 1.5rem;
  font-size: 1rem;
  color: var(--gray-700);
}
 
.circle_list .num_list li::before {
  content: counter(numbered) ".";
  position: absolute;
  margin-left: -1.5rem;
  color: var(--gray-500);
  font-weight: 600;
}
 
/* gray box (파기절차/기한/방법 등) */
.gray_box {
  background: var(--gray-50);
  border: 1px solid var(--gray-150);
  padding: 2rem 1.875rem;
  border-radius: 0.875rem;
}
 
.gray_box + .gray_box {
  margin-top: 0.875rem;
}
 
.gray_box h4 {
  margin: 0 0 0.625rem;
  font-size: 1.0625rem;
  font-weight: 700;
  color: var(--primary);
}
 
.gray_box p {
  margin: 0;
  font-size: 1rem;
  line-height: 170%;
  color: var(--gray-700);
  word-break: keep-all;
}
 
/* 안전성 확보조치 카드 그리드 */
.measure_grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1rem;
}
 
/* table style (기존 table_style01 톤 재사용) */
.table_style01 {
  border-top: 2px solid var(--gray-900);
  table-layout: fixed;
  width: 100%;
  margin-bottom: 1.25rem;
}
 
.table_style01 caption {
  position: absolute;
  left: -9999px;
  width: 0;
  height: 0;
  overflow: hidden;
}
 
.table_style01 tr {
  border-bottom: 1px solid var(--gray-100);
}
 
.table_style01 th {
  width: 26%;
  background: var(--gray-50);
  font-weight: 700;
  letter-spacing: -0.02rem;
  color: var(--gray-800);
  text-align: left;
  vertical-align: top;
}
 
.table_style01 td {
  font-weight: 400;
  color: var(--gray-700);
}
 
.table_style01 th,
.table_style01 td {
  padding: 1.125rem 1.25rem;
  font-size: 1rem;
  line-height: 165%;
  letter-spacing: -0.01rem;
}
 
/* 보호책임자 카드 */
.officer_grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 1.25rem;
  margin-bottom: 1.5rem;
}
 
.officer_grid .gray_box dl {
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
 
.officer_grid .gray_box dt {
  font-size: 0.8125rem;
  color: var(--gray-500);
  margin-top: 0.5rem;
}
 
.officer_grid .gray_box dt:first-child { margin-top: 0; }
 
.officer_grid .gray_box dd {
  margin: 0;
  font-size: 1.0625rem;
  font-weight: 600;
  color: var(--gray-900);
}
 
/* footer */
.policy_footer {
  padding: 2.5rem 0;
  text-align: center;
  font-size: 0.9375rem;
  color: var(--gray-500);
}
 
.policy_hero .tab_list{display: none;}
/* ===== responsive ===== */
@media screen and (max-width: 1024px) {
  .policy_hero { padding: 4.5rem 0 3rem; }
  .policy_hero h1 { font-size: 2.25rem; }
  .article_section  { margin-top: 4.5rem; }
  .measure_grid { grid-template-columns: 1fr; }
  .officer_grid { grid-template-columns: 1fr; }
  .content { padding-top: 3rem; padding-bottom: 6rem; }
}
 
@media screen and (max-width: 768px) {
  .policy_hero h1 { font-size: 1.75rem; }
  .tab_list { margin: 2.5rem 0 3.75rem; gap: 0.5rem; }
  .tab_list > li > a { height: 2.5rem; padding: 0 1rem; font-size: 0.8125rem; }
  .sub_tit { font-size: 1.375rem; gap: 0.75rem; }
  .sub_tit .num { width: 1.875rem; height: 1.875rem; font-size: 0.875rem; }
  .table_style01 th, .table_style01 td { padding: 0.875rem 1rem; font-size: 0.9375rem; }
  .table_style01 th { width: 34%; }
}