/* ========================================
   全幅レイアウト（フルワイド）
======================================== */

.layout-full-width .main-content {
    grid-template-columns: 1fr;
    max-width: none;
    width: 100%;
    margin: 0;
    padding: 0;
    gap: 0;
}

/* 全幅時、メインのコンテンツも完全に余白なし */
.layout-full-width main .container {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

.layout-full-width .content-area {
    max-width: none !important;
    width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    box-shadow: none !important;
    box-sizing: border-box !important;
}

.layout-full-width .post,
.layout-full-width .page,
.layout-full-width article {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    box-sizing: border-box !important;
}

/* 全幅時、サイドバーは非表示（ウィジェット編集用にvisibility: hiddenで対応） */
.layout-full-width .sidebar-1,
.layout-full-width .sidebar-2 {
    visibility: hidden;
    position: absolute;
    left: -9999px;
    /* ウィジェット編集時は表示されるように、display: noneではなくvisibility: hiddenを使用 */
}

/* ただし、ウィジェット編集時は表示 */
.layout-full-width.customize-preview .sidebar-1,
.layout-full-width.customize-preview .sidebar-2,
.layout-full-width.wp-admin .sidebar-1,
.layout-full-width.wp-admin .sidebar-2 {
    visibility: visible !important;
    position: static !important;
    left: auto !important;
    display: block !important;
}

/* 全幅時、コンテンツも制限なし */
.layout-full-width .container {
    max-width: none !important;
    width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    position: relative !important;
    box-sizing: border-box !important;
}

/* 全幅時、エントリーコンテンツの最大幅制限なし */
.layout-full-width .entry-content,
.layout-full-width .entry-header {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    position: relative !important;
    box-sizing: border-box !important;
}

/* JavaScriptによる上書きを防ぐための最高優先度設定 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    position: relative !important;
    box-sizing: border-box !important;
}

/* さらに強力な優先度設定 - インラインスタイルも上書き */
.layout-full-width .entry-content[style],
.layout-full-width .entry-header[style],
.layout-full-width .content-area[style],
.layout-full-width .main-content[style],
.layout-full-width .container[style],
.layout-full-width .site-wrapper[style],
.layout-full-width .site[style],
.layout-full-width .site-main[style],
.layout-full-width .hentry[style] {
    padding: 0 !important;
    margin: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    overflow: visible !important;
    position: relative !important;
    box-sizing: border-box !important;
    /* 左右の隙間を完全に解消 */
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: none !important;
    left: 0 !important;
    transform: translateX(0) !important;
    /* さらに強力な左端調整 */
    float: none !important;
    text-align: left !important;
    outline-left: none !important;
    box-shadow: none !important;
}

/* element.styleのpadding: 0px 1rem !importantを完全に上書き */
.layout-full-width .entry-content[style*="padding"],
.layout-full-width .entry-header[style*="padding"],
.layout-full-width .content-area[style*="padding"],
.layout-full-width .main-content[style*="padding"],
.layout-full-width .container[style*="padding"],
.layout-full-width .site-wrapper[style*="padding"],
.layout-full-width .site[style*="padding"],
.layout-full-width .site-main[style*="padding"],
.layout-full-width .hentry[style*="padding"] {
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* 1remパディングを確実に上書き */
.layout-full-width .entry-content[style*="1rem"],
.layout-full-width .entry-header[style*="1rem"],
.layout-full-width .content-area[style*="1rem"],
.layout-full-width .main-content[style*="1rem"],
.layout-full-width .container[style*="1rem"],
.layout-full-width .site-wrapper[style*="1rem"],
.layout-full-width .site[style*="1rem"],
.layout-full-width .site-main[style*="1rem"],
.layout-full-width .hentry[style*="1rem"] {
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* インラインスタイルの!importantを上書きするための最終手段 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* CSSカスタムプロパティでパディングを強制上書き */
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    /* インラインスタイルを無効化 */
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* 最も強力な上書き - インラインスタイルの!importantを確実に上書き */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* パディングを強制的に0に設定 */
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    /* 幅を完全にフルワイドに */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置調整 */
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    transform: translateX(0) !important;
}

/* インラインスタイルの!importantを確実に上書きする最終手段 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* パディングを強制的に0に設定 - 複数回指定で確実に上書き */
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    /* 幅を完全にフルワイドに */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置調整 */
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    transform: translateX(0) !important;
}

/* 最終手段 - インラインスタイルの!importantを確実に上書き */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* パディングを強制的に0に設定 - さらに強力な上書き */
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
    /* 幅を完全にフルワイドに */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置調整 */
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    transform: translateX(0) !important;
    /* さらに強力な左端調整 */
    float: none !important;
    text-align: left !important;
    outline-left: none !important;
    box-shadow: none !important;
    position: static !important;
    display: block !important;
    clear: both !important;
}

/* 白いコンテンツブロックの完全フルワイド化 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* 左右の隙間を完全に解消 */
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    /* 幅を完全にフルワイドに - より柔軟な設定 */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置調整 - 左端を確実に0に */
    position: relative !important;
    left: 0 !important;
    transform: translateX(0) !important;
    /* ボックスサイジング */
    box-sizing: border-box !important;
    /* オーバーフロー制御 */
    overflow: visible !important;
}

/* 最終的な左右の隙間解消 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* 左右の隙間を完全に解消 - 最終手段 */
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    /* 幅を完全にフルワイドに - 右側のめり込みを防ぐ */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置調整 - 左端を確実に0に、右端のめり込みを防ぐ */
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    transform: translateX(0) !important;
    /* ボックスサイジング */
    box-sizing: border-box !important;
    /* オーバーフロー制御 */
    overflow: visible !important;
    /* さらに強力な左右調整 */
    float: none !important;
    text-align: left !important;
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

/* 左側の隙間を完全に解消するための追加設定 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* 左側の隙間を完全に解消 */
    margin-left: 0 !important;
    padding-left: 0 !important;
    left: 0 !important;
    transform: translateX(0) !important;
    /* 幅を確実にフルワイドに - より柔軟な設定 */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置制御 */
    position: relative !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

/* 最も強力な左側隙間解消 - 最終手段 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* 左側の隙間を完全に解消 - 最終手段 */
    margin: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    /* 幅を完全にフルワイドに - 右側のめり込みを防ぐ */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置調整 - 左端を確実に0に、右端のめり込みを防ぐ */
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    transform: translateX(0) !important;
    /* ボックスサイジング */
    box-sizing: border-box !important;
    /* オーバーフロー制御 */
    overflow: visible !important;
    /* さらに強力な左右調整 */
    float: none !important;
    text-align: left !important;
    outline: none !important;
    box-shadow: none !important;
    border: none !important;
}

/* 右側のめり込みを完全に防ぐ - 追加設定 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* 右側のめり込みを完全に防ぐ */
    right: auto !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
    /* 幅の制御 - 右側のめり込みを確実に防ぐ */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置制御 */
    position: relative !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

/* 右側のはみ出しを完全に防ぐ - 最終手段 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* 右側のはみ出しを完全に防ぐ - 最終手段 */
    right: auto !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
    /* 幅の制御 - スクロールバー幅を考慮して右端まで確実に収める */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置制御 - 右端を強制的に0に */
    position: relative !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

/* 右側のめり込みを完全に防ぐ - 最終手段 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry {
    /* 右側のめり込みを完全に防ぐ - 最終手段 */
    right: auto !important;
    margin-right: 0 !important;
    padding-right: 0 !important;
    /* 幅の制御 - 右端まで確実に収める */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置制御 - 右端を強制的に0に */
    position: relative !important;
    box-sizing: border-box !important;
    overflow: visible !important;
}

/* 左右の隙間を完全に解消するための追加設定 */
.layout-full-width .entry-content,
.layout-full-width .entry-header,
.layout-full-width .content-area,
.layout-full-width .main-content,
.layout-full-width .container,
.layout-full-width .site-wrapper,
.layout-full-width .site,
.layout-full-width .site-main,
.layout-full-width .hentry,
.layout-full-width .post,
.layout-full-width .page,
.layout-full-width article {
    /* 左右の隙間を完全に解消 */
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    /* 幅を完全にフルワイドに */
    width: 100% !important;
    max-width: 100% !important;
    /* 位置調整 - 左端の隙間を完全に解消 */
    position: relative !important;
    left: 0 !important;
    right: auto !important;
    transform: translateX(0) !important;
    /* ボックスサイジング */
    box-sizing: border-box !important;
    /* 左端の隙間を防ぐ追加設定 */
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: none !important;
    /* さらに強力な左端調整 */
    left: 0 !important;
    transform: translateX(0) !important;
    float: none !important;
    text-align: left !important;
    /* 左端の隙間を完全に解消する追加設定 */
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: none !important;
    outline-left: none !important;
    box-shadow: none !important;
    /* 最終的な左端調整 */
    position: static !important;
    display: block !important;
    clear: both !important;
    /* 1remパディングを完全に上書き */
    padding: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    padding-top: 0 !important;
    padding-bottom: 0 !important;
}

/* フルワイドレイアウトも他のレイアウトと同じ設定を使用（統一のため） */

/* フルワイドレイアウト：統一のため特別設定を削除 */

/* フルワイドレイアウト：追加の調整は削除 */

/* 全幅時、確実にフルワイドにするための最終調整 */
body.layout-full-width {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    /* 左端の隙間を完全に解消 */
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: none !important;
    position: relative !important;
    left: 0 !important;
    transform: translateX(0) !important;
    /* さらに強力な左端調整 */
    float: none !important;
    text-align: left !important;
    outline-left: none !important;
    box-shadow: none !important;
    /* ヘッダー部分の縦スクロールを防止 */
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
}

/* 全幅時、左右の隙間を完全に解消 */
.layout-full-width {
    margin: 0 !important;
    padding: 0 !important;
    width: 100% !important;
    max-width: 100% !important;
    /* 左端の隙間を完全に解消 */
    margin-left: 0 !important;
    padding-left: 0 !important;
    border-left: none !important;
    position: relative !important;
    left: 0 !important;
    transform: translateX(0) !important;
    /* さらに強力な左端調整 */
    float: none !important;
    text-align: left !important;
    outline-left: none !important;
    box-shadow: none !important;
    /* ヘッダー部分の縦スクロールを防止 */
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
}

/* フルワイドレイアウト：htmlとbodyの高さ制限を解除 */
.layout-full-width html,
.layout-full-width body {
    height: auto !important;
    min-height: auto !important;
    overflow: visible !important;
    overflow-y: visible !important;
}

/* 全幅時、サイト全体の幅制限を解除 */
.layout-full-width .site-wrapper,
.layout-full-width .site {
    width: 100% !important;
    max-width: none !important;
    overflow: visible !important;
    /* ヘッダー部分の縦スクロールを防止 */
    min-height: auto !important;
    height: auto !important;
    overflow-y: visible !important;
}

.layout-full-width .site-wrapper {
    /* ヘッダー部分の縦スクロールを防止 */
    min-height: auto !important;
    height: auto !important;
    overflow: visible !important;
    overflow-y: visible !important;
    width: 100%;
}

/* 全幅時、メインコンテンツの基本調整（JavaScriptで動的に上書きされる） */
.layout-full-width main {
    margin-top: 0 !important;
    /* JavaScriptで動的に設定される */
    padding-top: 0 !important;
}

/* 全幅時、ヘッダーの高さに応じてスペースを確保 */
/* 上記の最高優先度設定で統一されているため、個別設定は削除 */

/* 全幅時、コンテンツエリアの上部スペース調整は削除（完全に0にする） */

/* JavaScriptが無効の場合のフォールバック */
.no-js.layout-full-width main {
    margin-top: 30px;
}

.no-js body.admin-bar.layout-full-width main {
    margin-top: 62px;
}

@media screen and (max-width: 782px) {
    .no-js body.admin-bar.layout-full-width main {
        margin-top: 76px;
    }
}

/* 全幅時のレスポンシブ対応 */
@media (max-width: 768px) {

    .layout-full-width .post,
    .layout-full-width .page,
    .layout-full-width article,
    .layout-full-width .entry-content,
    .layout-full-width .entry-header,
    .layout-full-width .content-area,
    .layout-full-width .main-content,
    .layout-full-width .container {
        padding: 0 !important;
        margin: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
        position: relative !important;
        box-sizing: border-box !important;
        /* 左右の隙間を完全に解消 */
        margin-left: 0 !important;
        margin-right: 0 !important;
        padding-left: 0 !important;
        padding-right: 0 !important;
        left: 0 !important;
        right: auto !important;
    }

    /* スマホサイズでのフルワイドレイアウト：右側の隙間を完全に解消 */
    .layout-full-width {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        /* ヘッダー部分の縦スクロールを防止 */
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }

    .layout-full-width .site-wrapper,
    .layout-full-width .site,
    .layout-full-width .site-main {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        /* ヘッダー部分の縦スクロールを防止 */
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }

    /* スマホサイズでのフルワイドレイアウト：コンテンツを完全に右端まで伸ばす */
    .layout-full-width .entry-content,
    .layout-full-width .entry-header,
    .layout-full-width .content-area,
    .layout-full-width .main-content,
    .layout-full-width .container {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        left: 0 !important;
        right: 0 !important;
        position: relative !important;
        box-sizing: border-box !important;
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }

    /* スマホサイズでのフルワイドレイアウト：bodyとhtmlの設定 */
    body.layout-full-width,
    html.layout-full-width {
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 !important;
        padding: 0 !important;
        /* ヘッダー部分の縦スクロールを防止 */
        overflow: visible !important;
        overflow-x: visible !important;
        overflow-y: visible !important;
    }
}

/* フルワイドレイアウト：ヘッダー表示の修正 */
.layout-full-width .site-header {
    width: 100% !important;
    position: relative !important;
    left: 0 !important;
    right: 0 !important;
    margin: 0 !important;
    overflow: visible !important;
    overflow-x: visible !important;
    overflow-y: visible !important;
    /* ヘッダーの縦スクロールを防止 */
    min-height: auto !important;
    max-height: none !important;
}

.layout-full-width .site-header .container {
    max-width: 1280px !important;
    width: 100% !important;
    margin: 0 auto !important;
    padding: 0 40px !important;
    box-sizing: border-box !important;
    overflow: visible !important;
    overflow-y: visible !important;
    /* ヘッダーコンテナの縦スクロールを防止 */
    min-height: auto !important;
    max-height: none !important;
}

.layout-full-width .site-header .header-content {
    /* ヘッダーコンテンツの縦スクロールを防止 */
    overflow: visible !important;
    overflow-y: visible !important;
    min-height: auto !important;
    max-height: none !important;
}

.layout-full-width .site-header .site-branding {
    /* サイトブランディングの縦スクロールを防止 */
    overflow: visible !important;
    overflow-y: visible !important;
}

/* フルワイドレイアウト：PCサイズでのヘッダー完全フルワイド化 */
@media (min-width: 1280px) {
    .layout-full-width .site-header .container {
        max-width: none !important;
        width: 100% !important;
        margin: 0 !important;
        padding: 0 40px !important;
        /* PCサイズでは左右に完全に広がる */
        box-sizing: border-box !important;
    }

    .layout-full-width .site-header {
        /* ヘッダー全体もフルワイド化 */
        width: 100% !important;
        max-width: none !important;
        margin: 0 !important;
        padding: 20px 0 !important;
        /* 通常のヘッダーと同じ高さを維持 */
        left: 0 !important;
        right: 0 !important;
    }

    .layout-full-width .site-header .header-content {
        /* ヘッダーコンテンツの高さを通常と同じに維持 */
        display: flex !important;
        justify-content: space-between !important;
        align-items: flex-start !important;
        position: relative !important;
        z-index: 1 !important;
    }

    .layout-full-width .site-header .site-branding {
        /* サイトブランディングの高さを通常と同じに維持 */
        display: block !important;
    }
}

/* フルワイドレイアウト：タブレットサイズでのヘッダー表示修正 */
@media (max-width: 1279px) {
    .layout-full-width .site-header .container {
        max-width: 768px !important;
        width: 100% !important;
        padding: 0 20px !important;
        box-sizing: border-box !important;
    }
}

/* フルワイドレイアウト：スマホサイズでのヘッダー表示修正 */
@media (max-width: 768px) {
    .layout-full-width .site-header .container {
        max-width: 100% !important;
        width: 100% !important;
        padding: 0 15px !important;
        box-sizing: border-box !important;
    }
}

/* フルワイドレイアウト：ナビゲーションメニューのサブメニュー表示修正 */
.layout-full-width .main-navigation {
    /* フルワイドレイアウトでのナビゲーション表示修正 */
    position: relative !important;
    z-index: 99999 !important;
}

.layout-full-width .main-navigation ul {
    /* フルワイドレイアウトでのメインメニュー表示修正 */
    position: relative !important;
    z-index: 99999 !important;
}

.layout-full-width .main-navigation .sub-menu {
    /* フルワイドレイアウトでのサブメニュー表示修正 */
    z-index: 999999 !important;
    /* メインコンテンツにめり込まないようにする */
    position: absolute !important;
    top: 100% !important;
    left: 0 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2) !important;
    border-radius: 4px !important;
    background: var(--primary-color) !important;
    border: 1px solid var(--border-color) !important;
}

.layout-full-width .main-navigation ul.active {
    /* フルワイドレイアウトでのハンバーガーメニュー表示修正 */
    z-index: 999999 !important;
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.25) !important;
}
