

#page_wrap {
     position: relative;
}
#page_wrap.page01_01 .box-wrap {
    background: #eae7e3;
    padding: 50px;
}
#page_wrap.page01_01 .right-t {
    text-align: right;
    color: #6b3e6b;
    font-size: 22px;
    font-weight: 600;
}
#page_wrap.page01_01 .right-t p {
    font-size: 25px;
    font-weight: 600;
    color: #000;

}

#page_wrap.page01_01 .box-wrap .white-box {
    background: #fff;
    padding: 100px 70px;
    position: relative;
    margin-top: 45px;
}
#page_wrap.page01_01 .label-wrap {
    position: relative;
    display: inline-block;
    position: absolute;
    top: -30px;
    left: 30px;
}

#page_wrap.page01_01 .label-wrap .label {
    background: #6b3a6d;
    /* 보라색 */
    color: #fff;
    font-size: 22px;
    font-weight: 500;
    padding: 15px 50px;
    position: relative;
    z-index: 10;
}

/* 꼬리(삼각형) */
#page_wrap.page01_01 .label-wrap .label::after {
    content: "";
    position: absolute;
    right: -20px;
    top: 1px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 28px 0 0 20px;
    border-color: transparent transparent transparent #2e1a2f;

}

#page_wrap.page01_01 .box-wrap .white-box .main-title {
    text-align: center;
    font-size: 40px;
    color: #09375e;
    font-weight: 700;
    position: relative;
    display: block;
}
#page_wrap.page01_01 .box-wrap .white-box .main-title br {
    display:none;
}
#page_wrap.page01_01 .box-wrap .white-box .main-title::before {
    position: absolute;
    width: 90%;
    height: 1px;
    background: #000;
    content: '';
    margin-top: 56px;
}
#page_wrap.page01_01 .box-wrap .white-box .text {
    margin-top: 50px;
    font-size: 22px;
    color: #363636;
}
/* 블록 상·하단 라인 */
#page_wrap.page01_01 .box-wrap .white-box .text .points {
    border-top: 1px solid #e6e6e6;
    border-bottom: 1px solid #e6e6e6;
    padding: 28px 0;
    margin-top: 50px;
}

/* 리스트 리셋 */
#page_wrap.page01_01 .box-wrap .white-box .text .points-list {
    margin: 0;
    padding: 0;
    list-style: none;
}

/* 항목 스타일 */
#page_wrap.page01_01 .box-wrap .white-box .text .points-list li {
    position: relative;
    padding-left: 20px;
    font-size: 22px;
    line-height: 1.9;
    color: #111;
}

/* 항목 간격 */
#page_wrap.page01_01 .box-wrap .white-box .text .points-list li + li {
    margin-top: 4px;
}

/* 주황색 도트 */
#page_wrap.page01_01 .box-wrap .white-box .text .points-list li::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0.9em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: #ff9a3b;
    transform: translateY(-50%);
}
#page_wrap.page01_01 .box-wrap .white-box .sign-wrap {
    display: flex;
    justify-content: end;
    align-items: end;
    margin-top: 50px;
}
#page_wrap.page01_01 .box-wrap .white-box .sign-wrap .sign-text {
    height: 50px;
    font-size: 20px;
    font-weight: 600;
    color: #3d5876;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-right: 30px;
}
#page_wrap.page01_01 .box-wrap .white-box .sign-wrap .sign-text .name {
    width: 160px;
    height: 60px;
    display: inline-block;
    background: url("../../img/sub/ssain.jpg");
    background-repeat: no-repeat;
    background-position: 50% 100%;
}
@media (max-width:600px) {
    #page_wrap.page01_01 .box-wrap .white-box .points-list li {
        font-size: 16px;
    }
}

#page_wrap.page01_02 .sub_txt {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 20px;
    column-gap: 20px;
}
#page_wrap.page01_02 .sub_txt .img_li_box {
    border: 1px #dcdcdc solid;
    display: flex;
    align-items: center;
    padding: 0;
    margin: 0;
}
#page_wrap.page01_02 .sub_txt .img_li_box img {
    width: 100%;
    /* width: 180px; */
}
#page_wrap.page01_02 .sub_txt .img_li_box .ceo_info {
    padding-left: 35px;
    padding-right: 35px;
}
#page_wrap.page01_02 .sub_txt .img_li_box .ceo_info .ceo_info01 {
    font-weight: 600;
    font-size: 20px;
    color: #000;
    margin-bottom: 12px;
}
#page_wrap.page01_02 .sub_txt .img_li_box .ceo_info .ceo_info02 {
    font-size: 16px;
    line-height: 24px;
}

/* 탭 메뉴 */
/* =========================
   탭 메뉴 (정리본)
========================= */

/* 래퍼 */
.tabs-wrap {
    display: flex;
    align-items: center;
    width: 100%;
    gap: 10px;
    position: relative;
    margin-bottom: 55px;
}

/* 화살표 (PC) */
.tab-arrow {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 36px;
    height: 36px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    border: 1px solid #d7d7d7;
    background: #fff;
    color: #666;
    cursor: pointer;
    transition: background 0.15s, color 0.15s, border-color 0.15s, opacity 0.15s;
}
.tab-arrow--left {
    left: -50px;
}
.tab-arrow--right {
    right: -50px;
}
.tab-arrow:hover {
    background: #1f5fbf;
    color: #fff;
    border-color: #1f5fbf;
}
.tab-arrow[disabled] {
    opacity: 0.35;
    pointer-events: none;
}

/* 캡슐형 트랙 */
.tabs-box {
    flex: 1 1 auto;
    overflow: hidden;
    border-radius: 14px;
    background: #f4f4f4;
}

/* 스크롤 영역 */
.tabs-scroller {
    display: flex;
    min-height: 62px;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    scrollbar-width: none;
    cursor: grab;
}
.tabs-scroller::-webkit-scrollbar {
    display: none;
}
.tabs-scroller.dragging {
    cursor: grabbing;
    user-select: none;
}

/* 탭 */
.tab {
    flex: 1 0 auto;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 0 30px;
    font-weight: 500;
    font-size: 18px;
    color: #909090;
    text-decoration: none;
    position: relative;
    transition: color 0.15s, background 0.15s;
    width: 25%;
    text-align: center;
    line-height: 22px;
}
.tab.active {
    background: #2b50b9;
    /* 활성 파랑 */
    color: #fff;
}
/* 활성 탭 라운드 */
/* .tabs-scroller .tab:first-child.active{ border-radius:14px 0 0 14px; }
.tabs-scroller .tab:last-child.active{  border-radius:0 14px 14px 0; } */
.tabs-scroller .tab.active {
    border-radius: 14px;
    box-shadow: 0 3px 5px rgba(17, 2, 153, 0.4);
}
/* 활성 다음 탭 경계선 제거(필요시) */
.tab.active + .tab::before {
    background: transparent;
}

/* 모바일: 화살표 숨김 + 여백 조정 */
@media (max-width:991px) {
    .tab-arrow {
        display: none;
    }
    .tabs-wrap {
        gap: 0;
    }
}

h2.title {
    font-size: 26px;
    font-weight: 700;
    color: #000;
    margin-bottom: 40px;
}

#page_wrap.page01_03 {}
/* 컨테이너 한 섹션 */
#page_wrap.page01_03 .box-wrap {}

/* 섹션 타이틀 */
#page_wrap.page01_03 .box-wrap .box-title {
    margin-top: 37px;
    margin-bottom: 16px;
    position: relative;

}
#page_wrap.page01_03 .box-wrap .box-title h3 {
    font-size: 24px;
    font-weight: 600;
    color: #0d326f;
}
#page_wrap.page01_03 .box-wrap .box-title::before {
    content: "\F282";
    position: absolute;
    right: 10px;
    top: 10px;
    color: #000;
    font-family: 'bootstrap-icons';
}
/* 조항 박스 */
#page_wrap.page01_03 .box-wrap .box {
    position: relative;
    margin-bottom: 12px;
    border: 1px #dae2f8 solid;
    /* background: #f8fafe; */
    padding: 35px 45px 35px;
    border-radius: 0.8em;
    /* font-size: 17px; */
    line-height: 28px;
}
/* #page_wrap.page01_03 .box-wrap .box {
    position: relative;
    margin-bottom: 12px;
    border: 1px #ddd solid;
    padding: 20px 35px 25px;
    border-radius: 0.8em;
    font-size: 17px;
    line-height: 28px;
} */

/* 조항 제목 (h4) */
#page_wrap.page01_03 .box-wrap .box > h4 {
    margin: 0 0 6px;
    font-size: 21px;
    font-weight: 600;
    color: #1e1e1e;
    /* 포인트 파랑 */
    line-height: 1.4;
    /* border-bottom: 1px #eeeeee solid; */
    /* border-bottom: 1px #e6ecfc solid; */
    padding-bottom: 16px;
    color: #2b50b9;
     position: relative;
}
#page_wrap.page01_03 .box-wrap .box > h4::before {
     /* position: absolute;
     width: 30px;
     height: 1px;
     background: #6480cc;
     content: '';
     margin-top: 36px; */
}
/* 본문 문장 */

/* 1단계 리스트 */
#page_wrap.page01_03 .box-wrap .box ul.num {
    margin: 18px 0 0 1.2em;
    padding: 0;
    list-style: decimal;
    /* ← 숫자 리스트 */
}
#page_wrap.page01_03 .box-wrap .box ul.num > li {
    margin: 2px 0 20px;
}
#page_wrap.page01_03 .box-wrap .box ul.num.non_mb li {
    margin-bottom: 6px;
}
/* 2단계 리스트 */
#page_wrap.page01_03 .box-wrap .box ul ul {
    margin-top: 4px;
    list-style: none;
}
#page_wrap.page01_03 .box-wrap .box ul.mb li {
    margin-bottom: 20px;
}
/* 숫자형 리스트를 쓰고 싶을 때(선택) */
#page_wrap.page01_03 .box-wrap .box ol {
    margin: 8px 0 0 1.4em;
    padding: 0;
    list-style: decimal;
}
#page_wrap.page01_03 .box-wrap .box ol li {
    margin: 2px 0 210px;
}

/* 강조 텍스트 */
#page_wrap.page01_03 .box-wrap .box strong {
    font-weight: 600;
    color: #000;
}

/* 링크(선택) */
#page_wrap.page01_03 .box-wrap .box a {
    color: #2b50b9;
    text-decoration: underline;
    text-underline-offset: 2px;
}

/* 반응형 */
@media (max-width: 991px) {
    #page_wrap.page01_03 .box-wrap {
        margin: 22px 0 32px;
    }
    #page_wrap.page01_03 .box-wrap .box-title h3 {
        font-size: 22px;
    }
    #page_wrap.page01_03 .box-wrap .box {
        padding: 16px;
    }
    #page_wrap.page01_03 .box-wrap .box > h4 {
        font-size: 17px;
    }
}
@media (max-width: 600px) {
    #page_wrap.page01_03 .box-wrap .box-title h3 {
        font-size: 20px;
    }
    #page_wrap.page01_03 .box-wrap .box {
        padding: 14px;
        border-radius: 8px;
    }
    #page_wrap.page01_03 .box-wrap .box > h4 {
        font-size: 16px;
    }
}
#page_wrap .table-basic thead th {
    background: #f9f9f9;
    font-size: 17px;
}
#page_wrap .table-basic tbody th {
    color: #000;
    font-size: 17px;
}
#page_wrap .table-basic tbody td {
    text-align: center;
    font-size: 17px;
}
#page_wrap.page05_01 .benner  {
     position: relative;
}
#page_wrap.page05_01 .benner dl {
     position: absolute;
     text-align: center;
     width: 100%;
     display:flex;
     justify-content: center;
     align-items: center;
     flex-direction: column;
     height: 100%;
}
#page_wrap.page05_01 .benner dl dt {
    color: #fff;
    font-size:19px;
    font-weight:400;
    /* line-height: 24px; */
}
#page_wrap.page05_01 .benner dl dd {
    color: #fff;
    font-size:29px;
    line-height: 36px;
    font-weight:700;
}
#page_wrap.page05_01 .benner img {
    width: 100%;
}
#page_wrap.page05_01 .content .title {
    margin-top: 60px;
    border-bottom: 1px #ddd solid;
    padding-bottom: 20px;
    margin-bottom: 36px;
}
#page_wrap.page05_01 .content .title h3 {
    color: #000;
    font-size:26px;
    font-weight:700;
}
#page_wrap.page05_01 .content .title h3 span {
    background: url('../../img/sub/heat.png');
    background-repeat: no-repeat;
    background-position: 0 50%;
    padding-left: 42px;
    color: #f2669b;
}
#page_wrap.page05_01 .content  .ssain {
    text-align: right;
    margin-top: 32px;
    color: #000;
    font-size:15px;
}
#page_wrap.page05_01 .content  .ssain span {
    font-family: 'Nanum Brush Script';
    font-weight:590;
    padding-left: 16px;
    font-size:38px;
}
#page_wrap ul.dot li {
    padding-bottom: 6px;
}
#page_wrap ul.dot li::before {
    content: "· ";
}
#page_wrap.page05_03 .box {
    display:flex;
}
#page_wrap.page05_03 .box:last-child {
    margin-top: 90px;
}
#page_wrap.page05_03 .box .title {
     width: 42%;
      display:block;
      color: #0d326f;
     
}
#page_wrap.page05_03 .box .title p.year {
    font-family: 'Poppins', 'Noto Sans KR', sans-serif;
    font-size:19px;
    color: #8a8a8a;
    font-weight:600;
    /* border: 1px #3f68d6 solid; */
    /* background: #e9eef8; */
    /* color: #2b50b9; */
    /* padding: 2px 15px; */
    /* border-radius: 3em; */
    /* position: absolute; */
    margin-top: 20px;
     position: relative;
     display:block;
     color: #000;
    

}
#page_wrap.page05_03 .box .title p.year::before {
    position: absolute;
    width: 120px;
    height: 1px;
    background: #000;
    content: '';
    margin-top: 26px;
}
#page_wrap.page05_03 .box:last-child .title p.year::before {
    position: absolute;
    width: 76px;
    height: 1px;
    background: #2b50b9;
    content: '';
    margin-top: 26px;
}
#page_wrap.page05_03 .box .title p.year::after {
    content: "\F285";
    margin-left: 12px;
    font-family: 'bootstrap-icons';
    font-size:12px;
}

#page_wrap.page05_03 table tbody th {
    font-family: 'Poppins', 'Noto Sans KR', sans-serif;
}
#page_wrap.page05_03 table tbody td:nth-child(3) {
}
#page_wrap.page05_04 table.last {
    margin-top: 40px;
}
#page_wrap.page05_04 tbody td ul li::before {
    content: "· ";
}
#page_wrap.page05_04 .tip {
    margin-top: 20px;
    border: 1px #dae2f8 solid;
    background: #fbfcff;
    padding: 25px 34px;
    border-radius: 10px;
    text-align: center;
    color: #2b50b9;
}
#page_wrap.page05_07 .tip-box {
    background: #f7f7f7;
    border-radius: 13px;
    padding: 42px 55px;
    display:flex;
    margin-bottom: 40px;

}
#page_wrap.page05_07 .tip-box h3 {
    color: #000;
    font-size:20px;
    font-weight:700;
}
#page_wrap.page05_07 .tip-box dl {
    padding-left: 40px;
    margin-left: 40px;
     position: relative;
     
    
}
#page_wrap.page05_07 .tip-box dl::before {
    content: "";
    width: 1px;
    height: 90%;
    background: #d2d2d2;
     position: absolute;
     left: 0px;
     top: 0px;

}

#page_wrap.page05_07 .tip-box dl dt {
    color: #000;
     position: relative;
     display:inline-block;
     font-weight:600;
}
#page_wrap.page05_07 .tip-box dl dt::before {
    position: absolute;
    width: 100%;
    height: 1px;
    background: #000;
    content: '';
    margin-top: 26px;
}
#page_wrap.page05_07 .tip-box dl dd {
    margin-top: 12px;
     position: relative;
     font-size:17px;
}
#page_wrap.page05_07 .tip-box dl dd::before {
    content: '· ';
}
#page_wrap.page05_07 .table-responsive {
    margin-top: 40px;
}
#page_wrap.page01_48 .box-wrap  {
    margin-bottom: 30px;
}
#page_wrap.page01_48 .box-wrap h2 {
    margin-bottom: 12px;
    font-size:24px;
    font-weight:700;
    color: #000;
}
#page_wrap.page01_48 .box-wrap .box {
   width: 100%;
  height: 300px; /* 원하시는 높이 */
  
  /* 1. 바탕색 설정 (보통 흰색이나 투명) */
  background-color: #ffffff;
  
  /* 2. 격자 선 만들기 (가로선 + 세로선) */
  background-image: 
    linear-gradient(#f2f2f2 1px, transparent 1px), /* 가로선 색상과 두께 */
    linear-gradient(90deg, #f2f2f2 1px, transparent 1px); /* 세로선 색상과 두께 */
    
  /* 3. 격자 칸 크기 조절 */
  background-size: 20px 20px; /* 가로 20px, 세로 20px 간격 */
  
  /* (옵션) 선이 박스 테두리와 딱 맞게 시작하도록 설정 */
  background-position: -1px -1px;

  /* (옵션) 로고 중앙 정렬 */
  display: flex;
  gap: 50px;
  justify-content: center;
  align-items: center;
  border: 1px solid #ddd; /* 박스 외곽선 */
}