/* Common UI master. These declarations intentionally outrank legacy page-local CSS during the pilot. */
.ps-site-header{position:sticky!important;top:0!important;z-index:100!important;height:72px!important;margin:0!important;background:#fff!important;border:0!important;border-bottom:1px solid var(--ps-line)!important}
.ps-header-inner{width:min(var(--ps-content),calc(100% - 64px))!important;max-width:var(--ps-content)!important;height:100%!important;margin:0 auto!important;padding:0!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:24px!important}
.ps-brand{width:190px!important;min-width:190px!important;height:48px!important;display:flex!important;align-items:center!important;justify-content:flex-start!important;flex:0 0 190px!important;overflow:visible!important}
.ps-brand img{display:block!important;width:178px!important;max-width:178px!important;height:auto!important;max-height:46px!important;object-fit:contain!important;object-position:left center!important}
.ps-global-nav{height:100%!important;display:flex!important;align-items:stretch!important;gap:2px!important}
.ps-global-nav a{position:relative!important;height:100%!important;padding:0 14px!important;display:flex!important;align-items:center!important;justify-content:center!important;color:var(--ps-text)!important;font-size:14px!important;font-weight:700!important;letter-spacing:0!important;white-space:nowrap!important}
.ps-global-nav a.active,.ps-global-nav a[aria-current="page"]{color:var(--ps-main)!important;font-weight:850!important}
.ps-global-nav a.active:after,.ps-global-nav a[aria-current="page"]:after{content:""!important;position:absolute!important;left:14px!important;right:14px!important;bottom:0!important;height:3px!important;background:var(--ps-main)!important;border-radius:3px 3px 0 0!important}
.ps-menu-button{display:none!important;width:44px!important;height:44px!important;min-width:44px!important;padding:0!important;border:0!important;border-radius:8px!important;background:#fff!important;color:var(--ps-main)!important;align-items:center!important;justify-content:center!important}
.ps-menu-button b{font-size:25px!important;line-height:1!important}
.ps-mobile-nav{display:none!important;position:fixed!important;top:58px!important;left:0!important;right:0!important;z-index:99!important;padding:8px 16px 14px!important;background:#fff!important;border-bottom:1px solid var(--ps-line)!important}
.ps-mobile-nav.open{display:grid!important}.ps-mobile-nav a{min-height:44px!important;display:flex!important;align-items:center!important;border-bottom:1px solid #EEF2F0!important;color:var(--ps-text)!important;font-size:14px!important;font-weight:700!important}.ps-mobile-nav a.active{color:var(--ps-main)!important}
.ps-mode-bar{height:48px!important;margin:0!important;padding:0!important;background:#F5F7F6!important;border:0!important;border-bottom:1px solid var(--ps-line)!important;color:var(--ps-text)!important}
.ps-mode-inner{width:min(520px,100%)!important;max-width:520px!important;height:48px!important;margin:0 auto!important;padding:0!important;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important;border-left:1px solid var(--ps-line)!important;border-right:1px solid var(--ps-line)!important}
.ps-mode-inner>a,.ps-mode-inner>button{position:relative!important;width:100%!important;min-width:0!important;height:48px!important;margin:0!important;padding:0 12px!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;color:#52615B!important;font-family:inherit!important;font-size:14px!important;font-weight:750!important;display:flex!important;align-items:center!important;justify-content:center!important;text-align:center!important;cursor:pointer!important}
.ps-mode-inner>*+*{border-left:1px solid var(--ps-line)!important}.ps-mode-inner>.active,.ps-mode-inner>[aria-selected="true"],.ps-mode-inner>[aria-current="page"]{background:var(--ps-main)!important;color:#fff!important;font-weight:850!important}
.ps-footer{margin-top:48px!important;background:var(--ps-dark)!important;color:#fff!important}.ps-footer *{box-sizing:border-box}.ps-footer a{color:inherit!important;text-decoration:none!important}.ps-footer-inner{width:min(var(--ps-content),calc(100% - 64px))!important;margin:0 auto!important}.ps-footer-desktop{display:grid!important;grid-template-columns:1.3fr repeat(3,minmax(0,1fr))!important;gap:44px!important;padding:48px 0 38px!important}.ps-footer-brand img{display:block!important;width:250px!important;max-width:100%!important;height:auto!important}.ps-footer-group h2{margin:0 0 13px!important;padding:0 0 9px!important;border-bottom:1px solid rgba(255,255,255,.24)!important;background:none!important;color:#fff!important;font-size:14px!important;line-height:1.4!important}.ps-footer-group a{display:flex!important;align-items:center!important;min-height:34px!important;padding:4px 0!important;color:rgba(255,255,255,.84)!important;font-size:12px!important}.ps-footer-group a:hover{text-decoration:underline!important;text-underline-offset:3px!important}.ps-footer-mobile{display:none!important}.ps-footer-copyright{padding:17px 0!important;border-top:1px solid rgba(255,255,255,.19)!important;color:rgba(255,255,255,.68)!important;font-size:12px!important;text-align:center!important}
.ps-footer a:focus-visible,.ps-footer summary:focus-visible,.ps-site-header a:focus-visible,.ps-site-header button:focus-visible{outline:3px solid currentColor!important;outline-offset:3px!important;border-radius:4px!important}

/* v0.1.8 mobile navigation isolation lock: the theme header uses ps-* classes only. */
.ps-menu-button{appearance:none!important;box-sizing:border-box!important;flex:0 0 44px!important;flex-direction:row!important;gap:0!important;font-family:inherit!important;font-size:0!important;line-height:1!important;box-shadow:none!important}
.ps-menu-button b{display:block!important;margin:0!important;padding:0!important;font-family:Arial,"Noto Sans JP",sans-serif!important;font-size:25px!important;font-weight:700!important;line-height:1!important}
.ps-mobile-nav{box-sizing:border-box!important;width:100%!important;max-width:none!important;margin:0!important;grid-template-columns:1fr!important;gap:0!important;box-shadow:0 10px 22px rgba(20,34,29,.08)!important}
.ps-mobile-nav.open{display:grid!important;grid-template-columns:1fr!important;gap:0!important}
.ps-mobile-nav a{box-sizing:border-box!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;border-bottom:1px solid #EEF2F0!important;border-radius:0!important;background:#fff!important;justify-content:flex-start!important;text-align:left!important;line-height:1.4!important}
.ps-mobile-nav a:last-child{border-bottom:0!important}
.ps-mobile-nav a.active,.ps-mobile-nav a[aria-current="page"]{background:#fff!important;color:var(--ps-main)!important;font-weight:850!important}
