/* ナビゲーション高さ統一 - 全ページで完全一致 */
#site-header {
    height: 80px !important;
    min-height: 80px !important;
    max-height: 80px !important;
    position: fixed !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    width: 100% !important;
    z-index: 9999 !important;
    background-color: #fff !important;
}

/* ヘッダー固定による余白確保 */
body {
    padding-top: 80px !important;
}

/* モバイル用アコーディオンボタンを非表示 */
#global-nav .acc-btn {
    display: none !important;
}

#site-header-container {
    height: 80px !important;
    min-height: 80px !important;
    max-height: 80px !important;
    display: flex !important;
    align-items: center !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

.site-header-logo {
    line-height: 1 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
}

.site-header-logo a {
    display: inline-block !important;
    padding: 0 !important;
    line-height: 1 !important;
    margin: 0 !important;
}

.site-header-logo a span {
    display: inline-block !important;
    font-size: 1.5rem !important;
    line-height: 1.5rem !important;
    margin: 0 !important;
    padding: 0 !important;
}

#global-nav {
    line-height: 1 !important;
    height: 80px !important;
    display: flex !important;
    align-items: center !important;
}

.global-nav-list.nav {
    margin: 0 !important;
    padding: 0 !important;
    height: 80px !important;
    display: flex !important;
    align-items: center !important;
}

.global-nav-list.nav > li {
    height: 80px !important;
    line-height: normal !important;
    display: flex !important;
    align-items: center !important;
    margin: 0 !important;
}

.global-nav-list.nav > li > a {
    display: flex !important;
    flex-direction: column !important;
    justify-content: center !important;
    align-items: center !important;
    height: 80px !important;
    padding: 0 1em !important;
    margin: 0 !important;
}

.global-nav-name,
.global-nav-description {
    line-height: 1.2 !important;
    display: block !important;
    margin: 0 !important;
    padding: 0 !important;
}

/* ドロップダウンメニューの位置調整 */
.global-nav-list.nav > li {
    position: relative !important;
}

.global-nav-list.nav > li .sub-menu {
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    display: none !important;
    background-color: #fff !important;
    box-shadow: 0 2px 5px rgba(0,0,0,0.1) !important;
    z-index: 1000 !important;
    min-width: 200px !important;
    padding: 0 !important;
    margin: 0 !important;
}

.global-nav-list.nav > li:hover .sub-menu {
    display: block !important;
}

.global-nav-list.nav > li .sub-menu li {
    display: block !important;
    width: 100% !important;
    height: auto !important;
    margin: 0 !important;
}

.global-nav-list.nav > li .sub-menu li a {
    display: block !important;
    padding: 10px 20px !important;
    height: auto !important;
    text-decoration: none !important;
    color: #333 !important;
    white-space: nowrap !important;
}

.global-nav-list.nav > li .sub-menu li a:hover {
    background-color: #f5f5f5 !important;
}

/* 物件情報（親）ホバー時のサブメニュー背景をブルーに */
.global-nav-list.nav > li > a[href="/properties/"] + ul.sub-menu {
    background-color: var(--vk-color-primary, #3461ac) !important;
}
.global-nav-list.nav > li > a[href="/properties/"] + ul.sub-menu li a {
    color: #fff !important;
}
.global-nav-list.nav > li > a[href="/properties/"] + ul.sub-menu li a:hover {
    background-color: var(--vk-color-primary-dark, #2a4e8a) !important;
}

/* 物件情報（親）をクリック不可にする（デスクトップナビ） */
#global-nav .global-nav-list.nav > li > a[href="/properties/"] {
    pointer-events: none !important;
    cursor: default !important;
}

/* モバイルナビ側もクリック不可にする */
.vk-mobile-nav-menu-outer a[href="/properties/"] {
    pointer-events: none !important;
    cursor: default !important;
}

/* スクロール時（bodyにclass付与）でもヘッダー表示を同一に維持 */
body.header_scrolled #site-header,
body.scrolled #site-header {
    height: 80px !important;
    min-height: 80px !important;
    max-height: 80px !important;
    background-color: #fff !important;
}

body.header_scrolled #site-header-container,
body.scrolled #site-header-container {
    height: 80px !important;
    min-height: 80px !important;
    max-height: 80px !important;
    display: flex !important;
    align-items: center !important;
}

/* ロゴの可視性と色を固定（スクロール時に消えないように） */
body.header_scrolled .site-header-logo,
body.scrolled .site-header-logo {
    display: block !important;
    opacity: 1 !important;
    visibility: visible !important;
}
body.header_scrolled .site-header-logo a span,
body.scrolled .site-header-logo a span {
    color: #000 !important;
}

/* ナビの高さ・配置もスクロール時に変化させない */
body.header_scrolled #global-nav,
body.scrolled #global-nav {
    height: 80px !important;
    align-items: center !important;
}
body.header_scrolled .global-nav-list.nav,
body.scrolled .global-nav-list.nav {
    height: 80px !important;
    align-items: center !important;
}
body.header_scrolled .global-nav-list.nav > li > a,
body.scrolled .global-nav-list.nav > li > a {
    height: 80px !important;
}
