@charset "UTF-8";
/* 2020.03.11 */
@import url("/font/webfonts_NotoSansKR.css");
/*@import url("/font/webfonts_Montserrat.css");
@import url("/font/webfonts_PTserif.css");*/
@import url("/font/dingbat_xeicon.css");
@import url("/jquery/css/jquery.mCustomScrollbar.min.css");
@import url("/kr/css/slick.css");
*, *::before, *::after { -webkit-box-sizing: inherit; box-sizing: inherit; }
html { overflow: hidden; overflow-y: auto; -webkit-box-sizing: border-box; box-sizing: border-box; font-size: 20px; }
body { overflow: hidden; margin: 0; padding: 0; font-size: 0.8rem; line-height: 1.5625; font-family: "Noto Sans KR",sans-serif; font-weight:200; color: #333; letter-spacing:-1px; }
header, footer, main, section, article, nav, aside { display: block; }
ul, ol, li, dl, dt, dd { margin: 0; padding: 0; list-style: none; }
h1, h2, h3, h4, h5, h6, p, form, figure, figcaption { margin: 0; padding: 0; }
fieldset, hr { display: block; margin: 0; padding: 0; border: 0 none; }
input, select { max-width: 100%; vertical-align: middle; border:1px solid #ddd}
input, select, button, textarea, optgroup { margin: 0; font-family: inherit; font-size: inherit; color: inherit; }
address, em, i { font-style: normal; }
a { color: inherit; text-decoration: none; }
button { padding: 0; border: 0 none; background: none; cursor: pointer; }
input[type='submit'],select { -webkit-appearance: none; -moz-appearance: none; appearance: none; }
select::-ms-expand {display: none;}
img { max-width: 100%; border: 0 none; font-size: 0; vertical-align: middle; }
table { width: 100%; border-collapse: collapse; border-spacing:0}
caption, legend, .sr-only, .hidden, .blind, .IR { overflow: hidden; position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0 none; clip: rect(0, 0, 0, 0); }
#skipNav a {position:fixed;top:-99px;left:0;background:#333;color:#fff;width:100%;padding:10px 0;text-align: center;text-decoration:none;z-index:999;}
#skipNav a:hover,#skipNav a:focus,#skipNav a:active {position:fixed;display:block;top:0;}
.sr-only { position: absolute; overflow: hidden; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; clip: rect(0, 0, 0, 0); }
.txt-left { text-align: left !important; }
.txt-center { text-align: center !important; }
.txt-right { text-align: right !important; }
.float-left { float: left !important; }
.float-right { float: right !important; }
.container {position:relative; width: 64rem; max-width: calc(100% - 2rem); margin-left: auto !important; margin-right: auto !important; height: 100%; }
.container::after { display: block; clear: both; content: ''; }
.hide { clear: both; position: absolute; overflow: hidden; left: 0; top: 0; width: 1px; height: 1px; margin: 0; padding: 0; background: none; font-size: 0; line-height: 0; text-indent: -99999px; }
.web {display:block;}
.mobile {display:none}
.en {font-family:'Montserrat',sans-serif;}

/*@media(max-width:1025px){
  html {font-size:19px}
  .web {display:none}
  .mobile {display:block}
}*/
/*@media(max-width:540px){
  html {font-size:18px}
  ul.menu01 {
    width: 100% !important;
}
}*/
/* grid */
/* .row {margin-right: -15px; margin-left: -15px;} */
.row::after {content:''; display: block; clear:both;}
[class*="col-"]{ position: relative; min-height: 1px;	float: left;}
.col-xs-12 { width: 100%;}
.col-xs-11 { width: 91.66666667%;}
.col-xs-10 { width: 83.33333333%;}
.col-xs-9 { width: 75%;}
.col-xs-8 { width: 66.66666667%;}
.col-xs-7 { width: 58.33333333%;}
.col-xs-6 { width: 50%;}
.col-xs-5 { width: 41.66666667%;}
.col-xs-4 { width: 33.33333333%;}
.col-xs-3 { width: 25%;}
.col-xs-2 { width: 16.66666667%;}
.col-xs-1 { width: 8.33333333%;}
@media (min-width: 640px) {
  .col-sm-12 {width: 100%;}
  .col-sm-11 {width: 91.66666667%;}
  .col-sm-10 {width: 83.33333333%;}
  .col-sm-9 {width: 75%;}
  .col-sm-8 {width: 66.66666667%;}
  .col-sm-7 {width: 58.33333333%;}
  .col-sm-6 {width: 50%;}
  .col-sm-5 {width: 41.66666667%;}
  .col-sm-4 {width: 33.33333333%;}
  .col-sm-3 {width: 25%;}
  .col-sm-2 {width: 16.66666667%;}
  .col-sm-1 {width: 8.33333333%;}
}
@media (min-width: 992px) {
  .col-md-12 {width: 100%;}
  .col-md-11 {width: 91.66666667%;}
  .col-md-10 {width: 83.33333333%;}
  .col-md-9 {width: 75%;}
  .col-md-8 {width: 66.66666667%;}
  .col-md-7 {width: 58.33333333%;}
  .col-md-6 {width: 50%;}
  .col-md-5 {width: 41.66666667%;}
  .col-md-4 {width: 33.33333333%;}
  .col-md-3 {width: 25%;}
  .col-md-2 {width: 16.66666667%;}
  .col-md-1 {width: 8.33333333%;}
}
@media (min-width: 1200px) {
  .col-lg-12 {width: 100%;}
  .col-lg-11 {width: 91.66666667%;}
  .col-lg-10 {width: 83.33333333%;}
  .col-lg-9 {width: 75%;}
  .col-lg-8 {width: 66.66666667%;}
  .col-lg-7 {width: 58.33333333%;}
  .col-lg-6 {width: 50%;}
  .col-lg-5 {width: 41.66666667%;}
  .col-lg-4 {width: 33.33333333%;}
  .col-lg-3 {width: 25%;}
  .col-lg-2 {width: 16.66666667%;}
  .col-lg-1 {width: 8.33333333%;}
}

/* ==========================================================================
   테이블 태그 기반 목록 스타일 (tstyle_list_tbl)
   - 기존 div.tstyle_list와 동일한 외관을 제공
   - table, thead, tbody, tr, th, td 태그 사용
   ========================================================================== */

/* 테이블 기본 스타일 */
table.tstyle_list_tbl {
    width: 100%;
    border-collapse: collapse;
    border-spacing: 0;
    border-top: 2px solid #555;
    position: relative;
    table-layout: fixed;
}
table.tstyle_list_tbl::after {
    content: '';
    width: 100%;
    height: 1px;
    background-color: #aaa;
    position: absolute;
    bottom: 0;
    left: 0;
}

/* caption 스타일 (스크린리더 전용) */
table.tstyle_list_tbl caption.IR {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

/* colgroup 너비 클래스 */
table.tstyle_list_tbl col.W5 { width: 5%; }
table.tstyle_list_tbl col.W8 { width: 8%; }
table.tstyle_list_tbl col.W10 { width: 10%; }
table.tstyle_list_tbl col.W13 { width: 13%; }
table.tstyle_list_tbl col.W18 { width: 18%; }
table.tstyle_list_tbl col.W20 { width: 20%; }
table.tstyle_list_tbl col.W22 { width: 22%; }

/* thead 스타일 */
table.tstyle_list_tbl thead {
    border-bottom: 1px solid #aaa;
}
table.tstyle_list_tbl thead tr th {
    padding: .7rem .25rem;
    text-align: center;
    vertical-align: middle;
    color: #222;
    font-weight: bold;
    word-break: break-all;
}
table.tstyle_list_tbl thead tr th.title {
    text-align: center;
}

/* tbody 스타일 */
table.tstyle_list_tbl tbody tr {
    border-bottom: 1px solid #ddd;
}
table.tstyle_list_tbl tbody tr:last-child {
    border-bottom: 0;
}
table.tstyle_list_tbl tbody tr td {
    padding: .7rem .25rem;
    text-align: center;
    vertical-align: middle;
    font-size: .75rem;
    word-break: break-all;
}
table.tstyle_list_tbl tbody tr td.title {
    text-align: left;
}
table.tstyle_list_tbl tbody tr td.title.cssfcenter {
    text-align: center;
}

/* 공지사항 행 스타일 */
table.tstyle_list_tbl tbody tr.notice td:first-child {
    color: #000;
    font-weight: 500;
}
table.tstyle_list_tbl tbody tr.notice .icon-notice {
    color: #fff;
    display: inline-block;
    border-radius: 50%;
    width: 1.8rem;
    height: 1.8rem;
    text-align: center;
    background-color: #333;
    padding-top: .35rem;
    font-size: .65rem;
}

/* 링크 스타일 */
table.tstyle_list_tbl tbody tr td a {
    display: inline-block;
    vertical-align: middle;
    overflow: hidden;
    text-align: left;
    text-overflow: ellipsis;
    white-space: nowrap;
    width: 100%;
    font-size: .8rem;
}
table.tstyle_list_tbl tbody tr td a.icoHomepage {
    text-align: center;
    color: #3a53a7;
}
table.tstyle_list_tbl tbody tr td strong a {
    font-weight: 500;
}
table.tstyle_list_tbl tbody tr td a:hover,
table.tstyle_list_tbl tbody tr td a:focus {
    text-decoration: underline;
}
table.tstyle_list_tbl tbody tr td a.btn-line {
    display: inline-block;
    width: auto;
}
table.tstyle_list_tbl tbody tr td a.btn-line:hover,
table.tstyle_list_tbl tbody tr td a.btn-line:focus {
    color: #fff;
    text-decoration: none;
}

/* 파일 셀 스타일 */
table.tstyle_list_tbl tbody tr td.file a {
    text-align: center;
    width: 100%;
}
table.tstyle_list_tbl tbody tr td.file .xi-save {
    display: inline-block;
    width: .8rem;
    height: .85rem;
    background: url("/upload/skin/board/plani/icon_save.png") 0 0/cover no-repeat;
}
table.tstyle_list_tbl tbody tr td.file .xi-save::before {
    display: none;
}

/* 아이콘 스타일 */
table.tstyle_list_tbl tbody .xi-new {
    color: #126fb4;
    font-size: 1.1rem;
    display: inline-block;
    vertical-align: middle;
    margin-right: .2rem;
}
table.tstyle_list_tbl tbody td span.re-num {
    color: #d85430;
}

/* 상태 뱃지 스타일 */
table.tstyle_list_tbl tbody .state {
    font-size: .75rem;
    display: inline-block;
    vertical-align: middle;
    margin-left: .4rem;
    border-radius: 2px;
    padding: .1rem .45rem;
}
table.tstyle_list_tbl tbody .state.ing {
    background-color: #126fb4;
    color: #fff;
}
table.tstyle_list_tbl tbody .state.end {
    background-color: #555;
    color: #fff;
}
table.tstyle_list_tbl tbody .state.ready {
    background-color: #eee;
    color: #333;
}

/* 너비 클래스 (th, td용) */
table.tstyle_list_tbl .W5 { width: 5% !important; }
table.tstyle_list_tbl .W8 { width: 8% !important; }
table.tstyle_list_tbl .W10 { width: 10% !important; }
table.tstyle_list_tbl .W13 { width: 13% !important; }
table.tstyle_list_tbl .W18 { width: 18% !important; }
table.tstyle_list_tbl .W20 { width: 20% !important; }
table.tstyle_list_tbl .W22 { width: 22% !important; }

/* 데이터 없음 스타일 */
table.tstyle_list_tbl tbody tr.nodata td {
    padding: 20px;
    text-align: center;
}

/* ==========================================================================
   테이블 태그 기반 목록 - 반응형 스타일 (768px 이하)
   ========================================================================== */
@media screen and (max-width: 768px) {
    /* 테이블 헤더 숨김 */
    table.tstyle_list_tbl thead {
        display: none;
    }
    table.tstyle_list_tbl colgroup {
        display: none;
    }

    /* 행 스타일 변경 */
    table.tstyle_list_tbl tbody tr {
        display: block;
        padding: .6rem 0;
        position: relative;
        border-bottom: 1px solid #ddd;
    }
    table.tstyle_list_tbl tbody tr:last-child {
        border-bottom: 0;
    }

    /* 공지사항 행 모바일 스타일 */
    table.tstyle_list_tbl tbody tr.notice {
        border-bottom: 1px solid #ddd;
    }

    /* 셀 스타일 변경 */
    table.tstyle_list_tbl tbody tr td {
        display: inline-block;
        vertical-align: middle;
        width: auto !important;
        padding: 0 .25rem;
        margin-right: 5px;
        line-height: 1.4rem;
        border: none;
        white-space: normal;
    }
    table.tstyle_list_tbl tbody tr td:first-child {
        float: left;
    }
    table.tstyle_list_tbl tbody tr td.m-hidden:first-child {
        display: none;
    }
    table.tstyle_list_tbl tbody tr td.nowrap {
        white-space: nowrap;
    }
    table.tstyle_list_tbl tbody tr td.title {
        font-weight: 400;
        display: block;
        width: 93% !important;
        font-size: .9rem;
        clear: both;
    }
    table.tstyle_list_tbl tbody tr td.title a {
        font-size: .9rem;
    }
    table.tstyle_list_tbl tbody tr td.title.cssfcenter {
        text-align: left;
    }

    /* 상태 뱃지 위치 조정 */
    table.tstyle_list_tbl tbody .state {
        position: absolute;
        right: 0;
        top: 50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }

    /* 파일 셀 */
    table.tstyle_list_tbl tbody tr td.file {
        padding: 0;
    }
    table.tstyle_list_tbl tbody tr td.file i {
        margin: 0 .25rem;
    }
    table.tstyle_list_tbl tbody tr td.file a {
        width: 75%;
    }

    /* 데이터 없음 */
    table.tstyle_list_tbl tbody tr.nodata td {
        display: block;
        width: 100% !important;
        text-align: center;
    }
}

/* ==========================================================================
   모바일 숨김/줄바꿈 클래스 (테이블용)
   ========================================================================== */
@media screen and (max-width: 768px) {
    /* 첫 번째 m-hidden 셀(번호)만 숨김 - 파일, 조회수는 표시 */
    table.tstyle_list_tbl tbody tr td.m-hidden:first-child {
        display: none !important;
    }
    /* m-br 클래스: 모바일에서 줄바꿈 + 날짜는 한 줄 유지 */
    table.tstyle_list_tbl .m-br {
        white-space: nowrap;
    }
    table.tstyle_list_tbl .m-br::before {
        content: '';
        display: block;
    }
}

