/* --- 커스터마이징 --- */
@charset "utf-8";
/* 초기화 */
html {overflow-y:scroll}
body {margin:0;padding:0;font-size:12px;font-family:'Malgun Gothic',"맑은 고딕",AppleGothic,Dotum,"돋움", sans-serif;background:#f3f3f3;height:100%;}
html, h1, h2, h3, h4, h5, h6, form, fieldset, img {margin:0;padding:0;border:0}
h1, h2, h3, h4, h5, h6 {font-size:1em;font-family:'Malgun Gothic',"맑은 고딕",AppleGothic,Dotum,"돋움", sans-serif;}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display:block}

ul{margin:0;padding:0;list-style:none}
li,dt,dd,ol{margin:0;padding:0}
ol{list-style-position:inside}
legend {position:absolute;margin:0;padding:0;font-size:0;line-height:0;text-indent:-9999em;overflow:hidden}
label, input, button, select, img {vertical-align:middle}
input, button {margin:0;padding:0;font-family:'Malgun Gothic',"맑은 고딕",AppleGothic,Dotum,"돋움", sans-serif;font-size:1em}
button,input[type="submit"] {cursor:pointer}
textarea, select {font-family:'Malgun Gothic',"맑은 고딕",AppleGothic,Dotum,"돋움", sans-serif;font-size:1em}
select {margin:0}
p {margin:0;padding:0;word-break:break-all}
pre {overflow-x:scroll;font-size:1.1em}
/* a:link, a:visited {color:#000;text-decoration:none} */

* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}

h2{font-size: 1.083em;font-weight: bold;margin:10px 0}

body{
    font-family:  '맑은고딕';
    font-size:12px;
    background:rgb(241, 245, 249);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: auto;
}

ion-icon{
    font-size:17px;
    --ionicon-stroke-width: 40px;
    margin:0 4px;
}
#tnb a{
    display:flex;
    align-items: center;
    justify-content: center;
}
#tnb a svg{
    padding-right:10px;
}
#tnb li.tnb_li > a:link{
    letter-spacing: -1px;
    font-family:  'NanumSquare';
    font-weight: bold;
    font-size:12.5px;
}

#hd_top{
    background:#007ad8 url('../img/max-saeling.png'); 
    box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.15);
    background-size: cover;
}

#container_title{
    font-family:  'NanumSquare';
    letter-spacing: -1px;
    background:#222;
    color:#fff;
    /* box-shadow: 0px 0px 4px 1px rgba(0, 0, 0, 0.15); */
}

#btn_gnb{
    background:url(../img/menu-cl.png) 50% 50% no-repeat #2cabff;
}


/* #ft{
    font-family:  'NanumSquare';
    background:none;
    text-align:right;
} */

.form-select{
    font-size:12px;
    padding:1px 7px;
    line-height: 1em;
}

/* 테이블 */
table {
    clear:both;
    width:100%;
    border-collapse:collapse;
    border-top:2px solid #385b8f;
}
table caption {height:0;font-size:0;line-height:0;overflow:hidden}
table td{line-height: 22px;}
tfoot th, tfoot td {border:1px solid #d6dce7;background:#eee;padding:5px;text-align:center;font-weight:bold; padding:8px}
tfoot th {}

.tbl_wrap {margin:0 0 10px;padding:0}

/* thead 한 줄 테이블 */
.tbl_head01 {} 
.tbl_head01 table {clear:both;width:100%;border-collapse:collapse;border-spacing:0; border-top:2px solid #222;}
.tbl_head01 thead th {background:#f5f5f5; border-bottom:1px solid #ddd; color:#333;font-weight:normal;text-align:center;padding:10px 5px; font-weight:500; 
}
.tbl_head01 thead th a{color:#333}
.tbl_head01 thead input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head01 thead a {color:#383838;}
.tbl_head01 tbody th{border-bottom:1px solid #d6dce7;padding:15px 5px;text-align:center}
.tbl_head01 tbody td{border-bottom:1px solid #f5f5f5;padding:10px 5px;text-align:center}
.tbl_head01 tbody tr:nth-child(even){background:#fff}
.tbl_head01 tbody td .frm_input{width:100%;}
.tbl_head01 tbody td select{width:100%}
.tbl_head01 table .tbl_input{height:27px;line-height:25px;border:1px solid #d5d5d5;width:100%}
.tbl_head01 table select {height: 27px;line-height: 25px;width: 100%;}
.tbl_head01 tbody tr:last-child{border-bottom-left-radius: 7px; overflow: hidden;}
.tbl_head01 tbody th:last-child td:first-child{border-bottom-left-radius: 7px;}


/* thead 두 줄 테이블 */
.tbl_head02 {}
.tbl_head02 table {clear:both;width:100%;border-collapse:collapse;border-spacing:0}
.tbl_head02 thead th, .tbl_head02 tbody th {padding:5px 0;border:1px solid #d1dee2;background:#e5ecef;color:#383838;letter-spacing:-0.1em}
.tbl_head02 thead th {font-size:0.95em}
.tbl_head02 thead input {vertical-align:top} /* middle 로 하면 게시판 읽기에서 목록 사용시 체크박스 라인 깨짐 */
.tbl_head02 thead a {color:#383838;text-decoration:underline}
.tbl_head02 tbody th {}
.tbl_head02 tbody td {padding:7px 5px;line-height:1.4em;word-break:break-all}
.tbl_head01 tbody tr:last-child{border-bottom-left-radius: 7px; overflow: hidden;}
.tbl_head01 table .tbl_input{ text-align: center; border:1px solid #ddd;}
.frm_input{border:1px solid #ddd; border-radius: 0; padding:0 5px; transition: all 0.5s;}
.frm_input:focus{border:1px solid #2cabff; border-radius: 0; transition: all 0.5s; }
.required{background:none !important;}
.tbl_frm01 th{background:#f9f9f9; font-weight:normal;}

#bo_list_total{
    font-size:12px;
    letter-spacing: -1px;
}

#bo_btn_top{
    margin:5px 0;
}

.btn_03, a.btn_03{
    color:#fff;
}

a.btn_ov02, a.ov_listall{
    color:#fff;
}

.btn_02, a.btn_02{
    color:#fff;
    border-radius: 0;
    font-size:12px;
    letter-spacing:-1px;
    font-weight:normal;
    color:#222;
}

.btn_02:hover, a.btn_02:hover{
    color:#222;
}

.accordion-button{
    padding:10px;
}

.accordion-button{
    font-size:14px;
    font-family: NanumSquare;
    font-weight:400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: auto;
    -webkit-text-stroke: 0.20px;
    color:#777
}

h2{
    font-size:14px;
    font-family: NanumSquare;
    font-weight:400;
    -webkit-text-stroke: 0.2px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: auto;
    color:#444;
    background:#fff;
}

.accordion-button::after{
    background-size: 70%;
}
a.submenu:link, a.submenu:visited{
    display:block;
    padding:2px 0;
    font-size:12.5px;
    color:#fff;
}

a.submenu:hover{
    color:#2cabff;
}

.accordion-item{
    border:1px solid #f3f3f3;
}

.local_desc {
    background:#fff;
    font-weight:400;
    color:#777;
    letter-spacing: -1px;
}

.btn_03:hover, a.btn_03:hover{
    background:#6d7cd1;
    transition: all 0.2s;
    color:#fff;
}

.btn_02:hover, a.btn_02:hover{
    background:#cad9f3;
    transition: all 0.2s;
    color:#fff;
}

.local_sch01 .btn_submit{
    border-radius: 5px;
    background-color:#f5f5f5;
}

.anchor a{
    background:#eee;
    font-weight:400;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: auto;
    color:#555;
    margin:0 2px;
    border-radius: 0px;
    letter-spacing: -1px;
}

.anchor a:hover{
    background:#1e3044;
    color:#fff;
}

.btn_submit{
    border-radius: 5px;
    padding:5px 15px;
}

#logo{
    background:none; height:50px;position: absolute; top:100px; width:269px;padding:10px 0;text-align:center;
    font-size:22px;
    font-family: NanumSquare;
    color:#fff;
    font-weight:bold;
    box-sizing: border-box;
    padding-right:50px;
}

#tnb{
    position:absolute;
    right:0;
    top:50px;
}

#logo b{
    color:#2cabff;
}

#logo a:link, #logo a:visited{
     font-size:18px;
    font-family: Kanit;
    color:#fff;
    font-weight:bold;
    vertical-align: top;
    text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
}

#logo a:link span, #logo a:visited span{
    padding-bottom:10px;
}

.btn_01, a.btn_01{
    background:#5ebfff;
    border-radius: 0;
    transition: all 0.5s;
    font-weight: normal;
    color:#fff;
    letter-spacing: -1px;
}
.btn_01:hover, a.btn_01:hover{
    background:#6bc4ff;
    color:#fff;
    transition: all 0.5s;
}

.tbl_head01 tbody .bg1{
    background:#f5f5f5;
}

.gnb_oparea{
    font-family:  'NanumSquare';
    /* background: #414445; */
}

.accordion-button{
    /* background: #414445; */
    /* color:#fff; */
}

.accordion-button:not(.collapsed){
    /* background:#414445; */
    /* color:#fff; */
}

.accordion-item{
    background:#565656 !important;
    color:#fff;
    border:none;
}

.accordion-button:not(.collapsed){
    box-shadow: none;
    border-bottom:none;
}

#tnb a{
    color:#ddd;
}

.tbl_head01 tbody .bg1{
    background:#f7f7f7
}

#ft{
    background:rgb(241, 245, 249);
}

.accordion-body{
    border-top:1px solid #222;
    border-left:1px solid #222;
}

/* .btn{
    font-size: 12px;
    background:#1e3044;
    line-height:1em;
    color:#fff;
    border-radius: 0;
    padding:2px 6px;
    line-height:1em;
} */

.btn{
    font-size:12px;
    border-radius: 0;
    letter-spacing: -1px;
    line-height:1em;
}

/* .btn:hover{
    background: #000;
    color:#fff;
} */

.accordion-header{
    margin-top:0;
}

.accordion-flush .accordion-item .accordion-button, .accordion-flush .accordion-item .accordion-button.collapsed{
    padding-left:25px;
    color:#444;
    background:#f5f5f5;
}

.accordion-body{
    padding-left:35px;
}

.accordion-item:not(:first-of-type){
    background:#ffcc00;
}

.form-select{
    border-radius:0;
}

.accordion-button::after{
    /* background-image:none; */
}

/* 테스트 */
.graph_wrapper{
    display:flex;
    justify-content: space-around;
    flex-direction: row;
    border:1px solid #ccc;
    padding:20px 0;
    
}
.graph_title{
    border-bottom:1px solid #ddd;
    padding:10px;
    background:#f5f5f5;
}

.graph_part{
    width:32vw;
    height:250px;
    margin:0 20px;
    border:1px solid #ccc;
    box-shadow: 0 0 5px 0 rgba(0, 0, 0, 0.2);
}

canvas { 
    width: 100vw; 
    display: block;
  }

.graph_area{
    height:250px;
    padding:15px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.list_part{
    border:1px solid #ccc;
}
.list_area{
    padding:15px;
    display: flex;
    justify-content: center;
    align-items: center;
}
.list_title{
    border-bottom:1px solid #ddd;
    padding:10px;
    background:#f5f5f5;
    font-size:13px;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: auto;
    font-family:  'NanumSquare';
    -webkit-text-stroke:0.15px;
}

.section_part{
    margin-top:30px;
}

textarea:focus,
select:focus,
input[type="text"]:focus,
input[type="password"]:focus,
input[type="datetime"]:focus,
input[type="datetime-local"]:focus,
input[type="date"]:focus,
input[type="month"]:focus,
input[type="time"]:focus,
input[type="week"]:focus,
input[type="number"]:focus,
input[type="email"]:focus,
input[type="url"]:focus,
input[type="search"]:focus,
input[type="tel"]:focus,
input[type="color"]:focus,
.uneditable-input:focus,
.form-control:focus,
.form-select:focus {   
  border-color: none;
  box-shadow: none;
  outline: 0 none;
}

.form-select .form-control:focus {
    outline: 0px none #fff !important;
}

.form-select .form-control > div.filter-option:focus {
    outline: 0px none #fff !important;
}

.form-select .form-control > div.filter-option > div.filter-option-inner:focus {
    outline: 0px none #fff !important;
}

.form-select .form-control > div.filter-option > div.filter-option-inner > div.filter-option-inner-inner:focus {
    outline: 0px none #fff !important;
}

.accordion-button:not(.collapsed){
    background:#f5f5f5;
}

.accordion-button::after{
    opacity:0.8;
    background-size:55%;
    background-position: 50%;
}

#bo_v_info .profile_info .profile_info_ct{
    display:flex;
    align-items: center;
}

#bo_v_info .profile_info .profile_info_ct span{
    margin-right:5px;
    color:#777;
}

#bo_v_info{
    padding:0px 0 !important;
}

.btn_fixed_top{
    top:110px;
}

.btn_submit, .btn_02, a.btn_02{
    background:#2cabff;
    color:#fff;
    transition: all 0.4;
}

.btn_submit, .btn_02:hover, a.btn_02:hover{
    background:#2cabff;
    color:#fff;
    transition: all 0.4;
}

.btn_submit:hover{
    background:#2cabff;
    color:#fff;
    transition: all 0.4;
}

ul.period_tab{
    display: flex;
    flex-direction: row;
}

ul.period_tab > li{
    border:1px solid #ddd;
}

img.ui-datepicker-trigger{
    width:32px;
}

table.main_tbl {
    clear:both;
    width:100%;
    border-collapse:collapse;
    border-top:0px solid #385b8f;
}
table.main_tbl th{
    padding-bottom:10px;
    border-bottom:1px solid #ddd;
    text-align: center;
}

table.main_tbl td{
    border-bottom:1px solid #eee;
    padding:10px;
    text-align: center;
}

button.search_button{
    padding:8px 12px;
    border:1px solid #ddd;

}