@charset "UTF-8";


@font-face {
    font-family: 'Noto Sans KR';
    font-style: normal;
    font-weight: 400;
    src: url(../fonts/NotoSansKR/NotoSansKR-Regular.woff2) format('woff2'), url(../fonts/NotoSansKR/NotoSansKR-Regular.woff) format('woff');
}

@font-face {
    font-family: 'Noto Sans KR';
    font-style: normal;
    font-weight: 500;
    src: url(../fonts/NotoSansKR/NotoSansKR-Medium.woff2) format('woff2'), url(../fonts/NotoSansKR/NotoSansKR-Medium.woff) format('woff');
}

@font-face {
    font-family: 'Noto Sans KR';
    font-style: normal;
    font-weight: 700;
    src: url(../fonts/NotoSansKR/NotoSansKR-Bold.woff2) format('woff2'), url(../fonts/NotoSansKR/NotoSansKR-Bold.woff) format('woff');
}

/* pretendard */
@font-face {
    font-family: 'Pretendard';
    font-weight: 900;
    font-display: swap;
    src: local('Pretendard Black'), url('../fonts/pretendard/woff2/Pretendard-Black.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-Black.woff') format('woff');
}

@font-face {
    font-family: 'Pretendard';
    font-weight: 800;
    font-display: swap;
    src: local('Pretendard ExtraBold'), url('../fonts/pretendard/woff2/Pretendard-ExtraBold.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-ExtraBold.woff') format('woff');
}

@font-face {
    font-family: 'Pretendard';
    font-weight: 700;
    font-display: swap;
    src: local('Pretendard Bold'), url('../fonts/pretendard/woff2/Pretendard-Bold.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-Bold.woff') format('woff');
}

@font-face {
    font-family: 'Pretendard';
    font-weight: 600;
    font-display: swap;
    src: local('Pretendard SemiBold'), url('../fonts/pretendard/woff2/Pretendard-SemiBold.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-SemiBold.woff') format('woff');
}

@font-face {
    font-family: 'Pretendard';
    font-weight: 500;
    font-display: swap;
    src: local('Pretendard Medium'), url('../fonts/pretendard/woff2/Pretendard-Medium.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-Medium.woff') format('woff');
}

@font-face {
    font-family: 'Pretendard';
    font-weight: 400;
    font-display: swap;
    src: local('Pretendard Regular'), url('../fonts/pretendard/woff2/Pretendard-Regular.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-Regular.woff') format('woff');
}

@font-face {
    font-family: 'Pretendard';
    font-weight: 300;
    font-display: swap;
    src: local('Pretendard Light'), url('../fonts/pretendard/woff2/Pretendard-Light.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-Light.woff') format('woff');
}

@font-face {
    font-family: 'Pretendard';
    font-weight: 200;
    font-display: swap;
    src: local('Pretendard ExtraLight'), url('../fonts/pretendard/woff2/Pretendard-ExtraLight.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-ExtraLight.woff') format('woff');
}

@font-face {
    font-family: 'Pretendard';
    font-weight: 100;
    font-display: swap;
    src: local('Pretendard Thin'), url('../fonts/pretendard/woff2/Pretendard-Thin.woff2') format('woff2'), url('../fonts/pretendard/woff/Pretendard-Thin.woff') format('woff');
}


/* ===========================================================================================
common Palette
=========================================================================================== */

:root {
    --dark0: #14171f;
    --dark1: #282E3E;
    --dark3: #2a3248;
    --dark4: #3d4968;

    --gray1: hsla(0deg, 0%, 40%, 1);
    --gray2: hsla(0deg, 0%, 60%, 1);
    --gray3: hsla(0deg, 0%, 70%, 1);
    --gray4: hsla(0deg, 0%, 80%, 1);
    --gray5: hsla(0deg, 0%, 95%, 1);

    --bgGray: #f8f9fa;
    --bgYellow: #fffdf7;

    --primary: hsl(198, 100%, 41%);
    --lightBlue: #339af0;
    --blue: #1864ab;
    --darkBlue: #0f2e55;
    --red: #f03e3e;
    --darkRed: #c92a2a;
    --green: #37b24d;
    --darkGreen: #2b8a3e;
    --orange: #ff9800;
    --darkOrange: #e67700;
    --violet: #7048e8;
    --darkViolet: #5f3dc4;

    --blue-alpha20: hsla(198, 100%, 41%, .2);
    --blue-alpha05: hsla(198, 100%, 41%, .05);
}

/* ===========================================================================================
basic style reset
=========================================================================================== */
html {
    position: relative;
    height: 100vh;
    font-size: 10px;
    box-sizing: border-box;
    overflow-x: hidden;
    -webkit-text-size-adjust: 100%;
    -webkit-tap-highlight-color: transparent;
}

*, ::after, ::before {
    box-sizing: inherit;
}

body {
    margin: 0;
    padding: 0;
    font-size: 1.6rem;
    /* letter-spacing: -0.05em; */
    font-weight: 400;
    font-family: "Pretendard", "Noto Sans KR", "Malgun Gothic", "맑은 고딕", Dotum, "돋움", sans-serif;
    line-height: 1.5;
    color: var(--dark1, #333);
}

dd, dl, dt, li, ol, ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

h1, h2, h3, h4, h5, h6, p {
    margin: 0;
    padding: 0;
}

a {
    color: inherit;
    text-decoration: none;
}

img {
    display: inline-block;
    border: 0;
    vertical-align: middle;
    font-size: 0;
    max-width: 100%;
    image-rendering: -moz-crisp-edges;
    image-rendering: -o-crisp-edges;
    image-rendering: -webkit-optimize-contrast;
    image-rendering: crisp-edges;
    -ms-interpolation-mode: nearest-neighbor;
}


table {
    border-collapse: collapse;
    width: 100%;
    table-layout: fixed;
}

caption, legend {
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

input, select, textarea {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    color: #454545;
    font-size: 1.4rem;
    border-radius: 0;
}

input, select {
    vertical-align: middle;
}

input::-moz-placeholder {
    color: #999;
    opacity: 1;
}

/*input:-ms-input-placeholder { color: #999;}*/
input::-webkit-input-placeholder {
    color: #999;
}

input[type=password], input[type=text], input[type=number], select {
    border-radius: .4rem;
    padding: 0.6rem 1.2rem;
    min-height: 3.7rem;
    font-size: 1.5rem;
    line-height: 1.5;
    color: #555;
    background-color: #fff;
    background-image: none;
    border: 1px solid #C5C8D1;
    transition: border-color ease-in-out 0.15s, box-shadow ease-in-out 0.15s;
}

select {
    background-image: url(../img/board/select_arrow.gif) !important;
    background-repeat: no-repeat;
    background-position-x: calc(100% - 8px);
    background-position-y: center;
}

input[type=password]:focus, input[type=text]:focus, select:focus, textarea:focus {
    border-color: #0090D0;
    outline: 0;
    box-shadow: 0 0 0.8rem hsla(0, 0%, 13%, 0.2);
}

input[disabled], input[readonly] {
    background-color: #eee;
    color: #999;
    opacity: 1;
}

input[disabled] {
    cursor: not-allowed;
}

address, em, i {
    font-style: normal;
}

button {
    color: inherit;
    border: 0;
    padding: 0;
    background: 0 0;
    border-radius: .4rem;
    cursor: pointer;
    -webkit-appearance: button;
}

.r_btn {
    display: inline-block;
    padding: 1.2rem 2rem !important;
    border-radius: 3.5rem !important;
    border: 1px solid #fff;
}

.round {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 3.5rem;
    height: 3.5rem;
    padding: 1.5rem !important;
    border-radius: 3.5rem !important;
}

/* i[class*="xi-"] {
    font-size: 2.3rem;
} */


/* loader */
.loader {
    width: 35px;
    aspect-ratio: 1;
    border-radius: 50%;
    padding: 1px;
    background: conic-gradient(#0000 10%, #333) content-box;
    -webkit-mask:
        repeating-conic-gradient(#0000 0deg, #000 1deg 20deg, #0000 21deg 36deg),
        radial-gradient(farthest-side, #0000 calc(100% - var(--b) - 1px), #000 calc(100% - var(--b)));
    -webkit-mask-composite: destination-in;
    mask-composite: intersect;
    animation: l4 1s infinite steps(10);
}

@keyframes l4 {
    to {
        transform: rotate(1turn)
    }
}


hr {
    margin: 0;
    border: none;
    padding: 0;
    display: block;
}

figcaption, figure, form {
    padding: 0;
    margin: 0;
}

fieldset {
    border: none;
    padding: 0;
    margin: 0;
}

input[type=submit] {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

article, aside, figcaption, figure, footer, header, hgroup, main, nav, section {
    display: block;
}

button, input, optgroup, pre, select, textarea {
    color: inherit;
    font-family: inherit;
    font-size: 1.5rem;
    font-weight: inherit;
    margin: 0;
}

iframe {
    border: 0;
}

/* font weight */
.fweb {
    font-weight: 600 !important;
}

.fwb {
    font-weight: 500 !important;
}

.fwn {
    font-weight: 400 !important;
}

/* ===========================================================================================
skip navigation
=========================================================================================== */
#skipNav {
    color: #fff;
    position: absolute;
    left: 0;
    top: 0;
    width: 150px;
    z-index: 1000;
    text-align: center;
}

#skipNav a {
    opacity: 0;
    position: absolute;
    left: 0;
    top: 0;
    display: block;
    width: 100%;
    padding: 10px;
    background-color: rgba(0, 0, 0, 0.6);
    transform: translateY(-50px);
    transition: all 0.3s ease;
    font-size: 14px;
}

#skipNav a:active, #skipNav a:focus, #skipNav a:hover {
    opacity: 1;
    transform: translateY(0);
}

/* ===========================================================================================
user defined style
=========================================================================================== */
.mobile, .pad {
    display: block;
}

.txt-left, .txt_left {
    text-align: left !important;
}

.txt-right, .txt_right {
    text-align: right !important;
}

.txt-center, .txt_center {
    text-align: center !important;
}

.vertical {
    display: inline-block;
    vertical-align: middle;
}

.hidden, .sr_only, .sr-only, .IR {
    position: absolute;
    width: 1px;
    height: 1px;
    padding: 0;
    margin: -1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    border: 0;
}

.ellipsis, .subject {
    text-align: left;
}

.ellipsis {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    vertical-align: middle;
    display: inline-block;
    max-width: 96%;
}

td.subject {
    padding-left: 2rem;
}

.clearfix::after {
    content: "";
    display: block;
    clear: both;
}

.fl, .float-left, .float_left, .pull-left {
    float: left;
}

.float-right, .float_right, .fr, .pull-right {
    float: right;
}

.float-wrap {
    overflow: hidden;
}

.indent {
    margin-left: 2rem !important;
}

.indent2 {
    margin-left: 1rem !important;
}

.outdent {
    margin-left: -2rem;
}

/* 여백 임시추가_230202 */
.mla {
    margin-left: auto;
}

.mra {
    margin-right: auto;
}

.mta {
    margin-top: auto;
}

.mba {
    margin-bottom: auto;
}

.w5 {
    width: 5% !important;
    flex: 0 0 10% !important;
}

.w6 {
    width: 6% !important;
    flex: 0 0 10% !important;
}

.w7 {
    width: 7% !important;
    flex: 0 0 10% !important;
}

.w8 {
    width: 8% !important;
    flex: 0 0 10% !important;
}

.w9 {
    width: 9% !important;
    flex: 0 0 10% !important;
}

.w10 {
    width: 10% !important;
    flex: 0 0 10% !important;
}

.w11 {
    width: 11% !important;
    flex: 0 0 11% !important;
}

.w12 {
    width: 12% !important;
    flex: 0 0 12% !important;
}

.w13 {
    width: 13% !important;
    flex: 0 0 13% !important;
}

.w14 {
    width: 14% !important;
    flex: 0 0 14% !important;
}

.w15 {
    width: 15% !important;
    flex: 0 0 15% !important;
}

.w20 {
    width: 20% !important;
    flex: 0 0 20% !important;
}

.w25 {
    width: 25% !important;
    flex: 0 0 25% !important;
}

.w30 {
    width: 30% !important;
    flex: 0 0 30% !important;
}

.w35 {
    width: 35% !important;
    flex: 0 0 35% !important;
}

.w40 {
    width: 40% !important;
    flex: 0 0 40% !important;
}

.w45 {
    width: 45% !important;
    flex: 0 0 45% !important;
}

.w50 {
    width: 50% !important;
    flex: 0 0 50% !important;
}

.w55 {
    width: 55% !important;
    flex: 0 0 55% !important;
}

.w60 {
    width: 60% !important;
    flex: 0 0 60% !important;
}

.w65 {
    width: 65% !important;
    flex: 0 0 65% !important;
}

.w70 {
    width: 70% !important;
    flex: 0 0 70% !important;
}

.w75 {
    width: 75% !important;
    flex: 0 0 75% !important;
}

.w80 {
    width: 80% !important;
    flex: 0 0 80% !important;
}

.w85 {
    width: 85% !important;
    flex: 0 0 85% !important;
}

.w90 {
    width: 90% !important;
    flex: 0 0 90% !important;
}

.w95 {
    width: 95% !important;
    flex: 0 0 95% !important;
}

.w100 {
    width: 100% !important;
    flex: 0 0 100% !important;
}

.ml0 {
    margin-left: 0 !important;
}

.ml5 {
    margin-left: 0.5rem !important;
}

.ml10 {
    margin-left: 1rem !important;
}

.ml20 {
    margin-left: 2rem !important;
}

.ml30 {
    margin-left: 3rem !important;
}

.ml40 {
    margin-left: 4rem !important;
}

.ml50 {
    margin-left: 5rem !important;
}

.mt0 {
    margin-top: 0 !important;
}

.mt2 {
    margin-top: 0.2rem !important;
}

.mt3 {
    margin-top: 0.3rem !important;
}

.mt4 {
    margin-top: 0.4rem !important;
}

.mt5 {
    margin-top: 0.5rem !important;
}

.mt6 {
    margin-top: 0.6rem !important;
}

.mt7 {
    margin-top: 0.7rem !important;
}

.mt8 {
    margin-top: 0.8rem !important;
}

.mt9 {
    margin-top: 0.9rem !important;
}

.mt10 {
    margin-top: 1rem !important;
}

.mt20 {
    margin-top: 2rem !important;
}

.mt30 {
    margin-top: 3rem !important;
}

.mt40 {
    margin-top: 4rem !important;
}

.mt50 {
    margin-top: 5rem !important;
}

.mr0 {
    margin-right: 0 !important;
}

.mr5 {
    margin-right: 0.5rem !important;
}

.mr10 {
    margin-right: 1rem !important;
}

.mr20 {
    margin-right: 2rem !important;
}

.mr30 {
    margin-right: 3rem !important;
}

.mr40 {
    margin-right: 4rem !important;
}

.mr50 {
    margin-right: 5rem !important;
}

.mb0 {
    margin-bottom: 0 !important;
}

.mb2 {
    margin-bottom: 0.2rem !important;
}

.mb3 {
    margin-bottom: 0.3rem !important;
}

.mb4 {
    margin-bottom: 0.4rem !important;
}

.mb5 {
    margin-bottom: 0.5rem !important;
}

.mb6 {
    margin-bottom: 0.6rem !important;
}

.mb7 {
    margin-bottom: 0.7rem !important;
}

.mb8 {
    margin-bottom: 0.8rem !important;
}

.mb9 {
    margin-bottom: 0.9rem !important;
}

.mb10 {
    margin-bottom: 1rem !important;
}

.mb20 {
    margin-bottom: 2rem !important;
}

.mb30 {
    margin-bottom: 3rem !important;
}

.mb40 {
    margin-bottom: 4rem !important;
}

.mb50 {
    margin-bottom: 5rem !important;
}

/* font color */
.fcBlack {
    color: var(--dark0, #000) !important;
}

.fcWhite {
    color: #fff !important;
}

.fcGray {
    color: #979797 !important;
}

.fcDarkgray {
    color: #333 !important;
}

.fcPrimary {
    color: #0077cc !important;
}

.fcLightBlue {
    color: #339af0 !important;
}

.fcBlue {
    color: #1864ab !important;
}

.fcDarkBlue {
    color: #0f2e55 !important;
}

.fcYellow {
    color: #fcc419 !important;
}

.fcOrange {
    color: #ff9800 !important;
}

.fcGreen {
    color: #37b24d !important;
}

.fcOlive {
    color: #669533 !important;
}

.fcRed {
    color: #f03e3e !important;
}

.fcSepia {
    color: #817b58 !important;
}

.fcViolet {
    color: #7048e8 !important;
}

.dark0 {
    color: var(--dark0, #14171f) !important;
}

.bcRed {
    background: #fcdfdf !important;
}

.bcTeal {
    background: #C7EFEA !important;
}

.bcBlue {
    background: #D8EEF7 !important;
}

.bcDarkBlue {
    background: #0f2e55;
}

.bcPurple {
    background: #F1ECFB !important;
}

.bcGray {
    background-color: #F5F5F5 !important;
}

.bcBlack {
    background: #000 !important;
}

.bcWhite {
    background: #fff !important;
}

.bcDarkGreen {
    background-color: #37b24d;
}

.bcBlueBlack {
    background: linear-gradient(270deg, rgba(24, 100, 171, 1) 0%, rgba(15, 46, 85, 1) 100%) !important;
}

/* ===========================================================================================
slick slider
=========================================================================================== */
.slick-slider {
    display: block;
    box-sizing: border-box;
    -webkit-user-select: none;
    -moz-user-select: none;
    user-select: none;
    -webkit-touch-callout: none;
    -khtml-user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    display: block;
    overflow: hidden;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: 0;
}

.slick-list.dragging {
    cursor: pointer;
}

.slick-slider .slick-list, .slick-slider .slick-track {
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    top: 0;
    left: 0;
    display: block;
    margin-left: auto;
    margin-right: auto;
}

.slick-track:after, .slick-track:before {
    display: table;
    content: "";
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    display: none;
    float: left;
    height: 100%;
    min-height: 1px;
}

[dir=rtl] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
    margin: 0 auto;
}

.slick-slide.slick-loading img {
    display: none;
}

/*.slick-slide.dragging img{pointer-events:none}*/
.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
}

.slick-arrow.slick-hidden {
    display: none;
}

/* ===========================================================================================
grid style
=========================================================================================== */
.row {
    display: flex;
    flex-wrap: wrap;
    margin-right: -1.5rem;
    margin-left: -1.5rem;
}

.col-1, .col-10, .col-11, .col-12, .col-2, .col-3, .col-4, .col-5, .col-6, .col-7, .col-8, .col-9, .col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9 {
    position: relative;
    width: 100%;
    min-height: 1px;
    padding-right: 1.5rem;
    padding-left: 1.5rem;
}

.col {
    flex-basis: 0;
    flex-grow: 1;
    max-width: 100%;
}

.col-1 {
    flex: 0 0 8.333333%;
    max-width: 8.333333%;
}

.col-2 {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
}

.col-3 {
    flex: 0 0 25%;
    max-width: 25%;
}

.col-4 {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.col-5 {
    flex: 0 0 41.666667%;
    max-width: 41.666667%;
}

.col-6 {
    flex: 0 0 50%;
    max-width: 50%;
}

.col-7 {
    flex: 0 0 58.333333%;
    max-width: 58.333333%;
}

.col-8 {
    flex: 0 0 66.666667%;
    max-width: 66.666667%;
}

.col-9 {
    flex: 0 0 75%;
    max-width: 75%;
}

.col-10 {
    flex: 0 0 83.333333%;
    max-width: 83.333333%;
}

.col-11 {
    flex: 0 0 91.666667%;
    max-width: 91.666667%;
}

.col-12 {
    flex: 0 0 100%;
    max-width: 100%;
}

.row-cols-1>* {
    flex: 0 0 100%;
    max-width: 100%;
}

.row-cols-2>* {
    flex: 0 0 50%;
    max-width: 50%;
}

.row-cols-3>* {
    flex: 0 0 33.333333%;
    max-width: 33.333333%;
}

.row-cols-4>* {
    flex: 0 0 25%;
    max-width: 25%;
}

.row-cols-5>* {
    flex: 0 0 20%;
    max-width: 20%;
}

.row-cols-6>* {
    flex: 0 0 16.666667%;
    max-width: 16.666667%;
}

.justify-content-center {
    justify-content: center !important;
}

.justify-content-around {
    justify-content: space-around !important;
}

.justify-content-between {
    justify-content: space-between !important;
}

.align-items-center {
    align-items: center !important;
}

.no-gutters {
    margin-right: 0;
    margin-left: 0;
}

.no-gutters>.col, .no-gutters>[class*=col-] {
    padding-right: 0;
    padding-left: 0;
}

/* ===========================================================================================
form-row : 여러개의 요소들이 꽉차면서 한줄인 형태
form-inline : 여러개의 요소를 꽉차지 않으면서 한줄인 형태
form-control : input
form-select : select
=========================================================================================== */
.form-label {
    font-weight: 500;
    word-break: keep-all;
    display: inline-flex;
    align-items: center;
    /*padding-top: 1rem; padding-bottom:.5rem;*/
}

.form-control {
    display: inline-block;
    border: 1px solid #C5C8D1;
    border-radius: .4rem;
    min-height: 3.6rem;
}

.form-select:focus, .form-control:focus {
    border-color: #0090D0;
    outline: 0;
    box-shadow: 0 0 0.8rem hsla(0, 0%, 13%, 0.2);
}

.form-control::-moz-placeholder {
    color: #999;
    opacity: 1;
}

.form-control:-ms-input-placeholder {
    color: #999;
}

.form-control::-webkit-input-placeholder {
    color: #999;
}

.form-control[disabled], .form-control[readonly], fieldset[disabled] .form-control {
    background-color: #eee;
    opacity: 1;
}

.form-control[disabled], fieldset[disabled] .form-control {
    cursor: not-allowed;
}

textarea.form-control {
    height: auto;
    resize: none;
}

/* vertical */
.form-term {
    margin: 0 1rem !important;
}

.form-select {
    border-radius: .4rem;
    background: url(../img/board/select_arrow.gif) right 0.75rem center no-repeat #fff;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative;
    z-index: 1;
    padding-right: 2rem;
}





.form-select::-ms-expand {
    display: none;
}

.form-inline, .form-row {
    display: flex;
}

.form-inline~.form-row, .form-row~.form-row {
    margin-top: 0.5rem;
}

.form-inline .form-select, .form-inline .form-control, .form-row .form-select, .form-row .form-control {
    flex: 1 1 auto;
    width: 1%; 
    /*  ie11에서 오류남 */
}

.form-inline .custom__select__area, .form-row .custom__select__area {
    flex: 1 1 auto;
    width: 1%;
    /*  ie11에서 오류남 */
}

.form-row~.form-inline {
    margin-top: 0.5rem;
}

.form-inline {
    align-items: center;
}

.form-row .form-select+.form-select, .form-row .form-select+.form-select+.form-control, .form-row .form-select+.form-control, .form-row .form-control+.form-control, .form-row .form-control+.form-select, .form-inline .form-select+.form-select, .form-inline .form-select+.form-control, .form-inline .form-control+.form-control, .form-row .custom__select__area+.custom_select+.custom__select__area, .form-row .form-control+.custom_select+.custom__select__area, .form-row .custom__select__area+.form-control, .form-inline .custom__select__area+.custom_select+.custom__select__area, .form-inline .custom__select__area+.form-control, .form-inline .form-control+.custom_select+.custom__select__area {
    margin-left: .5rem;
}

.custom_select, .custom__select__area {
    display: inline-block;
    width: 100%;
    border-radius: .4rem;
    min-height: 3.6rem;
    line-height: 1.5;
    border: 1px solid #C5C8D1;
    color: #333;
    appearance: none;
    background-image: url(../img/board/select_arrow.gif);
    background-position-x: calc(100% - 8px);
    background-position-y: center;
    background-repeat: no-repeat;
    padding: 0.6rem 1.2rem;
    padding-right: 2rem;
    position: relative;
}

.custom_select:hover, .custom__select__area:hover {
    border-color: #0090D0;
    outline: 0;
    box-shadow: 0 0 0.8rem hsla(0, 0%, 13%, 0.2);
}

.custom__select__list {
    transition: 0.2s;
    display: none;
    border: 1px solid #C5C8D1;
    position: absolute;
    background-color: #fff;
    left: 0;
    top: 3.9rem;
    width: 100%;
    border-radius: .4rem;
    padding-top: 0.8rem;
    padding-bottom: 0.8rem;
    z-index: 10;
}


.custom__select__list li {
    padding-top: 0.6rem;
    padding-bottom: 0.6rem;
    padding-left: 1.2rem;
    padding-right: 1.2rem;
    transition: 0.2s;
}

.custom__select__list li p {
    color: #333
}

.custom__select__list li:hover {
    color: #111;
    background-color: #F5F5F5;
}

.custom__select__list li:hover p {
    color: #111;
    font-weight: 500;
}

/* 체크박스, 라디오버튼 */
.custom-input {
    position: relative;
}

.custom-input input {
    position: absolute;
    left: 0;
    top: 0;
    opacity: 0;
}

.custom-input input+label {
    display: inline-block;
    position: relative;
    padding-left: 2.4rem;
    margin-right: 2rem;
    cursor: pointer;
}

.custom-input.no_txt input+label {
    display: inline-block;
    position: relative;
    padding-left: 0rem;
    margin-right: 2rem;
    cursor: pointer;
}

.custom-input input+label::before, .custom-input input+label::after {
    content: "";
    position: absolute;
    left: 0;
    top: 0.1rem;
    width: 1.8rem;
    height: 1.8rem;
    border: 1px solid #c7c7c7;
    background-color: #fff;
    cursor: pointer;
}

.custom-input input[type=radio]+label::before {
    border-radius: 50%;
}

.custom-input input[type=radio]+label::after {
    content: "";
    display: block;
    opacity: 0;
    width: 0.8rem;
    height: 0.8rem;
    background-color: #2A7ABF;
    border-radius: 50%;
    position: absolute;
    left: 0.5rem;
    top: 0.8rem;
    z-index: 2;
}


.custom-input.no_txt input[type=radio]+label::after {
    left: 0.5rem;
}

.custom-input input[type=checkbox]+label::after {
    content: "\e929";
    text-align: center;
    background-color: #2A7ABF;
    border: 1px solid #2A7ABF;
    color: #fff;
    font-size: 1.5rem;
    font-family: xeicon, sans-serif;
    z-index: 2;
    opacity: 0;
    line-height: 1;
}

.custom-input input[disabled]+label::before {
    background-color: #e5e5e5;
    border-color: #ddd;
}

.custom-input input:focus+label::before {
    border: 2px solid #2A7ABF;
}

.custom-input input:checked+label::after {
    opacity: 1;
    border-color: #505050;
}

/* .custom-input.no_txt input:checked+label::after {
    opacity: 1;
    border-color: #505050;
    top: 0.9rem !important;
} */

.custom-input.no-label label {
    position: relative;
    text-indent: -9999px;
    margin-right: 0;
}

.custom-input.no-label label::after {
    text-indent: 0;
}

.form-floating {
    position: relative;
    display: block;
}

.form-floating .form-control {
    width: 100%;
}

.form-floating label {
    display: flex;
    align-items: center;
    position: absolute;
    left: 1px;
    top: 1px;
    right: 1px;
    bottom: 1px;
    font-size: 1.4rem;
    opacity: 1;
    visibility: visible;
    transition: 0.2s;
    background-color: #fff;
    padding: 0.6rem 1.2rem;
}

.form-floating .form-control:focus~label {
    opacity: 0;
    visibility: hidden;
}

.form-floating .form-control:not(:-moz-placeholder-shown)~label {
    display: none;
}

.form-floating .form-control:not(:placeholder-shown)~label {
    display: none;
}

@media (min-width:767.98px) {
    .mobile {
        display: none;
    }

    .form-inline {
        display: inline-flex !important;
    }

    .form-inline .form-select, .form-inline .form-control {
        width: auto;
    }

    .form-inline .custom__select__area {
        width: auto;
    }

    .col-sm {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-sm-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
    }

    .col-sm-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-sm-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-sm-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .col-sm-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }

    .col-sm-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-sm-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }

    .col-sm-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }

    .col-sm-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-sm-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }

    .col-sm-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
    }

    .col-sm-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

@media (min-width:1023.98px) {
    .pad {
        display: none;
    }

    .col-md {
        flex-basis: 0;
        flex-grow: 1;
        max-width: 100%;
    }

    .col-md-1 {
        flex: 0 0 8.333333%;
        max-width: 8.333333%;
    }

    .col-md-2 {
        flex: 0 0 16.666667%;
        max-width: 16.666667%;
    }

    .col-md-3 {
        flex: 0 0 25%;
        max-width: 25%;
    }

    .col-md-4 {
        flex: 0 0 33.333333%;
        max-width: 33.333333%;
    }

    .col-md-5 {
        flex: 0 0 41.666667%;
        max-width: 41.666667%;
    }

    .col-md-6 {
        flex: 0 0 50%;
        max-width: 50%;
    }

    .col-md-7 {
        flex: 0 0 58.333333%;
        max-width: 58.333333%;
    }

    .col-md-8 {
        flex: 0 0 66.666667%;
        max-width: 66.666667%;
    }

    .col-md-9 {
        flex: 0 0 75%;
        max-width: 75%;
    }

    .col-md-10 {
        flex: 0 0 83.333333%;
        max-width: 83.333333%;
    }

    .col-md-11 {
        flex: 0 0 91.666667%;
        max-width: 91.666667%;
    }

    .col-md-12 {
        flex: 0 0 100%;
        max-width: 100%;
    }
}

/* ===========================================================================================
print style
=========================================================================================== */
@page {
    size: A4 landscape;
}

/*  css validator에 걸려서 주석처리 */
@media print {
    #header, aside, #spot, #side, .cont-bot, #footer, .snb, .test_wrap, .slave_tab, .header, .breadcrumbs_bar, .footer, .go_top {
        display: none !important;
    }

    .container, .content {
        width: 100% !important;
    }

    .content>.tab_cont {
        opacity: 1 !important;
        visibility: visible !important;
    }

    .fixed {
        position: relative !important;
    }

    /* flex오류 */
    .board_info .form-row {
        display: block;
    }

    .board_info .form-row .form-select {
        width: auto !important;
    }
}

/* ===========================================================================================
error style
=========================================================================================== */

.errorBasic {
    background: #fdfdfd;
    font-size: 1.1em;
    height: 100vh;
}

.errorBasic .flex-container {
    padding: 1em;
    position: relative;
    display: flex;
    width: 100%;
    height: 100%;
    min-height: calc(100vh / 2);
    align-items: center;
    justify-content: center;
    background-color: #f3f5f9;
}

.errorBasic .flex-container .cont-none {
    display: block;
    width: 100%;
    max-width: 640px;
    padding: 3em 2em;
    margin: auto;
    text-align: center;
    border-radius: 2rem;
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.13);
    background: #fff;
}


.errorBasic .flex-container .cont-none img {
    display: inline-block;
    width: 20rem;
    margin: 0em auto 0em;
}

.errorBasic .flex-container .cont-none .tit-header {
    position: relative;
    color: #333;
    font-size: 2.8rem;
    border: none;
    margin: calc(1rem - 0.14285714em) 0em 1rem;
    padding: 0em 0em;
    line-height: 1.5;
    text-transform: none;
}

.errorBasic .btn.gray2 {
    background: #4D4D4D;
    color: #fff;
    border-color: #4D4D4D;
}

.errorBasic .btn~.btn {
    margin-left: 1rem;
}

.errorBasic .btn {
    font-size: 1.5rem;
    line-height: 1.4285;
    border-radius: 0.4rem;
    min-width: 12rem;
    padding: 1.3rem 1.5rem;
    border: 1px solid #ddd;
}

.errorBasic .btn.type4 {
    background: #0090D0;
    color: #fff;
    border-color: #0090D0;
}