/* PC用スタイル */
@media (min-width: 1024px) {

    /* サイドバー全体 */
    #sidebar-global-menu {
        position: fixed;
        top: 0;
        left: 0;
        width: 250px;
        height: 100vh;
        background: #fff;
        border-right: 1px solid #ddd;
        z-index: 9999;
        box-shadow: 2px 0 5px rgba(0,0,0,0.1);
        overflow-y: auto;
        display: flex;
        flex-direction: column;
    }

    /* ロゴエリア */
    .sidebar-logo {
        height: 250px;
        display: flex;
        align-items: center;
        justify-content: center;
        /*  border-bottom: 1px solid #ddd; */
        padding: 40px 24px;
        box-sizing: border-box;
		text-align: center;
    }

    .sidebar-logo img {
		width: 180px !important;height: auto;
        display: inline-block;
    }



    /* グローバルナビエリア
    .sidebar-global-nav {
        border-top: 1px solid #ddd;
        border-bottom: 1px solid #ddd;
        padding: 20px 0;
    } */
	
	.sidebar-global-nav {
    position: relative;
    padding: 20px 0;
}

.sidebar-global-nav::before,
.sidebar-global-nav::after {
    content: "";
    position: absolute;
    left: 25%;
    width: 50%; /* ← 線の長さを 50% に */
    height: 1px;
    background: #ddd;
}

.sidebar-global-nav::before {
    top: 0;
}

.sidebar-global-nav::after {
    bottom: 0;
}


    .sidebar-menu-list {
        list-style: none;
        margin: 0;
        padding: 0;
    }

    .sidebar-menu-list li {
        /* margin-bottom: 10px;  */
        position: relative; /* サブメニューのため */
    }

    .sidebar-menu-list a {
        text-decoration: none;
        color: #222;
        /*font-weight: bold; */
        display: block;
        padding: 10px 24px;
		font-size: 0.9rem;
    }

    .sidebar-menu-list a:hover {
        background: #f0f0f0;
    }

    /* サブメニュー（右側に表示） */
    .sidebar-menu-list .sub-menu {
        display: none;
        position: absolute;
        top: 0;
        left: 100%;
        margin-left: 0;
        background: #fff;
        border: 1px solid #ddd;
        box-shadow: 2px 2px 5px rgba(0,0,0,0.1);
        z-index: 1000;
        min-width: 200px;
        white-space: nowrap;
    }

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

    .sidebar-menu-list .sub-menu li a {
        padding: 8px 12px;
        display: block;
        color: #333;
        text-decoration: none;
    }

    .sidebar-menu-list .sub-menu li a:hover {
        background: #f0f0f0;
    }

    /* サイドバー下部ウィジェット */
    .sidebar-widget-area {
        padding: 20px;
      /*   border-top: 1px solid #ddd;  */
    }

    /* メインコンテンツエリア調整 */
    body {
        padding-left: 250px;
        overflow-x: hidden;
    }

    .l-content {
        max-width: 1200px;
        margin: 0 auto 6rem;
        padding-left: var(--swl-pad-container, 15px);
        padding-right: var(--swl-pad-container, 15px);
    }
	

    /* SWELLのヘッダー非表示（PCのみ） */
    .l-header__inner,
    .c-gnav,
    .l-header {
        display: none !important;
    }
}

/* スマホ・タブレット用スタイル */
@media (max-width: 1023px) {

    /* サイドバー非表示 */
    #sidebar-global-menu {
        display: none !important;
    }

    body {
        padding-left: 0 !important;
    }

    .l-container {
        max-width: 100%;
    }

    /* SWELLのヘッダー表示（スマホ用） */
    .l-header__inner,
    .c-gnav,
    .l-header {
        display: flex;
    }
}

/* 親メニューにホバー時、背景をグレーにする */
.sidebar-menu-list li:hover > a {
    background: #f0f0f0; /* ← お好みのグレー */
    color: #000; /* 必要なら文字色も調整 */
}



#sidebar-global-menu {
    overflow: visible !important; /* ← サブメニューのはみ出しを許可 */
}

.sidebar-global-nav {
    overflow: visible !important; /* ← 念のためナビエリアも */
}


.sidebar-menu-list .current-menu-item > a,
.sidebar-menu-list .current-menu-ancestor > a {
    background: #f0f0f0;
    color: #000;
    font-weight: bold;
    border-left: 4px solid #00aecb; /* 青いライン */
    padding-left: 20px; /* 調整 */
}
