/* サイト共通ヘッダー（総務DXアプリページ用・他のスタイルと干渉しないよう限定） */
.site-header{position:sticky;top:0;z-index:1000;background:#fff;box-shadow:0 1px 6px rgba(0,0,0,.08);font-family:"游ゴシック体",YuGothic,"游ゴシック","Yu Gothic","ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;font-weight:500;line-height:1.5;letter-spacing:.02em}
.site-header *{box-sizing:border-box}
.site-header .container{max-width:1140px;margin:0 auto;padding:0 20px}
.site-header .hd{display:flex;align-items:center;justify-content:space-between;min-height:84px;gap:20px}
.site-header .logo{text-decoration:none;color:#222;line-height:1.3;white-space:nowrap}
.site-header .logo small{display:block;font-size:12px;color:#666;letter-spacing:.06em}
.site-header .logo strong{font-size:22px;font-weight:700;letter-spacing:.04em}
.site-header .gnav ul{list-style:none;margin:0;padding:0;display:flex;align-items:stretch}
.site-header .gnav li a{display:flex;flex-direction:column;align-items:center;gap:6px;padding:12px 14px;text-decoration:none;color:#333;font-size:14px;font-weight:700;transition:.2s;white-space:nowrap}
.site-header .gnav li a svg{width:22px;height:22px;stroke:#14781d;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.site-header .gnav li a:hover,.site-header .gnav li a.current{background:#14781d;color:#fff}
.site-header .gnav li a:hover svg,.site-header .gnav li a.current svg{stroke:#fff}
.site-header .gnav li.tel a{background:#14781d;color:#fff;margin-left:10px;border-radius:4px;gap:2px}
.site-header .gnav li.tel a .num{font-size:17px;letter-spacing:.04em}
.site-header .gnav li.tel a .sub{font-size:11px;font-weight:500}
.site-header .menu-btn{display:none;background:none;border:0;width:46px;height:46px;cursor:pointer;padding:0}
.site-header .menu-btn span{display:block;width:26px;height:2px;background:#333;margin:6px auto}
@media (max-width:1180px){.site-header .gnav li a{padding:10px 8px;font-size:13px}.site-header .logo strong{font-size:19px}.site-header .logo small{font-size:11px}}
@media (max-width:991px){
  .site-header .menu-btn{display:block}
  .site-header .gnav{position:fixed;top:84px;left:0;right:0;bottom:0;background:#fff;overflow:auto;display:none}
  .site-header .gnav.open{display:block}
  .site-header .gnav ul{flex-direction:column;padding:10px 20px 30px}
  .site-header .gnav li a{flex-direction:row;justify-content:flex-start;gap:14px;padding:16px 8px;font-size:16px;border-bottom:1px solid #e2e2e2}
  .site-header .gnav li.tel a{margin:16px 0 0;justify-content:center;flex-direction:column;gap:2px}
}
@media (max-width:640px){.site-header .container{padding:0 16px}.site-header .hd{min-height:68px}.site-header .gnav{top:68px}.site-header .logo strong{font-size:18px}}
/* 7-item nav fit */
@media (max-width:1360px){
  .site-header .container.hd{max-width:none}
  .site-header .gnav li a{padding:10px 7px;font-size:13px}
  .site-header .logo strong{font-size:19px}
  .site-header .logo small{font-size:11px}
  .site-header .gnav li.tel a{margin-left:6px;padding:10px 10px}
  .site-header .gnav li.tel a .sub{display:none}
}
@media (max-width:1100px){
  .site-header .menu-btn{display:block}
  .site-header .gnav{position:fixed;top:84px;left:0;right:0;bottom:0;background:#fff;overflow:auto;display:none}
  .site-header .gnav.open{display:block}
  .site-header .gnav ul{flex-direction:column;padding:10px 20px 30px}
  .site-header .gnav li a{flex-direction:row;justify-content:flex-start;gap:14px;padding:16px 8px;font-size:16px;border-bottom:1px solid #e2e2e2}
  .site-header .gnav li.tel a{margin:16px 0 0;justify-content:center;flex-direction:column;gap:2px}
  .site-header .gnav li.tel a .sub{display:block}
}
@media (max-width:640px){.site-header .gnav{top:68px}}
