@charset "utf-8";

/***  Reset CSS ***/
* { box-sizing: border-box;}
html { overflow-y: scroll; scroll-behavior: smooth;}
html,body { height: 100%}
body,h1,h2,h3,h4,h5,h6,p,ul,ol,li,dl,dt,dd,table,th,td,form,fieldset,legend,
input,textarea,button,select,strong,b {
	font-size: 16px; line-height: 25px; font-family: 'Pretendard', 'Noto Sans Kr', sans-serif;  margin: 0; padding: 0; color: #444;
}
h1,h2,h3,h4,h5,h6 { line-height: 100%; letter-spacing: -.6px; }
label { display: inline-block; cursor: pointer; }
input,textarea,select,button,table { font-family: 'Pretendard', 'Noto Sans Kr', sans-serif; font-size: 16px; color: #323232; font-weight: 400; }
img,fieldset {height: auto; border: 0; vertical-align: middle; max-width: 100%;}
em,address { font-style: normal;}
article,aside,dialog,footer,header,section,footer,nav,figure,main {
    display: block; margin: 0; padding: 0
}

button,input[type="submit"] { cursor: pointer; }
button { padding: 0;line-height: 100%; border-width: 0;background-color: transparent;}
legend { overflow: hidden; position: fixed; left: -1px; top: -1px; width: 1px; height: 1px; font-size: 0; line-height: 0;}
caption {height: 0; width: 1px; overflow: hidden;clip: rect(1px, 1px, 1px, 1px);}
button { background-color: transparent; }
span,div { line-height: 130%}
li {list-style: none; line-height: 19px;}
th {font-weight: normal;}

a { text-decoration: none;transition: background .1s; }
a:link,
a:visited { color: #555; }
a:hover, a:focus { color: #000; }
a:focus, button:focus, input:focus,textarea:focus,select:focus,input[type=text]:focus {
    outline: 2px solid rgba(72, 152, 255, 0.52) !important;
}

i { font-style: normal;}

@media (max-width:1024px) {
    body,p,ul,ol,li,dl,dt,dd,table,th, td,form, fieldset, legend, input, textarea, button, select { font-size: 14px; line-height: 24px; }
    input, textarea, select, button, table { font-size: 14px; line-height: 18px; }
}


/***공통 기본***/
.hide { position: fixed; top: -1px; left: -1px; width: 1px; height: 1px;overflow: hidden;color: #000;background: #fff;}

/* 접근성으로 인한 display:none 작성 금지 */
input[type="text"],
input[type="password"] { height: 32px; border: 1px solid #c9c9c9; text-indent: 5px; background: #fff; color: #323232; }

input[type="text"]:focus,
textarea:focus,
select:focus { outline: 2px solid #77abe7; }
select {
    height: 32px; border: 1px solid #c9c9c9; color: #323232;
    -webkit-appearance: none; appearance: none;padding: 0 33px 0 10px;
    background: #fff url('../images/common/select-img.png') no-repeat right 9px center;    
}

select::-ms-expand {display: none;}
textarea { width:100%;border: 1px solid #c9c9c9; box-sizing:border-box; padding:10px; font-size:14px; }

input[type=text].date_box {
    box-sizing: border-box;
    height: 32px;
    padding-right: 28px;
    background: #fff url(../images/common/call_blit.png) 97% center no-repeat;
    color: #323232
}

input[type="checkbox"]{ width:16px; height:16px; } 

/* Chrome, Edge, Safari */
input[type="date"]::-webkit-calendar-picker-indicator {
    display: none;
    -webkit-appearance: none;
}

/* Firefox */
input[type="date"]::-moz-calendar-picker-indicator {
    display: none;
}

/* IE/Edge Legacy */
input[type="date"]::-ms-clear {
    display: none;
}

/*** font weight  ***/
.bold {font-weight: bold;}
.normal { font-weight: normal;}
.f_normal { font-weight:400 !important; }
.f_medium { font-weight:500 !important; }
.f_bold { font-weight:700 !important; }
.f_exbold { font-weight: 800 !important; }

/***정렬***/
.left {  text-align: left !important; }
.center { text-align: center !important; }
.right { text-align: right !important; }

/*** 건너뛰기 메뉴 정의***/
#skip { position: relative; z-index: 9999; }
#skip a {
    position: absolute; top: -40px; left: 0; width: 100%; padding: 5px 0; background-color: #033478;
    font-size: 14px; line-height: 30px; color: #fff; text-align: center; transition: all 0.4s
}

#skip a:hover,
#skip a:focus,
#skip a:active { top: 0; text-decoration: none;}

/** 버튼, 컬러 reset **/
:root {
    --color-primary: #1E5EFF;     /* 신청 */
    --color-secondary: #545454;   /* 목록 */
    --color-success: #28A745;     /* 정합성 */
    --color-warning: #647ab1;     /* 주의 */
    --color-danger: #5e5f60;      /* 취소 */
    --color-light: #F8F9FA;
    --color-dark: #343A40;
    --color-navy: #003668;
    --color-gray: rgba(0,0,0,0.6); 
    
}

.btn-primary { background: var(--color-primary) !important; color: #fff; }
.btn-secondary { background: var(--color-secondary) !important; color: #fff; }
.btn-success { background: var(--color-success) !important; color: #fff; }
.btn-warning { background: var(--color-warning) !important; color: #fff; }
.btn-danger { background: var(--color-danger) !important; color: #fff; }
.btn-navy { background: var(--color-navy) !important; color: #fff; }


/***폰트색상***/
.red,
.point_color3,
.f_red { color: #d73938 !important; }

.blue,
.f_blue {color: #1F72CA !important;}
.f_navy { color:var(--color-navy) !important; }
.f_black { color:var(--color-dark) !important; }
.f_white { color:#fff !important;; }


/***테이블***/
.tblscroll{ overflow-x: auto;}
.tblscroll table{ min-width: 1000px;}

table { width: 100%; table-layout: fixed; border-collapse: collapse; }
table th, table td { padding: 8px 5px;}
table th[rowspan] { border-right: 1px solid #ddd;}
table th { color: #000;  font-weight: 600; border-bottom: 1px solid #222; border-right: 0; font-size: 15px; letter-spacing: -0.5px;}
table thead th { background: #f7f7fb; line-height: 1.4;}
table thead th:last-of-type { border-right: 0;}
table td {
	font-weight:500; color: #444;text-align: center; line-height: 1; 
	border-bottom: 1px solid #ddd; border-right: 1px solid #ddd;    
}
table td:last-child { border-right: 0; }
table td img { vertical-align: middle; text-align: center;}
table td .icon_reply { position: relative; top: -7px;}

table .title { overflow: hidden; text-overflow: ellipsis; display: block; white-space: nowrap; margin: 0 10px; }
table .title:hover,
table .title:focus { text-decoration: underline;}

/*** 마진 ***/
.m0 {margin:0!important;}

.mt_0, .mt0 { margin-top:0 !important; }
.mt_5, .mt5 {margin-top:5px !important;}
.mt_10, .mt10 {margin-top:10px !important;}
.mt_15, .mt15 {margin-top:15px !important;}
.mt_20, .mt20 {margin-top:20px !important;}
.mt_25, .mt25 {margin-top:25px !important;}
.mt_30, .mt30 {margin-top:30px !important;}
.mt_35, .mt35 {margin-top:35px !important;}
.mt_40, .mt40 {margin-top:40px !important;}
.mt_45, .mt45 {margin-top:45px !important;}
.mt_50, .mt50 {margin-top:50px !important;}

.mb_0, .mb0 {margin-bottom:0 !important;}
.mb_5, .mb5 {margin-bottom:5px !important;}
.mb_10, .mb10 {margin-bottom:10px !important;}
.mb_15, .mb15 {margin-bottom:15px !important;}
.mb_20, .mb20 {margin-bottom:20px !important;}
.mb_25, .mb25 {margin-bottom:25px !important;}
.mb_30, .mb30 {margin-bottom:30px !important;}
.mb_35, .mb35 {margin-bottom:35px !important;}
.mb_40, .mb40 {margin-bottom:40px !important;}
.mb_45, .mb45 {margin-bottom:45px !important;}
.mb_50, .mb50 {margin-bottom:50px !important;}

.ml_0, .ml0 {margin-left:0 !important;}
.ml_5, .ml5 {margin-left:5px !important;}
.ml_10, .ml10 {margin-left:10px !important;}
.ml_15, .ml15 {margin-left:15px !important;}
.ml_20, .ml20 {margin-left:20px !important;}
.ml_25, .ml25 {margin-left:25px !important;}
.ml_30, .ml30 {margin-left:30px !important;}
.ml_35, .ml35 {margin-left:35px !important;}
.ml_40, .ml40 {margin-left:40px !important;}
.ml_45, .ml45 {margin-left:45px !important;}
.ml_50, .ml50 {margin-left:50px !important;}

.mr_0, .mr0 {margin-right:0 !important;}
.mr_5, .mr5 {margin-right:5px !important;}
.mr_10, .mr10 {margin-right:10px !important;}
.mr_15, .mr15 {margin-right:15px !important;}
.mr_20, .mr20 {margin-right:20px !important;}
.mr_25, .mr25 {margin-right:25px !important;}
.mr_30, .mr30 {margin-right:30px !important;}
.mr_35, .mr35 {margin-right:35px !important;}
.mr_40, .mr40 {margin-right:40px !important;}
.mr_45, .mr45 {margin-right:45px !important;}
.mr_50, .mr50 {margin-right:50px !important;}

/*** 패딩 ***/
.p0, .p0 {padding:0!important;}

.pt_0, .pt0 {padding-top:0 !important;}
.pt_5, .pt5 {padding-top:5px !important;}
.pt_10, .pt10 {padding-top:10px !important;}
.pt_15, .pt15 {padding-top:15px !important;}
.pt_20, .pt20 {padding-top:20px !important;}
.pt_25, .pt25 {padding-top:25px !important;}
.pt_30, .pt30 {padding-top:30px !important;}
.pt_35, .pt35 {padding-top:35px !important;}
.pt_40, .pt40 {padding-top:40px !important;}
.pt_45, .pt45 {padding-top:45px !important;}
.pt_50, .pt50 {padding-top:50px !important;}

.pb_0, .pb0 {padding-top:0 !important;}
.pb_5, .pb5 {padding-bottom:5px !important;}
.pb_10, .pb10 {padding-bottom:10px !important;}
.pb_15, .pb15 {padding-bottom:15px !important;}
.pb_20, .pb20 {padding-bottom:20px !important;}
.pb_25, .pb25 {padding-bottom:25px !important;}
.pb_30, .pb30 {padding-bottom:30px !important;}
.pb_35, .pb35 {padding-bottom:35px !important;}
.pb_40, .pb40 {padding-bottom:40px !important;}
.pb_45, .pb45 {padding-bottom:45px !important;}
.pb_50, .pb50 {padding-bottom:50px !important;}

.pl_0, .pl0 {padding-left:0 !important;}
.pl_5, .pl5 {padding-left:5px !important;}
.pl_10, .pl10 {padding-left:10px !important;}
.pl_15, .pl15 {padding-left:15px !important;}
.pl_20, .pl20 {padding-left:20px !important;}
.pl_25, .pl25 {padding-left:25px !important;}
.pl_30, .pl30 {padding-left:30px !important;}
.pl_35, .pl35 {padding-left:35px !important;}
.pl_40, .pl40 {padding-left:40px !important;}
.pl_45, .pl45 {padding-left:45px !important;}
.pl_50, .pl50 {padding-left:50px !important;}

.pr_0, .pr0 {padding-right:0 !important;}
.pr_5, .pr5 {padding-right:5px !important;}
.pr_10, .pr10 {padding-right:10px !important;}
.pr_15, .pr15 {padding-right:15px !important;}
.pr_20, .pr20 {padding-right:20px !important;}
.pr_25, .pr25 {padding-right:25px !important;}
.pr_30, .pr30 {padding-right:30px !important;}
.pr_35, .pr35 {padding-right:35px !important;}
.pr_40, .pr40 {padding-right:40px !important;}
.pr_45, .pr45 {padding-right:45px !important;}
.pr_50, .pr50 {padding-right:50px !important;}

.b0{
    border-bottom: 0!important;
}


/* width */
.w100{width: 100%;}
.w90{width: 90%;}
.w80{width: 80%;}
.w70{width: 70%;}
.w60{width: 60%;}
.w50{width: 50%;}
.w40{width: 40%;}
.w30{width: 30%;}
.w20{width: 20%;}
.w10{width: 10%;}


/***bootstrap dropdown***/
.dropdown {
    position: relative;
}

.dropdown-menu {
    width: 100%;
    position: absolute;
    top: 100%;
    left: 0;
    z-index: 1000;
    display: none;
    float: left;
    min-width: 160px;
    margin: 2px 0 0;
    font-size: 14px;
    text-align: left;
    list-style: none;
    background-color: #fff;
    -webkit-background-clip: padding-box;
    background-clip: padding-box;
    border: 1px solid #ccc;
    border: 1px solid rgba(0, 0, 0, .15);
    border-radius: 4px;
    -webkit-box-shadow: 0 6px 12px rgb(0 0 0 / 18%);
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.18);
    z-index: 1;
}

.open > .dropdown-menu {
    display: block;
}

.dropdown-menu > li > a {
    display: block;
    padding: 12px 20px;
    border: 1px solid rgba(221, 221, 221, 0.42);
    font-weight: 300;
}

.dropdown-menu > li > a:hover {
    background: rgba(221, 221, 221, 0.40);
}

/***spinner***/
.ui-spinner {
    display: inline-flex;
    width: initial !important;
    align-items: center;
    border: none !important;
    flex-grow: 1;
}

.ui-widget-content.ui-spinner,
.ui-spinner-input {
    background: #eee;
}

.ui-spinner-input {
    border: 0;
    height: 20px;
    min-height: 30px;
    min-width: 30px;
    max-width: 50px;
    width: 20px;
    order: 2;
    text-align: center;
    margin: 0 2px;
    box-sizing: border-box;
    font-size: 14px !important;
}

.ui-spinner-input:focus {
    outline: none;
}

.ui-spinner-button,
.ui-spinner-button:focus,
.ui-spinner-button:hover {
    position: relative;
    width: 30px;
    height: 30px;
    min-width: 30px;
    min-height: 30px;
    max-width: 30px;
    border-radius: 0;
    box-sizing: border-box;
    display: flex;
    align-items: center;
    justify-content: space-around;
    outline: none;
    border: 1px solid #cecece !important;
    background: transparent !important;
}

.ui-spinner-up {
    order: 3;
}

.ui-spinner-down {
    order: 1;
}

.ui-spinner-up,
.ui-spinner-down {
    position: relative;
    cursor: pointer;
}

.ui-spinner-up:after,
.ui-spinner-up:before,
.ui-spinner-down:before {
    content: "";
    display: block;
    background: #000;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.ui-spinner-up:after,
.ui-spinner-down:before {
    width: 11px;
    height: 1px;
}

.ui-spinner-up:before {
    width: 1px;
    height: 11px;
}

input::-webkit-inner-spin-button,
input::-webkit-outer-spin-button {
    margin: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type=number] {
    -moz-appearance: textfield;
}


/***rc-wrap***/
.rc-wrap {
    position: relative;
    display: flex;
    flex-wrap: wrap !important;
    margin: 3px 28px 3px 0;
}

.rc-wrap input[type=checkbox],
.rc-wrap input[type=radio] {
    position: absolute;
    outline: none;
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=0);
    opacity: 0;
    z-index: -9;
}

.rc-wrap input[type=checkbox][disabled],
.rc-wrap input[type=radio][disabled] {
    cursor: not-allowed;
}

.rc-wrap input[type=checkbox][disabled] + label,
.rc-wrap input[type=radio][disabled] + label {
    cursor: not-allowed;
}

.rc-wrap input[type=checkbox][disabled] + label:before,
.rc-wrap input[type=radio][disabled] + label:before {
    filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=50);
    opacity: 0.5;
}

.rc-wrap input[type=checkbox]:focus + label:before,
.rc-wrap input[type=radio]:focus + label:before {
    box-shadow: 0 0 0 0.2rem rgba(0, 37, 76, 0.25);
}

.rc-wrap input[type=checkbox]:checked + label:after,
.rc-wrap .no-borderradius input[type=checkbox],
.no-borderradius .rc-wrap input[type=radio] {
    background: transparent;
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
    border-color: #fff;
}

.rc-wrap input[type=checkbox] + label,
.rc-wrap input[type=radio] + label {
    cursor: pointer;
    padding-left: 25px;
    font-size: 15px;
}

.rc-wrap .no-borderradius input[type=checkbox] + label,
.no-borderradius .rc-wrap input[type=radio] + label {
    padding: 0;
}

.rc-wrap input[type=checkbox] + label:before,
.rc-wrap input[type=radio] + label:before {
    position: absolute;
    left: 0;
    top: 50%;
    margin-top: -8px;
    content: '';
    background: #ffffff;
    width: 16px;
    height: 16px;
    display: block;
    border: 1px solid #404040;
    border-radius: 2px;
}
.radio-label input[type=radio] { width:16px; height:16px; position:relative; top:2px; margin-right:5px;border: 1px solid #404040; }
.radio-label input[type=radio]:checked {accent-color: #3565d1;}

.rc-wrap input[type=checkbox]:checked + label:before,
.rc-wrap input[type=radio]:checked + label:before {
    background: #3565d1;
    border: 0;
}

.rc-wrap .no-borderradius input[type=checkbox] + label:before,
.rc-wrap.no-borderradius .rc-wrap.type1 input[type=radio] + label:before {
    display: none;
}

.rc-wrap input[type=radio]:checked + label:after {
    filter: progid:DXImageTransform.Microsoft.Alpha(enabled=false);
    opacity: 1;
}

.rc-wrap.type1 .no-borderradius input[type=checkbox] + label:after,
.no-borderradius input[type=radio] + label:after {
    display: none;
}

.rc-wrap label:before {
    content: '';
    -webkit-appearance: none;
    background-color: transparent;
    border: 2px solid #0079bf;
    display: inline-block;
    position: relative;
    vertical-align: middle;
    cursor: pointer;
    background: red;
}

.rc-wrap input:checked + label:after {
    content: '';
    display: block;
    position: absolute;
    top: 2px;
    left: 4px;
    width: 6px;
    height: 10px;
    border: solid #0079bf;
    border-width: 0 3px 3px 0;
    transform: rotate(45deg) scale(0.7);
}

/** 신청조회 목록 체크박스 사용 시, check 아이콘 위치 조절용 **/
.rc-wrap input:checked + label.list_check:after { top:-8px !important; }


.rc-inner label { font-size:15px !important; }

/***버튼***/
button,
button:hover { transition: all 0.3s ease; }
.btn-wrap { margin-top: 28px;}
.btn-wrap .btn-default:not(:first-of-type) { margin-left: 0px;}
.btn-wrap_lg { margin-top: 28px;  padding: 20px 0; margin-bottom: 5px; }

.btn-default {
	display: inline-block; padding: 12px 0; text-align: center; border-radius: 3px; min-width: 106px; font-weight: 500;
}
.btn-default_lg {
    display: inline-block; padding: 15px 100px; text-align: center; border-radius: 3px;
    min-width: 106px; font-weight: 500; font-size: 18px; 
}
.btn-default_sm {
    display: inline-block; padding: 15px 40px; text-align: center; border-radius: 3px;
    min-width: 106px; font-weight: 500; font-size: 18px;
}
.btn-line { border: 1px solid #4357b3; background: #fff; color: #3f44a0 !important;}
.btn-line_lg {
    border: 1px solid #4357b3; background: #fff; color: #3f44a0 !important;  margin-bottom: 5px;
}
.btn-default:hover, .btn-default:focus,
.btn-default_lg:hover, .btn-default_lg:focus,
.btn-default_sm:hover, .btn-default_sm:focus {
    background: #4357b3; border: 1px solid #4357b3; color: #fff !important;
}


@media(max-width: 850px) {

    .btn-default_lg,
    .btn-default_sm {
        display: block;
        width: 100%;
        margin-bottom: 5px;
        padding: 13px 0;
    }
}

@media(max-width: 780px) {
    .btn-wrap .btn-default:not(:last-of-type) {
        margin-bottom: 5px;
    }


    .btn-default {
        display: block;
        width: 100%;
    }
}

@media(max-width: 480px) {
    .btn-default_lg {
        padding: 12px;
    }
}


/***datepicker***/
.ui-datepicker select.ui-datepicker-month,
.ui-datepicker select.ui-datepicker-year {
    width: auto !important;
}

.ui-datepicker .ui-datepicker-title {
    display: flex;
}

/* gnb box-shadow*/



/*navigator 숨기 */
#navigator {
    display: none;
}

