/* ========================================
   DartBuilder Skin 1 - Corporate Style (Fixed)
   ======================================== */

/* ── Reset ── */
*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; -webkit-text-size-adjust: 100%; }
body { margin: 0; -webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; }
img, picture, video, canvas, svg { display: block; max-width: 100%; }

/* [수정] 기본 링크 색상을 흰색이 아닌 어두운 색으로 지정 */
a { 
    color: #000000; 
    text-decoration: none; 
    transition: color 0.2s, background-color 0.2s;
}

/* ── Typography ── */
body {
    font-family: "Noto Sans KR", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;
    word-break: keep-all;
    overflow-wrap: break-word;
    line-height: 1.7;
    color: #1f2937;
    letter-spacing: -0.01em;
}
h1, h2, h3, h4, h5, h6 {
    line-height: 1.35;
    font-weight: 700;
    letter-spacing: -0.02em;
    color: #111827;
}
/* ── Utility ── */
:focus-visible { outline: 2px solid #2563eb; outline-offset: 2px; }
::selection { background-color: #2563eb; color: #fff; }

.base-container { width: 100%; max-width: var(--content-width); margin: 0 auto; padding: 0 1rem; }
@media (min-width: 640px) { .base-container { padding: 0 1.5rem; } }
@media (min-width: 1024px) { .base-container { padding: 0 2rem; } }

/* ── Scrollbar ── */
::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: transparent; }
::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: #94a3b8; }

/* ========================================
   HEADER (smceng style)
   ======================================== */
.db-header {
    position: fixed;
    top: 0; left: 0;
    width: 100%;
    z-index: 1000;
    transition: background 0.4s, box-shadow 0.4s;
    background: #fff;
}
.db-header.scrolled {
    background: #fff;
    box-shadow: 0 1px 8px rgba(0,0,0,0.06);
}
.db-header-inner {
    display: flex;
    align-items: center;
    height: 100px;
    max-width: 100%;
    padding: 0 0 0 clamp(1.5rem, 4vw, 3.5rem);
    padding-right: 80px;
    transition: height 0.4s;
}
.db-header.scrolled .db-header-inner {
    height: 76px;
}

/* 로고 */
.db-header-logo { display: flex; align-items: center; height: 100%; flex-shrink: 0; }
.db-header-logo a { display: flex; align-items: center; height: 100%; }
.db-header-logo img { height: 34px; width: auto; transition: filter 0.4s; }
.db-logo-text { font-size: 1.25rem; font-weight: 800; color: #0f172a; transition: color 0.4s; }

/* 우측 영역 */
.db-header-right {
    position: absolute;
    top: 0; right: 0;
    height: 100%;
    display: flex;
    align-items: center;
    gap: 0;
}

/* 로그인/회원가입 */
.db-header-auth { display: none; align-items: center; gap: 0.25rem; font-size: 0.8125rem; margin-right: 0.5rem; }
@media (min-width: 1024px) { .db-header-auth { display: flex; } }
.db-header-auth a {
    color: #64748b !important;
    padding: 0.375rem 0.625rem;
    font-weight: 500;
    border-radius: 6px;
    transition: all 0.2s;
}
.db-header-auth a:hover { color: #1e40af !important; background: rgba(0,0,0,0.04); }

/* 검색 버튼 */
.db-header-search {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 44px;
    height: 100%;
    background: none;
    border: none;
    cursor: pointer;
    color: #374151;
    transition: color 0.3s;
    padding: 0;
}
.db-header-search:hover { color: #1e40af; }
.db-header-search svg { width: 20px; height: 20px; }

/* ========================================
   NAVIGATION (Desktop - smceng style)
   ======================================== */
.db-nav { display: none; flex: 1; padding-left: clamp(1.5rem, 4vw, 4.5rem); height: 100%; }
@media (min-width: 1024px) { .db-nav { display: flex; } }

.db-menu { list-style: none; margin: 0; padding: 0; display: flex; gap: 0; height: 100%; }
.db-menu > li { position: relative; height: 100%; }
.db-menu > li > a {
    display: flex;
    align-items: center;
    height: 100%;
    color: #1f2937 !important;
    font-size: 1.0625rem;
    font-weight: 600;
    padding: 0 clamp(0.75rem, 1.8vw, 1.5rem);
    transition: color 0.3s;
    white-space: nowrap;
}
.db-menu > li > a:hover { color: #1e40af !important; }

/* 서브메뉴 드롭다운 */
.db-submenu {
    position: absolute;
    top: 100%;
    left: 50%;
    transform: translateX(-50%);
    width: max-content;
    min-width: 160px;
    background: #1e3a5f;
    padding: 12px 0;
    list-style: none;
    margin: 0;
    border-radius: 0;
    z-index: 1001;
    clip-path: inset(0 100% 0 0);
    opacity: 0;
    transition: clip-path 0.4s cubic-bezier(0.4,0,0.2,1), opacity 0.4s;
    box-shadow: 0 8px 24px rgba(0,0,0,0.15);
}
.db-submenu li { position: relative; }
.db-submenu a {
    display: block;
    padding: 7px 24px;
    font-size: 0.9rem;
    color: rgba(255,255,255,0.75) !important;
    font-weight: 400;
    transition: color 0.2s, padding-left 0.2s;
}
.db-submenu a:hover {
    color: #fff !important;
    padding-left: 28px;
    background: none;
}

/* 서브메뉴 3차+ (clip-path 대신 opacity 전환) */
.db-submenu .db-submenu {
    top: -12px;
    left: 100%;
    transform: none;
    clip-path: none;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s, visibility 0.3s;
}

/* hover 시 서브메뉴 표시 */
@media (min-width: 1024px) {
    /* 1차→2차: clip-path 와이프 애니메이션 (충분히 확장하여 3차 영역 포함) */
    .db-menu > .db-menu-has-sub:hover > .db-submenu {
        clip-path: inset(-20px -500% -20px -20px);
        opacity: 1;
    }
    /* 3차+: opacity 전환 */
    .db-submenu .db-menu-has-sub:hover > .db-submenu {
        opacity: 1;
        visibility: visible;
    }
}
/* 호버 브릿지 */
.db-menu > .db-menu-has-sub > .db-submenu::before {
    content: '';
    position: absolute;
    top: -20%;
    left: 0;
    right: 0;
    height: 20%;
}
.db-submenu .db-menu-has-sub > .db-submenu::before {
    content: '';
    position: absolute;
    top: 0;
    left: -10px;
    width: 10px;
    height: 100%;
}

/* ========================================
   HAMBURGER BUTTON (smceng trigger style)
   ======================================== */
.db-hamburger {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 80px;
    height: 100%;
    background: #1e3a5f;
    border: none;
    cursor: pointer;
    padding: 0;
    transition: background 0.3s;
    flex-shrink: 0;
}
.db-hamburger:hover { background: #152d4a; }

/* 3선 햄버거 아이콘 */
.db-hamburger span {
    display: block;
    width: 22px;
    height: 2px;
    background: #fff;
    position: relative;
    transition: background 0.3s;
}
.db-hamburger span::before,
.db-hamburger span::after {
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 2px;
    background: #fff;
    transition: transform 0.3s;
}
.db-hamburger span::before { top: -7px; }
.db-hamburger span::after { top: 7px; }

/* ========================================
   ASIDE PANEL (smceng style 사이드 메뉴)
   ======================================== */
.db-aside-bg {
    position: fixed;
    top: 0; left: -35%;
    width: 30.5%;
    height: 100%;
    background: linear-gradient(180deg, #0c1a2e 0%, #1e3a5f 100%);
    z-index: 98;
    opacity: 0;
    transition: left 0.5s, opacity 0.5s;
}
body.aside-open .db-aside-bg { left: 0; opacity: 1; }

.db-aside {
    position: fixed;
    top: 0; right: -70%;
    width: 70%;
    height: 100%;
    background: #1e3a5f;
    z-index: 99;
    opacity: 0;
    transition: right 0.5s, opacity 0.5s;
    overflow: hidden;
}
body.aside-open .db-aside { right: 0; opacity: 1; }
body.aside-open { overflow: hidden; }

.db-aside-box {
    width: 100%;
    height: 100%;
    padding: 40px 60px 0;
    box-sizing: border-box;
    position: relative;
}
.db-aside-head {
    display: flex;
    align-items: center;
    justify-content: flex-end;
}
.db-aside-close {
    width: 40px;
    height: 40px;
    background: none;
    border: none;
    cursor: pointer;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
}
.db-aside-close span {
    display: block;
    width: 100%;
    height: 2px;
    background: #fff;
    position: absolute;
}
.db-aside-close span:first-child { transform: rotate(-45deg); }
.db-aside-close span:last-child { transform: rotate(45deg); }

.db-aside-scroll {
    max-height: calc(100% - 120px);
    overflow-y: auto;
    margin-top: 40px;
    padding-left: 40px;
    padding-right: 40px;
}
.db-aside-scroll::-webkit-scrollbar { background: transparent; width: 4px; }
.db-aside-scroll::-webkit-scrollbar-thumb { border-radius: 2px; background: rgba(255,255,255,0.3); }

/* 사이드 메뉴 리스트 */
.db-aside-menu { list-style: none; margin: 0; padding: 0; }
.db-aside-menu > li {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    padding: 32px 0;
    border-bottom: 1px solid rgba(255,255,255,0.12);
}
.db-aside-menu > li:last-child { border-bottom: none; }
.db-aside-menu > li > .aside-title {
    width: 200px;
    flex-shrink: 0;
}
.db-aside-menu > li > .aside-title > a {
    font-size: 1.375rem;
    color: #fff !important;
    font-weight: 600;
    line-height: 1.4;
}
.db-aside-sub {
    width: calc(100% - 200px);
    display: flex;
    flex-wrap: wrap;
    gap: 14px 0;
    padding-left: 32px;
    list-style: none;
    margin: 0;
}
.db-aside-sub li { width: 100%; }
.db-aside-sub a {
    font-size: 1.05rem;
    color: rgba(255,255,255,0.65) !important;
    font-weight: 400;
    position: relative;
    transition: color 0.2s;
}
.db-aside-sub a:hover {
    color: #fff !important;
}
/* 3차+ 서브메뉴 (재귀) */
.db-aside-sub-deep {
    width: 100%;
    padding-left: 16px;
    margin-top: 8px;
    gap: 8px 0;
    border-left: 1px solid rgba(255,255,255,0.15);
}
.db-aside-sub-deep a {
    font-size: 0.95rem;
    color: rgba(255,255,255,0.5) !important;
}
.db-aside-sub-deep a:hover {
    color: #fff !important;
}

/* 모바일 auth (기본 숨김) */
.db-mobile-auth { display: none; }

/* ========================================
   ASIDE 반응형
   ======================================== */
@media (max-width: 1023px) {
    .db-aside-bg { display: none; }
    .db-aside {
        width: 100%;
        right: -100%;
    }
    .db-aside-box { padding: 24px 20px; }
    .db-aside-head { justify-content: space-between; }
    .db-aside-scroll { padding-left: 0; padding-right: 0; margin-top: 30px; max-height: calc(100% - 80px); }
    .db-aside-menu > li { flex-direction: column; padding: 20px 0; }
    .db-aside-menu > li > .aside-title { width: 100%; margin-bottom: 12px; }
    .db-aside-menu > li > .aside-title > a { font-size: 1.2rem; }
    .db-aside-sub { width: 100%; padding-left: 0; gap: 10px 0; }
    .db-aside-sub a { font-size: 0.95rem; }
    .db-aside-sub-deep { padding-left: 12px; margin-top: 6px; gap: 6px 0; }
    .db-aside-sub-deep a { font-size: 0.875rem; }

    /* 사이드 모바일 auth */
    .db-aside .db-aside-auth {
        display: flex;
        align-items: center;
        gap: 0.75rem;
        font-size: 0.875rem;
    }
    .db-aside .db-aside-auth a {
        color: rgba(255,255,255,0.7) !important;
        font-weight: 500;
    }
    .db-aside .db-aside-auth a:hover { color: #fff !important; }
}

/* ========================================
   HEADER 반응형
   ======================================== */
@media (max-width: 1279px) {
    .db-header-inner { padding-right: 70px; }
    .db-hamburger { width: 70px; }
    .db-menu > li > a { font-size: 1rem; padding: 0 clamp(0.5rem, 1.2vw, 1rem); }
}
@media (max-width: 1023px) {
    .db-header-inner { height: 70px; padding-right: 60px; }
    .db-header.scrolled .db-header-inner { height: 60px; }
    .db-header-logo img { height: 28px; }
    .db-hamburger { width: 60px; }
}
@media (max-width: 639px) {
    .db-header-inner { height: 60px; padding-left: 1rem; padding-right: 52px; }
    .db-header.scrolled .db-header-inner { height: 56px; }
    .db-header-logo img { height: 24px; }
    .db-hamburger { width: 52px; }
    .db-hamburger::before { width: 26px; height: 26px; }
    .db-hamburger::after { width: 6px; height: 6px; }
    .db-header-search svg { width: 18px; height: 18px; }
}

/* body에 헤더 높이만큼 패딩 */
body { padding-top: 100px; }
@media (max-width: 1023px) { body { padding-top: 70px; } }
@media (max-width: 639px) { body { padding-top: 60px; } }

/* ========================================
   FOOTER
   ======================================== */
.db-footer {
    background: #0f172a;
    color: #94a3b8;
    margin-top: auto;
}
.db-footer-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 1.25rem 1.5rem;
}
.db-footer-logo {
    display: flex;
    align-items: center;
    gap: 0.5rem;
    margin-bottom: 0.75rem;
}
.db-footer-logo img {
    height: 24px;
    width: auto;
    filter: brightness(0) invert(1);
    opacity: 0.8;
}
.db-footer-logo span {
    font-size: 0.9375rem;
    font-weight: 700;
    color: #cbd5e1;
}
.db-footer-info p {
    margin: 0;
    font-size: 0.75rem;
    line-height: 1.8;
    color: #64748b;
}

/* ========================================
   사업분야 페이지 (Business Page)
   ======================================== */

/* ── Full-bleed sections ── */
.biz-full {
    margin-left: calc(-50vw + 50%);
    margin-right: calc(-50vw + 50%);
    width: 100vw;
    position: relative;
}

/* ── Animations ── */
@keyframes bizFadeUp {
    from { opacity: 0; transform: translateY(50px); }
    to { opacity: 1; transform: translateY(0); }
}
@keyframes bizFadeIn {
    from { opacity: 0; }
    to { opacity: 1; }
}
@keyframes bizPulse {
    0%, 100% { opacity: 0.4; }
    50% { opacity: 0.8; }
}

/* ── Scroll Reveal ── */
.biz-reveal {
    opacity: 0;
    transform: translateY(50px);
    transition: all 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}
.biz-reveal.active {
    opacity: 1;
    transform: translateY(0);
}
.biz-reveal-left {
    opacity: 0;
    transform: translateX(-60px);
    transition: all 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}
.biz-reveal-left.active {
    opacity: 1;
    transform: translateX(0);
}
.biz-reveal-right {
    opacity: 0;
    transform: translateX(60px);
    transition: all 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}
.biz-reveal-right.active {
    opacity: 1;
    transform: translateX(0);
}
.biz-reveal-scale {
    opacity: 0;
    transform: scale(0.85);
    transition: all 0.9s cubic-bezier(0.16, 1, 0.3, 1);
}
.biz-reveal-scale.active {
    opacity: 1;
    transform: scale(1);
}
.biz-d1 { transition-delay: 0.1s; }
.biz-d2 { transition-delay: 0.2s; }
.biz-d3 { transition-delay: 0.3s; }
.biz-d4 { transition-delay: 0.4s; }
.biz-d5 { transition-delay: 0.5s; }

/* ── Hover Effects ── */
.biz-img-zoom { overflow: hidden; }
.biz-img-zoom img {
    transition: transform 0.7s cubic-bezier(0.16, 1, 0.3, 1);
}
.biz-img-zoom:hover img { transform: scale(1.08); }

.biz-icon-hover { transition: all 0.35s ease; }
.biz-icon-hover:hover { transform: scale(1.1) rotate(5deg); }

.biz-btn-shine {
    position: relative;
    overflow: hidden;
    transition: all 0.3s ease;
}
.biz-btn-shine::after {
    content: '';
    position: absolute;
    top: 0; left: -100%; width: 100%; height: 100%;
    background: linear-gradient(90deg, transparent, rgba(255,255,255,0.25), transparent);
    transition: left 0.6s ease;
}
.biz-btn-shine:hover::after { left: 100%; }
.biz-btn-shine:hover {
    transform: translateY(-3px);
    box-shadow: 0 12px 35px rgba(59,130,246,0.45);
}

.biz-gradient-text {
    background: linear-gradient(135deg, #60a5fa, #a78bfa);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
    background-clip: text;
}

/* ── Decorative ── */
.biz-glow {
    position: absolute;
    border-radius: 50%;
    filter: blur(80px);
    pointer-events: none;
}
.biz-line-accent {
    width: 60px;
    height: 3px;
    background: linear-gradient(90deg, #3b82f6, #8b5cf6);
    border-radius: 2px;
}
.biz-section-label {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.15em;
    text-transform: uppercase;
}

/* ── Feature Cards ── */
.biz-feature-card {
    position: relative;
    border-radius: 20px;
    padding: 32px 28px;
    background: white;
    border: 1px solid #e2e8f0;
    transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
}
.biz-feature-card:hover {
    border-color: transparent;
    box-shadow: 0 20px 50px -12px rgba(0,0,0,0.12);
    transform: translateY(-6px);
}
.biz-feature-card::before {
    content: '';
    position: absolute;
    top: 0; left: 0; right: 0;
    height: 3px;
    border-radius: 20px 20px 0 0;
    opacity: 0;
    transition: opacity 0.3s ease;
}
.biz-feature-card:hover::before { opacity: 1; }
.biz-fc-blue::before { background: linear-gradient(90deg, #3b82f6, #60a5fa); }
.biz-fc-green::before { background: linear-gradient(90deg, #10b981, #34d399); }
.biz-fc-purple::before { background: linear-gradient(90deg, #8b5cf6, #a78bfa); }
.biz-fc-rose::before { background: linear-gradient(90deg, #f43f5e, #fb7185); }
.biz-fc-cyan::before { background: linear-gradient(90deg, #06b6d4, #22d3ee); }
.biz-fc-amber::before { background: linear-gradient(90deg, #f59e0b, #fbbf24); }
.biz-fc-indigo::before { background: linear-gradient(90deg, #6366f1, #818cf8); }
.biz-fc-emerald::before { background: linear-gradient(90deg, #059669, #34d399); }

/* ========================================
   메인 페이지 섹션 레이아웃 (smceng style)
   ======================================== */

/* 메인 슬라이더: 풀와이드, 여백 없음 */
.main-banner { margin: 0; }

/* 공통 섹션 */
.main-section {
    padding: 80px 0;
}
.main-section-gray {
    background: #f8fafc;
}
.main-section-inner {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 clamp(1rem, 4vw, 2rem);
}

/* 섹션 헤더 (smceng 스타일: 영문 서브타이틀 + 한글 타이틀) */
.main-section-head {
    text-align: center;
    margin-bottom: 48px;
}
.main-section-sub {
    display: block;
    font-size: 0.8125rem;
    font-weight: 600;
    letter-spacing: 0.15em;
    color: #94a3b8;
    text-transform: uppercase;
    margin-bottom: 8px;
}
.main-section-title {
    font-size: 2rem;
    font-weight: 800;
    color: #0f172a;
    margin: 0;
    line-height: 1.3;
}
.main-section-title::after {
    content: '';
    display: block;
    width: 40px;
    height: 3px;
    background: #1e40af;
    margin: 16px auto 0;
    border-radius: 2px;
}

@media (max-width: 767px) {
    .main-section { padding: 48px 0; }
    .main-section-head { margin-bottom: 32px; }
    .main-section-title { font-size: 1.5rem; }
}

/* ========================================
   노출 블록 - 제품
   ========================================
   [크기 조절 가이드]
   - 썸네일 최대 폭 → .db-expose-product-item max-width 값 변경
   - 썸네일 비율     → .db-expose-thumb img aspect-ratio 값 변경 (4/3, 16/9, 1 등)
   - 한 줄 개수      → 자동 (max-width 기준으로 자동 배치)
   - 카드 간격       → .db-expose-grid gap 값 변경
   ======================================== */

/* 전체 영역: 중앙 정렬 (main-section-inner 안에서는 max-width 불필요) */
.db-expose-products {
    max-width: 1200px;
    margin: 0 auto;
}

/* 그리드: 자동 배치 (카드 max-width에 따라 줄당 개수 자동 결정) */
.db-expose-grid {
    display: flex;
    flex-wrap: wrap;
    gap: 1.25rem;
    justify-content: center;
}

/* ★ 썸네일 크기 조절: 이 값을 바꾸면 카드 크기가 변합니다 ★ */
.db-expose-product-item {
    width: 280px;      /* 카드 폭 (280px × 3 = 840px → 1024px 안에 3개) */
    flex-shrink: 0;
}

/* 모바일: 한 줄에 1개, 폭 100% */
@media (max-width: 767px) {
    .db-expose-product-item {
        width: 100%;
        max-width: 400px;  /* 모바일에서 너무 크지 않게 */
    }
}

/* 썸네일 이미지 */
.db-expose-thumb {
    display: block;
    overflow: hidden;
    border-radius: 12px;       /* 모서리 둥글기 */
    background: #f5f5f5;       /* 이미지 로딩 전 배경색 */
}
.db-expose-thumb img {
    width: 100%;
    aspect-ratio: 4/3;         /* 이미지 비율 (4/3, 16/9, 1 등) */
    object-fit: cover;
    display: block;
    transition: transform 0.3s ease;
}
.db-expose-product-item:hover .db-expose-thumb img {
    transform: scale(1.03);    /* 호버 시 살짝 확대 */
}

/* 제목, 설명 */
.db-expose-info { padding: 0.6rem 0.15rem 0; }
.db-expose-title {
    font-size: 0.95rem;        /* 제목 글씨 크기 */
    font-weight: 700;
    color: #1e293b;
    text-decoration: none;
    display: block;
}
.db-expose-title:hover { color: #2563eb; }
.db-expose-desc {
    font-size: 0.8rem;         /* 요약 설명 글씨 크기 */
    color: #64748b;
    margin-top: 0.2rem;
    line-height: 1.4;
}

/* ========================================
   노출 블록 - 게시판 리스트
   ======================================== */
.db-expose-list { list-style: none; padding: 0; margin: 0; }
.db-expose-list-item {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 0.875rem 0;
    border-bottom: 1px solid #e2e8f0;
}
.db-expose-list-item:first-child { border-top: 2px solid #1e293b; }
.db-expose-list-title {
    color: #374151;
    text-decoration: none;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 0.9375rem;
    font-weight: 500;
}
.db-expose-list-title:hover { color: #1e40af; }
.db-expose-date { font-size: 0.8125rem; color: #94a3b8; flex-shrink: 0; margin-left: 1rem; }
.db-expose-board .db-expose-info .db-expose-date { display: block; margin-top: 0.15rem; }

/* 게시판 썸네일 모드 */
.db-expose-board .db-expose-grid {
    gap: 1.5rem;
}
.db-expose-board-item {
    width: 280px;
    flex-shrink: 0;
}
@media (max-width: 767px) {
    .db-expose-board-item {
        width: 100%;
        max-width: 400px;
    }
}

/* 게시판 썸네일 - 이미지 없을 때 */
.db-expose-no-img {
    width: 100%;
    aspect-ratio: 4/3;
    background: #f1f5f9;
    border-radius: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}
.db-expose-no-img svg { width: 2rem; height: 2rem; color: #cbd5e1; }

/* 더보기 링크 */
.db-expose-more { margin-top: 1.5rem; text-align: center; }
.db-expose-more a {
    display: inline-block;
    font-size: 0.875rem;
    color: #475569;
    text-decoration: none;
    padding: 0.625rem 2rem;
    border: 1px solid #cbd5e1;
    border-radius: 6px;
    transition: all 0.2s;
}
.db-expose-more a:hover { color: #1e40af; border-color: #1e40af; background: #f0f4ff; }
.db-expose-empty { color: #94a3b8; font-size: 0.875rem; }

/* ========================================
   오시는 길 페이지 (Directions)
   ======================================== */

/* ── Hero ── */
.dir-hero {
    background: linear-gradient(135deg, #1e293b 0%, #0f172a 100%);
    padding: 3.5rem 1.5rem;
    text-align: center;
}
.dir-hero-inner { max-width: 800px; margin: 0 auto; }
.dir-label {
    display: inline-block;
    font-size: 0.6875rem;
    font-weight: 700;
    letter-spacing: 0.2em;
    color: #60a5fa;
    margin: 0 0 0.5rem;
}
.dir-title {
    font-size: 2rem;
    font-weight: 800;
    color: #ffffff;
    margin: 0;
    letter-spacing: -0.02em;
}
@media (min-width: 768px) {
    .dir-hero { padding: 4.5rem 2rem; }
    .dir-title { font-size: 2.5rem; }
}

/* ── Container ── */
.dir-container {
    max-width: 960px;
    margin: 0 auto;
    padding: 2rem 1.25rem 3.5rem;
}
@media (min-width: 768px) {
    .dir-container { padding: 2.5rem 2rem 4rem; }
}

/* ── Map ── */
.dir-map-wrap {
    border-radius: 16px;
    overflow: hidden;
    box-shadow: 0 4px 24px rgba(0,0,0,0.08);
    border: 1px solid #e5e7eb;
    margin-bottom: 2.5rem;
}
.dir-map {
    width: 100%;
    height: 350px;
    background: #f1f5f9;
}
@media (min-width: 768px) { .dir-map { height: 460px; } }

/* ── Info Grid ── */
.dir-info-grid {
    display: grid;
    grid-template-columns: 1fr;
    gap: 1rem;
    margin-bottom: 2.5rem;
}
@media (min-width: 640px) {
    .dir-info-grid { grid-template-columns: repeat(3, 1fr); }
}
.dir-info-card {
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 14px;
    padding: 1.5rem;
    transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
}
.dir-info-card:hover {
    border-color: transparent;
    box-shadow: 0 8px 30px rgba(0,0,0,0.07);
    transform: translateY(-4px);
}
.dir-info-icon {
    width: 42px;
    height: 42px;
    border-radius: 11px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 0.875rem;
}
.dir-info-icon svg {
    width: 20px;
    height: 20px;
    stroke-width: 1.5;
}
.dir-icon-pin { background: #eff6ff; color: #2563eb; }
.dir-icon-phone { background: #f0fdf4; color: #16a34a; }
.dir-icon-clock { background: #fefce8; color: #ca8a04; }

.dir-info-card h3 {
    font-size: 0.75rem;
    font-weight: 700;
    color: #9ca3af;
    text-transform: uppercase;
    letter-spacing: 0.08em;
    margin: 0 0 0.375rem;
}
.dir-info-card p {
    font-size: 0.9375rem;
    color: #1f2937;
    line-height: 1.65;
    margin: 0;
}

/* ── Subway Section ── */
.dir-subway { margin-bottom: 1.5rem; }
.dir-subway-title {
    font-size: 1.125rem;
    font-weight: 700;
    color: #111827;
    margin: 0 0 1rem;
    padding-bottom: 0.625rem;
    border-bottom: 2px solid #f1f5f9;
    display: flex;
    align-items: center;
    gap: 0.5rem;
}
.dir-subway-title svg {
    width: 22px;
    height: 22px;
    color: #6b7280;
    flex-shrink: 0;
}
.dir-subway-grid {
    display: flex;
    flex-direction: column;
    gap: 0.625rem;
}
.dir-subway-card {
    display: flex;
    align-items: center;
    gap: 1rem;
    background: #ffffff;
    border: 1px solid #e5e7eb;
    border-radius: 12px;
    padding: 1rem 1.25rem;
    transition: all 0.3s ease;
}
.dir-subway-card:hover {
    border-color: transparent;
    box-shadow: 0 4px 16px rgba(0,0,0,0.06);
}
.dir-line-badge {
    width: 38px;
    height: 38px;
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #ffffff;
    font-size: 0.9375rem;
    font-weight: 800;
    flex-shrink: 0;
}
.dir-line-1 { background: #263C96; }
.dir-line-2 { background: #3CB44A; }
.dir-line-7 { background: #697215; }

.dir-subway-info h4 {
    font-size: 0.9375rem;
    font-weight: 700;
    color: #1f2937;
    margin: 0 0 0.125rem;
    line-height: 1.4;
}
.dir-subway-info p {
    font-size: 0.8125rem;
    color: #6b7280;
    margin: 0;
    line-height: 1.4;
}
.dir-subway-info .dir-route-detail {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    color: #6b7280;
    font-size: 0.8125rem;
    margin-top: 0.125rem;
}
.dir-subway-info .dir-route-detail svg {
    width: 14px;
    height: 14px;
    flex-shrink: 0;
}

/* ========================================
   연혁 페이지 (History Timeline - 라온스타일)
   ======================================== */

/* ── Container ── */
.hist-container {
    max-width: 960px;
    margin: 0 auto;
    padding: 2rem 1.25rem 3rem;
}
@media (min-width: 768px) {
    .hist-container { padding: 2.5rem 2rem 4rem; }
}

/* ── Year Row ── */
.hist-row {
    display: flex;
    gap: 0 2.5rem;
}

/* Year (left column) */
.hist-year {
    width: 22%;
    box-sizing: border-box;
    padding-top: 1.25rem;
    border-top: 2px solid #111827;
    flex-shrink: 0;
}
.hist-year h4 {
    font-size: 2.5rem;
    color: #111827;
    font-weight: 700;
    line-height: 1.2;
    margin: 0;
    letter-spacing: -0.03em;
}

/* Detail (right column) */
.hist-detail {
    width: calc(100% - 22% - 2.5rem);
    box-sizing: border-box;
    padding-top: 2rem;
    padding-bottom: 2rem;
    border-top: 1px solid #e5e7eb;
}

/* Event list */
.hist-events {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
}
.hist-events li {
    display: flex;
    align-items: flex-start;
    gap: 0.75rem;
    font-size: 1rem;
    font-weight: 400;
    line-height: 1.55;
    color: #374151;
}
.hist-events li::before {
    content: '';
    width: 5px;
    min-width: 5px;
    aspect-ratio: 1;
    border-radius: 50%;
    background: #9ca3af;
    margin-top: 0.6rem;
    flex-shrink: 0;
}

/* ── Tablet ── */
@media (max-width: 1023px) {
    .hist-row { gap: 0 1.875rem; }
    .hist-year h4 { font-size: 2rem; }
    .hist-detail {
        width: calc(100% - 22% - 1.875rem);
        padding-top: 1.75rem;
    }
    .hist-events li { font-size: 0.9375rem; }
}

/* ── Mobile ── */
@media (max-width: 767px) {
    .hist-row {
        flex-direction: column;
    }
    .hist-year {
        width: 100%;
        padding-top: 0;
        padding-bottom: 0.5rem;
        border-top: none;
    }
    .hist-year h4 { font-size: 1.625rem; }
    .hist-detail {
        width: 100%;
        border-top-color: #111827;
        border-bottom: 1px solid #e5e7eb;
        padding-top: 1.25rem;
        padding-bottom: 1.25rem;
    }
    .hist-events li { font-size: 0.875rem; gap: 0.625rem; }
    .hist-events li::before { width: 4px; min-width: 4px; margin-top: 0.55rem; }
}

/* ========================================
   인사말 페이지 (Greeting - 라온스타일)
   ======================================== */

/* ── Container ── */
.greet-container {
    max-width: 960px;
    margin: 0 auto;
    padding: 2rem 1.25rem 3.5rem;
}
@media (min-width: 768px) {
    .greet-container { padding: 2.5rem 2rem 4rem; }
}

/* ── Two-column Layout ── */
.greet-wrap {
    display: flex;
    gap: 3.75rem;
    padding-top: 1.25rem;
}

/* ── Image Column ── */
.greet-img { width: 41.5%; flex-shrink: 0; }
.greet-thumb {
    height: 100%;
    min-height: 520px;
    background: linear-gradient(160deg, #0c1222 0%, #162544 45%, #1e40af 100%);
    border-radius: 16px;
    position: relative;
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
}
/* Grid pattern */
.greet-thumb::before {
    content: '';
    position: absolute;
    inset: 0;
    background-image:
        linear-gradient(rgba(59,130,246,0.06) 1px, transparent 1px),
        linear-gradient(90deg, rgba(59,130,246,0.06) 1px, transparent 1px);
    background-size: 32px 32px;
}
/* Glow orb */
.greet-thumb::after {
    content: '';
    position: absolute;
    width: 280px;
    height: 280px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(59,130,246,0.18) 0%, transparent 70%);
    top: 35%;
    left: 55%;
    transform: translate(-50%, -50%);
}
.greet-nn { position: relative; z-index: 1; width: 70%; max-width: 280px; }
@keyframes greetPulse {
    0%, 100% { opacity: 0.5; r: 4; }
    50% { opacity: 1; r: 6; }
}
.greet-nn .nd { animation: greetPulse 3s ease-in-out infinite; }
.greet-nn .nd:nth-child(2) { animation-delay: 0.5s; }
.greet-nn .nd:nth-child(3) { animation-delay: 1s; }
.greet-nn .nd:nth-child(4) { animation-delay: 1.5s; }
.greet-nn .nd:nth-child(5) { animation-delay: 0.3s; }
.greet-nn .nd:nth-child(6) { animation-delay: 0.8s; }
.greet-nn .nd:nth-child(7) { animation-delay: 1.3s; }

/* ── Text Column ── */
.greet-text {
    width: calc(100% - 41.5%);
    display: flex;
    flex-direction: column;
    gap: 1.875rem;
    padding-top: 1.25rem;
}
.greet-title h3 {
    font-size: 1.75rem;
    color: #111827;
    font-weight: 600;
    letter-spacing: -0.035em;
    line-height: 1.55;
    margin: 0;
}
.greet-title h3 strong {
    color: #2563eb;
    font-weight: 700;
}
.greet-body {
    display: flex;
    flex-direction: column;
    gap: 1.375rem;
    color: #374151;
    line-height: 1.7;
}
.greet-body p {
    font-size: 0.9375rem;
    color: inherit;
    line-height: inherit;
    margin: 0;
}
.greet-body p strong {
    color: #2563eb;
    font-weight: 600;
}
.greet-ceo {
    display: flex;
    align-items: center;
    gap: 0.875rem;
    flex-wrap: wrap;
    color: #111827;
    font-weight: 500;
    font-size: 0.9375rem;
    margin-top: 0.625rem;
    padding-top: 1.25rem;
    border-top: 1px solid #e5e7eb;
}
.greet-name {
    font-size: 1.5rem;
    font-weight: 700;
    letter-spacing: 0.1em;
}

/* ── Responsive ── */
@media (max-width: 1100px) {
    .greet-wrap {
        flex-direction: column;
        gap: 2.5rem;
    }
    .greet-img { width: 100%; }
    .greet-thumb {
        min-height: 360px;
        max-height: 480px;
    }
    .greet-text {
        width: 100%;
        padding-top: 0;
    }
}
@media (max-width: 1023px) {
    .greet-title h3 { font-size: 1.5rem; }
}
@media (max-width: 479px) {
    .greet-title h3 { font-size: 1.3rem; }
    .greet-thumb { min-height: 300px; }
    .greet-name { font-size: 1.25rem; }
}

/* ========================================
   빠른 상담문의 (Quick Inquiry)
   ======================================== */

/* ── 공통 ── */
.db-qi-header {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 0.5rem 0.75rem;
}
.db-qi-title {
    font-size: 0.875rem;
    font-weight: 700;
    color: var(--qi-text, #fff);
}
.db-qi-close {
    background: none;
    border: none;
    color: var(--qi-text, #fff);
    font-size: 1.25rem;
    cursor: pointer;
    opacity: 0.7;
    line-height: 1;
}
.db-qi-close:hover { opacity: 1; }

.db-qi-input {
    display: block;
    width: 100%;
    padding: 0.375rem 0.625rem;
    border: 1px solid rgba(255,255,255,0.3);
    border-radius: 0.375rem;
    background: rgba(255,255,255,0.15);
    color: var(--qi-text, #fff);
    font-size: 0.8125rem;
    outline: none;
    transition: border-color 0.2s;
}
.db-qi-input::placeholder { color: rgba(255,255,255,0.6); }
.db-qi-input:focus { border-color: rgba(255,255,255,0.7); background: rgba(255,255,255,0.25); }
/* select 옵션: 네이티브 드롭다운은 부모 배경을 상속받지 못하므로 명시적으로 지정 */
.db-qi-input option { background-color: #ffffff; color: #1e293b; }

.db-qi-privacy {
    display: flex;
    align-items: center;
    gap: 0.375rem;
    font-size: 0.7rem;
    color: var(--qi-text, #fff);
    opacity: 0.85;
    cursor: pointer;
    flex-shrink: 0;
}
.db-qi-privacy input[type="checkbox"] { width: 12px; height: 12px; flex-shrink: 0; }
.db-qi-privacy-link {
    color: var(--qi-text, #fff);
    text-decoration: underline;
    opacity: 0.8;
    margin-left: 0.25rem;
}
.db-qi-privacy-link:hover { opacity: 1; }

.db-qi-btn {
    padding: 0.375rem 1.125rem;
    background: rgba(255,255,255,0.95);
    color: var(--qi-bg, #1e40af);
    border: none;
    border-radius: 0.375rem;
    font-weight: 700;
    font-size: 0.8125rem;
    cursor: pointer;
    transition: background 0.2s;
    white-space: nowrap;
    flex-shrink: 0;
}
.db-qi-btn:hover { background: #fff; }

.db-qi-msg {
    text-align: center;
    font-size: 0.8rem;
    padding: 0.5rem;
    color: var(--qi-text, #fff);
}

.db-qi-form { display: flex; flex-direction: column; gap: 0.375rem; padding: 0 0.75rem 0.75rem; }

/* ── 하단 고정 바 ── */
.db-qi-bottom {
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    z-index: 9980;
}
.db-qi-bottom-tab {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0.5rem;
    width: 100%;
    padding: 0.5rem;
    background: var(--qi-bg, #1e40af);
    color: var(--qi-text, #fff);
    border: none;
    cursor: pointer;
    font-size: 0.8125rem;
    font-weight: 600;
}
.db-qi-bottom-tab:hover { filter: brightness(1.1); }

.db-qi-bottom-panel {
    background: var(--qi-bg, #1e40af);
    border-top: 1px solid rgba(255,255,255,0.1);
}
.db-qi-bottom-inner {
    max-width: 1200px;
    margin: 0 auto;
}

.db-qi-form-row {
    flex-direction: row !important;
    flex-wrap: wrap;
    align-items: center;
    gap: 0.5rem;
}
.db-qi-form-row .db-qi-input {
    width: auto;
    flex: 1 1 150px;
    min-width: 120px;
}

/* 캡차 영역 */
.db-qi-captcha {
    flex: 0 0 auto;
    display: flex;
    align-items: center;
    gap: 6px;
}
.db-qi-captcha img {
    height: 30px !important;
    border-radius: 4px;
}
.db-qi-captcha input[name="captcha_answer"] {
    height: 30px;
    padding: 0 8px;
    border: 1px solid #d1d5db;
    border-radius: 4px;
    width: 80px;
    font-size: 12px;
    color: #111;
    background: #fff;
}
@media (max-width: 768px) {
    .db-qi-captcha { width: 100%; justify-content: flex-start; }
}

/* ── 우측 패널 ── */
.db-qi-right {
    position: fixed;
    right: 0;
    top: 50%;
    transform: translateY(-50%);
    z-index: 9980;
    display: flex;
    align-items: flex-start;
}
.db-qi-right-tab {
    writing-mode: vertical-rl;
    text-orientation: mixed;
    padding: 0.75rem 0.4rem;
    background: var(--qi-bg, #1e40af);
    color: var(--qi-text, #fff);
    border: none;
    border-radius: 0.375rem 0 0 0.375rem;
    cursor: pointer;
    font-size: 0.78rem;
    font-weight: 600;
    letter-spacing: 0.05em;
}
.db-qi-right-tab:hover { filter: brightness(1.1); }

.db-qi-right-panel {
    display: none;
    width: 250px;
    background: var(--qi-bg, #1e40af);
    border-radius: 0.375rem 0 0 0.375rem;
    box-shadow: -4px 0 20px rgba(0,0,0,0.15);
}

/* ── 반응형 ── */
@media (max-width: 768px) {
    .db-qi-form-row {
        flex-direction: column !important;
    }
    .db-qi-form-row .db-qi-input {
        width: 100%;
        flex: none;
    }
    .db-qi-right {
        right: 0;
        top: auto;
        bottom: 0;
        transform: none;
        left: 0;
        flex-direction: column;
    }
    .db-qi-right-tab {
        writing-mode: horizontal-tb;
        text-orientation: initial;
        border-radius: 0;
        width: 100%;
        text-align: center;
    }
    .db-qi-right-panel {
        width: 100%;
        border-radius: 0;
    }
}

/* ========================================
   사용자 게시판 — 공지 배지 / 액션 버튼 통일
   ======================================== */

/* 공지 배지 — 모든 board_type 공용 (normal/gallery/video/notice 등)
   파란 테두리 + 흰 배경 + 파란 글씨, 직각 모서리 */
.bl-notice-badge,
.bl-gallery-notice,
.bl-video-notice {
    display: inline-block;
    padding: 3px 10px;
    border: 1px solid #2563eb;
    background: #ffffff;
    color: #2563eb;
    font-size: 11px;
    font-weight: 700;
    border-radius: 0;
    line-height: 1.4;
}

/* 사용자 게시판 액션 버튼 — 글쓰기 / 수정 / 삭제 / 답변 / 목록 / 검색 / 등록 / 취소 등 통일
   배경 #333, hover #000, 흰 글씨, 직각 모서리 */
.bl-btn,
.bl-btn--write,
.bl-btn--search,
.bf-submit,
.bf-cancel,
.bf-btn,
.bf-btn--primary,
.bf-btn--secondary,
.bf-btn--ghost {
    display: inline-block;
    padding: 8px 18px;
    background: #333333 !important;
    color: #ffffff !important;
    border: 0;
    border-radius: 0 !important;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    text-decoration: none;
    transition: background 0.15s;
    line-height: 1.4;
}
.bl-btn:hover,
.bl-btn--write:hover,
.bl-btn--search:hover,
.bf-submit:hover,
.bf-cancel:hover,
.bf-btn:hover,
.bf-btn--primary:hover,
.bf-btn--secondary:hover,
.bf-btn--ghost:hover {
    background: #000000 !important;
    color: #ffffff !important;
}

/* =========================================================
   사용자 게시판 댓글 폼 — bv-comment-* (디자인 자유도 위해 분리)
   변수로 감싸서 사이트별 커스텀 가능
   ========================================================= */
:root {
    --bvc-border: #e5e7eb;
    --bvc-border-focus: #2563eb;
    --bvc-bg: #ffffff;
    --bvc-bg-soft: #f9fafb;
    --bvc-text: #111827;
    --bvc-text-soft: #6b7280;
    --bvc-text-link: #2563eb;
    --bvc-radius: 6px;
    --bvc-gap: 10px;
    --bvc-pad: 14px;
}

.bv-comment-form {
    background: var(--bvc-bg);
    border: 1px solid var(--bvc-border);
    border-radius: 8px;
    padding: 16px;
    margin-top: 16px;
    display: flex;
    flex-direction: column;
    gap: var(--bvc-gap);
}

.bv-comment-form--reply {
    margin-top: 12px;
    padding: 12px;
    background: var(--bvc-bg-soft);
}

.bv-comment-row {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: var(--bvc-gap);
}
@media (max-width: 480px) {
    .bv-comment-row { grid-template-columns: 1fr; }
}

.bv-comment-input,
.bv-comment-textarea {
    width: 100%;
    padding: 10px 12px;
    border: 1px solid var(--bvc-border);
    border-radius: var(--bvc-radius);
    font-size: 14px;
    color: var(--bvc-text);
    background: #fff;
    transition: border-color 0.15s, box-shadow 0.15s;
    font-family: inherit;
    box-sizing: border-box;
}

.bv-comment-input:focus,
.bv-comment-textarea:focus {
    outline: none;
    border-color: var(--bvc-border-focus);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.bv-comment-textarea {
    resize: vertical;
    min-height: 80px;
    line-height: 1.5;
}

.bv-comment-foot {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: var(--bvc-gap);
    padding-top: 4px;
}

.bv-comment-captcha {
    flex: 0 0 auto;
}

.bv-comment-agree {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    font-size: 13px;
    color: var(--bvc-text-soft);
    cursor: pointer;
    user-select: none;
}

.bv-comment-agree input[type="checkbox"] {
    width: 16px;
    height: 16px;
    accent-color: var(--bvc-border-focus);
    cursor: pointer;
}

.bv-comment-agree-link {
    color: var(--bvc-text-link);
    text-decoration: underline;
    background: none;
    border: 0;
    padding: 0;
    cursor: pointer;
    font: inherit;
    margin-right: 2px;
}
.bv-comment-agree-link:hover {
    color: #1d4ed8;
}

.bv-comment-actions {
    display: flex;
    gap: 8px;
    justify-content: flex-end;
    align-items: center;
}

.bv-comment-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 9px 18px;
    border: 0;
    border-radius: 0;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s;
    text-decoration: none;
    line-height: 1.4;
}

.bv-comment-btn--submit {
    background: #333333;
    color: #ffffff;
}
.bv-comment-btn--submit:hover {
    background: #000000;
}

.bv-comment-btn--cancel {
    background: #ffffff;
    color: var(--bvc-text-soft);
    border: 1px solid var(--bvc-border);
}
.bv-comment-btn--cancel:hover {
    background: var(--bvc-bg-soft);
    color: var(--bvc-text);
}

.bv-comment-disabled {
    text-align: center;
    padding: 24px 16px;
    color: var(--bvc-text-soft);
    font-size: 13px;
    background: var(--bvc-bg-soft);
    border-radius: 8px;
    margin-top: 16px;
}

.bv-comment-reply-wrap {
    margin-top: 8px;
}

/* =========================================================
   사용자 지점안내 페이지 — br-* (디자인 자유도 위해 분리)
   ========================================================= */
:root {
    --br-bg: #ffffff;
    --br-bg-soft: #f9fafb;
    --br-border: #e5e7eb;
    --br-border-hover: #93c5fd;
    --br-text: #1f2937;
    --br-text-soft: #6b7280;
    --br-text-faint: #9ca3af;
    --br-accent: #2563eb;
    --br-accent-hover: #1d4ed8;
    --br-accent-soft-bg: #dbeafe;
    --br-accent-soft-text: #1d4ed8;
    --br-radius: 8px;
    --br-radius-lg: 12px;
    --br-radius-pill: 9999px;
    --br-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
    --br-shadow-hover: 0 4px 12px rgba(0, 0, 0, 0.08);
}

.br-page {
    max-width: 1200px;
    margin: 0 auto;
    padding: 40px 16px;
}

.br-title {
    font-size: 24px;
    font-weight: 700;
    color: var(--br-text);
    margin-bottom: 24px;
}

/* ── 그룹 탭 ── */
.br-tabs {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 8px;
    margin-bottom: 24px;
}

.br-tab {
    display: inline-flex;
    align-items: center;
    padding: 6px 16px;
    border: 0;
    border-radius: var(--br-radius-pill);
    background: #f3f4f6;
    color: var(--br-text-soft);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
}
.br-tab:hover { background: #e5e7eb; }
.br-tab.is-active {
    background: var(--br-accent);
    color: #ffffff;
}

/* ── 메인 레이아웃 (검색+리스트 ↔ 지도) ── */
.br-main {
    display: flex;
    flex-direction: column;
    gap: 24px;
    min-height: 600px;
}
@media (min-width: 1024px) {
    .br-main { flex-direction: row; }
}

.br-side {
    width: 100%;
    display: flex;
    flex-direction: column;
}
@media (min-width: 1024px) {
    .br-side { width: 33.333%; }
}

/* ── 검색 박스 ── */
.br-search {
    background: var(--br-bg);
    border: 1px solid var(--br-border);
    border-radius: var(--br-radius-lg);
    box-shadow: var(--br-shadow);
    padding: 16px;
    margin-bottom: 16px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.br-search-row {
    display: grid;
    gap: 8px;
}
.br-search-row--region { grid-template-columns: 1fr 1fr; }
.br-search-row--keyword { display: flex; gap: 8px; }

.br-input { flex: 1; }
.br-input input,
.br-select select {
    width: 100%;
    padding: 8px 12px;
    font-size: 14px;
    color: var(--br-text);
    background: #ffffff;
    border: 1px solid #d1d5db;
    border-radius: var(--br-radius);
    outline: none;
    transition: border-color 0.15s, box-shadow 0.15s;
    box-sizing: border-box;
}
.br-input input:focus,
.br-select select:focus {
    border-color: var(--br-accent);
    box-shadow: 0 0 0 3px rgba(37, 99, 235, 0.1);
}

.br-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    padding: 8px 16px;
    border: 0;
    border-radius: var(--br-radius);
    font-size: 14px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s;
    text-decoration: none;
}
.br-btn--search {
    background: var(--br-accent);
    color: #ffffff;
}
.br-btn--search:hover {
    background: var(--br-accent-hover);
}
.br-btn--reset {
    background: #f1f5f9;
    color: #475569;
    margin-left: 4px;
}
.br-btn--reset:hover {
    background: #e2e8f0;
    color: #1e293b;
}

/* ── 지점 리스트 ── */
.br-list {
    flex: 1;
    overflow-y: auto;
    padding-right: 4px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-height: 520px;
}

.br-card {
    background: var(--br-bg);
    border: 1px solid var(--br-border);
    border-radius: var(--br-radius);
    box-shadow: var(--br-shadow);
    padding: 16px;
    cursor: pointer;
    transition: border-color 0.15s, box-shadow 0.15s;
}
.br-card:hover {
    border-color: var(--br-border-hover);
    box-shadow: var(--br-shadow-hover);
}
.br-card.is-active {
    border-color: var(--br-accent);
    background: rgba(37, 99, 235, 0.04);
    box-shadow: var(--br-shadow-hover);
}

.br-card-name {
    font-size: 14px;
    font-weight: 600;
    color: var(--br-text);
    margin: 0;
}

.br-card-badge {
    display: inline-block;
    margin-left: 6px;
    padding: 1px 8px;
    background: var(--br-accent-soft-bg);
    color: var(--br-accent-soft-text);
    border-radius: var(--br-radius);
    font-size: 11px;
    font-weight: 400;
    vertical-align: middle;
}

.br-card-address {
    font-size: 12px;
    color: var(--br-text-soft);
    margin: 4px 0 0;
}
.br-card-phone {
    font-size: 12px;
    color: var(--br-text-faint);
    margin: 2px 0 0;
}
.br-card-desc {
    font-size: 12px;
    color: var(--br-text);
    line-height: 1.6;
    margin: 8px 0 0;
    white-space: pre-line;
}

.br-empty {
    text-align: center;
    padding: 40px 16px;
    color: var(--br-text-faint);
    font-size: 14px;
}

/* ── 지도 ── */
.br-map-wrap {
    flex: 1;
    border-radius: var(--br-radius-lg);
    overflow: hidden;
    border: 1px solid var(--br-border);
    box-shadow: var(--br-shadow);
    min-height: 600px;
    background: var(--br-bg-soft);
}
.br-map { width: 100%; height: 100%; min-height: 600px; }

/* =========================================================
   제품 목록 보기 모드 (그리드/리스트) — pf-view-* + pf-mode-list
   기본은 그리드. html.pf-mode-list 클래스 시 리스트 변환
   ========================================================= */
:root {
    --pf-thumb-row: 120px;     /* 리스트 모드 썸네일 크기 */
    --pf-toggle-active: #1e293b;
    --pf-toggle-hover: #f9fafb;
    --pf-border: #e5e7eb;
}

/* 토글 바 */
.pf-view-bar {
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-bottom: 16px;
    padding-bottom: 8px;
    border-bottom: 1px solid #f1f5f9;
}
.pf-view-count {
    font-size: 13px;
    color: #6b7280;
}
.pf-view-count strong {
    color: #1e293b;
    font-weight: 600;
}

.pf-view-toggle {
    display: inline-flex;
    border: 1px solid var(--pf-border);
    overflow: hidden;
}
.pf-view-btn {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    padding: 6px 12px;
    background: #fff;
    color: #6b7280;
    border: 0;
    font-size: 13px;
    font-weight: 500;
    cursor: pointer;
    transition: background 0.15s, color 0.15s;
    line-height: 1.4;
}
.pf-view-btn + .pf-view-btn { border-left: 1px solid var(--pf-border); }
.pf-view-btn:hover { background: var(--pf-toggle-hover); }
.pf-view-btn.is-active {
    background: var(--pf-toggle-active);
    color: #ffffff;
}
.pf-view-ico { width: 14px; height: 14px; }

/* ─── 리스트 모드 ─── */
html.pf-mode-list .pf-list-grid {
    grid-template-columns: 1fr;
}
@media (min-width: 768px) {
    html.pf-mode-list .pf-list-grid {
        grid-template-columns: 1fr 1fr;
    }
}

html.pf-mode-list .pf-card {
    display: flex;
    flex-direction: row;
    gap: 14px;
    padding: 14px;
    align-items: stretch;
}

html.pf-mode-list .pf-card-thumb {
    flex: 0 0 var(--pf-thumb-row);
    width: var(--pf-thumb-row);
    height: var(--pf-thumb-row);
    padding-bottom: 0 !important;
    border-radius: 0;
}

html.pf-mode-list .pf-card-body {
    flex: 1;
    min-width: 0;
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
}

html.pf-mode-list .pf-card-title {
    font-size: 16px;
    line-height: 1.4;
}

html.pf-mode-list .pf-card-desc {
    font-size: 13px;
    margin-top: 6px;
    -webkit-line-clamp: 3;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    overflow: hidden;
    line-height: 1.5;
}

html.pf-mode-list .pf-card-group {
    margin-top: auto;
    padding-top: 6px;
    font-size: 11.5px;
    color: #6b7280;
}

/* ECOZEN THEME START */
/* ECOZEN 헤더 오프셋 제거: 빌더 기본 body padding-top(100px) 무효화 — 에코젠은 fixed 헤더가 히어로 위에 겹침 */
body{padding-top:0 !important;}
.blind{position:absolute !important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;}
main.flex-1{display:block;flex:none;}
:where(#wrap) *{box-sizing:border-box;}
:where(#wrap) ul, :where(#wrap) ol, :where(#wrap) li{list-style:none;margin:0;padding:0;}
:where(#wrap) a{color:inherit;text-decoration:none;}
:where(#wrap) dl,:where(#wrap) dd,:where(#wrap) dt,:where(#wrap) h1,:where(#wrap) h2,:where(#wrap) h3,:where(#wrap) p,:where(#wrap) figure{margin:0;padding:0;}
:where(#wrap) img{max-width:100%;height:auto;vertical-align:top;}
:where(#wrap) button{font:inherit;cursor:pointer;background:transparent;border:0;padding:0;}
:where(#wrap) address{font-style:normal;}
@charset "utf-8";
/*───────────────────────────────────────────────────────────
	
	header, footer, main 관련 작성 css 파일입니다.

	** 이와 서브페이지 관련 css는 /css/sub.css 에 있습니다.

───────────────────────────────────────────────────────────*/

/*───────────────────────────────────────────────────────────
	layout common
───────────────────────────────────────────────────────────*/
	/** PC 일반 **/
		/* body::-webkit-scrollbar{display: block;} */
		#wrap {position:relative;height:100%;width:100%;margin:0;padding:0;} /* #header 와 #container, #footer 전체 감싸는 영역 */
		#wrap #footer {width:100%;margin:0;}
			/* #container 안의 레이아웃 */
		#contents_wrap {width:1200px;margin:0 auto;padding:0;position:relative;z-index:1;box-sizing:border-box;} /* #container 안의 컨텐츠 감싸는 영역 */
		#contents_wrap #side_box {width:100%;padding:110px 0 0 0;box-sizing:border-box;} /* lnb 감싸는 영역 */
		#contents_wrap #contents_box {width:100%;padding:110px 0 7.2% 0;box-sizing:border-box;} /* 컨텐츠를 감싸는 영역 */
		#contents_wrap #side_box + #contents_box {padding-top:0;} /* lnb와 컨텐츠가 float 일때 사이즈 재설정 */
			/* navigation layout */
		#contents_wrap .nav_wrap {box-sizing:border-box;}
			/* #content */
		#content {width:100%;margin:0;padding:0;text-align:left;box-sizing:border-box;} /* navigation 을 제외한 컨텐츠 */
		#content .sub_content{width:100%;margin:0 auto;background:#fff;box-sizing:border-box;}
		#content .sub_content:after {clear:both;content:"";display:block;}
			/* 컨텐츠 전체 가로 사이즈 */
		.w_custom {width:1200px;padding-left:15px;padding-right:15px;text-align:left;margin:0 auto;padding:0;box-sizing:border-box;}
		.main_w_custom{width:1600px;margin:0 auto;box-sizing:border-box;}

	@media only screen and (max-width:1650px) {
		.main_w_custom{width:100%;padding-left:30px;padding-right:30px;}
	}
	@media only screen and (max-width:1217px) {
		body.on {height:100%;overflow:hidden;}
		#contents_wrap {width:100%;padding-left:15px !important;padding-right:15px !important;}
		.w_custom{width:100%;padding-left:15px !important;padding-right:15px !important;}
	}
	@media only screen and (max-width:1200px) {
		
	}
	@media only screen and (max-width:1024px) {
		#contents_wrap #side_box {padding: 85px 0 0 0;}
		#contents_wrap #contents_box {padding:4.8% 0 6.4% 0;}
	}
	@media only screen and (max-width:860px) {
		#contents_wrap #side_box {padding: 85px 0 0 0;}
		#contents_wrap #contents_box {padding:4.2% 0 6.4% 0;}
	}
	@media only screen and (max-width:767px) {
		/*.w_custom {padding-left:4% !important;padding-right:4% !important;}*/
		#contents_wrap #side_box {display:none;}
		.sub_goods #contents_wrap #side_box {display:block;padding:0;}
	}
	@media only screen and (max-width:640px) {
		.w_custom{width:100%;padding-left:12px !important;padding-right:12px !important;}
		#contents_wrap {width:100%;padding-left:12px !important;padding-right:12px !important;}
		#contents_wrap #contents_box {padding:4.2% 0 10.4% 0;}

		.main_w_custom{padding-left:15px;padding-right:15px;}
	}
	@media only screen and (max-width:479px) {
		#contents_wrap #contents_box {padding:4.2% 0 12% 0;}
	}
	@media only screen and (max-width:320px) {
		.w_custom {padding-left:10px !important;padding-right:10px !important;}
	}

/*───────────────────────────────────────────────────────────
	메인 상품 진열 
───────────────────────────────────────────────────────────*/
	/* PC 일반 */
		/* 메인상품진열 - 공통 */
		.main .list_cont {}
		.main .list_cont ul {font-size:0;width:calc(100% + 15px);margin-left:-15px;}
		.main .list_cont ul li {display:inline-block;margin-left:15px;vertical-align:top;}
		.main .list_cont ul li a {display:block;height:100%;}
		.main .list_cont ul li .thumb {}
		.main .list_cont ul li .thumb img {max-width:100%;width:100%;}
		.main .list_cont ul li .info {}
		.main .list_cont ul li .info p {color:#333;line-height:1.2;}
		.main .list_cont ul li .info .name {font-size:14px;}
		/* 메인상품진열 - 갤러리형 */
		.main .list_Galleryform {}
		.main .list_Galleryform ul {text-align:left;} 
		.main .list_Galleryform ul li {width:calc(25% - 15px);}
		.main .list_Galleryform ul li:nth-of-type(n+5) {margin-top:40px;}
		.main .list_Galleryform ul li .thumb {}
		.main .list_Galleryform ul li .thumb img {}
		.main .list_Galleryform ul li .info {margin-top:10px;}
		.main .list_Galleryform ul li .info p {}
		.main .list_Galleryform ul li .info .name {}
		/* 메인상품진열 - 리스트형 */
		.main .list_Listform {}
		.main .list_Listform ul {} 
		.main .list_Listform ul li {width:calc(50% - 15px);}
		.main .list_Listform ul li a {width:100%;display:table;}
		.main .list_Listform ul li:nth-of-type(n+3) {margin-top:40px;}
		.main .list_Listform ul li .thumb,
		.main .list_Listform ul li .info {display:table-cell;vertical-align:middle;width:50%;box-sizing:border-box;}
		.main .list_Listform ul li .thumb {}
		.main .list_Listform ul li .thumb img {}
		.main .list_Listform ul li .info {border:1px solid #ddd;padding:0 15px;}
		.main .list_Listform ul li .info p {}
		.main .list_Listform ul li .info .name {}

	@media only screen and (max-width:860px) {
		/* 메인상품진열 - 갤러리형 */
		.main .list_Galleryform ul li {width:calc(50% - 15px);}
		.main .list_Galleryform ul li:nth-of-type(n+3) {margin-top:40px;}
		/* 메인상품진열 - 리스트형 */
		.main .list_Listform ul li {width:calc(100% - 15px);}
		.main .list_Listform ul li:nth-of-type(n+2) {margin-top:40px;}
		}


/*───────────────────────────────────────────────────────────

	 HEADER | outline/header.html, outline/nav.html

───────────────────────────────────────────────────────────*/
	#header{width:100%;position: fixed;top:0;left:0;box-sizing:border-box;z-index:20;overflow:visible;}
	#header .header_cont{box-sizing:border-box;position: relative;}
	#header .header_cont:after{clear:both;content:"";display: block;}
	#header .header_cont .hd_logo{display: inline-block;box-sizing:border-box;position: absolute;left:0;top:35px;width:165px;height:28px;}
	#header .header_cont .hd_logo a{display: block;width:100%;height:100%;background:url('/images/skin/hd-logo.png')no-repeat left center;background-size:auto 100%;font-size:0;}
	#header .header_cont .hd_lnb{width:100%;display:inline-block;box-sizing:border-box;text-align:center;}
	#header .header_cont .hd_lnb > li{padding:0 30px;display: inline-block;box-sizing:border-box;vertical-align:top;position: relative;height:100px;}
	#header .header_cont .hd_lnb > li > a{font-size:16px;color:#fff;font-weight:500;letter-spacing:0;position:relative;padding-bottom:12px;line-height:100px;}
	#header .header_cont .hd_lnb > li > a:before{width:5px;height:5px;content:"";background:#f8bc26;box-sizing:border-box;border-radius:100%;;position: absolute;top:-4px;right:-11px;display: none;}
	#header .header_cont .hd_lnb .lnb_dep2{display:none;width:200px;background:#fff;position:absolute;left:50%;top:73%;transform:translate(-50%);box-sizing:border-box;box-shadow: 0 0 30px 0 rgba(0, 0, 0, 0.15);z-index:5;padding:20px 15px 25px 15px;text-align: center;}
	#header .header_cont .hd_lnb .lnb_dep2 li{line-height:20px;}
	#header .header_cont .hd_lnb .lnb_dep2 li + li{margin-top:19px;}		
	#header .header_cont .hd_lnb .lnb_dep2 li a{font-size:16px;color:#666;font-weight:500;font-family:'Noto Sans KR';}
	#header .header_cont .hd_lnb .lnb_dep2 li:hover a{color:#f8bc26;}

	#header .hd_right{float: right;vertical-align: top;display: flex;align-items: center;position: absolute;right:0;top:32px;}
	#header .hd_right .menu-trigger{display: inline-block;box-sizing:border-box;width:36px;height:36px;position: relative;margin-left:40px;vertical-align: middle;background:url('/images/skin/btn-cate.png')no-repeat center;background-size:auto 100%;}

	#header .hd_right .hd_lang{position:relative;display: inline-block;vertical-align: middle;font-size:0;}
	#header .hd_right .hd_lang li + li{margin-left:20px;}
	#header .hd_right .hd_lang li{display: inline-block;box-sizing:border-box;vertical-align: middle;}
	#header .hd_right .hd_lang li a{font-size:16px;color:rgba(255,255,255,0.4);font-weight:500;}
	#header .hd_right .hd_lang li.on a{color:#fff;}

	@media only screen and (min-width:1024px){
		#header:hover{background:#fff;box-shadow:2.1px 2.1px 6px 0 rgba(0, 0, 0, 0.05);}
		#header:hover .header_cont .hd_logo a{background:url('/images/skin/hd-logo-ov.png')no-repeat left center;background-size:auto 100%;}
		#header:hover .header_cont .hd_lnb > li > a{color:#333;}
		#header:hover .header_cont .hd_lnb > li:hover > a, #header:hover .header_cont .hd_lnb > li.on > a{color:#f8bc26;}
		#header:hover .header_cont .hd_lnb > li:hover > a:before, #header:hover .header_cont .hd_lnb > li.on > a:before{display: block;}

		#header:hover .hd_right .menu-trigger{background:url('/images/skin/btn-cate-ov.png')no-repeat center;background-size:auto 100%;}
		#header:hover .hd_right .hd_lang li a{color:#888;}
		#header:hover .hd_right .hd_lang li.on a{color:#000;}
	}

	/*on*/
	#header.on{background:#fff;box-shadow:2.1px 2.1px 6px 0 rgba(0, 0, 0, 0.05);}
	#header.on .header_cont .hd_logo a{background:url('/images/skin/hd-logo-ov.png')no-repeat left center;background-size:auto 100%;}
	#header.on .header_cont .hd_lnb > li > a{color:#333;}
	#header.on .header_cont .hd_lnb > li:hover > a, #header.on .header_cont .hd_lnb > li.on > a{color:#f8bc26;}
	#header.on .header_cont .hd_lnb > li:hover > a:before, #header.on .header_cont .hd_lnb > li.on > a:before{display: block;}
	
	#header.on .hd_right .menu-trigger{background:url('/images/skin/btn-cate-ov.png')no-repeat center;background-size:auto 100%;}

	#header.on .hd_right .hd_lang li a{color:#888;}
	#header.on .hd_right .hd_lang li.on a{color:#000;}

	@media only screen and (max-width:1650px){
		#header .header_cont .hd_logo{left:30px;}
		#header .hd_right{right:30px;}
	}
	@media only screen and (max-width:1300px){
		#header .header_cont .hd_lnb > li{padding:0 18px;}
		#header .header_cont .hd_lnb > li > a{font-size:14px;}
	}
	@media only screen and (max-width:1024px){
		#header .header_cont{height:80px;}
		#header .header_cont .hd_logo{left:30px;top:24px;top: 50%;transform: translateY(-50%);}
		#header .header_cont .hd_lnb{display: none;}
		#header .hd_right{right:30px;height:100%;top:0;}
	}
	@media only screen and (max-width:640px){
		#header .header_cont .hd_logo{left:15px;}
		#header .hd_right{right:15px;}
	}
	@media only screen and (max-width:500px){
		#header .header_cont{height:60px;}
		#header .header_cont .hd_logo{height:22px;}
		#header .hd_right .hd_lang{margin-top:0;}
		#header .hd_right .hd_lang li + li{margin-left:14px;}
		#header .hd_right .hd_lang li a{font-size:14px;}
		#header .hd_right .menu-trigger{width:25px;height:25px;margin-left:14px;}
	}

/*───────────────────────────────────────────────────────────

	 ASIDE | outline/header.html, outline/nav.html

───────────────────────────────────────────────────────────*/
	/* PC 일반 */
		#aside {top:0;right:0;width:100%; height:100%; box-sizing:border-box;box-sizing:border-box;position:fixed;background:#fff;z-index:95; opacity:0; pointer-events:none; transition:all 1.5s; transition-delay:0.6s;}
		#aside.on {opacity:1; pointer-events:inherit; }

		.aside_bg {position:fixed; width:100%; height:100%; top:0; left:0; z-index:90;background:#fff0; pointer-events:none; transform:scaleX(-1)}
		.aside_bg.on {opacity:1;display:block; pointer-events:inherit;}
		.aside_bg div {position: absolute;z-index: 1; background-repeat: no-repeat; transform: rotateY(-50deg) scale(0.5); opacity: 0; transform-origin: bottom; transition: all .6s cubic-bezier(.71, .05, .09, .91); transition-delay:0.3s;}
		 .aside_bg.on div{ opacity: 1; transform: rotate(0deg) translateY(0);}


			#aside .aside_box.for_m {display:none;}
		#aside .aside_box{display: block;width:100%;height:100%;}
		#aside .aside_head{height:130px;position: relative; border-bottom:1px solid #ddd; box-sizing:border-box; transition:all 0.4s;}	
		#aside .aside_head .aside_logo{left:50%;top: 50%;position:absolute;z-index:15;width:165px;height:28px;transform: translate(-50%, -50%);}
		#aside .aside_head .aside_logo a {display:block;background: url('/images/skin/hd-logo-ov.png') no-repeat left;font-size:0;background-size:100% auto;height:100%;}
		#aside .aside_head_right {top:50%;right:0;transform:translate(0,-50%);margin:0;padding:0;font-size:0;position:absolute;vertical-align:top;text-align:center;display:inline-block;box-sizing:border-box;z-index:15;}
		#aside .menu-trigger2.active-1{position:relative;padding:0;width:36px;height:36px;box-sizing: border-box;background:url('/images/skin/btn-close.png')no-repeat center;background-size:36px;display: inline-block;} 
			/* 스크롤 */
				#aside.scroll .aside_head{height:100px;margin:0 auto;}
				#aside.scroll .aside_head .aside_logo{left:0; transform: translateY(-50%);}
		#aside ul.aside_menu {}
		#aside ul.aside_menu .dep1_li {text-align:left;display:block;vertical-align:top;margin-bottom:60px;box-sizing:border-box;}
		#aside ul.aside_menu .dep1_li:nth-child(-n+3){padding-right:20px;}
		#aside ul.aside_menu .dep1_li .dep1_a {transition:0.2s;color:#333;font-size:44px;display: block;padding:0;font-weight:700;}

		#aside .aside_box .aside_cont{position: absolute;top:50%;left:50%;transform:translate(-50%,-50%);}
		#aside .aside_box ul.aside_menu{position: relative;width:100%;max-height:500px;display: flex;flex-direction: column;flex-wrap: wrap;}
		#aside .aside_box .dep1_li{position: relative;display:inline-block;width:50%;}
		#aside .aside_box .dep1_li:after{clear:both;content:"";display: block;}
		#aside .aside_box .dep1_li > a{width:100%;}
		#aside .aside_box .dep1_li .dep2{display: block;width:calc(100% + 26px);margin-left:-13px;margin-top:10px;font-size:0;}
		#aside .aside_box .dep1_li .dep2 li{position: relative;margin:0 13px 10px;display: inline-block;vertical-align: top;}
		#aside ul.aside_menu .dep1_li .dep2 li a {display:block;font-size:16px;line-height:1.2;color:#888;font-weight:500;}

		/* over */
		@media only screen and (min-width:1024px) {
			#aside .aside_box .dep1_li:hover > a, #aside .aside_box .dep1_li:focus > a{color:#f8bc26;}
			#aside .aside_box .dep1_li .dep2 li:hover a{color:#f8bc26;} 
		}

	@media only screen and (max-width:1650px) {
		#aside.scroll .aside_head{width:calc(100% - 60px);}
	}
	@media only screen and (max-width:1250px) {
		#aside .aside_box ul.aside_menu{max-height:600px;}
		#aside ul.aside_menu .dep1_li .dep1_a{font-size:34px;}
		#aside .aside_box .dep1_li .dep2{width:calc(100% + 16px);margin-left:-8px;}
		#aside .aside_box .dep1_li .dep2 li{margin:0 8px 10px;}
	}
	@media only screen and (max-width:1024px) {
		#aside.scroll .aside_head{height:80px;}
	}
	@media only screen and (max-width:700px) {
		#aside .aside_box{display: block;height:100%;overflow-y:scroll;}

		#aside.on {right:0;}

		#aside .aside_box.for_pc{display:none;}
		#aside .aside_box.for_m{display:block;}
		#aside .aside_box .aside_cont{padding:0; top:auto; left:auto; position:relative; transform:none;}
		#aside .aside_box .aside_menu{box-sizing:border-box;padding:40px 30px 20px 30px;display: block;max-height:initial;}
		#aside ul.aside_menu .dep1_li{margin-bottom:0;width:100%;}
		#aside ul.aside_menu .dep1_li:nth-child(-n+3){padding:0;}
			#aside .aside_box .dep1_li + .dep1_li{margin-top:35px;}
		#aside ul.aside_menu .dep1_li .dep1_a{font-size:22px;color:#333;font-weight:700;display: block;width:100% !important;height:100%;position: relative;transition:all 0.5s;}
		#aside .aside_box .dep1_li .dep1_a.on{color:#f8bc26;transition:all 0.5s;}
		#aside .aside_menu .group_tit > a:before{width:20px;height:2px;content:"";background:#666;position: absolute;right: 0;top:50%;transform:translate(0,-50%); transition:all 0.4s;}
		#aside .aside_menu .group_tit > a:after{width:2px;height:20px;content:"";background:#666;position: absolute;right: 9px;top:50%;transform:translate(0,-50%); transition:all 0.4s;}
		#aside .aside_menu .group_tit > a.on:before{background:#f8bc26;}
		#aside .aside_menu .group_tit > a.on:after{opacity:0;}
		#aside ul.aside_menu .dep1_li .dep2{position:relative;display: none ; line-height:145%;width:100%;margin:0;}
		#aside ul.aside_menu .dep1_li .dep2 li{box-sizing:border-box;padding-left:25px;position: relative; display:block; margin:0;}
		#aside ul.aside_menu .dep1_li .dep2 > li a{display:block;font-size:16px;line-height:30px;color:#888;font-weight:500;}
		#aside ul.aside_menu .dep1_li .dep2 > li a:before{width:3px;height:3px;background:#888;content:"";border-radius:100%;position: absolute;top:50%;left:10px;transform:translate(0,-50%);}
		#aside ul.aside_menu .dep1_li .dep2 li + li:before{display:none;}

	}
	@media only screen and (max-width:640px) {
		#aside.scroll .aside_head{height:70px;width:calc(100% - 30px);}
		#aside .aside_head .aside_logo{width:125px;}
		#aside .aside_box ul.aside_menu{padding:30px 15px;}
	} 
	@media only screen and (max-width:500px) { 
		#aside.scroll .aside_head{height:60px;}
		#aside .aside_head .aside_logo{width:130px;height:22px;}
		#aside .menu-trigger2.active-1{width:25px;height:25px;background-size:25px;}
		
		#aside .aside_box .dep1_li + .dep1_li{margin-top:25px;}
		#aside ul.aside_menu .dep1_li .dep1_a{font-size:20px;}
		#aside ul.aside_menu .dep1_li .dep2{margin-top:10px;}
		#aside ul.aside_menu .dep1_li .dep2 > li a:before{width:2px;height:2px;left:3px;}
		#aside ul.aside_menu .dep1_li .dep2 li{padding-left:12px;}

	}
	

/*───────────────────────────────────────────────────────────

	 FOOTER | outline/footer.html

───────────────────────────────────────────────────────────*/
	#footer{background:#111;}
	#footer .main_w_custom{padding-top:64px;padding-bottom:56px;}
	#footer .ft_top{display: flex;justify-content: space-between;align-items:flex-end;}
	#footer .ft_top .ft_logo{display: inline-block;}
	#footer .ft_top .ft_gnb{display: inline-block;transform:translateY(6px);}
	#footer .ft_top .ft_gnb li{display: inline-block;vertical-align: top;margin-left:26px;}
	#footer .ft_top .ft_gnb li a{font-size:14px;color:#bbb;font-weight:300;}
	#footer .ft_top .ft_gnb li a strong{font-size:inherit;color:#fff;font-weight:inherit;}

	#footer .ft_info_box{box-sizing:border-box;border-top:1px solid #333;padding-top:31px;margin-top:37px;}
	#footer .ft_info{}
	#footer .ft_info span{font-size:14px;color:#bbb;font-weight:300;line-height:30px;font-family:'Pretendard';letter-spacing:0;display: inline-block;margin-right:30px;position: relative;}
	#footer .ft_info span + span:before{width:1px;height:10px;content:"";background:#333;position: absolute;left:-17px;top:11px;}
	#footer .ft_info span a{display: inline-block;box-sizing:border-box;font-size:inherit;color:inherit;font-weight:inherit;font-family:inherit;}
	#footer .ft_info_box .copyright{font-size:14px;color:#bbb;font-weight:300;line-height:30px;font-family:'Pretendard';letter-spacing:0;margin-top:32px;}	
	#footer .ft_info_box .copyright a{display: inline-block;box-sizing:border-box;font-size:inherit;color:inherit;font-weight:inherit;font-family:inherit;vertical-align: top;margin-left:32px;}

	@media only screen and (max-width:1200px) { 
		#footer .ft_info{font-size:0;}
		#footer .ft_info span{font-size:13px;margin-right:20px;}
		#footer .ft_info span + span:before{left:-12px;top:9px;}
	}
	@media only screen and (max-width:1024px) { 
		#footer .ft_info{width:calc(100% + 20px);margin-left:-10px;}
		#footer .ft_info br{display: none;}
		#footer .ft_info span{margin:0 10px;}
		#footer .ft_info span + span:before{display: none;}
	}
	@media only screen and (max-width:640px) { 
		#footer .main_w_custom{padding-top:40px;padding-bottom:35px;}
		#footer .ft_top{display: block;}
		#footer .ft_top .ft_gnb{display: block;transform:none;margin-top:20px;}
		#footer .ft_top .ft_gnb li{margin-left:0;}
		#footer .ft_top .ft_gnb li + li{margin-left:20px;}
		#footer .ft_top .ft_gnb li a{font-size:13px;}

		#footer .ft_info_box{padding-top:20px;margin-top:25px;}
		#footer .ft_info{width:calc(100% + 12px);margin-left:-6px;}
		#footer .ft_info span{font-size:12px;line-height:24px;margin:0 6px;}

		#footer .ft_info_box .copyright{font-size:13px;margin-top:22px;line-height:20px;}
		#footer .ft_info_box .copyright a{margin:2px 0 0 0;display: block;}
	}
	@media only screen and (max-width:500px) { 
		#footer .ft_top .ft_logo img{height:22px;}
	}

/*───────────────────────────────────────────────────────────

	 MAIN | index.html

───────────────────────────────────────────────────────────*/
	/* visual */
		#wrap .main_visual {position:relative;width:100%;margin:0;height:940px;background:#000;}
		#wrap .main_visual .slick-slide {overflow:hidden;position:relative;text-align:center;height:940px;border:none;min-height:100% !important;}
		.main_visual .slick-slide a {display:inline-block;height:100%;width:100%;max-width:1920px;margin:0 auto;text-align:Center;position:absolute;left:0;top:0;outline:0;transform:scale(1.3);transition:all 2.5s;}
		.main_visual .txt_box {text-align:center;transform:translate(-50%);position:absolute;left:50%;bottom:88px;;font-size:0;}
		.main_visual .txt_box h3,
		.main_visual .txt_box p{display:block;text-align:left;color:#fff;opacity:0;transform:translateY(100px);transition:all 0.5s;}
		.main_visual .txt_box h3{font-size:80px;font-weight:700;letter-spacing:0;}
		.main_visual .txt_box p {font-size:20px;font-weight:400;letter-spacing:0;margin-top:14px;}

		/*active*/
			.main_visual .active a{transform:scale(1);transition:all 2.5s;}
			.main_visual .active .txt_box h3,
			.main_visual .active .txt_box p{opacity:1;transform:translateY(0);transition:all 0.5s;}
			.main_visual .active .txt_box h3{transition-delay:0.3s;}
			.main_visual .active .txt_box p{transition-delay:0.6s;}
		
		/*dots*/
			.main_visual .slick-dots{position: absolute;left:50%;bottom:31%;transform:translate(-50%);}
			.main_visual .slick-dots li{display: inline-block;box-sizing:border-box;vertical-align: top;}
			.main_visual .slick-dots li + li{margin-left:10px;}
			.main_visual .slick-dots li .tab{width:60px;height:3px;background:rgba(255,255,255,0.4);position: relative;}
			.main_visual .slick-dots li .tab .s-line-fill{height:100%;display: block;position: absolute;left:0;top:0;background:#f8bc26;}
			
		@media only screen and (max-width:1400px){
			#wrap .main_visual, #wrap .main_visual .slick-slide{height:800px;}
			.main_visual .txt_box h3{font-size:60px;}
			.main_visual .txt_box p{font-size:18px;}
		}
		@media only screen and (max-width:1024px){
			.main_visual .txt_box{bottom:30px;}
		}
		@media only screen and (max-width:640px){
			#wrap .main_visual, #wrap .main_visual .slick-slide{height:700px;}
			.main_visual .txt_box h3{font-size:50px;line-height:55px;}
			.main_visual .txt_box p{font-size:16px;}
		}
		@media only screen and (max-width:500px){
			.main_visual .txt_box{bottom:47px;}
			.main_visual .txt_box h3{font-size:45px;line-height:45px;}
			.main_visual .txt_box p{font-size:15px;margin-top:40px;}

			.main_visual .slick-dots{bottom:40.2%;}
			.main_visual .slick-dots li + li{margin-left:5px;}
			.main_visual .slick-dots li .tab{width:30px;}
		}
		@media only screen and (max-width:340px){
			.main_visual .txt_box h3{font-size:32px;line-height:36px;}
		}

	/*타이틀*/
		.main_title{}
		.main_title h3{display: inline-block;position: relative;font-size:70px;color:#111;font-weight:300;}
		.main_title h3 strong{font-size:inherit;color:inherit;font-weight:700;position: relative;display: inline-block;}
		.main_title h3 strong:before{width:12px;height:12px;content:"";box-sizing:border-box;border-radius:100%;background:#f8bc26;position: absolute;right:-29px;top:2px;}
		.main_title p{font-size:18px;color:rgba(17,17,17,0.8);font-weight:400;line-height:30px;margin-top:35px;}
		.view_more{display: inline-block;width:42px;height:9px;background:url('/images/skin/btn-more.png')no-repeat left center;background-size:auto 100%;font-size:0;padding-right:42px;transition:all 0.5s;}

	/*about*/
		.main_about{box-sizing:border-box;position: relative;padding:137px 0 340px;overflow:hidden;}	
		.main_about:before{width:1765px;height:1830px;content:"";box-sizing:border-box;border-radius:100%;border:8px solid #f8bc26;position: absolute;right:-43%;bottom:-49%;opacity:0.6;}
		.main_about .main_title .view_more{margin-top:53px;}
		
		.main_about .about_list{display:flex;flex-wrap:wrap;width:calc(100% + 35px);margin-left:-17.5px;justify-content:space-between;margin-top:101px;}
		.main_about .about_list li{box-sizing:border-box;position: relative;margin:0 17.5px;width:calc(33.3333% - 35px);}
		.main_about .about_list li:nth-child(1){transition-delay:0.8s;}
		.main_about .about_list li:nth-child(2){transform:translate3d(0, 300px, 0);}
		.main_about .about_list li.aos-animate:nth-child(2){transform:translate3d(0, 181px, 0);transition-delay:1.5s;}
		.main_about .about_list li.aos-animate:nth-child(3){transform:translate3d(0, -200px, 0);}

		.main_about .about_list li > a{display: block;width:100%;height:100%;position: absolute;top:0;left:0;z-index:4;}
		.main_about .about_list .thumb{width:100%;height:0;padding-bottom:133.3%;border-radius:30px;position: relative;overflow:hidden;}
		.main_about .about_list .thumb img{width:100%;position: absolute;top:50%;left:50%;transform:translate(-50%,-50%) scale(1);transition:all 0.5s;} 
		.main_about .about_list .txt_box{width:100%;height:100%;position: absolute;top:0;left:0;z-index:3;box-sizing:border-box;padding:53px 41px;}
		.main_about .about_list .txt_box dt{font-size:32px;color:#fff;font-weight:700;}
		.main_about .about_list .txt_box dd{position: absolute;bottom: 81px;left: 0;box-sizing: border-box;padding: 0 41px;transform:translateY(100px);opacity:0;transition:all 0.5s;}
		.main_about .about_list .txt_box dd p{font-size:18px;color:#fff;font-weight:400;line-height:30px;letter-spacing:0;}
		.main_about .about_list .txt_box .view_more{background:url('/images/skin/arw_wh.png')no-repeat left center;margin-top:51px;}

		/*over*/
		@media only screen and (min-width:1024px){
			.view_more:hover{background-position:left 20px center;transition:all 0.5s;}
			.main_about .about_list li:hover .thumb img{transform:translate(-50%,-50%) scale(1.05);transition:all 0.5s;}
			.main_about .about_list li:hover .txt_box dd{transform:translateY(0);opacity:1;transition:all 0.5s;}
		}

		@media only screen and (max-width:1450px){
			.main_about:before{width:90%;height:100%;}
		}
		@media only screen and (max-width:1200px){
			.main_about{padding:100px 0 220px;}
			.main_about .about_list{width:calc(100% + 16px);margin-left:-8px;}
			.main_about .about_list li{width:calc(33.3333% - 16px);margin:0 8px;}
			.main_about .about_list li:nth-child(2){transform:translateY(100px);}
			.main_about .about_list li:nth-child(3){transform:translateY(-100px);}

			.main_about .about_list .txt_box{padding:25px 15px;}
			.main_about .about_list .txt_box dd{padding:0 15px;bottom:25px;}
		}
		@media only screen and (max-width:1024px){
			/*타이틀*/
			.main_title h3{font-size:60px;}
			.main_title p{font-size:16px;margin-top:20px;}
			.main_about .main_title .view_more{margin-top:30px;}

			.main_about .about_list .txt_box dt{font-size:28px;}
			.main_about .about_list .txt_box dd p{font-size:16px;line-height:24px;}
			.main_about .about_list .txt_box .view_more{margin-top:20px;}
		}
		@media only screen and (max-width:640px){
			.main_title h3{font-size:48px;}
			.main_title h3 strong:before{width:10px;height:10px;right:-12px;}

			.main_about{padding:70px 0 100px;}
			.main_about:before{display: none;}
			.main_about .about_list{width:100%;margin-left:0;margin-top:40px;justify-content:center;}
			.main_about .about_list li{width:80%;margin:0 0 30px;transition-delay:initial !important;}
			.main_about .about_list li:nth-child(3){transform:translateY(100px);}
			.main_about .about_list li.aos-animate:nth-child(2),
			.main_about .about_list li.aos-animate:nth-child(3){transform:translate3d(0,0,0);}
			.main_about .about_list .thumb{padding-bottom:86%;border-radius:15px;}
		}
		@media only screen and (max-width:500px){
			.main_title h3{font-size:45px;line-height:50px;}
			.main_title h3 strong:before{right:-16px;top:1px;}
			.main_title p{font-size:14px;line-height:20px;margin-top:18px;}

			.main_about{padding:49px 0 65px;}
			.main_about .main_title .view_more{margin-top:36px;}
			.main_about .about_list{margin-top:71px;}
			.main_about .about_list li{width:100%;margin-bottom:15px;}
			.main_about .about_list .thumb{padding-bottom:72.5%;}
			.main_about .about_list .txt_box{padding:25px 20px;}
			.main_about .about_list .txt_box dt{font-size:25px;}
		}

	/*sustain*/
		.main_sustain{box-sizing:border-box;height:940px;}
		.main_sustain > ul {display:flex;width:100%;height:100%;box-sizing:border-box;transition:all 0.5s;}
		.main_sustain > ul.bg0{background:url('/images/skin/main-service-01.jpg')no-repeat center;background-size:cover;}
		.main_sustain > ul.bg1{background:url('/images/skin/main-service-02.jpg')no-repeat center;background-size:cover;}
		.main_sustain > ul.bg2{background:url('/images/skin/main-service-03.jpg')no-repeat center;background-size:cover;}
		.main_sustain > ul.bg3{background:url('/images/skin/main-service-04.jpg')no-repeat center;background-size:cover;}
		.main_sustain > ul li{width:25%;height:100%;box-sizing:border-box;position: relative;display:flex;align-items:flex-end;padding-bottom:106px;}
		.main_sustain > ul li:before{width:100%;height:0;content:"";background:rgba(0,0,0,0.3);position: absolute;top:0;left:0;transition:height 0.5s;}
		.main_sustain > ul li + li{border-left:1px solid rgba(255,255,255,0.3);}
		.main_sustain > ul li > a{display: block;width:100%;height:100%;position: absolute;top:0;left:0;z-index:6;}
		.main_sustain > ul li .txt_box{position: relative;box-sizing:border-box;padding:0 35px;}
		.main_sustain > ul li .txt_box dt{font-size:30px;color:#fff;font-weight:700;margin-bottom:25px;}
		.main_sustain > ul li .txt_box dd{}
		.main_sustain > ul li .txt_box dd p{font-size:16px;color:rgba(255,255,255,0.8);font-weight:300;line-height:26px;opacity:0;height:0;overflow:hidden;transition:all 0.5s;}
		.main_sustain > ul li .txt_box dd a{display: inline-block;box-sizing:border-box;font-size:13px;color:#fff;font-weight:500;letter-spacing:1.3px;padding-right:62px;background:url('/images/skin/arw_wh.png')no-repeat right center;text-transform:uppercase;}
	
		/*over*/
		@media only screen and (min-width:1024px){
			.main_sustain > ul li:hover:before{transition:height 0.5s;height:100%;}
			.main_sustain > ul li:hover .txt_box dd p{opacity:1;height:auto;overflow:visible;margin-bottom: 78px;transition:all 0.5s;}
		}

		@media only screen and (max-width:1400px){
			.main_sustain{height:800px;}
			.main_sustain > ul li{padding-bottom:70px;}
			.main_sustain > ul li .txt_box{padding:0 15px;}
			.main_sustain > ul li .txt_box dt{font-size:24px;}
			.main_sustain > ul li .txt_box dd p{font-size:15px;}
		}
		@media only screen and (max-width:1024px){
			.main_sustain{height:auto;}
			.main_sustain > ul{flex-wrap:wrap;background:none !important;}
			.main_sustain > ul li{width:50%;padding:30px 15px 94px;}
			.main_sustain > ul li:nth-child(1){background:url('/images/skin/main-service-01.jpg')no-repeat center;background-size:cover;}
			.main_sustain > ul li:nth-child(2){background:url('/images/skin/main-service-02.jpg')no-repeat center;background-size:cover;}
			.main_sustain > ul li:nth-child(n+3){border-top:1px solid rgba(255,255,255,0.3);}
			.main_sustain > ul li:nth-child(3){border-left:none;background:url('/images/skin/main-service-03.jpg')no-repeat center;background-size:cover;}
			.main_sustain > ul li:nth-child(4){background:url('/images/skin/main-service-04.jpg')no-repeat center;background-size:cover;}
			.main_sustain > ul li:before{height:100%;}	
			.main_sustain > ul li .txt_box{padding:0;}
			.main_sustain > ul li .txt_box dd p{height:auto;opacity:1;}
			.main_sustain > ul li .txt_box dd a{display: none;}
		}
		@media only screen and (max-width:640px){
			.main_sustain > ul li{width:100%;border:none !important;}
			.main_sustain > ul li + li{margin-top:30px;}
		}
		@media only screen and (max-width:500px){
			.main_sustain > ul li{padding:49px 25px 39px;}
			.main_sustain > ul li + li{margin-top:15px;}
			.main_sustain > ul li .txt_box dt{font-size:30px;margin-bottom:15px;}
			.main_sustain > ul li .txt_box dd p{font-size:14px;line-height:20px;}
		}

	/*news*/
		.main_news{position: relative;box-sizing:border-box;padding:110px 0 116px;overflow:hidden;}
		.main_news:before{content:"ECOZEN";font-size:260px;color:#fff;font-weight:700;text-shadow : -1px -1px 0  rgba(17, 17, 17, 0.2), 1px -1px 0  rgba(17, 17, 17, 0.2), -1px 1px 0  rgba(17, 17, 17, 0.2), 1px 1px 0  rgba(17, 17, 17, 0.2);position: absolute;transform:rotate(-90deg);left:-30%;top:40%;background:#fff;z-index:10;line-height:190px;transition:all 1s;}
		.main_news.aos-animate:before{left:-24%;transition:all 0.5s;transition-delay:1s;}
		/* .main_news:after{content:"";width:188px;height:1110px;background:url('/images/skin/main_news_txt.jpg')no-repeat left center;background-size:cover;position: absolute;left:-2.5%;top:-2.5%;} */
		.main_news .main_title{display: flex;align-items:center;justify-content: space-between;box-sizing:border-box;border-bottom:1px solid #ddd;padding-bottom:27px;position: relative;z-index:12;background:	#fff;}
		.main_news .main_title h3{font-size:50px;}
		.main_news .main_title h3 strong:before{right:-16px;top:4px;}	
		.main_news .arw_box{font-size:0;}
		.main_news .arw_box .swiper_arw{display: inline-block;box-sizing:border-box;position: static;width:42px;height:9px;font-size:0;margin-top:0;}
		.main_news .arw_box .swiper_arw:after{display: none;}
		.main_news .arw_box .swiper-button-prev{background:url('/images/skin/prev-arw.png')no-repeat center;}
		.main_news .arw_box .swiper-button-next{background:url('/images/skin/next-arw.png')no-repeat center;margin-left:30px;}
		
		.main_news .news_content{margin-top:59px;overflow:visible;}
		.main_news .news_content ul{}
		.main_news .news_content ul li{position: relative;box-sizing:border-box;}
		.main_news .news_content ul li > a{display: block;width:100%;height:100%;position: absolute;top:0;left:0;z-index:5;}
		.main_news .news_content ul li .thumb{width:100%;height:0;padding-bottom:68%;box-sizing:border-box;border-radius:10px;overflow:hidden;position: relative;}
		.main_news .news_content ul li .thumb img{width:100%;position: absolute;top:50%;left:50%;transform:translate(-50%, -50%) scale(1);transition:all 0.5s;z-index:2;}
		.main_news .news_content ul li .thumb .date{display: inline-block;box-sizing:border-box;height:40px;line-height:38px;text-align: center;background:#f8bc26;font-size:13px;color:#fff;font-weight:400;position: absolute;top:0;left:0;z-index:3;padding:0 17px;letter-spacing:0;opacity:0;transition:all 0.5s;}
		.main_news .news_content ul li .txt{margin-top:37px;}
		.main_news .news_content ul li strong{font-size:24px;color:#111;font-weight:500;line-height:30px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-wrap:break-word;text-overflow: ellipsis;overflow: hidden;}
		.main_news .news_content ul li p{font-size:16px;color:#666;font-weight:400;line-height:30px;white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;word-wrap:break-word;text-overflow: ellipsis;overflow: hidden;margin-top:19px;}
		.main_news .news_content ul li .more{display: inline-block;box-sizing:border-box;font-size:13px;color:#333;font-weight:500;letter-spacing:1.3px;padding-right:62px;background:url('/images/skin/arw_y.png')no-repeat right center;text-transform:uppercase;margin-top:51px;opacity:0;transition:all 0.5s;}

		/*over*/
		@media only screen and (min-width:1024px){
			.main_news .news_content ul li:hover .thumb img{transform:translate(-50%, -50%) scale(1.05);transition:all 0.5s;}
			.main_news .news_content ul li:hover .thumb .date{opacity:1;transition:all 0.5s;}
			.main_news .news_content ul li:hover .more{opacity:1;transition:all 0.5s;}
		}

		@media only screen and (max-width:1919px){
			.main_news:before{left:-35%;}
			.main_news.aos-animate:before{left:-26%;}
		}
		@media only screen and (max-width:1850px){
			.main_news:before{display: none;}
		}
		@media only screen and (max-width:1024px){
			.main_news .main_title{padding-bottom:10px;}
			.main_news .main_title h3{font-size:40px;}
			.main_news .news_content{margin-top:30px;}
			.main_news .news_content ul li .txt{margin-top:20px;}
			.main_news .news_content ul li strong{font-size:20px;line-height:25px;}
			.main_news .news_content ul li p{font-size:15px;margin-top:14px;line-height:24px;}
			.main_news .news_content ul li .more{opacity:1;margin-top:30px;}
		}
		@media only screen and (max-width:640px){
			.main_news .arw_box{display: none;}
			.main_news{padding:60px 0 80px;}	

		}
		@media only screen and (max-width:500px){
			.main_news{padding:49px 0 68px;}
			.main_news .main_title h3{font-size:30px;}
			.main_news .main_title h3 strong:before{top:8px;}
			.main_news .news_content{margin-top:40px;}
			.main_news .news_content ul li .txt{margin-top:16px;}
			.main_news .news_content ul li p{font-size:14px;line-height:20px;}
			.main_news .news_content ul li .more{margin-top:34px;}
		}

	/* Video banner */
		.main_video {width:100%;height:0;padding-bottom:37.8%;background:url('/images/skin/main_video_bg.jpg') no-repeat center;background-size:cover;position:relative;background-attachment:fixed;}
		.main_video .link {position:absolute;width:100%;height:100%;top:0;left:0;}
		.main_video .play_btn {display:inline-block;width:100px;height:100px;border-radius:100%;box-sizing:border-box;position:relative;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);transition: all 1s;overflow:hidden;background:#fff;}
		.main_video .play_btn:before{width:100%;height:100%;content:"";background:#ffcc00;position: absolute;bottom:0;left:0;transition:height 0.7s;}
		.main_video .play_btn span {border-top:18px solid transparent;border-right:0px solid transparent;border-bottom:18px solid transparent;border-left:30px solid #fff;font-size:0;position:absolute;top:50%;left:56%;transform:translate(-50%,-50%);}

		/* video layer */
			.main_video_layer{position:fixed; top:50%; left:50%; transform:translate(-50%, -50%); width:50%; padding-bottom:28%; opacity:0; pointer-events:none; transition:all 0.4s; z-index:99;}
			.main_video_layer iframe, .main_video_layer embed, .main_video_layer object{position:absolute; width:100%; height:100%; top: 50%; left: 50%; transform: translate(-50%, -50%); border:0; }
			.main_video_layer.on{opacity:1; pointer-events:inherit;}
			#layer_dim{position:fixed; top:0; left:0; width:100%; height:100%; background:rgba(0,0,0,0.7); opacity:0; pointer-events:none; transition:all 0.4s;}
			#layer_dim.on{opacity:1; pointer-events:inherit;z-index:98;}
			.main_video_layer .close_btn {position:absolute;right: -60px;top: 0;width:32px;height:32px;cursor:pointer;}
			.main_video_layer .close_btn span {}
			.main_video_layer .close_btn span {position:absolute;width:100%;height:2px;background-color:#fff;left:0;top:14px;}
			.main_video_layer .close_btn span:nth-child(1) {transform:rotate(-45deg);}
			.main_video_layer .close_btn span:nth-child(2) {transform:rotate(45deg);}

		/*over*/
		@media only screen and (min-width:1024px){
			.main_video .play_btn:hover:before{height:0;transition:height 0.7s;}
			.main_video .play_btn:hover span{border-left-color:#ffcc00;}
		}

		@media only screen and (max-width:1200px){
			.main_video{padding-bottom:56%;}
		}
		@media only screen and (max-width:860px){
			.main_video .play_btn{width:70px;height:70px;}
			.main_video .play_btn span{border-top: 12px solid transparent;border-right:0px solid transparent;border-bottom: 12px solid transparent;border-left: 18px solid #fff;}

			.main_video_layer{width:70%;padding-bottom:50%;}
		}
		@media only screen and (max-width:500px){
			.main_video{padding-bottom:100%;background-attachment:initial;}
			.main_video .play_btn{width:50px;height:50px;}
			.main_video .play_btn span{border-top: 9px solid transparent;border-right:0px solid transparent;border-bottom: 9px solid transparent;border-left: 16px solid #fff;left:53%;}

			.main_video_layer{width:calc(100% - 30px);padding-bottom:70%;}
			.main_video_layer .close_btn{right:0;top:-35px;width:24px;height:24px;}
		}

	/*partner*/
		.main_partner{padding:148px 0 170px;}
		.main_partner .main_title{display: flex;align-items:center;justify-content: space-between;box-sizing:border-box;border-bottom:1px solid #ddd;padding-bottom:27px;position: relative;z-index:12;background:	#fff;}
		.main_partner .main_title h3{font-size:50px;}
		.main_partner .main_title h3 strong:before{right:-16px;top:4px;}	
		.main_partner .partner_list{display:flex;align-items:stretch;width:calc(100% + 20px);margin-left:-10px;flex-wrap:wrap;margin-top:69px;}
		.main_partner .partner_list li{display:flex;align-items:center;justify-content:center;box-sizing:border-box;width:calc(16.6666% - 20px);margin:0 10px 30px;border-radius:20px;position: relative;overflow:hidden;}
		.main_partner .partner_list li:before{width:100%;height:100%;content:"";box-sizing:border-box;border-radius:20px;border:1px solid #ddd;position: absolute;top:0;left:0;}
		.main_partner .partner_list li .ov_img{display: none;}
		.main_partner .partner_list li .ov_img.on{display: block;}

		/*over*/
		@media only screen and (min-width:1024px){
			.main_partner .partner_list li:hover:before{border:2px solid #f8bc26;}
		}

		@media only screen and (max-width:1300px){
			.main_partner .partner_list li{width:calc(25% - 20px);}
		}
		@media only screen and (max-width:1024px){
			.main_partner .main_title{padding-bottom:10px;}
			.main_partner .main_title h3{font-size:40px;}
			.main_partner .partner_list li{border:1px solid #ddd;}
			.main_partner .partner_list li:before{display: none;}
			.main_partner .partner_list li .img{display: none;}
			.main_partner .partner_list li .ov_img{display: block;}
		}
		@media only screen and (max-width:767px){
			.main_partner{padding:100px 0 120px;}
			.main_partner .partner_list{margin-top:40px;}
		}
		@media only screen and (max-width:640px){
			.main_partner .arw_box{display: none;}

			.main_partner .partner_list{width:calc(100% + 8px);margin-left:-4px;}
			.main_partner .partner_list li{margin:0 4px 14px;width:calc(33.3333% - 8px);border-radius:10px;}
			.main_partner .partner_list li:before{border-radius:10px;}
		}
		@media only screen and (max-width:500px){
			.main_partner{padding:53px 0 80px;}
			.main_partner .main_title h3{font-size:30px;}
			.main_partner .main_title h3 strong:before{top:8px;}
			.main_partner .partner_list{margin-top:15px;}
			.main_partner .partner_list li{padding:9px 0;}
			.main_partner .partner_list li .ov_img{max-width:71%;}
		}

/* ECOZEN 슬라이드/보정 */
.main_visual .visual_ul li.vs01 a{background:url('/images/visual/20230911112148_1596.jpg') no-repeat center;background-size:cover;}
.main_visual .visual_ul li.vs02 a{background:url('/images/visual/20230911112151_9742.jpg') no-repeat center;background-size:cover;}
.main_visual .visual_ul li.vs03 a{background:url('/images/visual/20230911112153_2993.jpg') no-repeat center;background-size:cover;}
.main_sustain > ul li .txt_box dd .more_txt{display:inline-block;box-sizing:border-box;font-size:13px;color:#fff;font-weight:500;letter-spacing:1.3px;padding-right:62px;background:url('/images/skin/arw_wh.png') no-repeat right center;text-transform:uppercase;}
.main_news .news_content ul li .thumb .date{display:inline-block;}

/* 히어로 텍스트 노출 보강: slick 기본 클래스(slick-current/slick-active)로 확실히 표시 */
.main_visual .slick-current .txt_box h3, .main_visual .slick-active .txt_box h3, .main_visual .slick-current .txt_box p, .main_visual .slick-active .txt_box p{opacity:1 !important; transform:translateY(0) !important;}
.main_visual .slick-current a, .main_visual .slick-active a{transform:scale(1) !important;}

/* 파트너 로고 오버 보정: .dn 유틸(common.css) 복원 + JS없이 동작하는 :hover 폴백 */
:where(#wrap) .dn{display:none !important;}
@media (min-width:1025px){
.main_partner .partner_list li:hover .img{display:none;}
.main_partner .partner_list li:hover .ov_img{display:block;}
}
/* ECOZEN THEME END */
/* ECOZEN SUB START (sub.css 포팅) */
@charset "utf-8";












	
		body {}
		div, dd, li, p, span, td, dt, h1, h2, h3, h4, h5, h6, strong, b, em, th {}
		b, dt, strong, em, th, h1, h2, h3, h4, h5, h6 {font-weight:700;}
		input, button, textarea, select {}
			
		.ff_open {font-family: 'Open Sans', 'Nanum Gothic', sans-serif !important;}
		.ff_noto {font-family: "Noto Sans KR", 'Nanum Gothic', sans-serif !important;}
		.ff_mont {font-family: 'Montserrat', 'Nanum Gothic', sans-serif !important;}
		.ff_nanum {font-family: 'Lato','Nanum Gothic', dotum, sans-serif !important;}
		.ff_lato {font-family: 'Lato', 'Nanum Gothic', sans-serif !important;}
		.ff_nbg {font-family: 'Nanum Barun Gothic','Nanum Gothic', sans-serif !important;}
		.ff_open, .ff_open a, .ff_open span, .ff_open div, .ff_open ul, .ff_open li, .ff_open p {font-family: 'Open Sans' !important;}
		.ff_noto, .ff_noto a, .ff_noto span, .ff_noto div, .ff_noto ul, .ff_noto li, .ff_noto p {font-family: 'Noto Sans KR', 'Noto Sans' !important; font-weight:400;}
			
		.fw_t {font-weight:300;}
		.fw_n {font-weight:400;}
		.fw_b {font-weight:700;}
		.fw_eb {font-weight:800;}


		


		


		


		


		


		



.sub_visual {background:url('/images/sub/sub_visual_company.jpg') no-repeat center;background-size:cover;height:420px;position:relative;}
.sub_visual .sub_visual_title {position:absolute;left:50%;top:50%;transform:translate(-50%, -50%);padding:0 20px;box-sizing:border-box;}
.sub_visual .sub_visual_title h2 {font-size:50px;color:#fff;}


@media only screen and (max-width:1217px) {
	.sub_visual {height:auto;padding-bottom:32%;}
	.sub_visual .sub_visual_title h2 {font-size:45px;}
}
@media only screen and (max-width:1023px) {
	.sub_visual .sub_visual_title h2 {font-size:40px;}
}
@media only screen and (max-width:860px) {
	.sub_visual .sub_visual_title h2 {font-size:35px;}
}
@media only screen and (max-width:767px) {
}
@media only screen and (max-width:640px) {
	.sub_visual{padding-bottom:35%;}
	.sub_visual .sub_visual_title h2 {font-size:30px;}
}
@media only screen and (max-width:540px) {
	.sub_visual{padding-bottom:40%;}
}
@media only screen and (max-width:479px) {
	.sub_visual {height:185px;padding-bottom:0;}
	.sub_visual .sub_visual_title h2 {font-size:25px;}
}
@media only screen and (max-width:355px) {
	.sub_visual .sub_visual_title h2 {font-size:22px;}
}



#side_box {position: absolute;z-index: 5;width: 100%;left: 0;bottom: 0;background: rgba(0,0,0,0.5);}
#side_box .sub_menu {padding:0;margin:0;z-index:2;width:1200px;margin:0 auto;}
#side_box .sub_menu * {transition:all .2s;}
#side_box .sub_menu:after{content:"";display:block;clear:both;}
#side_box .sub_menu h2 {font-size:0;float:left;border: 1px solid rgba(255,255,255,0.2);border-width: 0 1px;box-sizing: border-box;}
#side_box .sub_menu h2 a {display:inline-block;width: 52px;height:54px;background: url('/images/sub/ico_navi_home.png') no-repeat 50% 50%;font-size:0;}
#side_box .sub_menu dl {float:left;font-size:0;vertical-align:top;height:54px;line-height:54px;box-sizing:border-box;text-align:left;font-size:0;font-weight:500;}
#side_box .sub_menu dt,
#side_box .sub_menu dd {display:inline-block;vertical-align:top;height:inherit;line-height:inherit;text-align: left;color: #fff;box-sizing:border-box;border-right: 1px solid rgba(255,255,255,0.2);font-weight:400;width: 220px;font-size: 16px;}
#side_box .sub_menu dt {cursor:default;color: rgba(255,255,255,.8);}
#side_box .sub_menu dd {position:relative;z-index: 5;}
#side_box .sub_menu dt,
#side_box .sub_menu dd strong {padding: 0 40px 0 15px;}
#side_box .sub_menu dd strong {display:block;cursor:pointer;box-sizing:border-box;font-size:inherit;font-weight:500;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
#side_box .sub_menu dd strong:after {content:'';display:block;width: 1px;height: 1px;position: absolute;right: 20px;top: 50%;margin-top: -3px;transform-origin:bottom;transition: all .2s;border-left: 5px solid transparent;border-right: 5px solid transparent;border-top: 5px solid #fff;}
#side_box .sub_menu dd.on strong {background:rgba(0,0,0,0.3);color: #f8bc26;}
#side_box .sub_menu dd.on strong:after {transform: rotate(181deg);margin-top: -9px;}
#side_box .sub_menu dd strong img{padding-left:5px;}
#side_box .sub_menu dd ul {display:none;position:absolute;left: -1px;top: 100%;width: calc(100% + 2px);z-index:5;overflow:hidden;border: 1px solid #ddd;background:#fff;box-sizing: border-box;text-align: left;}
#side_box .sub_menu dd ul li:nth-of-type(1) {margin-top: 7px;}
#side_box .sub_menu dd ul li:last-of-type {margin-bottom: 13px;}
#side_box .sub_menu dd ul li {background:#fff;border-top:0;font-weight: 400;font-size: 15px;color: #555;height: 2.66em;line-height: 2.8;}
#side_box .sub_menu dd ul li + li {}
#side_box .sub_menu dd ul li a {padding: 0 20px;display:inline-block;vertical-align:top;box-sizing:border-box;text-align:center;font-weight:400;font-size: 15px;color: inherit;width:100%;text-align: left;}
#side_box .sub_menu dd ul li.on a,
#side_box .sub_menu dd ul li:hover a {font-weight:600;color: #333;}


@media only screen and (max-width:1217px) {
	#side_box .sub_menu {width:100%;}
}

@media only screen and (max-width:1023px) {
}

@media only screen and (max-width:860px) {
	#side_box .sub_menu h2 a {width:50px;height:50px;background-size:auto 16px;}
	#side_box .sub_menu dl {line-height:50px;height:50px;width: calc(100% - 52px);}
	#side_box .sub_menu dt,
	#side_box .sub_menu dd {width: 40%;font-size: 14px;}
	#side_box .sub_menu dt,
	#side_box .sub_menu dd strong {padding:0 18px;}
	#side_box .sub_menu dd ul li a {font-size:14px;padding:0 18px;}
}

@media only screen and (max-width:767px) {
}

@media only screen and (max-width:640px) {
	#side_box .sub_menu dt,
	#side_box .sub_menu dd {width:50%;}
}

@media only screen and (max-width: 479px) {
	#side_box .sub_menu h2 a {width:40px;height:45px;}
	#side_box .sub_menu dl {line-height:45px;height:45px;width: calc(100% - 42px);}
	#side_box .sub_menu dt {display:none;}
	#side_box .sub_menu dd {width:100%;font-size: 13px;border-right: 0;}
	#side_box .sub_menu dd strong {padding:0 14px;}
	#side_box .sub_menu dd ul li a {font-size:13px;line-height:2.3;padding:0 18px;}
}


.nav_wrap {}
.nav_wrap .nav_box {border:0;margin:0;padding-bottom: 30px;position:relative;z-index:1;}
.nav_wrap .nav_box:after {clear:both;content:"";display:block;}
.nav_wrap .nav_box h2 {font-size:40px;line-height: 1.1;padding:0;margin:0;text-align:center;color:#303030;font-weight:600;z-index:1;text-transform:uppercase;}
.nav_wrap .nav_box p {font-size: 18px;line-height: 1.44;padding: 1.5em 0 0 0;color:#666;font-weight:400;text-align:center;}
.nav_wrap .nav_box ul {line-height:18px;top:20%;position:absolute;left:0;font-size:0;padding:0;z-index:5;display:block;}
.nav_wrap .nav_box ul li {line-height:18px;height:18px;font-size:8px;text-align:left;vertical-align:top;padding:0;color:#aaa;display:inline-block;}
.nav_wrap .nav_box ul li + li {padding-left:5px;}
.nav_wrap .nav_box ul li span,
.nav_wrap .nav_box ul li strong,
.nav_wrap .nav_box ul li > a {line-height:18px;height:18px;padding:0 4px 0px 0;font-size:12px;display:inline-block;width:auto;color:#666;vertical-align:top;margin:0;box-sizing:border-box;}
.nav_wrap .nav_box ul li a.home {padding-left:0px;font-size:12px;color:#666666;}
.nav_wrap .nav_box ul li a.home:before {width:11px;height:11px;margin:0 5px 2px 0;content:"";display:inline-block;background:url("/images/common/sub_locate_home.png") no-repeat left center #333333;background-size:auto 13px;vertical-align:middle;}
.nav_wrap .nav_box ul li:last-child a,
.nav_wrap .nav_box ul li:last-child span,
.nav_wrap .nav_box ul li:last-child strong {color:#444;font-weight:700;padding-right:0;}

.nav_wrap .nav_box ul li .navi_select {min-width:150px;border: 1px solid #999;cursor: pointer;margin-top: -3px;position:relative;box-sizing: border-box;}
.nav_wrap .nav_box ul li .navi_select .navi_tit {padding: 2px 10px;line-height: 18px;height: auto;display: block;}
.nav_wrap .nav_box ul li .navi_select .navi_tit:after {content:"";display:inline-block;border-left: 5px solid transparent;border-right: 5px solid transparent;border-top: 5px solid #999;position:absolute;right: 10px;top: 9px;transition:all .2s;}
.nav_wrap .nav_box ul li .navi_select ul {display:none;position:absolute;left: -1px;top: 100%;width:150px;background:#fff;padding:6px 0 6px 0;border: 1px solid #888;box-sizing: border-box;}
.nav_wrap .nav_box ul li .navi_select ul li {display: block;line-height: 1;height: auto;font-size: 12px;padding: 0;}
.nav_wrap .nav_box ul li .navi_select ul li a {display:block;padding:5px 10px;font-size: 12px;line-height: 1;height: auto;transition:all .2s;}
.nav_wrap .nav_box ul li .navi_select ul li a:hover {background:#999;color:#fff;}

.nav_wrap .nav_box ul li .navi_select:hover .navi_tit:after {transform: rotate(180deg);}
.nav_wrap .nav_box ul li .navi_select:hover ul {display:block;}

	.nav_wrap .nav_box.dis_flex{display:flex;}
	.nav_wrap .nav_box.dis_flex h2{width: 305px;padding-top:0 !important;}
	.nav_wrap .nav_box.dis_flex .sub_title{width: calc(100% - 305px);text-align:left;padding-top: 2px;}
	.nav_wrap .nav_box.dis_flex .sub_title h3 small{font-size:94.4%;}
	.nav_wrap .nav_box.dis_flex .sub_title h3 + p{margin-top: 17px;text-align:left;padding-top:0;word-break:keep-all;}



	@media only screen and (max-width:1217px) {
		.nav_wrap .nav_box h2{font-size:41px;}
		.nav_wrap .nav_box.dis_flex h2{width:250px;}
		.nav_wrap .nav_box.dis_flex .sub_title{width:calc(100% - 250px);}
	}
	@media only screen and (max-width:1023px) {
		.nav_wrap .nav_box h2{font-size:38px;}
		.nav_wrap .nav_box.dis_flex{display:block;}
		.nav_wrap .nav_box.dis_flex h2{width:100%;}
		.nav_wrap .nav_box.dis_flex .sub_title{width:100%; padding-top:30px;}
	}
	@media only screen and (max-width: 860px) {
		.nav_wrap .nav_box{padding-bottom:40px;}
		.nav_wrap .nav_box h2{font-size:35px;}
	}
	@media only screen and (max-width:767px) {
		.nav_wrap .nav_box.dis_flex .sub_title p br{display:none;}
	}
	@media only screen and (max-width:640px) {
		.nav_wrap .nav_box{padding-bottom:25px;}
		.nav_wrap .nav_box h2{font-size:32px;}

		.nav_wrap .nav_box.dis_flex .sub_title{padding-top:25px;}
		.nav_wrap .nav_box.dis_flex .sub_title h3 + p{margin-top:10px;}
	}
	@media only screen and (max-width:479px) {
		.nav_wrap .nav_box h2{font-size:29px;}
		.nav_wrap .nav_box h2:after{margin-left:10px; transform:none;}

		.nav_wrap .nav_box.dis_flex .sub_title{padding-top:20px;}
	}
	@media only screen and (max-width:431px) {
		.nav_wrap .nav_box h2{font-size:26px;}
	}




.company_about #contents_wrap {width:100%;padding-bottom:0;padding-left:0 !important;padding-right:0 !important;}
.sub_company .nav_wrap{padding-top:16px;}
.sub_company .nav_wrap .nav_box h2{padding-top:30px;}

.sub_about {}
.sub_about * {word-break:keep-all;}
.sub_company .point_tit{font-size:18px;color:#f8bc26;font-weight:600;display:block;text-align:center;letter-spacing:0;}
.sub_about .sub_about_tit{width:1200px;margin:0 auto;box-sizing:border-box;}
.sub_about .sub_about_tit p{font-size:18px;color:#333;font-weight:400;text-align:center;line-height:32px;letter-spacing:-0.03em;}
.sub_about .sub_about_img {max-width: 100%;height:400px;background:url('/images/sub/sub_company.jpg') no-repeat center;background-size:cover;margin-top:54px;}
.sub_about_list{width:100%;box-sizing:border-box;margin-top:120px;padding:116px 0 114px 0;background:#f5f5f5;}
.sub_about_list .list_tit h2{font-size:46px;color:#000;font-weight:400;text-align:center;margin-top:16px;letter-spacing:-0.035em;}
.sub_about_list ul{width:1200px;box-sizing:border-box;margin:0 auto;font-size:0;margin-top:38px;}
.sub_about_list ul li{width:calc(25% - 30px);text-align:center;display: inline-block;vertical-align:top;}
.sub_about_list ul li + li{margin-left:40px;}
.sub_about_list ul li .li_bg{width:270px;height:270px;border-radius:100%;text-align:center;margin:0 auto;margin-bottom:32px;}
.sub_about_list ul li:nth-child(1) .li_bg{background:url('/images/sub/sub_service01.jpg') center;background-size:cover;}
.sub_about_list ul li:nth-child(2) .li_bg{background:url('/images/sub/sub_service02.jpg') center;background-size:cover;}
.sub_about_list ul li:nth-child(3) .li_bg{background:url('/images/sub/sub_service03.jpg') center;background-size:cover;}
.sub_about_list ul li:nth-child(4) .li_bg{background:url('/images/sub/sub_service04.jpg') center;background-size:cover;}
.sub_about_list ul li span{font-size:16px;color:#222;font-weight:500;letter-spacing:-0.035em;display: block;box-sizing:border-box;}
.sub_about_list ul li p{font-size:28px;color:#000;font-weight:400;margin-top:8px;}

@media only screen and (max-width:1250px) {
	.sub_about .sub_about_tit{width:100%;padding:0 30px;}
	.sub_about_list ul{width:100%;padding:0 30px;}
	.sub_about_list ul li .li_bg{width:230px;height:230px;}
}
@media only screen and (max-width:1100px) {
	.sub_about .sub_about_img{height:350px;}
	.sub_about .sub_about_tit p br{display: none;}
	.sub_about_list .list_tit h2{font-size:40px;margin-top:10px;}
	.sub_about_list ul li .li_bg{width:200px;height:200px;}	
	.sub_about_list ul li span{font-size:15px;}
	.sub_about_list ul li p{font-size:25px;}
}
@media only screen and (max-width:1000px) {
	.sub_about_list{margin-top:100px;padding:96px 0 94px 0;}
	.sub_about_list ul li{width:calc(25% - 19px);}
	.sub_about_list ul li + li{margin-left:25px;}
	.sub_about_list ul li .li_bg{width:180px;height:180px;}	
}
@media only screen and (max-width:900px) {
	.sub_about .sub_about_img{height:300px;margin-top:35px;}
	.sub_about_list{margin-top:80px;padding:76px 0 74px 0;}
	.sub_about_list .list_tit h2{font-size:36px;}
	.sub_about_list ul li .li_bg{width:160px;height:160px;}
}
@media only screen and (max-width:800px) {
	.sub_about_list ul li + li{margin-left:0;}
	.sub_about_list ul li{width:calc(50% - 20px);margin-bottom:40px;}
	.sub_about_list ul li:nth-of-type(2n){margin-left:20px;}
	.sub_about_list ul li:nth-of-type(2n+1){margin-right:20px;}
	.sub_about_list ul li .li_bg{width:270px;height:270px;}
	.sub_about_list ul li span{font-size:16px;height:auto;}
	.sub_about_list ul li p{font-size:28px;}
}
@media only screen and (max-width:700px) {
	.sub_company .nav_wrap .nav_box h2{padding-top:10px;}
	.sub_about .sub_about_img{height:280px;}
	.sub_about_list ul li .li_bg{width:230px;height:230px;}
}
@media only screen and (max-width:640px) {
	.sub_company .nav_wrap .nav_box h2{font-size:26px;}
	.sub_about .sub_about_tit{padding:0 30px;}
	.sub_about_list{padding:76px 0 40px 0;}
	.sub_about_list .list_tit h2{margin-top:11px;box-sizing:border-box;padding:0 64px;line-height:30px;}
	.sub_about_list ul{padding:0 15px;}
	.sub_about_list ul li{width:calc(50% - 15px);margin-bottom:30px;}
	.sub_about_list ul li:nth-of-type(2n){margin-left:15px;}
	.sub_about_list ul li:nth-of-type(2n+1){margin-right:15px;}
	.sub_about_list ul li .li_bg{width:200px;height:200px;}
	.sub_about_list ul li span{font-size:15px;}
	.sub_about_list ul li p{font-size:24px;margin-top:0;}
}
@media only screen and (max-width:500px) {
	.sub_company .point_tit{font-size:16px;}
	.sub_about .sub_about_tit p{font-size:16px;}
	.sub_about .sub_about_img{height:250px;margin-top:25px;}
	.sub_about_list{margin-top:52px;padding:56px 0 54px 0;}
	.sub_about_list .list_tit h2{font-size:32px;padding:0 40px;}
	.sub_about_list ul li .li_bg{width:180px;height:180px;margin-bottom:18px;}
}
@media only screen and (max-width:479px) {
	.sub_company .nav_wrap{padding-top:12px;}
	.sub_about .sub_about_tit{padding:0 18px;}
	.sub_about_list{padding:42px 0 54px 0;}
	.sub_about_list ul{margin-top:21px;}
	.sub_about_list ul li:nth-child(1) span,
	.sub_about_list ul li:nth-child(2) span{padding:0 32px;}
}
@media only screen and (max-width:425px) {
	.sub_about_list ul li .li_bg{width:170px;height:170px;}
}
@media only screen and (max-width:400px) {
	.sub_about_list ul li .li_bg{width:160px;height:160px;}
}2021-02-04
@media only screen and (max-width:380px) {
	.sub_about_list ul li .li_bg{width:150px;height:150px;}
}
@media only screen and (max-width:375px) {
	.sub_company .point_tit{font-size:14px;}
	.sub_about .sub_about_tit p{font-size:15px;line-height:25px;}
	.sub_about .sub_about_img{height:200px;}
	.sub_about_list .list_tit h2{font-size:26px;}
	.sub_about_list ul li{width:calc(50% - 10px);}
	.sub_about_list ul li:nth-of-type(2n){margin-left:10px;}
	.sub_about_list ul li:nth-of-type(2n+1){margin-right:10px;}
	.sub_about_list ul li span{font-size:14px;}
	.sub_about_list ul li p{font-size:20px;}
}
@media only screen and (max-width:350px) {
	.sub_about_list ul li .li_bg{width:140px;height:140px;}
}
@media only screen and (max-width:330px) {
	.sub_about_list ul li .li_bg{width:130px;height:130px;}
}



.sub_location{width:1200px;box-sizing:border-box;margin:48px auto 27px auto;}
.sub_location_map{float:left;width:640px;height:440px;}
.sub_location_map .map_box{width:100%;height:100%;}
.sub_location_map .map_box iframe{width:100%;height:100%;}
.sub_location .sub_location_info{float: right;width:40%;}
.sub_location .sub_location_info .map_logo{height:29px;padding:48px 0 49px 0;}
.sub_location .sub_location_info .map_logo a{height:100%;width:100%;display: block;background:url('/images/skin/hd-logo-ov.png')no-repeat left;background-size:auto 100%;font-size:0;}
.sub_location .sub_location_info .info_wrap{box-sizing:border-box;padding-top:43px;border-top:1px solid #ccc;}
.sub_location .sub_location_info .info_wrap dl + dl{margin-top:20px;}
.sub_location .sub_location_info .info_wrap dl dt{font-size:18px;color:#222;font-weight:500;position: relative;padding-left:15px;display: inline-block;width:17%;vertical-align:top;line-height:29px;}
.sub_location .sub_location_info .info_wrap dl dt:before{width:4px;height:4px;content:"";border-radius:100%;background:#f8bc26;position: absolute;left:0;top:11px;}
.sub_location .sub_location_info .info_wrap dl dd{display: inline-block;width:78%;vertical-align:top;}
.sub_location .sub_location_info .info_wrap dl dd span{font-size:18px;color:#444;font-weight:300;display: inline-block;line-height:30px;letter-spacing:-0.04em;vertical-align:top;}
.sub_location .sub_location_info .info_wrap dl dd span.ft_lato{font-weight:400;}

@media only screen and (max-width:1250px) {
	.sub_location{width:100%;padding:0 30px;}
}
@media only screen and (max-width:1217px) {
	.sub_location{padding:0 15px;}
	.sub_location_map{width:52%;}
	.sub_location .sub_location_info{width:42%;}
}
@media only screen and (max-width:950px) {
	.sub_location_map {height:350px;}
	.sub_location .sub_location_info{width:43%;}
	.sub_location .sub_location_info .map_logo{padding:30px 0 50px 0;height:25px;}
	.sub_location .sub_location_info .info_wrap{padding-top:30px;}
	.sub_location .sub_location_info .info_wrap dl dt{width:17%;}
}
@media only screen and (max-width:800px) {
	.sub_location_map{float:none;width:100%;}
	.sub_location .sub_location_info{float:none;width:100%;}
}
@media only screen and (max-width:640px) {
	.sub_location{margin:0 auto 27px auto;padding:0;margin-top:7px;}
}
@media only screen and (max-width:414px) {
	.sub_location_map {height:250px;}
	.sub_location .sub_location_info .map_logo{padding:30px 0 30px 0;height:21px;}
	.sub_location .sub_location_info .info_wrap{padding-top:20px;}
	.sub_location .sub_location_info .info_wrap dl dt{font-size:17px;}
	.sub_location .sub_location_info .info_wrap dl dd span{font-size:17px;margin-top:0;}
}
@media only screen and (max-width:320px) {
	.sub_location_map {height:200px;}
	.sub_location .sub_location_info .map_logo{height:18px;}
	.sub_location .sub_location_info .info_wrap dl dt{font-size:16px;}
	.sub_location .sub_location_info .info_wrap dl dt:before{top:11px;}
	.sub_location .sub_location_info .info_wrap dl dd span{font-size:16px;}

}



	.history_cont{width:1200px;margin:0 auto;margin-top:47px;box-sizing:border-box;}
	.history_box{margin-bottom:36px;text-align:left;}
	.history_box .history_year{width:320px;display: inline-block;vertical-align: top;line-height:32px;padding-top:29px;border-top:1px solid #000;}
	.history_box .history_year span{font-size:42px;color:#000;font-weight:600;letter-spacing:-0.06em;}
	.history_box .history_detail{width:840px;display: inline-block;padding-top:27px;border-top:1px solid #ccc;margin-left:37px;}
	.history_box .history_detail dl{padding-left:9px;margin-bottom:22px;}
	.history_box .history_detail dl dt{display: inline-block;vertical-align:top;margin:3px 32px 0 0;line-height:1;width:22px;letter-spacing:-0.05em;}
	.history_box .history_detail dl dd{display: inline-block;margin-top:-2px;width:calc(100% - 70px);line-height:1;}
	.history_box .history_detail .month{font-size:18px;color:#000;font-weight:600;}
	.history_box .history_detail .detail{font-size:17px;color:#666;font-weight:300;position: relative;padding-left:13px;line-height:25px;font-family:'Noto Sans KR', Sans-serif;letter-spacing:-0.035em;word-break:keep-all;}
	.history_box .history_detail .detail:before{width:3px;height:3px;border-radius:100%;background-color:#888;content:"";position: absolute;left:1px;top:11px;}
	.history_box .history_detail .detail + .detail{margin-top:9px;}

@media only screen and (max-width:1250px) {
	.history_cont{width:100%;padding:0 15px;}
	.history_box .history_year{width:25%;}
	.history_box .history_detail{width:70%;}
}
@media only screen and (max-width:910px) {
	.history_box .history_year{width:22%;}
	.history_box .history_year span{font-size:38px;}
	.history_box .history_detail{width:72%;}
	.history_box .history_detail .month{font-size:17px;}
	.history_box .history_detail .detail{font-size:16px;}	
}
@media only screen and (max-width:780px) {
	.history_box .history_year{width:20%;}
	.history_box .history_year span{font-size:32px;}
	.history_box .history_detail .month{font-size:16px;}
	.history_box .history_detail .detail{font-size:15px;}	
	.history_box .history_detail .detail:before{top:10px;}
}
@media only screen and (max-width:640px) {
	.history_cont{padding:0;}
	.history_box {margin-bottom:50px;}
	.history_box .history_year{display: block;width:100%;border-top:none;border-bottom:1px solid #000;padding-top:0;padding-bottom:10px;}
	.history_box .history_year span{font-size:42px;}
	.history_box .history_detail{display: block;width:100%;margin-left:0;margin-top:30px;border-top:none;border-bottom:1px solid #ccc;padding-top:0;padding-bottom:8px;}
	.history_box .history_detail .month{font-size:18px;}
	.history_box .history_detail .detail{font-size:17px;}	
	.history_box .history_detail .detail:before{top:12px;}
}
@media only screen and (max-width:375px) {
	.history_cont{margin-top:0px;}
	.history_box .history_year{padding-bottom:4px;}
	.history_box .history_year span{font-size:35px;}
	.history_box .history_detail .month{font-size:17px;}
	.history_box .history_detail .detail{font-size:16px;}	
}
@media only screen and (max-width:320px) {
	.history_box{margin-bottom:36px;}
	.history_box .history_year span{font-size:28px;}
	.history_box .history_detail{margin-top:15px;padding-bottom:15px;}
	.history_box .history_detail .detail{font-size:15px;}	
}

	
		.sub_title{}
		.sub_title h3{font-size:32px;font-weight:700;color:#000;letter-spacing: -0.03em;word-break:keep-all;}
			.sub_title h3 + p{margin-top: 37px;}
		.sub_title h3 strong{font-size:inherit; font-weight:inherit; color:#f8bc26;}
		.sub_title p {font-size:18px;font-weight:400;color:#666;line-height:177%;letter-spacing: -0.03em;word-break:keep-all;}
			.sub_title p + p{margin-top: 25px;}


	
		.sub_ceo{}
		.sub_ceo .cont{display:flex; align-items:flex-start;}
		.sub_ceo .cont .sub_title{width:calc(100% - 480px); box-sizing:border-box;}
		.sub_ceo .cont .thumb_list{display:inline-flex;align-items:flex-start;width:480px;padding-top: 5px;}
		.sub_ceo .cont .thumb_list li{font-size:0; border-radius:10px; overflow:hidden; width:calc(100% / 2 - 10px);}
			.sub_ceo .cont .thumb_list li + li{margin-left:20px;}
			.sub_ceo .cont .thumb_list li:first-child{margin-top:130px;}

	
		.sub_technology{margin-top: 5px;}
		.sub_technology .tech_list{display:flex; flex-wrap:wrap;}
		.sub_technology .tech_list li{margin-right:30px; width:calc(100% / 4 - 22.5px);}
		.sub_technology .tech_list li:nth-child(4n){margin-right:0;}
		.sub_technology .tech_list li:nth-child(n+5){margin-top:30px;}
		.sub_technology .tech_list li dl{text-align:center;}
		.sub_technology .tech_list li dl dt{position:relative;border: 10px solid #ddd;box-sizing:border-box;}
			.sub_technology .tech_list li dl dt:before{position:absolute;content:'';top: -10px;left: -10px;width: calc(100% + 20px);height: calc(100% + 20px);box-sizing:border-box;border: 11px solid #fff0;border-right-color:#eee;border-bottom-color: #eee;}
			.sub_technology .tech_list li dl dt + dd{margin-top: 18px;}
		.sub_technology .tech_list li dl dt img{position:relative; z-index:1;}
		.sub_technology .tech_list li dl dd{font-size:18px;font-weight:400;color:#333;line-height: 145%;letter-spacing: -0.04em;}

	
		.sub_business{margin-top: -7px;}
		.sub_business .buz_list{display:flex;background:#f5f5f5;padding: 50px 50px 45px;box-sizing:border-box;border-radius: 15px;overflow: hidden;}
		.sub_business .buz_list li{width:100%;}
			.sub_business .buz_list li + li{margin-left:33px;}
		.sub_business .buz_list .thumb{font-size:0; border-radius:10px; overflow:hidden;}
			.sub_business .buz_list .thumb + dl{margin-top: 21px;}
		.sub_business .buz_list dl{text-align:center;}
		.sub_business .buz_list dl dt{font-size:20px;font-weight:500;color:#000;letter-spacing: -0.02em;}
			.sub_business .buz_list dl dt + dd{margin-top: 11px;}
		.sub_business .buz_list dl dd{font-size:16px;font-weight:400;color:#666;line-height: 166%;letter-spacing: -0.03em;word-break:keep-all;}

	
		.sub_partners{margin-top:-9px;}
		.sub_partners .partner_list{display:flex; flex-wrap:wrap;}
		.sub_partners .partner_list li{font-size:0;display:inline-flex;align-items:center;justify-content: center;margin-right:20px;width:calc(100% / 5 - 16px);height:100px;border:1px solid #ddd;border-radius:10px;overflow:hidden;box-sizing:border-box; padding:15px;}
			.sub_partners .partner_list li:nth-child(5n){margin-right:0;}
			.sub_partners .partner_list li:nth-child(n+6){margin-top:20px;}


	@media only screen and (max-width: 1217px) {
		.sub_title h3{font-size:33px; line-height:125%;}
		.sub_title p{font-size:17px;}

		.sub_ceo .cont .sub_title{padding-right:50px;width: 59.56%;}
		.sub_ceo .cont .sub_title p br{display:none;}
		.sub_ceo .cont .thumb_list{padding-top:0;width: 40.44%;}

		.sub_technology .tech_list li{margin-right:25px; width:calc(100% / 4 - 18.75px);}
		.sub_technology .tech_list li dl dd{font-size:17px;}

		.sub_business .buz_list li + li{margin-left:30px;}
		.sub_business .buz_list dl dt{font-size:19px;}
		.sub_business .buz_list dl dd{font-size:15px;}
		.sub_business .buz_list dl dd br{display:none;}
	}
	@media only screen and (max-width: 1023px) {
		.sub_title h3{font-size:30px;}
			.sub_title h3 + p{margin-top:25px;}
		.sub_title p{font-size:16px;}
			.sub_title p + p{margin-top:15px;}

		.sub_ceo .cont .thumb_list li{width:calc(100% / 2 - 7.5px);}
			.sub_ceo .cont .thumb_list li + li{margin-left:15px;}
		.sub_ceo .cont .thumb_list li:first-child{margin-top:10vw;}

		.sub_technology .tech_list li{margin-right:15px; width:calc(100% / 4 - 11.25px);}
		.sub_technology .tech_list li dl dt + dd{margin-top:13px;}
		.sub_technology .tech_list li dl dd{font-size:16px;}

		.sub_partners .partner_list li{margin-right:15px; width:calc(100% / 5 - 12px); height:90px;}
			.sub_partners .partner_list li:nth-child(n+6){margin-top:15px;}

		.sub_business .buz_list{padding:45px 45px 40px;}
		.sub_business .buz_list li + li{margin-left:15px;}
		.sub_business .buz_list .thumb + dl{margin-top:18px;}
		.sub_business .buz_list dl dt{font-size:18px;}
			.sub_business .buz_list dl dt + dd{margin-top:7px;}
		.sub_business .buz_list dl dd{line-height:150%;}
	}
	@media only screen and (max-width: 860px) {
		.sub_title h3{font-size:27px;}
			.sub_title h3 + p{margin-top:20px;}
		.sub_title p{font-size:15px; line-height:150%;}

		.sub_ceo .cont .sub_title{width:50%; padding-right:20px;}
		.sub_ceo .cont .thumb_list{width:50%;}

		.sub_technology .tech_list li{width:calc(100% / 3 - 10px);}
			.sub_technology .tech_list li:nth-child(4n){margin-right:15px;}
			.sub_technology .tech_list li:nth-child(3n){margin-right:0;}
			.sub_technology .tech_list li:nth-child(n+4){margin-top:30px;}
		
		.sub_partners .partner_list li{width:calc(100% / 4 - 11.25px); height:80px;}
			.sub_partners .partner_list li:nth-child(5n){margin-right:15px;}
			.sub_partners .partner_list li:nth-child(4n){margin-right:0;}
			.sub_partners .partner_list li:nth-child(n+5){margin-top:15px;}

		.sub_business .buz_list{padding:40px 40px 43px;}
		.sub_business .buz_list dl dt{font-size:17px;}
		.sub_business .buz_list dl dd{font-size:14px;}
	}
	@media only screen and (max-width: 767px) {
		.sub_title h3{font-size:24px;}

		.sub_ceo .cont{flex-wrap:wrap;}
		.sub_ceo .cont .sub_title{width:100%; padding-right:0;}
		.sub_ceo .cont .thumb_list{width:100%; justify-content:center; margin-top:30px;}
		.sub_ceo .cont .thumb_list li{width:auto;}

		.sub_business .buz_list{flex-wrap:wrap; padding:40px 14.5vw 43px;}
		.sub_business .buz_list li{width:calc(100% / 2 - 7.5px); margin-right:15px;}
			.sub_business .buz_list li + li{margin-left:0;}
			.sub_business .buz_list li:nth-child(even){margin-right:0;}
			.sub_business .buz_list li:nth-child(n+3){margin-top:30px;}
	}
	@media only screen and (max-width: 640px) {
		.sub_ceo .cont .thumb_list li{border-radius:5px;}
		.sub_partners .partner_list li{width:calc(100% / 3 - 10px); border-radius:5px;}
			.sub_partners .partner_list li:nth-child(4n){margin-right:15px;}
			.sub_partners .partner_list li:nth-child(3n){margin-right:0;}
			.sub_partners .partner_list li:nth-child(n+4){margin-top:15px;}

		.sub_business .buz_list{padding:40px 7.5vw 43px; border-radius:7.5px;}
		.sub_business .buz_list .thumb{border-radius:5px;}
	}
	@media only screen and (max-width: 540px) {
		.sub_business .buz_list{padding:40px 15px 43px}
	}
	@media only screen and (max-width: 479px) {
		.sub_technology .tech_list li{width:calc(100% / 2 - 7.5px);}
			.sub_technology .tech_list li:nth-child(3n){margin-right:15px;}
			.sub_technology .tech_list li:nth-child(2n){margin-right:0;}
			.sub_technology .tech_list li:nth-child(n+3){margin-top:25px;}
		.sub_technology .tech_list li dl dt{border-width:5px;}
		.sub_technology .tech_list li dl dt:before{border-width:6px; width:calc(100% + 12px); height:calc(100% + 12px); top:-6px; left:-6px;}
		.sub_technology .tech_list li dl dd{font-size:15px;}

		.sub_partners .partner_list li{width:calc(100% / 2 - 7.5px);}
			.sub_partners .partner_list li:nth-child(3n){margin-right:15px;}
			.sub_partners .partner_list li:nth-child(2n){margin-right:0;}
			.sub_partners .partner_list li:nth-child(n+3){margin-top:15px;}
	}
	@media only screen and (max-width: 431px) {
		.sub_title h3{font-size:20px;}
		.sub_title p{font-size:14px;}

		.sub_business .buz_list .thumb + dl{margin-top:15px;}
			.sub_business .buz_list dl dt + dd{margin-top:5px;}

		.sub_business .buz_list li{width:100%; margin-right:0; text-align:center;}
		.sub_business .buz_list li:nth-child(n+2){margin-top:30px;}
		.sub_business .buz_list .thumb{display:inline-block;}
		.sub_business .buz_list dl dd br{display:block;}
	}
	@media only screen and (max-width: 375px) {
	}
/* 그룹별 서브 비주얼 배너 */
.sub_visual.sub_visual_company{background-image:url('/images/sub/sub_visual_company.jpg');}

/* History 타임라인 2단 고정 (inline-block 여백 줄바꿈 방지) */
.history_box{display:flex;align-items:flex-start;}
.history_box .history_year{flex:0 0 auto;}
.history_box .history_detail{margin-left:37px;flex:1 1 auto;}
@media (max-width:860px){ .history_box{display:block;} .history_box .history_detail{margin-left:0;} }
/* ECOZEN SUB END */
/* ECOZEN MODULE START (common.css 모듈 스타일) */
/* .paging{text-align:center;padding-top:2px;line-height:35px;font-size:0;margin:2.8% auto 0 auto;vertical-align:top;box-sizing:border-box;}
.paging span{display:inline-block;vertical-align:top;}
.paging a{display:inline-block; font-size:12px; color:#777;padding:0 5px;border:1px #ccc solid;box-sizing:border-box;height:35px;line-height:33px;min-width:35px;text-align:center; vertical-align:top;}
.paging a img{height:33px;width:33px;vertical-align:top;}
.paging span + span a, .paging a + a, .paging a + span a{border-left:0;}
.paging .on a{color:#222222; font-weight:bold;}
.paging a.on, .paging a:hover{color:#222222;font-weight:700;}
.paging .arrow a{font-size:0;width:34px;}
.paging .arrow a img{display:none;}
.paging .arrow.first a{background:#fff url("/images/common/paging_first.gif") no-repeat left 50%;background-size:cover;}
.paging .arrow.prev a{background:#fff url("/images/common/paging_prev.gif") no-repeat left 50%;background-size:cover;}
.paging .arrow.next a{background:#fff url("/images/common/paging_next.gif") no-repeat right 50%;background-size:cover;}
.paging .arrow.last a{background:#fff url("/images/common/paging_last.gif") no-repeat right 50%;background-size:cover;}
.view_btn .paging{display:inline-block;}
.paging{margin-top:3.8%;}
.paging{margin-top:4.2%;}
.paging > a, .paging .page_num{margin:0 3px;}
.paging > a, .paging .page_num a{min-width:30px;height:30px;line-height: 30px;font-size:14px;}
.paging > a:hover, .paging > a.on, .paging .page_num:hover a, .paging .page_num.on a{line-height: 29px;}
.paging .arrow a{width:30px;height:30px;}
.paging{margin-top:5.2%;}
.paging > a, .paging .page_num{margin:0 5px;}
.paging > a, .paging .page_num a{min-width:25px;height:25px;line-height: 25px;font-size:13px;}
.paging > a:hover, .paging > a.on, .paging .page_num:hover a, .paging .page_num.on a{line-height: 25px;}
.paging .arrow a{width:25px;height:25px;}
.paging .arrow.prev a{margin-right:0;}
.paging .arrow.next a{margin-left:0;}
.btn, .btn_xs, .btn_lg, .btn_sm, .btn_md{font-weight:400;border-style:solid !important;border-width:1px !important;padding:0;margin:0;text-indent:0;vertical-align:top !important;text-align:center;display:inline-block;box-sizing:border-box;cursor:pointer;box-shadow:none;outline:0 !important;transition:all .2s;}
.btn_sm{width:auto;height:40px;line-height:40px;font-size:16px;padding:0 20px;}
.btn_md{width:120px;height:50px;line-height:50px;font-size:16px;}
.sub_board_list .btn_md{height:45px;line-height:45px;}
.btn_point, .btn_point:hover{border-color:#f8bc26 !important;background-color:#f8bc26 !important;color:#fff !important;}
.btn_info, .btn_info:hover{border-color:#d3d3d3 !important;background-color:#fff !important;color:#555 !important;}
.btn_reset, .btn_reset:hover{border-color:#d3d3d3 !important;background:#fff url('/images/common/icon_btn_reset.gif') no-repeat 9px 50% !important;padding:0 10px 0 30px !important;color:#555 !important;}
.btn_wrap{margin:0 auto;padding:0;padding-top: 4.2%;font-size:0;vertical-align:top;display:inline-block;}
.btn_wrap.ta_center{width:100%;}
.btn_wrap a + a, .btn_wrap button + button, .btn_wrap a + button, .btn_wrap button + a{margin-left: 20px;vertical-align:top;}
.btn_wrap .btn_sm + .btn_sm{margin-left:10px;}
.btn_wrap button > a, .btn_wrap a > a{margin-left:0;}
.view_btn .btn_wrap.ta_right{position:absolute;right:0px;top:0px;}
.btn_wrap{padding-top:3.8%;}
.btn_md{width:110px;height:40px;line-height:40px;font-size:15px;}
.sub_board_list .btn_md{height:40px;line-height:40px;}
.btn_wrap{padding-top:4.2%;}
.view_btn .btn_wrap.ta_left{position:absolute;left:0px;top:0px;}
.btn_sm{height:35px;line-height:35px;font-size:13px;padding:0 10px;}
.btn_wrap{}
.btn_md{width: 100px;height:40px;line-height:40px;font-size:13px;}
.btn_wrap{padding-top:5%;}
.btn_wrap a + a, .btn_wrap button + button, .btn_wrap a + button, .btn_wrap button + a{margin-left: 12px;}
.view_btn .paging + .btn_wrap.ta_right{top: -10px;}
.btn_md{width: 90px;height:35px;line-height:35px;}
.sub_board_list .btn_md{height:35px;line-height:35px;}
.btn_wrap{padding-top:8%;}
.btn_wrap .btn_sm + .btn_sm, .btn_wrap a + a, .btn_wrap button + button, .btn_wrap a + button, .btn_wrap button + a{margin-left:6px;}
.view_btn .paging{width:100%;min-height:87px;}
.view_btn .paging + .btn_wrap.ta_right{top:40px;}
.bbs_write_title{font-size:16px;color:#222;font-weight:700;padding-bottom:1.2%;}
.bbs_write + .bbs_write_title{padding-top:1.8%;}
.bbs_write_info{font-size:14px;line-height:20px;padding-top:2.4%;color:#666;}
.bbs_write_info strong{font-size:inherit;color:#222;font-weight:700;}
table.bbs_write{table-layout:fixed;width:100%;border-top:1px solid #333;border-bottom: 1px solid #ddd;text-align:left;box-sizing:border-box;}
table.bbs_write th, table.bbs_write td{font-size:13px;padding-top:10px;padding-bottom:10px;padding-left: 40px;padding-right: 40px;font-weight:300;color:#888;text-align:left;vertical-align:middle;box-sizing:border-box;}
table.bbs_write th{padding-left: 30px;padding-right: 30px;font-size: 16px;font-weight: 400;color: #444;line-height: 40px;}
table.bbs_write td{}
table.bbs_write tr:nth-of-type(1) th, table.bbs_write tr:nth-of-type(1) td{padding-top:20px;}
table.bbs_write tr:last-of-type th, table.bbs_write tr:last-of-type td{}
table.bbs_write .line th, table.bbs_write .line td{border-top:1px solid #ddd;}
table.bbs_write tr td .file_box{line-height: 30px;}
table.bbs_write tr td .file_box + .file_box{margin-top:10px;}
table.bbs_write tr td .file_box input{vertical-align:middle;}
table.bbs_write th, table.bbs_write td, table.bbs_write th a, table.bbs_write td a, table.bbs_write td label, table.bbs_write td select, table.bbs_write td input[type="text"], table.bbs_write td input[type="password"], table.bbs_write td input[type="number"], table.bbs_write td input[type="date"], table.bbs_write td input[name="title"], table.bbs_write td textarea, table.bbs_list th, table.bbs_list td, table.bbs_list th a, table.bbs_list td a{word-break: break-all;}
table.bbs_write th, table.bbs_write td, table.bbs_write tr span, table.bbs_write tr input, table.bbs_write tr select{vertical-align: middle;}
table.bbs_write tr span, table.bbs_write tr input, table.bbs_write tr select, table.bbs_write tr textarea, table.bbs_write tr label{font-size:inherit;font-weight:400;}
table.bbs_write tr .filezone a{margin-left:5px;}
table.bbs_write tr select{background-position:95%;}
table.bbs_write tr label.ex_radio{width:100%;display:block;}
table.bbs_write tr input[type="radio"] + label.ex_radio:before, table.bbs_write tr input[type="radio"] + label.ex_radio::before{margin:-2px 5px 0 0;}
table.bbs_write tr td #captcha_box{display: inline-block;vertical-align: middle;}
table.bbs_write tr td input[name="captcha"]{min-width: 180px;height: 40px;line-height: 40px;margin: 0 8px;}
table.bbs_write tr td input[name="captcha"], table.bbs_write tr td .btn_reset, table.bbs_write tr td #refreshCode{vertical-align:middle !important;}
table.bbs_write tr td .btn_reset{width: 40px;height:40px;border: 1px solid #aaa !important;padding: 0 !important;background-position: center !important;font-size: 0;margin-left: 0;}
table.bbs_write th .require_dot, table.bbs_write th .require_dot:before{line-height:inherit;height:inherit;color:#444;font-weight:400;display:inline-block;}
table.bbs_write th .require_dot{padding-left:4px;}
table.bbs_write th .require_dot:before{content:' *';font-size:inherit;vertical-align:middle;}
table.bbs_write td p{line-height:20px;padding:5px 0 0;font-size:inherit;display:inline-block;margin:0;vertical-align:top;}
table.bbs_write td div.view_cont{padding:8px 10px 50px 10px;line-height:26px;min-height:150px;}
table.bbs_write td select, table.bbs_write td input[type="text"], table.bbs_write td input[type="password"], table.bbs_write td input[type="number"], table.bbs_write td input[type="date"]{min-width: 35%;}
table.bbs_write td input[name="title"]{width: 100%;}
table.bbs_write td input[name="zip"]{width:80px;min-width:70px;}
table.bbs_write td input[name="address"], table.bbs_write td input[name="address2"]{width:55%;min-width:450px;}
table.bbs_write td select:focus, table.bbs_write td input:focus{border-color:#333;color:#444;transition:all .2s;}
table.bbs_write td input.tel{min-width:50px;}
table.bbs_write td textarea{min-width:100%;height:200px;}
table.bbs_write td select.mail_select{margin-left:0px;}
table.bbs_write td select.mail_select + .mail_select{margin-left:5px;}
table.bbs_write td input[name="email_id"]{width:16%;min-width:120px;}
table.bbs_write td input[name="email_domain"], table.bbs_write td select.mail_select{width:20%;min-width:140px;}
table.bbs_write td input[name="email_domain"]{display:inline-block !important;}
table.bbs_write .input_file{}
table.bbs_write .input_file td, table.bbs_write .input_file td input{vertical-align:middle;}
table.bbs_write td .file_name{display: inline-block;vertical-align: top;}
table.bbs_write td .file_name a{display:inline-block;vertical-align:middle;line-height:23px;}
table.bbs_write td .file_name .file_no{margin-left:5px;}
table.bbs_write td .at{display:inline-block;vertical-align: top;margin: 10px 0 0 3px;}
table.bbs_write .input_email input{display:inline-block !important;}
table.bbs_write .btn_xs{margin-left:5px;}
table.bbs_write.captcha{}
table.bbs_write.captcha th{text-align:center;}
table.bbs_write.captcha th #captcha_box{}
table.bbs_write.captcha th #captcha_box img{width:100% !important;height:auto !important;}
table.bbs_write.captcha td{line-height:40px;vertical-align:middle;}
table.bbs_write.captcha td input, table.bbs_write.captcha td span, table.bbs_write.captcha td button{vertical-align:middle !important;}
div.bbs_write{width:100%;border-top:1px solid #333;border-bottom: 1px solid #ddd;text-align:left;box-sizing:border-box;}
div.bbs_write .tr{}
div.bbs_write .tr > dl{display:table;table-layout:fixed;width: 100%;}
div.bbs_write .tr > dl dt, div.bbs_write .tr > dl dd{display:table-cell;vertical-align: middle;}
div.bbs_write .tr > dl dt{width:15%;}
div.bbs_write .tr > dl dd{width:85%;}
div.bbs_write .th, div.bbs_write .td{font-size:13px;padding-top:10px;padding-bottom:10px;padding-left: 40px;padding-right: 40px;font-weight:300;color:#888;text-align:left;vertical-align:middle;box-sizing:border-box;}
div.bbs_write .th{padding-left: 30px;padding-right: 30px;font-size: 16px;font-weight: 400;color: #444;line-height: 40px;}
div.bbs_write .td{}
div.bbs_write .tr:nth-of-type(1) .th, div.bbs_write .tr:nth-of-type(1) .td{padding-top:20px;}
div.bbs_write .line .th, div.bbs_write .line .td{border-top:1px solid #ddd;}
div.bbs_write .tr:nth-of-type(1) th, div.bbs_write .tr:nth-of-type(1) td{padding-top:20px;}
div.bbs_write .tr:last-of-type th, div.bbs_write .tr:last-of-type td{}
div.bbs_write .tr .td .file_box{line-height: 30px;}
div.bbs_write .tr .td .file_box + .file_box{margin-top:10px;}
div.bbs_write .tr .td .file_box input{vertical-align:middle;}
div.bbs_write .th, div.bbs_write .td, div.bbs_write .th a, div.bbs_write .td a, div.bbs_write .td label, div.bbs_write .td select, div.bbs_write .td input[type="text"], div.bbs_write .td input[type="password"], div.bbs_write .td input[type="number"], div.bbs_write .td input[type="date"], div.bbs_write .td input[name="title"], div.bbs_write .td textarea{word-break: break-all;}
div.bbs_write .th, div.bbs_write .td, div.bbs_write .tr span, div.bbs_write .tr input, div.bbs_write .tr select{vertical-align:top;}
div.bbs_write .tr span, div.bbs_write .tr input, div.bbs_write .tr select, div.bbs_write .tr textarea, div.bbs_write .tr label{font-size:inherit;font-weight:400;}
div.bbs_write .tr .filezone a{margin-left:5px;}
div.bbs_write .tr select{background-position:95%;}
div.bbs_write .tr label.ex_radio{width:100%;display:block;}
div.bbs_write .tr input[type="radio"] + label.ex_radio:before, div.bbs_write .tr input[type="radio"] + label.ex_radio::before{margin:-2px 5px 0 0;}
div.bbs_write .tr .td #captcha_box{display: inline-block;vertical-align: middle;}
div.bbs_write .tr .td input[name="captcha"]{min-width: 180px;height: 40px;line-height: 40px;margin: 0 8px;}
div.bbs_write .tr .td input[name="captcha"], div.bbs_write .tr .td .btn_reset, div.bbs_write .tr .td #refreshCode{vertical-align:middle !important;}
div.bbs_write .tr .td .btn_reset{width: 40px;height:40px;border: 1px solid #aaa !important;padding: 0 !important;background-position: center !important;font-size: 0;margin-left: 0;}
div.bbs_write .th .require_dot, div.bbs_write .th .require_dot:before{line-height:inherit;height:inherit;color:#444;font-weight:400;display:inline-block;}
div.bbs_write .th .require_dot{padding-left:4px;}
div.bbs_write .th .require_dot:before{content:' *';font-size:inherit;vertical-align:middle;}
div.bbs_write .td p{line-height:20px;padding:5px 0 0;font-size:inherit;display:inline-block;margin:0;vertical-align:top;}
div.bbs_write .td div.view_cont{padding:8px 10px 50px 10px;line-height:26px;min-height:150px;}
div.bbs_write .td select, div.bbs_write .td input[type="text"], div.bbs_write .td input[type="password"], div.bbs_write .td input[type="number"], div.bbs_write .td input[type="date"]{min-width: 35%;}
div.bbs_write .td input[name="title"]{width: 100%;}
div.bbs_write .td input[name="zip"]{width:80px;min-width:70px;}
div.bbs_write .td input[name="address"], div.bbs_write .td input[name="address2"]{width:55%;min-width:450px;}
div.bbs_write .td select:focus, div.bbs_write .td input:focus{border-color:#333;color:#444;transition:all .2s;}
div.bbs_write .td input.tel{min-width:50px;}
div.bbs_write .td textarea{min-width:100%;height:200px;}
div.bbs_write .td select.mail_select{margin-left:0px;}
div.bbs_write .td select.mail_select + .mail_select{margin-left:5px;}
div.bbs_write .td input[name="email_id"]{width:16%;min-width:120px;}
div.bbs_write .td input[name="email_domain"], div.bbs_write .td select.mail_select{width:20%;min-width:140px;}
div.bbs_write .td input[name="email_domain"]{display:inline-block !important;}
div.bbs_write .input_file{}
div.bbs_write .input_file td, div.bbs_write .input_file td input{vertical-align:middle;}
div.bbs_write .td .file_name{display: inline-block;vertical-align: top;}
div.bbs_write .td .file_name a{display:inline-block;vertical-align:middle;line-height:23px;}
div.bbs_write .td .file_name .file_no{margin-left:5px;}
div.bbs_write .td .at{display:inline-block;vertical-align:middle;margin:0 0 0 3px;}
div.bbs_write .input_email input{display:inline-block !important;}
div.bbs_write .btn_xs{margin-left:5px;}
div.bbs_write.captcha{}
div.bbs_write.captcha th{text-align:center;}
div.bbs_write.captcha th #captcha_box{}
div.bbs_write.captcha th #captcha_box img{width:100% !important;height:auto !important;}
div.bbs_write.captcha td{line-height:40px;vertical-align:middle;}
div.bbs_write.captcha td input, div.bbs_write.captcha td span, div.bbs_write.captcha td button{vertical-align:middle !important;}
.board_comment_list .comment span.board_line{margin:0 8px;width:1px;height:9px;background:#999;vertical-align:middle;display:inline-block;}
.board_search{line-height:40px;margin:15px 0;text-align:right;font-size:0;width:100%;box-sizing:border-box;}
.board_search:after{content:'';display:inline-block;clear:both;}
.board_search .bbs_num{float:left;font-size:14px;line-height: 40px;font-weight: 500;color:#555;}
.board_search .bbs_num strong{color:#f8bc26;}
.board_search .bbs_search{float:right;}
.board_search fieldset{line-height:inherit;font-size:0;}
.board_search select, .board_search input, .board_search span, .board_search label{vertical-align:top;font-size:14px;height:40px;color:#555;line-height:inherit;border-color: #ccc;}
.board_search select{width:120px;margin-right:10px;}
.board_search input{border-right:0;}
.board_search select, .board_search input.input_text{background-color:#fff;color:#666;}
.board_search input.input_text{width:220px;}
.board_search .board_search_sel{display:inline-block;vertical-align:middle;font-size: 0;}
.board_search .btn_search{background:#444 url('/images/common/ico_bbs_search.png') no-repeat center;font-size: 0;width: 40px;border: 0;}
.bbs_num{padding:0 0 8px 0;line-height:20px;font-size:13px;color:#333;}
.bbs_num strong{font-weight:700;}
.sub_board{position:relative;}
.sub_board .bbs_view .extra_editor_wrap{display:table;width:100%;margin:0;table-layout:fixed;border-collapse:collapse;margin-top:-1px;border-top: 1px solid #ccc;border-bottom: 1px solid #ccc;}
.sub_board .bbs_view .extra_editor_wrap > h4, .sub_board .bbs_view .extra_editor_wrap > div.extra_cont{padding: 20px 30px;display:table-cell;box-sizing:border-box;border-collapse:collapse;vertical-align:middle;text-align:left;border: 0;}
.sub_board .bbs_view .extra_editor_wrap > h4{width: 156px;color: #333;position: relative;}
.sub_board .bbs_view .extra_editor_wrap > h4:after{content:'';display:inline-block;vertical-align:middle;width:1px;height:12px;background:#ccc;position: absolute;right: 0;top: 50%;margin-top: -6px;}
.sub_board .bbs_view .extra_editor_wrap div.view_cont.extra_cont{width: calc(100% - 141px);}
.sub_board .bbs_view .extra_editor_wrap div.img_cont{}
.sub_board .bbs_view .extra_editor_wrap div.extra_cont > span{font-size:12px;color:#888;vertical-align:middle;display:block;}
.sub_board .bbs_view .extra_editor_wrap div.extra_cont > span a{font-weight: 400;font-size: 14px;color: #444 !important;}
.sub_board .bbs_view .extra_editor_wrap div.extra_cont > span + span{margin-top:10px;}
.sub_board .bbs_view .extra_editor_wrap div.extra_cont a.icon_down{font-size:0;background:url(/images/common/icon_download.png) no-repeat 0 0;display:inline-block;width:15px;height:15px;background-size:100% auto;margin:0 0 0 5px;padding:0;vertical-align:middle;}
.sub_board .bbs_view .extra_editor_wrap div.extra_cont img{width:auto;height:auto;vertical-align:middle;max-width:100%;}
.bbs_write + .bbs_write_title{padding-top:2.2%;}
.bbs_write_info{padding-top:2.0%;}
table.bbs_write colgroup col:first-of-type{width:20%;}
table.bbs_write th, table.bbs_write td{padding-left:12px;padding-right:12px;}
table.bbs_write th{padding-left:20px;padding-right:20px;}
div.bbs_write .tr .th{width:20%;}
div.bbs_write .tr .td{width:80%;}
div.bbs_write .th, div.bbs_write .td{padding-left:12px;padding-right:12px;}
div.bbs_write .th{padding-left:20px;padding-right:20px;}
.sub_board .bbs_view .extra_editor_wrap > h4{width:100px;}
table.bbs_write{}
table.bbs_write colgroup col:first-of-type{width:18%;}
table.bbs_write tr:nth-of-type(1) th, table.bbs_write tr:nth-of-type(1) td{padding-top:15px;}
table.bbs_write tr:last-of-type th, table.bbs_write tr:last-of-type td{padding-bottom:15px;}
table.bbs_write th, table.bbs_write td{font-size:12px;padding-left:12px;padding-right:12px;}
table.bbs_write th{padding-left:12px;padding-right:12px;font-size: 14px;line-height: 30px;}
table.bbs_write td{}
table.bbs_write td p{padding:4px 0 0;}
table.bbs_write td input[name="address"], table.bbs_write td input[name="address2"]{width:100%;min-width:auto;}
table.bbs_write tr td #captcha_box{display:block;margin-bottom:5px;}
table.bbs_write tr td input[name="captcha"]{margin:0 5px 0 0;width:50%;}
div.bbs_write{}
div.bbs_write .tr .th{width:18%;}
div.bbs_write .tr .td{width:82%;}
div.bbs_write .tr:nth-of-type(1) .th, div.bbs_write .tr:nth-of-type(1) .td{padding-top:15px;}
div.bbs_write .tr:last-of-type .th, div.bbs_write .tr:last-of-type .td{padding-bottom:15px;}
div.bbs_write .th, div.bbs_write .td{font-size:12px;padding-left:12px;padding-right:12px;}
div.bbs_write .th{padding-left:12px;padding-right:12px;font-size: 14px;line-height: 30px;}
div.bbs_write .td{}
div.bbs_write .td p{padding:4px 0 0;}
div.bbs_write .td input[name="address"], div.bbs_write .td input[name="address2"]{width:100%;min-width:auto;}
div.bbs_write .tr .td #captcha_box{display:block;margin-bottom:5px;}
div.bbs_write .tr .td input[name="captcha"]{margin:0 5px 0 0;width:50%;}
.board_search{line-height:36px;}
.board_search .bbs_num{line-height:36px;font-size:13px;}
.board_search select, .board_search input, .board_search span, .board_search label{height:36px;font-size:13px;}
.board_search select{width:100px;}
.board_search input.input_text{width:200px;}
.board_search .btn_search{width:35px;}
.bbs_write_title{display:none;}
.bbs_write + .bbs_write_title + .bbs_write{margin-top:6.8%;}
.bbs_write_info{font-size:13px;}
table.bbs_write{}
table.bbs_write colgroup col:first-of-type{width:20%;}
table.bbs_write td select, table.bbs_write td input[type="text"], table.bbs_write td input[type="password"], table.bbs_write td input[type="number"], table.bbs_write td input[type="date"]{min-width:42%;}
table.bbs_write td input[name="title"]{width:100%;}
table.bbs_write td textarea{height:120px;}
table.bbs_write td select.mail_select{margin-left:0px;margin-right:5px;}
table.bbs_write .input_email input[type="text"], table.bbs_write td input[name="email_id"], table.bbs_write td input[name="email_domain"], table.bbs_write td select.mail_select{width:34%;min-width:100px;margin-bottom:4px;}
table.bbs_write td input[name="email_domain"] + select.mail_select{clear:both;margin-bottom:0;}
div.bbs_write{}
div.bbs_write .tr .th{width:20%;}
div.bbs_write .tr .td{width:80%;}
div.bbs_write .td select, div.bbs_write .td input[type="text"], div.bbs_write .td input[type="password"], div.bbs_write .td input[type="number"], div.bbs_write .td input[type="date"]{min-width:42%;}
div.bbs_write .td input[name="title"]{width:100%;}
div.bbs_write .td textarea{height:120px;}
div.bbs_write .td select.mail_select{margin-left:0px;margin-right:5px;}
div.bbs_write .input_email input[type="text"], div.bbs_write .td input[name="email_id"], div.bbs_write .td input[name="email_domain"], div.bbs_write .td select.mail_select{width:34%;min-width:100px;margin-bottom:4px;}
div.bbs_write .td input[name="email_domain"] + select.mail_select{clear:both;margin-bottom:0;}
table.bbs_write{}
table.bbs_write colgroup col:first-of-type{width:28%;}
table.bbs_write th, table.bbs_write td{font-size:11px;padding-top:10px;padding-bottom:10px;padding-left:12px;padding-right:12px;}
table.bbs_write th{padding-left:12px;padding-right:12px;font-size:13px;}
table.bbs_write td{}
table.bbs_write td p{line-height:18px;}
table.bbs_write td div.view_cont{padding:8px 10px 50px 10px;line-height:26px;min-height:150px;}
table.bbs_write td select, table.bbs_write td input[type="text"], table.bbs_write td input[type="password"], table.bbs_write td input[type="number"], table.bbs_write td input[type="date"]{min-width:auto;width:56%;}
table.bbs_write td input[name="title"]{width:100%;}
table.bbs_write .input_email input[type="text"], table.bbs_write td input[name="email_id"], table.bbs_write td input[name="email_domain"], table.bbs_write td select.mail_select{width:43%;min-width:100px;margin-bottom:4px;}
table.bbs_write td input[name="address"], table.bbs_write td input[name="address2"]{width:100%;}
div.bbs_write{}
div.bbs_write .tr .th{width:28%;}
div.bbs_write .tr .td{width:72%;}
div.bbs_write .tr.cont > dl{display:block;}
div.bbs_write .tr.cont .th{display:none;}
div.bbs_write .tr.input_editor .th, div.bbs_write .tr.cont .td, div.bbs_write .tr.input_editor .td{width:100%;display: block;}
div.bbs_write .tr.input_editor .td{border:0;}
div.bbs_write .th, div.bbs_write .td{font-size:11px;padding-top:10px;padding-bottom:10px;padding-left:12px;padding-right:12px;}
div.bbs_write .th{padding-left:12px;padding-right:12px;font-size:13px;}
div.bbs_write .td{}
div.bbs_write .td p{line-height:18px;}
div.bbs_write .td div.view_cont{padding:8px 10px 50px 10px;line-height:26px;min-height:150px;}
div.bbs_write .td select, div.bbs_write .td input[type="text"], div.bbs_write .td input[type="password"], div.bbs_write .td input[type="number"], div.bbs_write .td input[type="date"]{min-width:auto;width:56%;}
div.bbs_write .td input[name="title"]{width:100%;}
div.bbs_write .input_email input[type="text"], div.bbs_write .td input[name="email_id"], div.bbs_write .td input[name="email_domain"], div.bbs_write .td select.mail_select{width:43%;min-width:100px;margin-bottom:4px;}
div.bbs_write .td input[name="address"], div.bbs_write .td input[name="address2"]{width:100%;}
.board_search{line-height:32px;}
.board_search .bbs_num{line-height:32px;font-size:12px;}
.board_search select, .board_search input, .board_search span, .board_search label{font-size:12px;}
.board_search select{width:100px;margin-right:6px;}
.board_search input.input_text{}
.board_search .btn_search{}
.bbs_num{padding:0 0 8px 0;font-size:12px;}
.sub_board .bbs_view .extra_editor_wrap > h4{font-size:12px;}
.sub_board .bbs_view .extra_editor_wrap > h4, .sub_board .bbs_view .extra_editor_wrap > div.extra_cont{padding:10px;}
.board_search{line-height:30px;}
.board_search .bbs_num{line-height:30px;}
.board_search select, .board_search input, .board_search span, .board_search label{height:30px;}
.board_search select{width:80px;margin-right:6px;}
.board_search input.input_text{width:150px;}
.board_search .btn_search{}
.bbs_write_info{font-size:12px;line-height:18px;padding-top:2.0%;}
table.bbs_write{}
table.bbs_write colgroup col:first-of-type{width:32%;min-width:120px;}
table.bbs_write td p{font-size:11px;}
table.bbs_write td select, table.bbs_write td input[type="text"], table.bbs_write td input[type="password"], table.bbs_write td input[type="number"], table.bbs_write td input[type="date"]{width:100%;}
table.bbs_write td input[name="title"]{width:100%;}
table.bbs_write td input[name="userid"]{width: calc(100% - 110px);}
table.bbs_write td input[name="zip"]{width: calc(100% - 80px);}
table.bbs_write td input[name="captcha"]{width:calc(100% - 100px);}
table.bbs_write .input_email input[type="text"], table.bbs_write td input[name="email_id"], table.bbs_write td input[name="email_domain"], table.bbs_write td select.mail_select{width: calc(47% - 6px);min-width:70px;}
table.bbs_write .input_email input[name="email_domain"], table.bbs_write .input_email select.mail_select{width:100%;}
table.bbs_write td input[name="email_id"]{}
table.bbs_write td input[name="email_domain"], table.bbs_write td select.mail_select{margin-right:0px;margin-left:-2px;}
table.bbs_write td input[name="email_domain"] + select.mail_select{margin-left:0;width: calc(100% - 117px);}
table.bbs_write td select.mail_select + .btn_sm{margin-left:0px;}
table.bbs_write td input[name="address"], table.bbs_write td input[name="address2"]{width:100%;}
table.bbs_write td .at{width: 18px;text-align: center;margin: 10px 0 0 0px;}
table.bbs_write td .btn_sm.btn_reset{width: 100%;min-width: auto;font-size: 0;padding: 0 10px 0 20px !important;background: #fff url(/images/common/icon_btn_reset.gif) no-repeat 50% !important;}
table.bbs_write td .btn_sm.btn_info{width:auto;min-width:auto;}
table.bbs_write select + input{margin-top:5px;}
table.bbs_write tr td input[name="captcha"]{width: calc(100% - 45px);margin:0;}
div.bbs_write{}
div.bbs_write .tr .th{width:32%;min-width:120px;}
div.bbs_write .tr .td{width:68%;}
div.bbs_write .td p{font-size:11px;}
div.bbs_write .td select, div.bbs_write .td input[type="text"], div.bbs_write .td input[type="password"], div.bbs_write .td input[type="number"], div.bbs_write .td input[type="date"]{width:100%;}
div.bbs_write .td input[name="title"]{width:100%;}
div.bbs_write .td input[name="userid"]{width: calc(100% - 110px);}
div.bbs_write .td input[name="zip"]{width: calc(100% - 80px);}
div.bbs_write .td input[name="captcha"]{width:calc(100% - 100px);}
div.bbs_write .input_email input[type="text"], div.bbs_write .td input[name="email_id"], div.bbs_write .td input[name="email_domain"], div.bbs_write .td select.mail_select{width: calc(47% - 6px);min-width:70px;}
div.bbs_write .input_email input[name="email_domain"], div.bbs_write .input_email select.mail_select{width:100%;}
div.bbs_write .td input[name="email_id"]{}
div.bbs_write .td input[name="email_domain"], div.bbs_write .td select.mail_select{margin-right:0px;margin-left:-2px;}
div.bbs_write .td input[name="email_domain"] + select.mail_select{margin-left:0;width: calc(100% - 117px);}
div.bbs_write .td select.mail_select + .btn_sm{margin-left:0px;}
div.bbs_write .td input[name="address"], div.bbs_write .td input[name="address2"]{width:100%;}
div.bbs_write .td .at{width: 18px;text-align: center;margin: 0;}
div.bbs_write .td .btn_sm.btn_reset{width: 100%;min-width: auto;font-size: 0;padding: 0 10px 0 20px !important;background: #fff url(/images/common/icon_btn_reset.gif) no-repeat 50% !important;}
div.bbs_write .td .btn_sm.btn_info{width:auto;min-width:auto;}
div.bbs_write select + input{margin-top:5px;}
div.bbs_write .tr .td input[name="captcha"]{width: 100%;margin: 5px 0 10px;}
.board_comment_list .comment span.board_line{margin:0 8px;}
.board_search{}
.board_search .bbs_num, .board_search .bbs_search{float:inherit;width:100%;text-align:left;}
.board_search select, .board_search input, .board_search span, .board_search label{height:35px;}
.board_search select{width:40%;max-width:120px;}
.board_search .board_search_sel{width:100%;margin-bottom:6px;}
.board_search input.input_text{width:calc(100% - 35px);}
.board_search .btn_search{}
.board_search select{width:calc(50% - 3px);max-width: inherit;}
.board_search select:last-of-type{margin-right:0;}
table.bbs_write tr td input[name="captcha"]{width:100%;}
table.bbs_write tr td .btn_reset{width:100%;margin-top:5px;}
div.bbs_write .tr .td input[name="captcha"]{width:100%;}
div.bbs_write .tr .td .btn_reset{width:100%;margin-top:5px;}
table.bbs_write{}
table.bbs_write colgroup col:first-of-type{width:38%;}
table.bbs_write td select, table.bbs_write td input[type="text"], table.bbs_write td input[type="password"], table.bbs_write td input[type="number"], table.bbs_write td input[type="date"]{width:100%;margin-right:0px;}
table.bbs_write td input[name="title"]{width:100%;}
table.bbs_write td input[name="userid"], table.bbs_write td input[name="captcha"]{width:100%;margin-right:0px;margin-bottom:4px;}
table.bbs_write td input[name="zip"]{width: calc(100% - 68px);margin-right:6px;}
table.bbs_write td input[name="email_id"]{margin-right:0px;margin-left:0;margin-bottom:4px;width: calc(100% - 22px);}
table.bbs_write td input[name="email_domain"], table.bbs_write td select.mail_select, table.bbs_write td input[name="email_domain"] + select.mail_select{margin-right:0px;margin-left:0;margin-bottom:4px;width:100%;}
table.bbs_write td input[name="address"], table.bbs_write td input[name="address2"]{width:100%;}
table.bbs_write.captcha td{line-height:30px;}
div.bbs_write{}
div.bbs_write .tr .th{width:38%;}
div.bbs_write .tr .td{width:62%;}
div.bbs_write .td select, div.bbs_write .td input[type="text"], div.bbs_write .td input[type="password"], div.bbs_write .td input[type="number"], div.bbs_write .td input[type="date"]{width:100%;margin-right:0px;}
div.bbs_write .td input[name="title"]{width:100%;}
div.bbs_write .td input[name="userid"], div.bbs_write .td input[name="captcha"]{width:100%;margin-right:0px;margin-bottom:4px;}
div.bbs_write .td input[name="zip"]{width: calc(100% - 68px);margin-right:6px;}
div.bbs_write .td input[name="email_id"]{margin-right:0px;margin-left:0;margin-bottom:4px;width: calc(100% - 22px);}
div.bbs_write .td input[name="email_domain"], div.bbs_write .td select.mail_select, div.bbs_write .td input[name="email_domain"] + select.mail_select{margin-right:0px;margin-left:0;margin-bottom:4px;width:100%;}
div.bbs_write .td input[name="address"], div.bbs_write .td input[name="address2"]{width:100%;}
div.bbs_write.captcha td{line-height:30px;}
.board_comment_list .comment span.board_line{margin:0 8px;}
.sub_board ul.bbs_gallery{width:calc(100% + 30px);margin-left:-30px;padding:0;font-size:0;}
.sub_board ul.bbs_gallery:after{clear:both;content:"";display:block;}
.sub_board ul.bbs_gallery{width:calc(100% + 20px);margin-left:-20px;}
.sub_board ul.bbs_gallery{width:calc(100% + 15px);margin-left:-15px;}
.sub_board ul.bbs_gallery{width:calc(100% + 15px);margin-left:-15px;}
.sub_list{}
.sub_cate_wrap ul.sub_cate{vertical-align:top;text-align:center;font-size: 0;margin-bottom: 36px;}
.sub_cate_wrap ul.sub_cate:after{clear:both;content:"";display:block;}
.sub_cate_wrap ul.sub_cate li{font-size:0;display:inline-block;vertical-align:middle;text-align:left;box-sizing:border-box;}
.sub_cate_wrap ul.sub_cate li a{font-size: 16px;line-height: 2.5;padding: 0 1em;font-weight:400;display:inline-block;vertical-align: middle;color: #555;}
.sub_cate_wrap ul.sub_cate li:hover a, .sub_cate_wrap ul.sub_cate li.on a{color:#f8bc26;font-weight:600;}
.sub_cate_wrap ul.sub_cate li + li{}
.sub_list .list_array{padding: 20px 0;font-size: 0;border-top: 1px solid #222;}
.sub_list .list_array:after{clear:both;content:"";display:block;}
.sub_list .list_array .list_count, .sub_list .list_array .list_count span{font-size: 14px;line-height: 2.57;color: #555;font-weight:400;vertical-align:top;display:inline-block;text-align:left;}
.sub_list .list_array .list_count{float:left;}
.sub_list .list_array .list_count strong{color:#f8bc26;}
.sub_list .list_array .list_count span{color:#222;font-weight:700;}
.sub_list .list_array ul{float:right;}
.sub_list .list_array ul:after{clear:both;content:"";display:block;}
.sub_list .list_array ul li{width: 36px;height: 36px;border:1px solid #ccc;float:left;box-sizing:border-box;background:#fff;text-indent:-9999px;cursor:pointer;position:relative;z-index:1;}
.sub_list .list_array ul li:before, .sub_list .list_array ul li::before{content:"";display:inline-block;width: 100%;height: 100%;position:absolute;cursor:pointer;left:0;top:0;bottom:0;right:0;box-sizing:border-box;}
.sub_list .list_array ul li.typeA:before{background: url("/images/common/icon_list_typeA.png") no-repeat center;}
.sub_list .list_array ul li.typeA.on:before{background:#222222 url("/images/common/icon_list_typeA_on.png") no-repeat center;}
.sub_list .list_array ul li.typeB:before{background: url("/images/common/icon_list_typeB.png") no-repeat center;}
.sub_list .list_array ul li.typeB.on:before{background: #222222 url("/images/common/icon_list_typeB_on.png") no-repeat center;}
.sub_list .list_array ul li.on{border:1px solid #222222;background:#222222;}
.sub_list .list{}
.sub_list .list .list_no{color:#555;padding:1.2%;font-size:15px;line-height:23px;font-weight:500;width:100%;background:#fafafa;border:1px #ccc solid;text-align:center;vertical-align:top;box-sizing:border-box;}
.sub_list .list .list_no .no_data{font-size:inherit;line-height:inherit;font-weight:inherit;}
.sub_list .list .list_no .no_data:before{color:#fff;width:21px;height:21px;border-radius:100%;margin:1px 8px 0 0;background:#777;font-size:inherit;line-height:21px;font-weight:700;content:"!";display:inline-block;vertical-align:top;box-sizing:border-box;}
.sub_list .list_search{line-height: 40px;margin: 15px 0;text-align: right;font-size: 0;width: 100%;box-sizing: border-box;}
.sub_list .list_search:after{clear:both;content:"";display:block;}
.sub_list .list_search > div{text-align: right;vertical-align:top;font-size:0;width: 100%;}
.sub_list .list_search > div > span, .sub_list .list_search .search_form, .sub_list .list_search .select_box_wrap, .sub_list .list_search .search_form .select_box_wrap select, .sub_list .list_search #search, .sub_list .list_search .btn_search, .sub_list .list_search .search{display:inline-block;vertical-align: top;font-size: 0;}
.sub_list .list_search > div > span{font-size:14px;}
.sub_list .list_search .search_form .select_box_wrap{}
.sub_list .list_search .search_form .select_box_wrap select{width:120px;}
.sub_list .list_search > div > span, .sub_list .list_search .search_form .select_box_wrap{margin-right:10px;}
.sub_list .list_search .search_form .select_box_wrap select, .sub_list .list_search #search{font-size:14px;height:40px;color:#555;line-height:inherit;border-color: #ccc;}
.sub_list .list_search #search{width:220px;}
.sub_list .list_search .btn_search{background:#444 url('/images/common/ico_bbs_search.png') no-repeat center;font-size: 0;width: 40px;height:40px;border: 0;}
.sub_list .list .list_Galleryform{}
.sub_list .list .list_Galleryform > ul{width:calc(100% + 30px);margin-left:-30px;font-size:0;}
.sub_list .list .list_Galleryform > ul:after{clear:both;content:"";display:block;}
.sub_list .list .list_Galleryform > ul li{display:inline-block;vertical-align:top;width: calc(25% - 30px);margin: 0 0 40px 30px;font-size: 0;}
.sub_list .list .list_Galleryform > ul li dl{font-size:0;}
.sub_list .list .list_Galleryform > ul li dl dt{margin: 0 0 15px;height: 0;overflow: hidden;position: relative;padding-bottom: 99.4%;border: 1px solid transparent;box-sizing: border-box;}
.sub_list .list .list_Galleryform > ul li dl dt:hover{border:1px solid #222;}
.sub_list .list .list_Galleryform > ul li dl dt img{width:100%;height:100%;position: absolute;left:50%;top:50%;transform:translate(-50%, -50%);object-fit:cover;}
.sub_list .list .list_Galleryform > ul li dl dd{text-align:left;font-size: 18px;line-height: 1.5;color: #222;}
.sub_list .list .list_Galleryform > ul li dl dd h3{display:block;font-weight:400;overflow: hidden;text-overflow: ellipsis;white-space: nowrap;}
.sub_list .list .list_Listform{}
.sub_list .list .list_Listform > ul{font-size:0;width: calc(100% + 40px);margin-left: -40px;}
.sub_list .list .list_Listform > ul:after{clear:both;content:"";display:block;}
.sub_list .list .list_Listform > ul li{display: inline-block;vertical-align: top;width: calc(50% - 40px);margin: 0 0 50px 40px;box-sizing:border-box;}
.sub_list .list .list_Listform > ul li > a{display:table;width:100%;}
.sub_list .list .list_Listform > ul li dl{display:table-row;font-size: 0;}
.sub_list .list .list_Listform > ul li dl:after{clear:both;content:"";display:block;}
.sub_list .list .list_Listform > ul li dl dt, .sub_list .list .list_Listform > ul li dl dd{display: table-cell;vertical-align:middle;box-sizing:border-box;}
.sub_list .list .list_Listform > ul li dl dt{position: relative;height: 0;overflow: hidden;padding-bottom: 47.1%;width: 47.6%;border: 1px solid transparent;transition:all .2s;box-sizing: border-box;}
.sub_list .list .list_Listform > ul li dl dt:hover{border:1px solid #222;}
.sub_list .list .list_Listform > ul li dl dt img{width: 100%;height: 100%;position: absolute;left:50%;top:50%;transform:translate(-50%, -50%);object-fit: cover;}
.sub_list .list .list_Listform > ul li dl dd{text-align:left;overflow: hidden;max-width: 200px;padding-left: 30px;font-size: 18px;line-height: 1.77;color: #222;}
.sub_list .list .list_Listform > ul li dl dd h3{font-weight:inherit;font-size:inherit;line-height:inherit;color:inherit;overflow: hidden;text-overflow: ellipsis;display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;}
.sub_cate_wrap ul.sub_cate{margin:1.2% 8px;}
.sub_list .list_search{}
.sub_list .list_array{margin-bottom:3.6%;}
.sub_list .list .list_Galleryform > ul{width:calc(100% + 20px);margin-left:-20px;}
.sub_list .list .list_Galleryform > ul li{width: calc(25% - 20px);margin: 0 0 25px 20px;}
.sub_list .list .list_Galleryform > ul li dl dd{font-size: 17px;}
.sub_list .list .list_Listform > ul li dl dd > em{font-size:15px;}
.sub_list .list .list_Listform > ul li dl dd > .add_info p{font-size:13px;}
.sub_list .list_search{}
.sub_cate_wrap{margin-bottom:3.6%;}
.sub_cate_wrap ul.sub_cate{margin:1.6% 0;}
.sub_list .list_array{margin-bottom:3.6%;}
.sub_list .list_array .list_count, .sub_list .list_array .list_count span{font-size:13px;}
.sub_list .list .list_no{padding:1.6%;}
.sub_list .list .list_Galleryform > ul li{width: calc(33.33% - 20px);margin: 0 0 20px 20px;}
.sub_list .list .list_Galleryform > ul li dl dd{font-size: 16px;}
.sub_list .list .list_Listform > ul li dl dt{width:45%;}
.sub_list .list .list_Listform > ul li dl dd{padding-left: 15px;font-size: 14px;}
.sub_list .list_search .btn_search{width:35px;height: 35px;}
.sub_cate_wrap{margin-bottom:4.8%;}
.sub_cate_wrap{margin-bottom:5.2%;}
.sub_cate_wrap ul.sub_cate{margin:2.4% 0;}
.sub_cate_wrap ul.sub_cate li a{font-size: 13px;}
.sub_list .list_array{margin-bottom:5.2%;}
.sub_list .list_array .list_count, .sub_list .list_array .list_count span{font-size:13px;}
.sub_list .list .list_no{padding:2.4%;font-size:13px;}
.sub_list .list .list_Galleryform > ul{width:calc(100% + 15px);margin-left:-15px;}
.sub_list .list .list_Galleryform > ul li{width: calc(50% - 15px);margin: 0 0 15px 15px;}
.sub_list .list .list_Galleryform > ul li dl dt{margin: 0 0 12px;}
.sub_list .list .list_Galleryform > ul li dl dd{font-size: 14px;}
.sub_list .list .list_Listform > ul{width: 100%;margin-left:00px;}
.sub_list .list .list_Listform > ul li{width: 100%;margin: 0 0 40px 0;}
.sub_list .list .list_Listform > ul li dl dt{}
.sub_list .list .list_Listform > ul li dl dd{padding-left: 15px;font-size: 14px;}
.sub_list .list_search > div > span, .sub_list .list_search .search_form, .sub_list .list_search .search_form .search{width:100%;display:block;margin-right: 0;}
.sub_list .list_search .search_form .select_box_wrap{width: 30%;}
.sub_list .list_search .search_form .select_box_wrap select{width:100%;}
.sub_list .list_search #search{width: calc(70% - 45px);}
.sub_list .list_search .search_form .select_box_wrap select, .sub_list .list_search #search{font-size: 12px;height: 35px;}
.sub_list .list_array .list_count, .sub_list .list_array .list_count span{font-size:12px;}
.sub_list .list .list_Listform > ul li{margin:0 0 10px 0;}
.sub_list .list .list_Listform > ul li dl dt{}
.sub_list .list .list_Listform > ul li dl dd{}
.sub_list .list .list_Galleryform > ul{}
.sub_list .list .list_Galleryform > ul li{}
.sub_list .list .list_Galleryform > ul li dl dd{font-size: 15px;}
.sub_login.add .login_box table.bbs_write{}
.sub_login.add .login_box table.bbs_write caption{text-indent:0;line-height:20px;color:#777;font-size:14px;font-weight:500;text-align:left;padding-bottom:14px;height: auto;}
.sub_login.add .login_box table.bbs_write caption span{color:#444; font-size:14px; font-weight:500;}
.sub_login.add .login_box table.bbs_write input{max-width:200px;}
.sub_login.add .login_box table.bbs_write caption{font-size:13px;}
.sub_login.add .login_box table.bbs_write caption{font-size:12px;} */


/* ECOZEN MODULE FIX: 갤러리 그리드 + 문의폼 입력필드 */
.sub_content .list_Galleryform > ul{display:flex;flex-wrap:wrap;width:calc(100% + 30px);margin-left:-15px;padding:0;}
.sub_content .list_Galleryform > ul > li{width:calc(25% - 30px);margin:0 15px 40px;box-sizing:border-box;}
.sub_content .list_Galleryform > ul > li a{display:block;}
.sub_content .list_Galleryform dt{width:100%;height:0;padding-bottom:100%;border-radius:10px;overflow:hidden;position:relative;margin:0;}
.sub_content .list_Galleryform dt img{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:100%;height:100%;object-fit:cover;max-width:none;}
.sub_content .list_Galleryform dt .date{position:absolute;top:0;left:0;background:#f8bc26;color:#fff;font-size:13px;line-height:1;padding:9px 14px;z-index:2;}
.sub_content .list_Galleryform dd{margin-top:16px;}
.sub_content .list_Galleryform dd h3{font-size:18px;color:#111;font-weight:600;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.sub_content .list_Galleryform dd p{font-size:15px;color:#666;margin-top:8px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
@media (max-width:1024px){ .sub_content .list_Galleryform > ul > li{width:calc(33.333% - 30px);} }
@media (max-width:767px){ .sub_content .list_Galleryform > ul > li{width:calc(50% - 30px);} }
@media (max-width:480px){ .sub_content .list_Galleryform > ul > li{width:calc(100% - 30px);} }
/* 문의 폼 */
/*.bbs_write{max-width:900px;margin:0 auto;}
.bbs_write .tr{display:block;border-bottom:1px solid #eee;padding:20px 0;}
.bbs_write .tr dl{display:flex;align-items:flex-start;margin:0;}
.bbs_write .tr .th{flex:0 0 140px;font-size:16px;font-weight:600;color:#222;padding-top:12px;}
.bbs_write .tr .td{flex:1 1 auto;}
.bbs_write .td input[type="text"], .bbs_write .td input[type="email"], .bbs_write .td input[type="password"]{width:100%;max-width:520px;height:46px;border:1px solid #ccc;padding:0 14px;box-sizing:border-box;font-size:15px;background:#fff;border-radius:4px;}
.bbs_write .td textarea{width:100%;min-height:200px;border:1px solid #ccc;padding:12px 14px;box-sizing:border-box;font-size:15px;background:#fff;border-radius:4px;resize:vertical;}
.bbs_write .td label{font-size:15px;color:#555;}
.btn_wrap .btn_point{display:inline-block;min-width:180px;height:52px;line-height:52px;background:#f8bc26;color:#fff;font-size:16px;font-weight:600;border:0;border-radius:4px;cursor:pointer;}
.btn_wrap .btn_point:hover{background:#111;}*/
/* ECOZEN MODULE END */

/* ==========================================================================
   ECOZEN home-integration overrides (header / news grid / aside drawer)
   ecozen 페이지에서만 로드됨. 기존 home 페이지에는 영향 없음.
   ========================================================================== */
.main_index { padding-top: 80px; }

/* ---- Header : 로고 | 중앙 메뉴 | 오른쪽(검색/다국어/전체보기) ---- */
.ecz-header { position: fixed; top: 0; left: 0; width: 100%; height: 80px; background: #fff; z-index: 1000; box-shadow: 0 1px 0 rgba(0,0,0,.07), 0 2px 12px rgba(0,0,0,.04); }
.ecz-header-inner { max-width: 1400px; height: 80px; margin: 0 auto; padding: 0 30px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.ecz-logo { flex: 0 0 auto; display: flex; align-items: center; }
.ecz-logo img { height: 30px; width: auto; display: block; }
.ecz-nav { flex: 1 1 auto; display: flex; justify-content: center; }
.ecz-header-right { flex: 0 0 auto; display: flex; align-items: center; gap: 16px; }

/* 중앙 메뉴 (db-menu / db-submenu) */
.ecz-nav .db-menu { display: flex; align-items: center; gap: 38px; list-style: none; margin: 0; padding: 0; }
.ecz-nav .db-menu > li { position: relative; }
.ecz-nav .db-menu > li > a { display: block; padding: 28px 0; font-size: 17px; font-weight: 600; color: #1f2937; letter-spacing: -0.01em; transition: color .2s; }
.ecz-nav .db-menu > li:hover > a { color: #f8bc26; }
.ecz-nav .db-submenu { position: absolute; top: 100%; left: 50%; transform: translateX(-50%); min-width: 168px; background: #fff; box-shadow: 0 10px 30px rgba(0,0,0,.1); border-radius: 8px; padding: 10px 0; list-style: none; margin: 0; opacity: 0; visibility: hidden; transition: opacity .22s, visibility .22s; z-index: 30; }
.ecz-nav .db-menu > li:hover .db-submenu { opacity: 1; visibility: visible; }
.ecz-nav .db-submenu li { list-style: none; }
.ecz-nav .db-submenu a { display: block; padding: 9px 22px; font-size: 14px; color: #555; white-space: nowrap; text-align: center; transition: background .18s, color .18s; }
.ecz-nav .db-submenu a:hover { background: #fdf6e3; color: #f8bc26; }

/* 오른쪽 3버튼 */
.ecz-header-right .ecz-btn { display: flex; align-items: center; }
.ecz-btn-search .db-search-btn { width: 24px; height: 24px; padding: 0; background: none; border: none; color: #333; cursor: pointer; }
.ecz-btn-search .db-search-btn svg { width: 22px; height: 22px; }
.ecz-btn-lang .db-lang-selector { margin: 0; }
.ecz-allmenu { width: 26px; height: 22px; position: relative; background: none; border: none; padding: 0; cursor: pointer; display: flex; flex-direction: column; justify-content: center; gap: 5px; }
.ecz-allmenu span { display: block; width: 100%; height: 2px; background: #222; border-radius: 2px; transition: .2s; }
.ecz-allmenu:hover span { background: #f8bc26; }

/* ---- 전체보기 aside 드로어 ---- */
.ecz-aside { position: fixed; top: 0; right: -380px; width: 360px; max-width: 86%; height: 100%; background: #fff; z-index: 2000; box-shadow: -6px 0 30px rgba(0,0,0,.15); transition: right .32s cubic-bezier(.4,0,.2,1); overflow-y: auto; }
.ecz-aside.open { right: 0; }
.ecz-aside-head { display: flex; align-items: center; justify-content: space-between; padding: 24px 26px; border-bottom: 1px solid #eee; }
.ecz-aside-logo { font-size: 20px; font-weight: 800; color: #f8bc26; }
.ecz-aside-close { font-size: 30px; line-height: 1; background: none; border: none; color: #333; cursor: pointer; padding: 0; }
.ecz-aside-body { padding: 14px 10px 40px; }
.ecz-aside-body .db-aside-menu { list-style: none; margin: 0; padding: 0; }
.ecz-aside-body .db-aside-menu > li { border-bottom: 1px solid #f0f0f0; padding: 4px 0; }
.ecz-aside-body .aside-title a { display: block; padding: 12px 16px; font-size: 17px; font-weight: 700; color: #1f2937; }
.ecz-aside-body .db-aside-sub { list-style: none; margin: 0 0 8px; padding: 0 16px; }
.ecz-aside-body .db-aside-sub a { display: block; padding: 8px 12px; font-size: 14px; color: #666; }
.ecz-aside-body .db-aside-sub a:hover { color: #f8bc26; }
.ecz-aside-dim { position: fixed; inset: 0; background: rgba(0,0,0,.5); opacity: 0; visibility: hidden; transition: opacity .32s; z-index: 1999; }
.ecz-aside-dim.open { opacity: 1; visibility: visible; }

/* ---- News : 깔끔한 4열 그리드 ---- */
.ecz-news { padding: 90px 0 100px; }
.ecz-news .main_w_custom { max-width: var(--content-width, 1400px); margin: 0 auto; padding: 0 24px; }
.ecz-news-head { display: flex; align-items: flex-end; justify-content: space-between; margin-bottom: 34px; padding-bottom: 18px; border-bottom: 2px solid #1f2937; }
.ecz-news-head h3 { font-size: 40px; font-weight: 800; color: #111827; letter-spacing: -0.02em; }
.ecz-news-more { font-size: 14px; font-weight: 500; color: #6b7280; }
.ecz-news-more:hover { color: #f8bc26; }
.ecz-news-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; list-style: none; margin: 0; padding: 0; }
.ecz-news-grid > li { list-style: none; }
.ecz-news-grid > li > a { display: block; }
.ecz-news-thumb { position: relative; width: 100%; aspect-ratio: 4/3; border-radius: 12px; overflow: hidden; margin-bottom: 18px; background: #f1f5f9; }
.ecz-news-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.ecz-news-grid > li > a:hover .ecz-news-thumb img { transform: scale(1.06); }
.ecz-news-date { position: absolute; top: 0; left: 0; background: #f8bc26; color: #fff; font-size: 13px; font-weight: 600; padding: 6px 12px; }
.ecz-news-title { display: block; font-size: 17px; font-weight: 700; color: #1f2937; line-height: 1.45; margin-bottom: 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ecz-news-grid > li > a:hover .ecz-news-title { color: #f8bc26; }
.ecz-news-desc { font-size: 14px; color: #6b7280; line-height: 1.6; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }

@media (max-width: 1024px) {
	.ecz-news-grid { grid-template-columns: repeat(2, 1fr); }
	.ecz-nav { display: none; }
}
@media (max-width: 600px) {
	.ecz-news-grid { grid-template-columns: 1fr; }
	.ecz-header-inner { padding: 0 18px; }
	.ecz-news-head h3 { font-size: 30px; }
}

/* ---- 배너관리 이미지 보정 + 영상 + 파트너 섹션 ---- */
/* 회사소개 카드 썸네일: 배너 <img> 인라인 스타일 보정 */
.about_list .thumb img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; }

/* 지속가능 섹션 배경: JS가 backgroundImage 세팅 → cover/center 보장 */
.main_sustain > ul { background-size: cover !important; background-position: center !important; background-repeat: no-repeat !important; }
.ecz-sustain-src { display: none; }

/* 소개 영상 섹션 */
.ecz-video { position: relative; width: 100%; height: 520px; overflow: hidden; background: #0b1a10; }
.ecz-video-bg { position: absolute; inset: 0; }
.ecz-video-bg img { width: 100% !important; height: 100% !important; object-fit: cover !important; display: block; }
.ecz-video-inner { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.18); }
.ecz-video-play { width: 88px; height: 88px; border-radius: 50%; background: #f5b301; border: none; display: flex; align-items: center; justify-content: center; cursor: pointer; box-shadow: 0 8px 24px rgba(0,0,0,.3); transition: transform .2s, box-shadow .2s; }
.ecz-video-play:hover { transform: scale(1.09); box-shadow: 0 12px 30px rgba(0,0,0,.35); }
.ecz-video-play svg { width: 36px; height: 36px; color: #fff; margin-left: 5px; }

/* 파트너 섹션 */
.ecz-partners { padding: 90px 0 100px; }
.ecz-partners .main_w_custom { max-width: var(--content-width, 1400px); margin: 0 auto; padding: 0 24px; }
.ecz-partners-head { margin-bottom: 34px; padding-bottom: 18px; border-bottom: 2px solid #1f2937; }
.ecz-partners-head h3 { font-size: 40px; font-weight: 800; color: #111827; letter-spacing: -0.02em; }
.ecz-partners-grid .db-banner-group { display: grid; grid-template-columns: repeat(6, 1fr); gap: 18px; }
.ecz-partners-grid .db-banner-group img,
.ecz-partners-grid .db-banner-group a { width: 100% !important; height: auto !important; }
.ecz-partners-grid .db-banner-group img { border: 1px solid #ececec; border-radius: 12px; padding: 30px 22px; background: #fff; box-sizing: border-box; filter: grayscale(1); opacity: .72; transition: filter .25s, opacity .25s, box-shadow .25s, border-color .25s; }
.ecz-partners-grid .db-banner-group img:hover { filter: none; opacity: 1; border-color: rgba(248,188,38,.55); box-shadow: 0 10px 24px rgba(0,0,0,.07); }

@media (max-width: 1024px) {
	.ecz-partners-grid .db-banner-group { grid-template-columns: repeat(3, 1fr); }
	.ecz-video { height: 380px; }
}
@media (max-width: 600px) {
	.ecz-partners-grid .db-banner-group { grid-template-columns: repeat(2, 1fr); }
	.ecz-video { height: 260px; }
	.ecz-video-play { width: 66px; height: 66px; }
	.ecz-partners-head h3 { font-size: 30px; }
}

/* ==========================================================================
   ECOZEN 헤더/메뉴/aside 최종 오버라이드 (home custom.css 의 !important 제압)
   ========================================================================== */
.ecz-header .ecz-logo img { height: 28px !important; filter: none !important; }

/* 상단 메뉴 (db-menu) — 골드 강조 */
.ecz-header .db-menu { gap: 0 !important; height: auto !important; }
.ecz-header .db-menu > li { height: auto !important; }
.ecz-header .db-menu > li > a { height: auto !important; color: #1f2937 !important; font-size: 17px !important; font-weight: 600 !important; padding: 28px 19px !important; }
.ecz-header .db-menu > li:hover > a,
.ecz-header .db-menu > li > a:hover { color: #f8bc26 !important; }

/* 서브메뉴 드롭다운 — 흰 박스 + 회색 글자 + 골드 hover (home 네이비/흰글자 제압) */
.ecz-header .db-submenu {
	background: #fff !important; min-width: 190px !important; padding: 16px 12px !important;
	border-radius: 8px !important; box-shadow: 0 10px 30px rgba(0,0,0,.12) !important;
	clip-path: none !important; opacity: 0 !important; visibility: hidden !important;
	transform: translateX(-50%) !important; transition: opacity .25s, visibility .25s !important;
	text-align: center !important;
}
.ecz-header .db-menu > li:hover > .db-submenu { opacity: 1 !important; visibility: visible !important; }
.ecz-header .db-submenu a { color: #666 !important; font-size: 15px !important; font-weight: 500 !important; padding: 8px 12px !important; text-align: center !important; background: none !important; }
.ecz-header .db-submenu a:hover { color: #f8bc26 !important; padding-left: 12px !important; }
.ecz-header .db-submenu::before { display: none !important; }

/* ---- 전체보기 aside : 전체화면 오버레이 (에코젠 스타일) ---- */
.ecz-aside { position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important; width: 100% !important; max-width: none !important; height: 100% !important; background: #fff !important; z-index: 2000; opacity: 0; visibility: hidden; box-shadow: none !important; transition: opacity .4s, visibility .4s !important; overflow-y: auto; }
.ecz-aside.open { opacity: 1 !important; visibility: visible !important; }
.ecz-aside-head { display: flex; align-items: center; justify-content: space-between; height: 100px; padding: 0 clamp(20px, 4vw, 50px); border-bottom: 1px solid #eee; }
.ecz-aside-logo img { height: 26px; width: auto; display: block; }
.ecz-aside-close { width: 34px; height: 34px; border: none; background: url('/images/skin/btn-close.png') no-repeat center; background-size: contain; cursor: pointer; }
.ecz-aside-body { max-width: 1100px; margin: 0 auto; padding: 70px clamp(24px, 5vw, 40px) 80px; }
.ecz-aside-body .db-aside-menu { display: flex; flex-wrap: wrap; list-style: none; margin: 0; padding: 0; }
.ecz-aside-body .db-aside-menu > li { width: 50%; margin-bottom: 54px; box-sizing: border-box; padding-right: 30px; border: none; }
.ecz-aside-body .aside-title a { display: inline-block; font-size: 40px; font-weight: 700; color: #333; line-height: 1.12; transition: color .2s; }
.ecz-aside-body .aside-title a:hover { color: #f8bc26; }
.ecz-aside-body .db-aside-sub { list-style: none; margin: 16px 0 0; padding: 0; font-size: 0; }
.ecz-aside-body .db-aside-sub li { display: inline-block; margin: 0 22px 10px 0; }
.ecz-aside-body .db-aside-sub a { font-size: 16px; color: #888; font-weight: 500; transition: color .2s; }
.ecz-aside-body .db-aside-sub a:hover { color: #f8bc26; }
@media (max-width: 768px) {
	.ecz-aside-head { height: 72px; }
	.ecz-aside-body { padding: 40px 26px 60px; }
	.ecz-aside-body .db-aside-menu { display: block; }
	.ecz-aside-body .db-aside-menu > li { width: 100%; margin-bottom: 30px; padding-right: 0; }
	.ecz-aside-body .aside-title a { font-size: 24px; }
	.ecz-aside-body .db-aside-sub li { display: block; margin: 0 0 6px; }
}

/* aside 타이포 — home .db-aside-menu 규칙(특정성 높음) 제압 */
.ecz-aside-body .db-aside-menu > li { width: 50% !important; border: none !important; padding: 0 30px 0 0 !important; }
.ecz-aside-body .db-aside-menu > li > .aside-title { margin: 0 !important; }
.ecz-aside-body .db-aside-menu > li > .aside-title > a { font-size: 40px !important; color: #333 !important; font-weight: 700 !important; padding: 0 !important; }
.ecz-aside-body .db-aside-menu > li > .aside-title > a:hover { color: #f8bc26 !important; }
.ecz-aside-body .db-aside-sub li { width: auto !important; display: inline-block !important; margin: 0 22px 10px 0 !important; }
.ecz-aside-body .db-aside-sub a { color: #888 !important; font-size: 16px !important; font-weight: 500 !important; }
.ecz-aside-body .db-aside-sub a:hover { color: #f8bc26 !important; }
@media (max-width: 768px) {
	.ecz-aside-body .db-aside-menu > li { width: 100% !important; padding-right: 0 !important; margin-bottom: 28px !important; }
	.ecz-aside-body .db-aside-menu > li > .aside-title > a { font-size: 24px !important; }
	.ecz-aside-body .db-aside-sub li { display: block !important; margin: 0 0 6px !important; }
}

/* ==========================================================================
   콘텐츠 가로폭 — 기본 변수 --content-width 는 custom.css 에서 정의(현재 1400px).
   여기선 그 변수를 참조만 함 (about · news · partners · 헤더 · aside 모두 동일 폭)
   ========================================================================== */
.main_index .main_w_custom { width: 100% !important; max-width: var(--content-width, 1400px) !important; margin-left: auto !important; margin-right: auto !important; padding-left: 24px; padding-right: 24px; box-sizing: border-box; }
.ecz-header-inner { max-width: var(--content-width, 1400px) !important; padding-left: 24px; padding-right: 24px; }
.ecz-aside-body { max-width: var(--content-width, 1400px) !important; }

/* 파트너 로고: 세로 높이 첫 로고 기준으로 통일 + 세로 가운데 정렬(잘림 없이 중앙) */
.ecz-partners-grid .db-banner-group img { width: 100% !important; height: 150px !important; object-fit: contain !important; object-position: center !important; padding: 26px 24px !important; background: #fff; border: 1px solid #ececec; border-radius: 12px; box-sizing: border-box; }

/* ==========================================================================
   전체보기 버튼(격자 아이콘, 에코젠 btn-cate) + aside 세로채움 2열 레이아웃
   ========================================================================== */
.ecz-allmenu { width: 34px !important; height: 34px !important; padding: 0 !important; border: none !important; background: url('/images/skin/btn-cate.png') no-repeat center !important; background-size: contain !important; display: inline-block !important; flex-direction: initial !important; gap: 0 !important; }
.ecz-allmenu span { display: none !important; }
.ecz-allmenu:hover { background-image: url('/images/skin/btn-cate-ov.png') !important; }

/* aside 메뉴: 세로로 채운 뒤 다음 열로 넘김(에코젠식 2열) → 좌:회사소개·사업분야·지속가능 / 우:커뮤니티·문의하기 */
.ecz-aside-body .db-aside-menu { flex-direction: column !important; flex-wrap: wrap !important; max-height: 560px; align-content: flex-start; }
@media (max-width: 768px) {
	.ecz-aside-body .db-aside-menu { max-height: none !important; }
}

/* ==========================================================================
   [수정] 전체보기 버튼 항상 표시(검정 아이콘) + aside 서브를 제목 아래로
   ========================================================================== */
/* 버튼: btn-cate.png(흰색)은 흰 헤더에서 안보임 → 검정 btn-cate-ov.png 를 기본으로 */
.ecz-allmenu { background: url('/images/skin/btn-cate-ov.png') no-repeat center !important; background-size: contain !important; }
.ecz-allmenu:hover { background-image: url('/images/skin/btn-cate-ov.png') !important; opacity: .6; }

/* aside: 제목 옆(오른쪽) 배치(home 기본)를 → 제목 위, 서브 아래로 세로 스택 */
.ecz-aside-body .db-aside-menu > li { display: block !important; padding: 0 30px 0 0 !important; border: none !important; }
.ecz-aside-body .db-aside-menu > li > .aside-title { width: auto !important; flex-shrink: initial !important; margin-bottom: 16px !important; }
.ecz-aside-body .db-aside-sub { width: 100% !important; padding-left: 0 !important; display: flex !important; flex-wrap: wrap !important; gap: 10px 22px !important; margin: 0 !important; }
.ecz-aside-body .db-aside-sub li { width: auto !important; display: block !important; margin: 0 !important; }

/* ==========================================================================
   [수정] 정책 모달(이용약관/개인정보처리방침)이 좁게 뜨는 문제
   원인: .ft_gnb 의 transform 이 내부 position:fixed 모달의 기준점이 되어버림.
   → transform 제거하고 동일한 6px 내림 효과는 position:relative 로 대체(fixed 안 깨짐)
   ========================================================================== */
#footer .ft_top .ft_gnb { transform: none !important; position: relative; top: 6px; }

/* ==========================================================================
   [수정] 고정 헤더에 상단 콘텐츠가 가려지는 문제
   원인: 스킨 #wrap{padding:0}(id 우선순위)이 .main_index{padding-top}(class)를 이김.
   → 동일 특정성 #wrap.main_index 로 헤더 높이만큼 확보. 단 히어로/서브비주얼은 풀블리드.
   ========================================================================== */
#wrap.main_index { padding-top: 80px; }
.main_index .visual_wrapper { margin-top: -80px; }

/* ==========================================================================
   메인 뉴스 = 게시판 노출 블록({{EXPOSE:mainnews}}) 을 에코젠 뉴스카드 스타일로
   ========================================================================== */
.ecz-news .db-expose-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 26px; }
.ecz-news .db-expose-board-item { min-width: 0; }
.ecz-news .db-expose-thumb { display: block; width: 100%; aspect-ratio: 4/3; border-radius: 12px; overflow: hidden; background: #f1f5f9; margin-bottom: 16px; }
.ecz-news .db-expose-thumb img { width: 100%; height: 100%; object-fit: cover; transition: transform .4s; }
.ecz-news .db-expose-board-item:hover .db-expose-thumb img { transform: scale(1.06); }
.ecz-news .db-expose-no-img { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; color: #cbd5e1; }
.ecz-news .db-expose-no-img svg { width: 40px; height: 40px; }
.ecz-news .db-expose-info { display: flex; flex-direction: column; gap: 8px; }
.ecz-news .db-expose-title { font-size: 17px; font-weight: 700; color: #1f2937; line-height: 1.45; }
.ecz-news .db-expose-board-item:hover .db-expose-title { color: #f8bc26; }
.ecz-news .db-expose-date { font-size: 13px; color: #9ca3af; }
.ecz-news .db-expose-more { display: none; }
@media (max-width: 1024px) { .ecz-news .db-expose-grid { grid-template-columns: repeat(2, 1fr); } }
@media (max-width: 600px)  { .ecz-news .db-expose-grid { grid-template-columns: 1fr; } }

/* ==========================================================================
   서브페이지 breadcrumb — 기존 동적 breadcrumb(getMenuBreadcrumb) 사용.
   에코젠 하드코딩 서브메뉴(#side_box)는 중복이라 숨김.
   ========================================================================== */
.main_index #container .sub_visual #side_box { display: none; }
.main_index .bc-breadcrumb { width: 100%; max-width: var(--content-width); margin: 22px auto 6px; padding: 0 24px; box-sizing: border-box; display: flex; flex-wrap: wrap; align-items: center; gap: 7px; font-size: 14px; }
.main_index .bc-breadcrumb .bc-item { color: #9ca3af; text-decoration: none; }
.main_index .bc-breadcrumb a.bc-item:hover { color: #f8bc26; }
.main_index .bc-breadcrumb .bc-item--current { color: #1f2937; font-weight: 600; }
.main_index .bc-breadcrumb .bc-item--home { font-size: 0; display: inline-flex; align-items: center; }
.main_index .bc-breadcrumb .bc-item--home::before { content: ""; display: inline-block; width: 16px; height: 16px; background: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%239ca3af' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9.5 12 3l9 6.5'/%3E%3Cpath d='M5.5 8.7V21h13V8.7'/%3E%3C/svg%3E") no-repeat center; background-size: contain; }
.main_index .bc-breadcrumb a.bc-item--home:hover::before { background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23f8bc26' stroke-width='1.7' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M3 9.5 12 3l9 6.5'/%3E%3Cpath d='M5.5 8.7V21h13V8.7'/%3E%3C/svg%3E"); }
.main_index .bc-breadcrumb .bc-separator { color: #d1d5db; }

/* ==========================================================================
   서브네비 — 현재 그룹의 형제 서브메뉴로 이동하는 드롭다운 (getMenuSubnav)
   ========================================================================== */
.sub-nav { width: 100%; border-bottom: 1px solid #eee; margin-bottom: 8px; }
.sub-nav-inner { max-width: var(--content-width); margin: 0 auto; padding: 10px 24px; display: flex; align-items: center; gap: 18px; box-sizing: border-box; }
.sub-nav-group { font-size: 15px; font-weight: 700; color: #1f2937; }
.sub-nav-drop { position: relative; }
.sub-nav-current { display: inline-flex; align-items: center; gap: 10px; min-width: 190px; justify-content: space-between; padding: 9px 16px; border: 1px solid #e5e7eb; border-radius: 8px; background: #fff; font-size: 14px; color: #374151; cursor: pointer; }
.sub-nav-current:hover { border-color: #f8bc26; }
.sub-nav-caret { width: 16px; height: 16px; color: #9ca3af; transition: transform .2s; flex-shrink: 0; }
.sub-nav-drop.open .sub-nav-caret { transform: rotate(180deg); }
.sub-nav-list { position: absolute; top: calc(100% + 4px); left: 0; min-width: 100%; background: #fff; border: 1px solid #e5e7eb; border-radius: 8px; box-shadow: 0 10px 24px rgba(0,0,0,.1); list-style: none; margin: 0; padding: 6px 0; z-index: 40; opacity: 0; visibility: hidden; transform: translateY(-4px); transition: opacity .18s, visibility .18s, transform .18s; }
.sub-nav-drop.open .sub-nav-list { opacity: 1; visibility: visible; transform: translateY(0); }
.sub-nav-list li { list-style: none; }
.sub-nav-list li a, .sub-nav-list li span { display: block; padding: 9px 16px; font-size: 14px; color: #555; white-space: nowrap; text-decoration: none; }
.sub-nav-list li a:hover { background: #fdf6e3; color: #f8bc26; }
.sub-nav-list li.is-current a, .sub-nav-list li.is-current span { color: #f8bc26; font-weight: 600; }
@media (max-width: 600px) { .sub-nav-inner { padding: 10px 18px; gap: 12px; } .sub-nav-current { min-width: 150px; } }

/* ==========================================================================
   상단 로그인/회원가입 (검색 왼쪽) — 에코젠 스타일
   ========================================================================== */
.ecz-header-right .ecz-btn-auth { display: flex; align-items: center; gap: 2px; }
.ecz-header-right .ecz-btn-auth a { font-size: 14px !important; color: #374151 !important; font-weight: 500 !important; text-decoration: none !important; padding: 4px 6px; white-space: nowrap; background: none !important; transition: color .2s; }
.ecz-header-right .ecz-btn-auth a:hover { color: #f8bc26 !important; }
.ecz-header-right .ecz-btn-auth a.ml-2 { margin-left: 0 !important; }
@media (max-width: 640px) { .ecz-header-right .ecz-btn-auth { display: none; } }

/* ==========================================================================
   {{SUB_MENU}} — 서브 상단 배너 안의 1차 메뉴명 + 경로바(홈›그룹›현재▼ 형제 드롭다운)
   ========================================================================== */
.sub_visual .ecz-lnb { position: absolute; inset: 0; }
.sub_visual .ecz-lnb-inner { max-width: var(--content-width); height: 100%; margin: 0 auto; padding: 0 24px; position: relative; box-sizing: border-box; }
.sub_visual .ecz-lnb-title { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); margin: 0; color: #fff; font-size: 50px; font-weight: 700; text-align: center; text-shadow: 0 2px 12px rgba(0,0,0,.35); }
/* 경로바 — 배너 하단 */
.sub_visual .ecz-lnb-bar { position: absolute; left: 0; bottom: 0; width: 100%; box-sizing: border-box; padding: 14px 24px; display: flex; align-items: center; gap: 10px; background: rgba(0,0,0,.32); }
.sub_visual .ecz-lnb-home { display: inline-flex; color: #fff; }
.sub_visual .ecz-lnb-home svg { width: 18px; height: 18px; }
.sub_visual .ecz-lnb-sep { color: rgba(255,255,255,.5); font-size: 15px; }
.sub_visual .ecz-lnb-group { color: #fff; font-size: 15px; font-weight: 500; }
.sub_visual .ecz-lnb-drop { position: relative; }
.sub_visual .ecz-lnb-current { display: inline-flex; align-items: center; gap: 8px; padding: 6px 14px; min-width: 160px; justify-content: space-between; background: #fff; border: none; border-radius: 6px; font-size: 14px; color: #333; cursor: pointer; }
.sub_visual .ecz-lnb-caret { width: 15px; height: 15px; color: #888; transition: transform .2s; }
.sub_visual .ecz-lnb-drop.open .ecz-lnb-caret { transform: rotate(180deg); }
.sub_visual .ecz-lnb-list { position: absolute; left: 0; bottom: calc(100% + 6px); min-width: 100%; background: #fff; border: 1px solid #eee; border-radius: 8px; box-shadow: 0 -8px 24px rgba(0,0,0,.15); list-style: none; margin: 0; padding: 6px 0; z-index: 20; opacity: 0; visibility: hidden; transform: translateY(6px); transition: opacity .18s, visibility .18s, transform .18s; }
.sub_visual .ecz-lnb-drop.open .ecz-lnb-list { opacity: 1; visibility: visible; transform: translateY(0); }
.sub_visual .ecz-lnb-list li { list-style: none; }
.sub_visual .ecz-lnb-list li a, .sub_visual .ecz-lnb-list li span { display: block; padding: 9px 16px; font-size: 14px; color: #555; white-space: nowrap; text-decoration: none; }
.sub_visual .ecz-lnb-list li a:hover { background: #fdf6e3; color: #f8bc26; }
.sub_visual .ecz-lnb-list li.is-current a, .sub_visual .ecz-lnb-list li.is-current span { color: #f8bc26; font-weight: 600; }
@media (max-width: 768px) {
	.sub_visual .ecz-lnb-title { font-size: 32px; }
	.sub_visual .ecz-lnb-bar { padding: 10px 18px; gap: 8px; }
	.sub_visual .ecz-lnb-current { min-width: 130px; }
}
