.global-nav {
background-color: #fff;
border-bottom: 1px solid #ddd;
padding: 10px 0;
font-weight: 600;
}
.global-nav-inner {
display: flex;
flex-wrap: wrap;
align-items: center;
justify-content: space-between;
}
.site-logo {
font-size: 1.5rem;
font-weight: bold;
color: #000;
text-decoration: none;
margin-right: 30px;
}
.global-menu-links {
display: flex;
flex-wrap: wrap;
gap: 37px;
justify-content: center;
}
.global-menu-links a {
font-size: 0.9rem;
text-decoration: none;
color: #333;
transition: color 0.3s ease;
}
.global-menu-links a:hover {
color: #005bac;
}
/* ▼▼▼ [追加] ここからハンバーガーメニューのスタイル ▼▼▼ */
.sp-site-title-container { display: none; }
.sp-menu-toggle { display: none; }

@media (max-width: 768px) {
body.is-menu-open { overflow: hidden; }
body .sp-site-title-container {
position: relative;
display: flex !important;
align-items: center;
justify-content: center;
text-align: center;
padding: 15px 0;
width: 100%;
background-color: #fff;
border-bottom: 1px solid #ddd;
box-sizing: border-box;
order: -1;
}

.site-logo {
display: none !important; /* スマホではPC用ロゴを非表示 */
}

.hamburger-button {
display: flex !important;
flex-direction: column;
justify-content: space-around;
width: 44px;
height: 44px;
padding: 8px;
border: 1px solid #ccc;
background: rgba(255, 255, 255, 0.9);
border-radius: 6px;
box-sizing: border-box;
cursor: pointer;
position: fixed;
left: 15px;
top: 15px;
transform: none;
z-index: 1000000;
}

.sp-menu-toggle-bar { display: block; width: 100%; height: 2px; background-color: #333; transition: transform 0.3s ease, opacity 0.3s ease; }
.sp-menu-toggle.is-open .sp-menu-toggle-bar:nth-child(1) { transform: translateY(8px) rotate(45deg); }
.sp-menu-toggle.is-open .sp-menu-toggle-bar:nth-child(2) { opacity: 0; }
.sp-menu-toggle.is-open .sp-menu-toggle-bar:nth-child(3) { transform: translateY(-8px) rotate(-45deg); }
.sp-site-title-container h1 { font-family: 'Hiragino Kaku Gothic ProN', 'Hiragino Sans', Meiryo, sans-serif !important; font-size: 1.8rem; font-weight: bold; margin: 0; display: inline-block; }
.sp-site-title-link { text-decoration: none; color: #000; display: inline-block; }
.sp-site-title-link:hover { color: #000; text-decoration: none; }
.global-nav { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background-color: rgba(255, 255, 255, 0.98); z-index: 1000; transform: translateX(-100%); visibility: hidden; opacity: 0; transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out, visibility 0.3s; padding-top: 80px; border-bottom: none; overflow-y: auto; box-sizing: border-box; }
.global-nav.is-open { display: block !important; visibility: visible !important; opacity: 1 !important; transform: translateX(0) !important; z-index: 999999 !important; }
.global-nav .container { height: 100%; display: flex; flex-direction: column; justify-content: center; padding: 0; }
.global-nav-inner { justify-content: center; flex-direction: column; width: 100%; }
.global-menu-links {
display: flex !important;
flex-direction: column;
align-items: center;
gap: 20px;
width: 100%;
}
.global-menu-links a {
font-size: 1.2rem;
padding: 15px 0;
width: 80%;
text-align: center;
color: #333 !important;
}
}