@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+KR:wght@100..900&display=swap');

.sound_only {
    display: none;
}

/*  */
* {
    box-sizing: border-box;
    word-break: keep-all;
}

html {
    /* font-size: 14px; */
    /* 375px일 때 14px, 767px일 때 15px, 그 이상에서는 최대 16px로 유연하게 조절 */
    font-size: clamp(14px, calc(13.0435px + 0.2551vw), 16px);
}

body {
    font-family: 'Noto Sans KR', sans-serif;

}

ul,
ol,
li {
    list-style: none;
}

/* 해더 */
.container {
    width: 100%;
    max-width: 1440px;
    margin: 0 auto;
}

@media (max-width: 639px) {
    .container {
        padding-left: 1.5rem;
        padding-right: 1.5rem;
    }
}

/* 모바일 2dep 기본 숨김 */
.mobile-2dep-list {

    max-height: 0;
    overflow: hidden;
    transition: all 0.5s ease;

}

/* open 시 보이기 + 자연스러운 슬라이드 다운 */
.mobile-2dep-list.open {
    transition: all 0.5s ease;
    max-height: 500px;

}

#header nav ul>li {
    position: relative;
}

#header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    z-index: 100;

    transition: box-shadow 0.5s, height 1s;
}

#header .container {
    padding: 0 15px;
}

.has-sub {
    position: relative;
}

/* 1dep hover 시 2dep 메뉴 노출 */
.has-sub>ul {
    min-width: 160px;
    position: absolute;
    left: 50%;
    transform: translate(-50%, 0.5px);
    text-align: center;
    background: #fff;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.2s, visibility 0.2s;
    z-index: 1000;
}

.has-sub:hover>ul,
.has-sub:focus-within>ul,
.has-sub.group:hover>ul {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
}

/* 상세보기 버튼 공통 스타일 */
.btn-detail {

    padding-top: 0.5rem;
    padding-bottom: 0.5rem;
    background-color: #1a1a1a;
    /* gray-900 */
    color: #fff;
    border-radius: 0.5rem;


    transition: background 0.2s;
    border: none;
    cursor: pointer;
    display: block;
}

.btn-detail:hover {
    background-color: #374151;
    /* gray-700 */
}

.section5:after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 0;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.8), rgba(0, 0, 0, 0.3));
}

#header .group:nth-last-child(1) .dep2 {
    left: -50% !important;
}

.sct_admin {
    display: none;
}

.ellipsis-2 {
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
    text-overflow: ellipsis;
    word-break: break-all;
    white-space: normal;
}

.js-fadein,
.js-fadein-up,
.js-fadein-down,
.js-fadein-scale,
.js-fadein-left,
.js-fadein-right {
    opacity: 0;
}

.js-fadein-up {
    transform: translateY(30px);
}

.js-fadein-down {
    transform: translateY(-30px);
}

.js-fadein-scale {
    transform: scale(0.95);
}

.js-fadein-left {
    transform: translateX(-40px);
}

.js-fadein-right {
    transform: translateX(40px);
}
.overlay{
    position: relative;
}
.overlay::before{
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to right, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0.3),rgba(0, 0, 0, 0.2),rgba(0, 0, 0, 0.1));
    z-index: 0;
}

#sev_hhtml *{
    font-family: 'Noto Sans KR' !important;
}