/*===========================================================================
	웹폰트
============================================================================*/

/* 폰트 */
@font-face {
    font-family: "Roboto";
    font-weight: 100;
    font-style: normal;
    src: url("../fonts/Roboto-Thin.ttf") format("truetype");
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    font-weight: 200;
    font-style: normal;
    src: url("../fonts/Roboto-ExtraLight.ttf") format("truetype");
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    font-weight: 300;
    font-style: normal;
    src: url("../fonts/Roboto-Light.ttf") format("truetype");
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    font-weight: 400;
    font-style: normal;
    src: url("../fonts/Roboto-Regular.ttf") format("truetype");
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    font-weight: 500;
    font-style: normal;
    src: url("../fonts/Roboto-Medium.ttf") format("truetype");
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    font-weight: 600;
    font-style: normal;
    src: url("../fonts/Roboto-SemiBold.ttf") format("truetype");
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    font-weight: 700;
    font-style: normal;
    src: url("../fonts/Roboto-Bold.ttf") format("truetype");
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    font-weight: 800;
    font-style: normal;
    src: url("../fonts/Roboto-ExtraBold.ttf") format("truetype");
    font-display: swap;
}
@font-face {
    font-family: "Roboto";
    font-weight: 900;
    font-style: normal;
    src: url("../fonts/Roboto-Black.ttf") format("truetype");
    font-display: swap;
}

@font-face {
    font-family: "Noto Sans";
    font-weight: 100;
    font-style: normal;
    src: url("../fonts/NotoSansCJKsc-Thin.otf") format("opentype");
    font-display: swap;
}
@font-face {
    font-family: "Noto Sans";
    font-weight: 200;
    font-style: normal;
    src: url("../fonts/NotoSansCJKsc-DemiLight.otf") format("opentype");
    font-display: swap;
}
@font-face {
    font-family: "Noto Sans";
    font-weight: 300;
    font-style: normal;
    src: url("../fonts/NotoSansCJKsc-Light.otf") format("opentype");
    font-display: swap;
}
@font-face {
    font-family: "Noto Sans";
    font-weight: 400;
    font-style: normal;
    src: url("../fonts/NotoSansCJKsc-Regular.otf") format("opentype");
    font-display: swap;
}
@font-face {
    font-family: "Noto Sans";
    font-weight: 500;
    font-style: normal;
    src: url("../fonts/NotoSansCJKsc-Medium.otf") format("opentype");
    font-display: swap;
}
@font-face {
    font-family: "Noto Sans";
    font-weight: 700;
    font-style: normal;
    src: url("../fonts/NotoSansCJKsc-Bold.otf") format("opentype");
    font-display: swap;
}
@font-face {
    font-family: "Noto Sans";
    font-weight: 900;
    font-style: normal;
    src: url("../fonts/NotoSansCJKsc-Black.otf") format("opentype");
    font-display: swap;
}

/*===========================================================================
	CSS 초기화
============================================================================*/
@layer common {
    * {
        font-family: "Roboto", "Noto Sans", sans-serif;
        /* font-family: "Noto Sans", sans-serif; */
        box-sizing: border-box;
    }
    *:not([class*="leading-"]) {
        line-height: 1.5;
    }
    html,
    body,
    div,
    span,
    object,
    iframe,
    h1,
    h2,
    h3,
    h4,
    h5,
    h6,
    p,
    em,
    img,
    strong,
    b,
    i,
    dl,
    dt,
    dd,
    ol,
    ul,
    li,
    form,
    label,
    legend,
    caption,
    article,
    aside,
    footer,
    header,
    menu,
    nav,
    section,
    video,
    a {
        border: 0;
        outline: 0;
        line-height: 1;
        padding: 0;
        margin: 0;
        color: #494a4e;
    }
    html {
        scroll-behavior: smooth;
    }
    body {
        line-height: 1;
        -ms-overflow-style: none;
        height: 100%;
    }
    article,
    aside,
    details,
    figcaption,
    figure,
    footer,
    header,
    hgroup,
    menu,
    nav,
    section {
        display: block;
    }
    ul,
    ol,
    li {
        list-style: none;
    }
    strong {
        display: inline-block;
    }
    pre {
        font-family: "Roboto", "Noto Sans", sans-serif;
        white-space: pre-line;
        line-height: 1.5;
    }
    form {
        display: contents;
    }
    input,
    select {
        vertical-align: middle;
        outline: 0;
        border: 0;
        background: none;
        font-family: "Roboto", "Noto Sans", sans-serif;
    }
    input::-webkit-outer-spin-button,
    input::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
    }
    input[type="file"],
    input[type="checkbox"],
    input[type="radio"] {
        display: none;
    }
    select {
        appearance: none;
        background-image: url(../images/icon_arrow_down.png);
        background-repeat: no-repeat;
        background-position: right 8px center;
        background-size: 24px;
    }
    select option[value="disabled"][disabled] {
        display: none;
    }
    label {
        cursor: pointer;
    }
    button {
        cursor: pointer;
    }
    a {
        text-decoration: none;
        display: block;
    }
    textarea {
        border: 0;
        outline: 0;
        resize: none !important;
        font-family: "Roboto", "Noto Sans", sans-serif;
    }
    span,
    strong,
    a,
    pre,
    i {
        color: inherit;
    }
    details summary {
        list-style: none;
    }
    details[open] summary svg {
        transform: rotate(180deg);
    }
}

/* 컨텐츠 공통 */
::-webkit-scrollbar {
    width: 8px;
    height: 8px;
}
::-webkit-scrollbar-track {
    background: #e4e4e4;
}
::-webkit-scrollbar-thumb {
    background: #484848;
    border-radius: 4px;
}
i {
    font-family: "xeicon";
    font-style: normal;
}
.no-scrollbar {
    scrollbar-width: none; /* Firefox */
    -ms-overflow-style: none; /* IE and Edge */
}
.no-scrollbar::-webkit-scrollbar {
    display: none; /* Chrome, Safari, Opera */
}

.modal-container {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #494a4e60;
    z-index: 999999;
}
.modal-wrap {
    background-color: #fff;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
}
.modal-wrap .close-btn {
    position: absolute;
    cursor: pointer;
}

.site-map {
    visibility: hidden;
    opacity: 0;
    transition: all 0.3s ease-in-out;
}
.site-map.active {
    visibility: visible;
    opacity: 1;
}

#footer {
    position: relative;
    z-index: 1;
}

/* 챗봇 아이콘 */
#chtl-chat-icon-container {
    bottom: 112px !important;
    right: 40px !important;
}
#chtl-open-chat-icon > div {
    width: 56px !important;
    height: 56px !important;
}
@media (max-width: 1024px) {
    #chtl-chat-icon-container {
        bottom: 104px !important;
        right: 24px !important;
    }
}
