/* 下層ページ用。親テーマの header/footer 指定を上書きし、トップと同じヘッダー・フッターだけを当てる */
.site-header,.site-header *,.site-footer,.site-footer *,.mobile-contact-bar,.mobile-contact-bar *{box-sizing:border-box!important}
body{padding-top:0!important}img[src*="b90.yahoo.co.jp"]{display:none!important}header.site-header{display:block!important;position:relative!important;z-index:20!important;height:auto!important;min-height:0!important;padding:0!important;margin:0!important;background:#fff!important;border:0!important;width:100%!important;text-align:left!important;box-shadow:none!important}
header.site-header:after,header.site-header:before{display:none!important;content:none!important}
header.site-header .header-main{float:none!important;display:flex!important;align-items:center;gap:26px;width:min(1280px,calc(100% - 112px))!important;max-width:none!important;min-height:80px;height:auto!important;margin:0 auto!important;padding:0!important;background:transparent!important}
header.site-header .header-main:before,header.site-header .header-main:after{display:none!important;content:none!important}
header.site-header h1,header.site-header .entry-title{display:none!important}
.site-header{background:#fff;color:#192535;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.8}
.site-header a{color:inherit;text-decoration:none}
.brand{flex:none;display:block}.brand img{width:167px;height:auto;object-fit:contain}
.brand-tagline{font-size:14px;letter-spacing:.02em;margin:0}
.utility-links{margin-left:auto;display:flex;gap:22px;font-size:14px}
.utility-links a+a{border-left:1px solid #bfc6ce;padding-left:22px}
.utility-links a:hover,.global-nav a:hover{color:#c90019}
.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:60px;padding:16px 30px;background:#c90019;color:#fff!important;font-weight:700;font-size:17px;line-height:1.5;border:1px solid #c90019;border-radius:2px;text-decoration:none}
.button-small{min-height:46px;padding:10px 22px;font-size:14px}
.button svg{width:18px;height:18px}
.global-nav{height:auto!important;min-height:52px;border-top:1px solid #e8eaed;border-bottom:1px solid #e5e9ed;background:#fff}
.nav-inner{min-height:52px;display:grid!important;grid-template-columns:1.3fr repeat(5,1fr);align-items:center!important;align-content:center;width:min(1280px,calc(100% - 112px));margin-inline:auto}
.nav-inner>a{text-align:center;font-size:14px;font-weight:700;line-height:1.4;padding:2px 12px;color:#192535;text-decoration:none}
.nav-inner>a+a{border-left:1px solid #bdc5ce}
.menu-toggle,.mobile-nav-contact{display:none!important}
.icon{vertical-align:middle;display:block}span[data-icon]{display:inline-flex}
footer.site-footer{display:block!important;min-height:0!important;width:100%!important;background:#fff!important;text-align:left!important;padding:45px 0 0!important;border:0!important;color:#192535;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif}
footer.site-footer a{color:inherit;text-decoration:none}
footer.site-footer .wrap{display:block!important;float:none!important;width:min(1280px,calc(100% - 112px));margin-inline:auto}
.footer-main{display:flex;align-items:center;gap:35px;padding-bottom:35px}
.footer-main>p{font-size:14px;margin:0}.footer-main>p>span{font-size:12px;color:#56616f}
.footer-main nav{position:static;top:auto;left:auto;width:auto;height:auto;z-index:auto;margin-left:auto;display:flex;gap:24px;font-size:14px;background:transparent}
.footer-sitemap{position:static;top:auto;left:auto;height:auto;z-index:auto;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;border-top:1px solid #dce1e7;padding:35px 0;background:transparent}
.footer-sitemap h2{font-size:15px;margin:0 0 16px;font-weight:700}
.footer-sitemap a{display:block;font-size:13px;line-height:1.8;padding:5px 0}
.footer-sitemap a:hover,.footer-main nav a:hover{color:#c90019}
.footer-bottom{display:flex;align-items:center;justify-content:space-between;border-top:1px solid #dce1e7;padding:20px 0;font-size:12px;color:#56616f}
.mobile-contact-bar{display:none}
.skip-link{position:fixed;top:0;left:20px;transform:translateY(-150%);padding:12px 24px;background:#fff;color:#c90019;z-index:100}
.skip-link:focus{transform:translateY(0)}
@media(max-width:1150px){
header.site-header .header-main,.nav-inner,footer.site-footer .wrap{width:calc(100% - 64px)!important}
.brand-tagline{display:none}
.footer-main{gap:20px}.footer-main nav{gap:15px}
.footer-sitemap{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:767px){
body{padding-bottom:64px}
header.site-header .header-main{width:calc(100% - 40px)!important;min-height:72px;gap:12px}
.brand img{width:134px}
.utility-links,.header-contact{display:none!important}
.menu-toggle{display:flex!important;margin-left:auto;flex-direction:column;align-items:center;justify-content:center;gap:8px;width:44px;height:50px;border:0;background:none;color:#192535;cursor:pointer}
.menu-label{font-size:10px;letter-spacing:.1em;line-height:1}
.menu-bars{height:14px;width:24px;position:relative;border-top:1.5px solid currentColor;border-bottom:1.5px solid currentColor}
.menu-bars:after{content:"";position:absolute;left:0;right:0;top:5px;border-top:1.5px solid currentColor}
.menu-toggle[aria-expanded="true"] .menu-bars{border:0;transform:rotate(45deg)}
.menu-toggle[aria-expanded="true"] .menu-bars:before{content:"";position:absolute;left:0;right:0;top:5px;border-top:1.5px solid currentColor;transform:rotate(90deg)}
.global-nav{display:none;position:absolute;top:100%;left:0;width:100%;height:auto;z-index:30;background:#fff;box-shadow:0 8px 15px #17253512;border-top:1px solid #dce1e7}
.global-nav.is-open{display:block}
.nav-inner{display:block!important;width:auto;padding:8px 20px 16px}
.nav-inner>a{display:block;text-align:left;padding:16px 3px;font-size:15px}
.nav-inner>a+a{border-left:0;border-top:1px solid #dce1e7}
.nav-inner>.mobile-nav-contact{display:block!important;color:#c90019}
footer.site-footer{padding-top:30px!important}
footer.site-footer .wrap{width:calc(100% - 40px)!important}
.footer-main{flex-wrap:wrap;gap:20px;padding-bottom:26px}
.footer-main nav{width:100%;margin-left:0;flex-wrap:wrap}
.footer-sitemap{grid-template-columns:1fr;gap:24px;padding:28px 0}
.mobile-contact-bar{display:flex;position:fixed;left:0;right:0;bottom:0;height:64px;background:#fff;box-shadow:0 -2px 12px #19253512;z-index:30}
.mobile-contact-bar a{display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px;font-weight:700;width:42%;color:#c90019;text-decoration:none}
.mobile-contact-bar a+a{width:58%;background:#c90019;color:#fff}
}
