:root{--red:#c8102e;--dark:#252525;--ink:#202020;--line:#ddd}*{box-sizing:border-box}body{margin:0;color:var(--ink);background:#fff;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans JP",Meiryo,sans-serif;line-height:1.8;overflow-wrap:anywhere}a{color:inherit;text-underline-offset:.22em}a:hover{color:var(--red)}button,input,textarea,select{font:inherit}button,a,input,textarea,select{touch-action:manipulation}:focus-visible{outline:3px solid #006ac2;outline-offset:4px}img{max-width:100%;height:auto}iframe,video{max-width:100%}.container{width:min(1120px,calc(100% - 48px));margin-inline:auto}.skip-link{position:absolute;left:16px;top:-100px;padding:12px 20px;background:#fff;z-index:10000}.skip-link:focus{top:12px}.header-top{display:flex;align-items:center;gap:40px;min-height:136px;padding-block:22px}.site-branding{margin-right:auto}.brand,.custom-logo-link{display:inline-block;vertical-align:middle}.brand img,.custom-logo{display:block;width:220px;height:auto}.header-address{font-style:normal;font-size:.85rem}.header-contact{display:flex;flex-direction:column}.header-contact span{font-size:.8rem}.phone{font-size:1.75rem;font-weight:800;line-height:1.4;text-decoration:none;letter-spacing:.02em}.navigation-bar,.shop-strip{background:var(--red);color:#fff}.primary-list,.primary-list ul,.footer-menu,.social-menu{list-style:none;margin:0;padding:0}.primary-list{display:flex}.primary-list>li{flex:1;position:relative}.primary-list a{display:block;padding:16px 12px;text-align:center;font-size:.93rem;font-weight:700;text-decoration:none}.primary-list a:hover,.primary-list a:focus,.primary-list .current-menu-item>a{background:#930c22;color:#fff}.primary-list ul{display:none;position:absolute;top:100%;left:0;min-width:230px;background:var(--dark);z-index:30}.primary-list ul ul{top:0;left:100%}.primary-list ul a{text-align:left}.primary-list li:hover>ul,.primary-list li:focus-within>ul{display:block}.menu-toggle{display:none}.site-main{min-height:45vh}.content-section{padding-block:56px 80px}h1,h2,h3{line-height:1.45}h1{font-size:clamp(1.65rem,3vw,2.4rem);border-left:5px solid var(--red);padding-left:20px;margin:0 0 36px}.entry-header{margin-bottom:32px}.entry-header h1{margin-top:12px}.entry-content:after{content:"";display:block;clear:both}.entry-content a{color:#a90c27}.entry-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse}.entry-content th,.entry-content td{padding:12px;border:1px solid var(--line)}.entry-content blockquote{margin-inline:0;padding:12px 24px;border-left:4px solid var(--red);background:#f5f5f5}.entry-content pre{overflow:auto;padding:20px;background:#f5f5f5}.entry-content figure{max-width:100%;margin-inline:0}.alignleft{float:left;margin:0 24px 20px 0}.alignright{float:right;margin:0 0 20px 24px}.aligncenter{display:block;margin-inline:auto}.wp-caption-text{font-size:.85rem}.featured-image{display:block;margin:0 auto 32px}.post-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px}.post-card{border:1px solid var(--line);min-width:0}.card-image{display:block;background:#fff;aspect-ratio:16/10;overflow:hidden}.card-image img{display:block;width:100%;height:100%;object-fit:contain;background:#fff}.card-body{padding:22px}.card-body h2{font-size:1rem;margin:10px 0 16px}.card-body h2 a{text-decoration:none}time{font-size:.85rem;color:#666}.card-body p{font-size:.9rem}.nav-links{display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-top:36px}.page-numbers{padding:6px 12px}.page-numbers.current{background:var(--red);color:#fff}.site-footer{background:var(--dark);color:#fff}.shop-strip>.container{display:flex;justify-content:space-between;align-items:center;gap:24px;padding-block:28px}.shop-strip strong{display:block;font-size:1.3rem;letter-spacing:.04em}.shop-strip span{font-size:.85rem}.shop-button{border:1px solid #fff;padding:12px 24px;text-decoration:none;font-weight:700}.shop-button:hover{background:#fff;color:var(--red)}.footer-grid{display:grid;grid-template-columns:1fr 1fr 1.5fr;gap:48px;padding-block:52px}.footer-brand .brand,.footer-brand .custom-logo-link{background:#fff;padding:12px}.footer-brand img{width:190px}.footer-brand p,.company p,.company address,.footer-menu{font-size:.85rem}.company h2{font-size:1rem;margin:0 0 14px}.company address{font-style:normal}.footer-menu li{margin-bottom:8px}.footer-menu ul{list-style:none;padding-left:16px}.footer-menu a,.social-menu a{text-decoration:none}.site-footer a:hover{color:#fff;text-decoration:underline}.social-menu{display:flex;flex-wrap:wrap;gap:18px}.copyright{border-top:1px solid #555;padding-block:20px;color:#ddd}input[type=search]{max-width:100%;padding:10px;border:1px solid #888}input[type=submit],.search-submit{padding:10px 18px;border:0;background:var(--red);color:#fff;cursor:pointer}.error-number{font-size:5rem;font-weight:900;color:var(--red);margin:0}.screen-reader-text{border:0;clip:rect(1px,1px,1px,1px);clip-path:inset(50%);height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;word-wrap:normal!important}
@media(max-width:900px){.header-top{gap:20px}.header-address{display:none}.footer-grid{gap:24px;grid-template-columns:1fr 1fr}.company{grid-column:1/-1}.post-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:767px){.container{width:calc(100% - 32px)}.header-top{min-height:100px;padding-block:16px;gap:12px}.brand img,.custom-logo{width:160px}.phone{font-size:1.1rem}.header-contact span{font-size:.65rem}.primary-list{display:block}.primary-list a{text-align:left;padding:13px 12px;border-bottom:1px solid #ffffff30}.primary-list ul,.primary-list ul ul{display:block;position:static;min-width:0;background:#0002;padding-left:18px}.menu-toggle{width:100%;padding:12px 0;text-align:right;background:none;border:0;color:#fff;font-weight:700;cursor:pointer}.has-navigation-js .menu-toggle{display:block}.has-navigation-js .primary-navigation:not(.is-open){display:none}.content-section{padding-block:32px 48px}.post-grid{grid-template-columns:1fr}.shop-strip>.container{align-items:flex-start;flex-direction:column}.shop-strip strong{font-size:1.05rem}.shop-button{width:100%;text-align:center}.footer-grid{grid-template-columns:1fr;gap:28px;padding-block:36px}.company{grid-column:auto}.footer-menu{display:grid;grid-template-columns:1fr 1fr;gap:8px}.alignleft,.alignright{float:none;margin:20px 0}.footer-brand p{margin-bottom:0}}
@media(max-width:380px){.header-top{flex-wrap:wrap}.header-contact{width:100%}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
/* Article and ordering layout: content data is left intact. */
.single-post .content-section{max-width:860px}.single-post .entry-content{font-size:1rem;line-height:1.95;overflow-wrap:anywhere;word-break:normal}.single-post .entry-content p{margin:0 0 1.6em}.single-post .entry-content h2{font-size:1.5rem;margin:2.4em 0 1em;padding-bottom:.5em;border-bottom:2px solid var(--red)}.single-post .entry-content h3{font-size:1.2rem;margin:2em 0 .8em}.single-post .entry-content h4{font-size:1.05rem;margin:1.8em 0 .7em}.single-post .entry-content ul,.single-post .entry-content ol{padding-left:1.6em;margin:0 0 1.6em}.single-post .entry-content li{margin-bottom:.5em}.single-post .entry-content img,.single-post .featured-image{max-width:100%!important;width:auto;height:auto!important;max-height:560px;object-fit:contain}.single-post .entry-content img{display:block;margin:24px auto}.single-post .entry-content figure,.single-post .entry-content .wp-caption{max-width:100%!important}.single-post .entry-content iframe{max-width:100%!important}.single-post .entry-content .alignwide,.single-post .entry-content .alignfull{max-width:100%;margin-left:0;margin-right:0}.single-post .entry-content td,.single-post .entry-content th{min-width:90px}.single-post .entry-content p:has(>img:only-child){text-align:center}.single-post .featured-image{margin:0 auto 32px}.purchase-guide{margin:48px 0 32px;padding:28px;background:#f5f5f5}.purchase-guide h2{font-size:1.2rem;margin:0 0 20px}.purchase-button{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;padding:18px 24px;margin-top:14px;color:#fff;text-decoration:none;font-weight:700;line-height:1.6;overflow-wrap:anywhere}.purchase-card{background:var(--red)}.purchase-bank{background:#202020}.purchase-button:hover{color:#fff;filter:brightness(.85)}.contact-layout{max-width:860px}.contact-phone{display:flex;align-items:center;gap:24px;background:#f5f5f5;padding:24px;margin:24px 0}.contact-phone a{font-size:1.7rem;font-weight:800;text-decoration:none}.contact-phone span{font-size:.85rem}.contact-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.contact-form-grid p{margin:0}.contact-wide{grid-column:1/-1}.contact-form-grid label{display:block;font-weight:700;font-size:.9rem}.contact-form-grid input:not([type=checkbox]):not([type=submit]),.contact-form-grid select,.contact-form-grid textarea{display:block;width:100%;max-width:100%;padding:12px;border:1px solid #888;border-radius:0;margin-top:8px;background:#fff;color:var(--ink)}.contact-form-grid textarea{min-height:180px;resize:vertical}.contact-form-grid input[type=checkbox]{width:20px;height:20px;vertical-align:middle}.contact-form-grid input[type=submit]{padding:16px 44px;min-height:52px;cursor:pointer}.contact-form-grid .wpcf7-list-item{margin:0}.contact-form-grid .wpcf7-acceptance label{font-weight:400}.contact-form-grid .wpcf7-not-valid-tip{font-weight:400}.contact-form-grid input:disabled{opacity:.5}
@media(max-width:600px){.single-post .content-section{padding-top:28px}.single-post .entry-content{font-size:.95rem}.single-post .entry-content img,.single-post .featured-image{max-height:420px}.purchase-guide{padding:20px 16px}.purchase-button{padding:18px 16px;font-size:.9rem}.contact-form-grid{grid-template-columns:1fr;gap:20px}.contact-phone{align-items:flex-start;flex-direction:column;gap:8px}}

.post-card{background:#fff;border:0;border-bottom:1px solid #ddd}.card-body h2{line-height:1.6}.card-categories{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:12px}.card-categories a{display:inline-block;font-size:.7rem;line-height:1.5;padding:4px 9px;background:#c8102e;color:#fff;text-decoration:none}.card-categories a:hover{background:#930c22;color:#fff}.card-excerpt{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;overflow:hidden}.card-excerpt p{margin:10px 0 0}.pagination ul.page-numbers{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;list-style:none;margin:40px 0 0;padding:0}.pagination .page-numbers a,.pagination .page-numbers span{display:block}.read-more-wrap{text-align:center;margin:36px 0 0}.read-more{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;border:1px solid #252525;color:#252525;text-decoration:none;padding:12px 24px;font-size:.8rem;font-weight:700;letter-spacing:.08em}.read-more:hover{background:#252525;color:#fff}
.category-navigation{margin:0 0 28px}.category-navigation ul{display:flex;flex-wrap:wrap;gap:8px;list-style:none;padding:0;margin:0}.category-navigation a{display:block;padding:7px 12px;border:1px solid #c8102e;color:#a90d27;background:#fff;text-decoration:none;font-size:.8rem;line-height:1.5;font-weight:700}.category-navigation a:hover,.category-navigation a[aria-current=page]{background:#c8102e;color:#fff}.home-section-heading .category-navigation{max-width:64%;margin:0}.home-section-heading .category-navigation ul{justify-content:flex-end}@media(max-width:900px){.home-section-heading:has(.category-navigation){align-items:flex-start;flex-direction:column}.home-section-heading .category-navigation{max-width:100%}.home-section-heading .category-navigation ul{justify-content:flex-start}}
.site-footer .shop-button:hover,.site-footer .shop-button:focus-visible{background:#fff;color:#202020;text-decoration:none}
.company-map{display:block;width:100%;height:220px;border:0;margin:0 0 20px;background:#eee}.company-business h3{font-size:.9rem;margin:20px 0 8px}.company-business ol{font-size:.85rem;margin:0;padding-left:1.5em}.corporate-link{display:inline-flex;gap:12px;align-items:center;border-bottom:1px solid #777;padding-block:6px;text-decoration:none}.copyright{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-wrap:wrap}.copyright .social-menu{gap:12px}.copyright .social-menu a{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border:1px solid #777;border-radius:50%;color:#fff}.copyright .social-menu a:hover{background:#fff;color:#202020}.social-menu svg{width:23px;height:23px}.social-menu .screen-reader-text{position:absolute}@media(max-width:767px){.company-map{height:210px}.copyright{gap:12px}}
.footer-grid{grid-template-columns:.85fr 1.2fr 1fr;gap:48px;padding-block:56px}.footer-grid>div{min-width:0}.footer-logo-link{display:block;width:210px;max-width:100%;margin-bottom:18px}.footer-brand .footer-logo-link img{display:block;width:100%;height:auto}.footer-brand>p{color:#bbb;font-size:.75rem;margin:0 0 28px}.footer-brand .footer-menu{display:block}.footer-brand .footer-menu li{margin-bottom:9px}.footer-brand .footer-menu a{font-size:.8rem;color:#ddd}.footer-grid .company{grid-column:auto}.company h2,.company-business h2{font-size:.9rem;line-height:1.6;margin:0 0 20px}.company-map{height:180px;margin-bottom:20px}.company address,.company>p{font-size:.8rem;line-height:1.9}.company-business{font-size:.8rem;line-height:1.9}.company-business ol{font-size:inherit;margin:0 0 28px}.company-business p{margin:0 0 18px}.company-business h2:not(:first-child){margin-top:28px;margin-bottom:14px}.business-note{color:#bbb;font-size:.75rem}.corporate-link{margin-top:8px}.copyright{padding-block:16px}.copyright small{font-size:.72rem}@media(max-width:900px){.footer-grid{grid-template-columns:1fr 1fr;gap:36px}.footer-grid .company-business{grid-column:1/-1;border-top:1px solid #444;padding-top:28px}}@media(max-width:767px){.footer-grid{grid-template-columns:1fr;gap:32px;padding-block:36px}.footer-brand .footer-menu{display:grid;grid-template-columns:1fr 1fr;gap:8px 20px}.footer-brand .footer-menu li{margin:0}.footer-grid .company-business{grid-column:auto}.company-map{height:200px}.footer-logo-link{width:190px}.company{border-top:1px solid #444;padding-top:28px}}
/* Hide unordered-list markers in article/page content; retain ordered steps. */.single-post .entry-content ul,.page .entry-content ul{list-style:none!important;padding-left:0!important}.single-post .entry-content ul>li,.page .entry-content ul>li{list-style:none!important;padding-left:0}.single-post .entry-content ul>li::marker,.page .entry-content ul>li::marker{content:""}.single-post .entry-content ul ul,.page .entry-content ul ul{margin-left:1em}
.single-post .entry-content ul>li:empty,.page .entry-content ul>li:empty{display:none}
