@charset "utf-8";
/* 기본 스타일 */
.video-container {
    position: relative;
    width: 100%;
    height: 260px; /* 기본 높이 */
    overflow: hidden;
    display: flex;
    justify-content: center;
    align-items: center;
}
.background-video,
.background-image {position: absolute;top: 0;left: 0;width: 100%;height: 100%;background-size: cover;
    background-position: center;object-fit: cover; /* 비율을 유지하면서 전체에 맞추기 */display: none;z-index: -1;
    transition: transform 0.1s ease-in-out;
}

/* .background-video,
.background-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-position: center;
    object-fit: contain;
    display: block;
    z-index: -1;
} */

@media screen and (max-width: 768px) {
    .video-container {
        margin-top:73px;
    }

    .background-video,
    .background-image {
        width: 100%; 
        height: 100%; 
        object-fit: cover; 
        background-position: right center; /* 우측 끝에서 기준으로 배경 이미지 설정 */
    }
}
#media-overlay {position: absolute;bottom: 20%;left: 5%;color: #fff;z-index: -1;max-width: 90%;text-shadow: 1px 1px 5px rgba(0, 0, 0, 0.7);}
#media-container {position: absolute;top: 35%;left: 50%;width: 1200px; /* 너비 설정 */transform: translate(-50%, -50%);text-align: center;color: #fff;z-index: --;}

@keyframes slide-in {0% {transform: translateX(100%);opacity: 0;}100% {transform: translateX(0);opacity: 1;}}
#media-title, #media-content {animation: slide-in 0.5s forwards; /* 애니메이션 설정 */}
#media-title {font-size: 1.4em;color: #fff;z-index: -1;text-align: center;animation-delay: 0.5s; /* 내용보다 빨리 */margin-bottom: 15px;
    font-weight: bold;
    text-shadow: 
        -1px -1px 0 rgb(63, 63, 63),  
         1px -1px 0 rgb(63, 63, 63),  
        -1px  1px 0 rgb(63, 63, 63),  
         1px  1px 0 rgb(63, 63, 63); 
}
.separator {height: 2px; /* 라인높이 */background-color: rgba(255, 255, 255, 0.500);margin: 20px auto; /* 중앙정렬 */
    animation: grow-shrink-width-center 10s infinite;width: 10%; /* 초기너비 */transform-origin: center; /* 중심에서확장 */
}

/* 중심에서 양쪽으로 펼쳐지는 애니메이션 */
@keyframes grow-shrink-width-center {0%, 100% {width: 10%; /* 초기 상태 */}50% {width: 100%; /* 전체로 확장 */}}
@keyframes fade-in {0% {opacity: 0;}100% {opacity: 1;}}
#media-content {animation: fade-in 1.5s forwards; /* 페이드 인 애니메이션 */opacity: 0; /* 처음에는숨김 */
    animation-delay: 10s; /* 제목이 먼저 나타난 후 딜레이 */font-size: 2.5em;color: #fff;z-index: -1;text-align: center;
    font-weight: bold;
    text-shadow: 
        -1px -1px 0 rgb(63, 63, 63),  
         1px -1px 0 rgb(63, 63, 63),  
        -1px  1px 0 rgb(63, 63, 63),  
         1px  1px 0 rgb(63, 63, 63);  /* 네 방향으로 검은색 그림자 효과 */
}

#particles-js {position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: -1;}
/* 경로 위치바 */
.bo_path_bar {width: 100%;max-width: 100%;margin: 0px auto; padding: 15px;background: rgba(109, 109, 109, 0.2);border-radius: 8px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);text-align: center;margin-bottom:0px;color: #333333;
}
.path-bar a {color: #2e2e2e !important;text-decoration: none; /* 밑줄 제거 */}
.path-bar a:hover {color: #dddddd;}

/* 배너하단 sns 링크처리영역 */
#link-container {display: flex;justify-content: space-between;position: absolute;bottom: 0px;left: 50%;transform: translateX(-50%);
    width: 1200px;background-color: none;align-items: center;}
    #bo_sch {
        display: flex;
        justify-content: center; /* 가운데 정렬 */
        position: absolute;
        padding: 5px;
        background: rgba(248, 248, 248, 0.5); /* 배경을 반투명으로 설정 (0.8은 80% 불투명) */
        border-top-left-radius: 10px; /* 상단 좌측 모서리 둥글게 */
        border-top-right-radius: 10px; /* 상단 우측 모서리 둥글게 */
        border-bottom-left-radius: 0; /* 하단 좌측 모서리 각진 상태 */
        border-bottom-right-radius: 0; /* 하단 우측 모서리 각진 상태 */
        box-shadow: 0 2px 5px rgba(0, 0, 0, 0.1);
        max-width: 100%;
        bottom: 0;
        margin: 0px auto; /* 전체 가운데 정렬 */
    }    
    #bo_sch form {
        display: flex;
        gap: 5px;
        align-items: center;
        flex-wrap: wrap; /* 반응형 대응 */
    }
    
    #bo_sch select, 
    #bo_sch input[type="text"], 
    #bo_sch input[type="submit"] {
        padding: 5px 10px;
        border: 1px solid #ccc;
        border-radius: 5px;
        font-size: 14px;
        position: relative;
        pointer-events: auto; /* 클릭 가능하게 */
    }
    
    #bo_sch select {
        background: #fff;
        cursor: pointer;
    }
    
    #bo_sch input[type="text"] {
        width: 150px;
    }
    
    #bo_sch input[type="submit"] {
        background: rgb(142, 226, 85);
        color: white;
        border: none;
        cursor: pointer;
        transition: background 0.3s ease;
        width:auto;
    }
    
    #bo_sch input[type="submit"]:hover {
        background: #7b69c7;
    }
    
    @media (max-width: 600px) {
        #bo_sch form {
            flex-direction:row;
            gap: 2px;
        }
        #bo_sch select {
        width:auto;        }
    
        #bo_sch input[type="text"] {
            width: 150px;
        }
    }

    .sns_main {width: 100%;display: flex;justify-content: center;padding: 0px;background-color: none;}
    .sns-list {width: 100%;max-width: 100%;display: flex;justify-content: space-between;gap: 20px;}
    .sns-item {
        display: flex;align-items: center;padding: 10px 20px;background-color: rgba(255, 255, 255, 0.1);border: 1px solid rgba(255, 255, 255, 0.5);border-radius: 10px;
        box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1);width: 100%; /* 동일 너비 */max-width: 250px;box-sizing: border-box;
    }
    .sns-item-title {display: flex;flex-direction: column;align-items: flex-start;flex: 1;padding-right: 10px;}
    .sns-title {font-size: 14px;font-weight: bold;color: #333;margin: 0;}
    .sns_info {font-size: 12px;color: #333;margin: 5px 0 0;}
    .sns-item-url {text-align: center;}
    .sns-item-url img {width:30px;height: 30px;border-radius: 50%;background-color: #fff;}
    .sns-item-url img:hover {transform: scale(1.1);}
    
    /* 전체 서브 메뉴 컨테이너 */
    #full-menu-container {width: 100%;background-color: #ec1d3e;top:0px;
        /* border-bottom: 2px solid rgb(142, 226, 85) !important; */
        transition: height 0.4s ease;height: 73px;position: relative;z-index: 3;margin: 0px 0;}
    /* 메뉴바 전체영역 */
    #full-menu {width: 100%;margin: 0px 0;background-color: #ec1d3e;color:#000;
        /* border-bottom: 2px solid rgb(142, 226, 85) */
    }
    #full-1200 {width: 1200px;margin: 0 auto;display: flex;align-items: center;justify-content: space-between;padding: 0px;}
    @media (max-width: 1024px) {
        #full-1200 {
            width: auto !important;
        }
    }

    #logo3 {flex: 0 0 auto;text-align: left;margin: 0px 10px 0px 0px !important; /* 상 10px, 우 0px, 하 10px, 좌 20px */
        background-color: none;height: auto;align-items: center !important}
        
    .sns-logo-top {display: flex;align-items: center;gap: 0px;}
    /* 링크 */
    .sns-link {display: flex;align-items: center;text-decoration: none;color: inherit;}
    /* 로고 컨테이너 */
    .sns-logo {width: 50px;height: 50px; margin-right: 3px;}
    /* 로고 이미지 */
    .sns-logo-image {width: 100%;height: 100%;object-fit: cover; /* 이미지 왜곡 방지 */}
    /* 텍스트 영역 */
    .sns_title-right {display: flex;flex-direction: column;justify-content: center;}
    /* 로로상단 타이틀  */
    .title-logo {font-size: 26px;line-height: 1.1;font-family: 'Noto Sans KR', sans-serif;font-weight: 900;color:#fff;
      /* font-family: 'S-CoreDream-9Black', sans-serif !important; */
      margin-bottom: 0px;white-space: nowrap;overflow: hidden; /* 넘치는 텍스트 숨김 */
      display: inline-block;animation: typing 4s steps(20, end);}
    
    @keyframes typing {
      from { width: 0; } /* 시작은 텍스트가 없음 */
      to { width: 100%; } /* 전체 텍스트가 나타남 */
    }
    
    @keyframes blink {
      from, to { border-color: transparent; }
      50% { border-color: black; } /* 커서 깜박임 */
    }
    @keyframes colorChange {
      0% { color: #fff; }
      33% { color: rgb(238, 255, 0); }
      66% { color: rgb(0, 224, 0); }
      100% { color: #fff; }
    }
    /* 로고하단 타이틀 */
    .sns-title-log {width: 100%;display: flex;justify-content: space-between;margin-top: 0px;}
    .title-char {flex: 1;text-align: left;font-size: 12px !important;
        font-family: 'Noto Sans KR', sans-serif;
        font-weight: 500;
        animation: colorChange 3s infinite; /* 색상 변화 애니메이션 */
      }
        
    @media only screen and (max-width: 1024px) {
    .title-logo {color:#fff;}
    /* .title-char {color:#f0f0f0 !important;} */
    @keyframes colorChange {
      0% { color: rgb(255, 220, 220); }
      33% { color: rgb(224, 224, 255); }
      66% { color: rgb(212, 255, 212); }
      100% { color: rgb(214, 254, 255); }
    }
    #logo3 {display: flex;justify-content: center;align-items: center;text-align: center;margin: 0 auto;}
    #logo3 img {max-width: 200px !important }
    }
    /* 배너 */
    .advertisement img {max-width: 200px; /* 이미지의 최대 너비 설정 */height: auto !important;}
    .advertisement {display: none;position: absolute;top: 80px;left: 30%;transform: translateX(-50%);text-align: center;margin: 10px 0;}
    
    #full-menu-container:hover .advertisement {display: block; /* 메뉴에 마우스 오버 시 광고 이미지 표시 */}
    /* 탑 메뉴 틀 */
    #full-menu-list {flex-grow: 1;transition: all 0.3s ease;display: flex;justify-content: flex-end;
        background-color: transparent;width: auto;}

    /* 1차 메뉴 */
    #full_1dul {list-style: none;padding: 0;margin: 0;display: flex;justify-content: flex-end;width: auto;}
    /* 1차 메뉴 항목 */
    #full_1dul li {position: relative;}
    /* 1차 메뉴 링크*/
    #full_1dul li a {text-decoration: none;color: #fff;padding: 10px 15px;display: block;
        font-weight: 600;font-size: 1.3em;width: 150px;text-align: center;}
    
    #full_1dul li.active a {color: rgb(142, 226, 85);background-color: rgba(68, 255, 68, 0.1); /* 배경색 유지 */}
    /* 1차 메뉴 호버 */
    #full_1dul li a:hover {background-color: rgba(218, 149, 149, 0.1);color: rgb(142, 226, 85);}


    .full_1dli {
        position: relative;margin-top: 12px;
        /* border-bottom: 2px solid #d13737 !important; */
        padding-bottom: 19px;  
        z-index: 999999  !important;
    }
    
    .full_2dli {
        border-top: 2px solid #fff; 
        /* margin-top: 20px;  */
        padding-top: 20px;
    }

    /* 서브메뉴 */
    .full_2dli {display: none;position: absolute;top: 100%;left: 50%;transform: translateX(-50%);
        background-color: #ec1d3e;
        z-index: 1;width: auto; /* 자동으로 1차 메뉴에 맞춤 */
        /* box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); */
    }
    /* 1차 메뉴에서 서브메뉴 표시 */
    #full_1dul li:hover .full_2dli {display: block; /* 부모 메뉴 호버 시 서브메뉴 표시 */}
    .full_2dli li {margin: 0;white-space: nowrap; /* 줄바꿈을 방지*/}
    .full_2dli li a {padding: 5px 15px !important;color: #fff !important;display: block; font-size: 1.2em !important; }
    /* 2차 메뉴 호버 */
    .full_2dli li a:hover {background-color: rgba(218, 149, 149, 0.1);color: rgb(142, 226, 85) !important;}
    .full_2dli li.active a {
        background-color: rgba(255, 255, 255, 0.1);
        color: rgb(142, 226, 85) !important;
    }
    
@media (max-width: 768px) {#full-menu-container {display: none; /* 모바일에서 메뉴 숨김 */}}
@media screen and (max-width: 768px) {
#link-container {flex-direction: column;align-items: center;bottom: 10px;width: 100%;}
/* .sns_info {display: none;} */
/* 모두가로 배치할때 .sns-list {gap: 10px;justify-content: center;}
.sns-item {max-width: 100%;}
.sns-title {font-size: 14px;}
.sns_info {font-size: 12px;} */
.sns-list {display: flex;flex-wrap: wrap;justify-content: center;gap: 10px;}
.sns-item {width: calc(50% - 10px); max-width: 100%;text-align: center;}
.sns-item-url img {width: 40px;height: 40px;}

#media-container {width: 100%;left: 0;transform: translate(0, -50%);top: 80px;}
#media-title {text-align: center;font-size: 1.3em;}
#media-content {font-size: 1.7em;text-align: center;}

}
/* 상단 배너광고 종료 */

/* 반응형sns로고 */
#logo2 {text-align: center;margin: 10px auto; }
#logo2 img {max-width: 200px !important;height: 40px !important;display: block;margin: 0 auto;}
/* sns로고 */

/* 모바일로고 설정 */
@media only screen and (max-width: 768px) {
    #logo2 {text-align: center !important;}
    #logo2 img {max-width: 150px !important;margin: 0 auto !important;display: block !important;}
    .scroll-section-container {max-height: 100vh;margin: 0;padding: 0px;width: 100vw;}
}
.sns-title-log {font-size: 20px;font-weight: 400;color: #01a101 !important }

.sns-logo-top {width: 100%;display: flex;justify-content: center;}
.sns-title-log span {width: 100%;text-align: center;font-size: 16px;white-space: nowrap; 
    overflow: hidden;
    text-overflow: ellipsis;
    font-stretch: condensed;
    color:#fff
}

/* 상단 sns로고 종료 */
