/* V5 shared navigation/footer; page content preserved */
.kaizo-v5-header{position:sticky!important;top:0!important;z-index:2000!important;background:#142237!important;color:white!important;box-shadow:0 4px 18px #08122526!important;font-family:"Noto Sans JP",sans-serif!important}
.kaizo-v5-header *,.kaizo-v5-footer *{box-sizing:border-box!important}
.kaizo-v5-header .v5-brand{display:flex!important;flex-direction:column!important;align-items:flex-start!important;justify-content:center!important;gap:2px!important;min-height:76px!important;padding:13px clamp(16px,3vw,36px)!important;max-width:1400px!important;margin:auto!important;border-bottom:1px solid #c6ac783d!important;color:#fff!important;text-decoration:none!important}
.kaizo-v5-header .v5-brand-jp{font-family:"Noto Serif JP",serif!important;font-size:clamp(22px,2vw,29px)!important;font-weight:700!important;line-height:1.2!important;letter-spacing:.12em!important}
.kaizo-v5-header .v5-brand-en{font:600 10px/1.3 "Noto Sans JP",sans-serif!important;letter-spacing:.34em!important;color:#d6b778!important}
.kaizo-v5-header .v5-nav-container{max-width:1400px!important;margin:auto!important;position:relative!important}
.kaizo-v5-header .v5-nav{display:flex!important;flex-wrap:nowrap!important;gap:0!important;overflow-x:auto!important;overflow-y:hidden!important;scrollbar-width:thin!important;scrollbar-color:#bda271 #142237!important;-webkit-overflow-scrolling:touch!important;overscroll-behavior-x:contain!important;padding:0 14px!important;scroll-snap-type:x proximity!important}
.kaizo-v5-header .v5-nav a{flex:0 0 auto!important;min-height:62px!important;white-space:nowrap!important;display:flex!important;align-items:center!important;justify-content:center!important;padding:12px clamp(12px,1.15vw,21px)!important;color:#f5f6f9!important;text-decoration:none!important;font:600 clamp(13px,1vw,15px)/1.5 "Noto Sans JP",sans-serif!important;border-bottom:3px solid transparent!important;scroll-snap-align:start!important;background:transparent!important}
.kaizo-v5-header .v5-nav a[aria-current="page"]{border-color:#cba967!important;background:#ffffff10!important}
.kaizo-v5-header .v5-nav a:hover,.kaizo-v5-header .v5-nav a:focus-visible{background:#ffffff16!important}
.kaizo-v5-header .v5-nav a:last-child{margin-left:auto!important}
.kaizo-v5-footer{background:#111e33!important;color:#dfe6ef!important;font-family:"Noto Sans JP",sans-serif!important;padding:clamp(40px,5vw,68px) 20px 24px!important;margin:0!important;text-align:left!important}
.kaizo-v5-footer .v5-foot-inner{max-width:1150px!important;margin:auto!important}
.kaizo-v5-footer .v5-foot-top{display:flex!important;justify-content:space-between!important;align-items:flex-start!important;gap:32px!important;flex-wrap:wrap!important;padding-bottom:30px!important}
.kaizo-v5-footer .v5-foot-title{font-family:"Noto Serif JP",serif!important;font-size:24px!important;color:#fff!important;font-weight:700!important;letter-spacing:.1em!important}
.kaizo-v5-footer .v5-foot-en{font-size:10px!important;letter-spacing:.33em!important;color:#d6b778!important;margin-top:8px!important}
.kaizo-v5-footer .v5-foot-desc{font-size:13px!important;line-height:1.8!important;color:#cbd5df!important;margin-top:16px!important}
.kaizo-v5-footer .v5-foot-links{display:grid!important;grid-template-columns:repeat(2,minmax(145px,1fr))!important;gap:12px 30px!important;max-width:520px!important;flex:1 1 420px!important}
.kaizo-v5-footer .v5-foot-links a{font-size:13px!important;color:#e2e8f0!important;text-decoration:none!important;line-height:1.55!important}
.kaizo-v5-footer .v5-foot-links a:hover{text-decoration:underline!important}
.kaizo-v5-footer .v5-foot-bottom{border-top:1px solid #ffffff29!important;padding-top:20px!important;display:flex!important;justify-content:space-between!important;gap:15px!important;flex-wrap:wrap!important;color:#a8b7c9!important;font-size:12px!important}
@media(max-width:700px){.kaizo-v5-header .v5-brand{min-height:62px!important;padding:10px 16px!important}.kaizo-v5-header .v5-nav{padding:0 8px!important}.kaizo-v5-header .v5-nav a{min-height:50px!important;padding:10px 12px!important}.kaizo-v5-header .v5-nav a:last-child{margin-left:0!important}.kaizo-v5-footer .v5-foot-top{gap:24px!important}.kaizo-v5-footer .v5-foot-links{grid-template-columns:repeat(2,minmax(0,1fr))!important;flex-basis:100%!important;gap:15px!important}}
@media(prefers-reduced-motion:reduce){.kaizo-v5-header .v5-nav{scroll-behavior:auto!important}}

/* V6: Consistent compact two-row navigation; no horizontal scrolling */
.kaizo-v5-header .v5-brand-en{letter-spacing:.22em!important;word-spacing:0!important}
.kaizo-v5-header .v5-nav{display:grid!important;grid-template-columns:repeat(8,minmax(0,1fr))!important;overflow:visible!important;flex-wrap:initial!important;scroll-snap-type:none!important;max-width:1400px!important;gap:0!important;padding:0 12px!important}
.kaizo-v5-header .v5-nav a{min-width:0!important;width:100%!important;white-space:normal!important;text-align:center!important;overflow-wrap:anywhere!important;line-height:1.35!important;scroll-snap-align:none!important;padding:12px 7px!important;min-height:60px!important;font-size:clamp(11px,.92vw,15px)!important;margin-left:0!important}
.kaizo-v5-header .v5-nav a:last-child{margin-left:0!important}
@media (max-width:1120px){
 .kaizo-v5-header .v5-brand{min-height:58px!important;padding:8px 16px!important}
 .kaizo-v5-header .v5-brand-jp{font-size:21px!important}
 .kaizo-v5-header .v5-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important;padding:0 8px!important}
 .kaizo-v5-header .v5-nav a{min-height:48px!important;max-height:none!important;padding:8px 6px!important;font-size:clamp(11px,1.5vw,14px)!important}
}
@media (max-width:520px){
 .kaizo-v5-header .v5-brand{min-height:49px!important;padding:6px 12px!important}
 .kaizo-v5-header .v5-brand-jp{font-size:18px!important}
 .kaizo-v5-header .v5-brand-en{font-size:9px!important}
 .kaizo-v5-header .v5-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important;padding:0 2px!important}
 .kaizo-v5-header .v5-nav a{min-height:56px!important;padding:7px 3px!important;font-size:10.5px!important;letter-spacing:0!important}
}
