@charset "UTF-8";
/* 공통 변수 */
/* text utilities */
/* https://getbootstrap.com/docs/4.6/utilities/text/ */
/* text color utilities */
/* https://getbootstrap.com/docs/4.6/utilities/colors/ */
@font-face {
    /* normal */
    font-family: "Noto Sans KR";
    font-weight: 300;
    src: local("NotoSans"), url("../fonts/NotoSansKRLight.woff") format("woff"), url("../fonts/NotoSansKRLight.ttf") format("truetype");
}

@font-face {
    /* normal */
    font-family: "Noto Sans KR";
    font-weight: 400;
    src: local("NotoSans"), url("../fonts/NotoSansKRRegular.woff") format("woff"), url("../fonts/NotoSansKRRegular.ttf") format("truetype");
}

@font-face {
    /* Regular */
    font-family: "Noto Sans KR";
    font-weight: 500;
    src: local("NotoSans"), url("../fonts/NotoSansKRMedium.woff") format("woff"), url("../fonts/NotoSansKRMedium.ttf") format("truetype");
}

@font-face {
    /* medium */
    font-family: "Noto Sans KR";
    font-weight: 600;
    src: local("NotoSans"), url("../fonts/NotoSansKRBold.woff") format("woff"), url("../fonts/NotoSansKRBold.ttf") format("truetype");
}
/* 메인용 영문 폰트 */
@font-face {
    font-family: "RussoOneRegular";
    src: local("NotoSans"), url("../fonts/RussoOneRegular.woff") format("woff"), url("../fonts/RussoOneRegular.ttf") format("truetype");
}

html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}

br {
    visibility: hidden;
    color: transparent;
}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video, textarea {
    margin: 0;
    padding: 0;
    font-family: "Noto Sans KR", sans-serif;
    font-size: 16px;
    font-weight: 400;
    letter-spacing: -0.025rem;
}

@media (max-width: 768px) {
    html, body, div, span, applet, object, iframe,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    a, abbr, acronym, address, big, cite, code,
    del, dfn, em, img, ins, kbd, q, s, samp,
    small, strike, strong, sub, sup, tt, var,
    b, u, i, center,
    dl, dt, dd, ol, ul, li,
    fieldset, form, label, legend,
    table, caption, tbody, tfoot, thead, tr, th, td,
    article, aside, canvas, details, embed,
    figure, figcaption, footer, header, hgroup,
    menu, nav, output, ruby, section, summary,
    time, mark, audio, video, textarea {
        font-size: 15px;
    }
}

a {
    display: block;
}

input::placeholder {
    color: #9e9e9e;
    font-size: 0.9375rem;
}

@media (max-width: 768px) {
    input::placeholder {
        font-size: 1rem;
    }
}

ol, ul {
    list-style: none;
}

address, em {
    font-style: normal;
}

button, input, textarea, select {
    -webkit-border-radius: 0;
    border-radius: 0;
}

input, select, textarea, button {
    border: 0;
}

    input[type=text], input[type=url], input[type=email], input[type=date], input[type=month], input[type=number], input[type=password], input[type=search], input[type=tel], input[type=time], input[type=week], textarea {
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }

    input[type=text], input[type=url], input[type=email], input[type=date], input[type=month], input[type=number], input[type=password], input[type=tel], select.form-control {
        height: 45px;
    }

button {
    background-color: transparent;
    cursor: pointer;
}

    button:focus {
        outline: none;
    }

select.form-control {
    display: inline-block !important;
    padding: 0 30px 0 14px;
    outline: transparent;
    font-family: inherit;
    /* 폰트 상속 */
    border-radius: 0;
    /* iOS 둥근모서리 제거 */
    -webkit-appearance: none;
    /* 네이티브 외형 감추기 */
    -moz-appearance: none;
    appearance: none;
    font-weight: 400;
}

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

.search-select {
    position: relative;
}

    .search-select label {
        display: block;
    }

    .search-select .xi-angle-down-min {
        position: absolute;
        right: 10px;
        top: 50%;
        transform: translateY(-50%);
        font-size: 15px;
        color: #5c5c5c;
    }

/* 커스텀 파일첨부 */
.custom-file-label {
    border: 0;
    padding: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

    .custom-file-label::after {
        display: none;
    }

    .custom-file-label::before {
        display: block;
        content: "";
        content: "파일선택";
        display: inline-block;
        height: 100%;
        margin-right: 10px;
        line-height: 35px;
        padding: 0 15px;
        border: 1px solid #e0e0e0;
        background-color: #f5f5f5;
    }

.textarea {
    width: 100%;
    padding: 10px;
    border: 1px solid #e0e0e0;
    resize: none;
}

    .textarea:focus-visible {
        outline: none;
    }

.form-control {
    font-size: 0.9375rem;
    font-weight: normal;
    color: #666;
}

@media (max-width: 768px) {
    .form-control {
        font-size: 1rem;
    }
}