:root{--ink:#201a19;--muted:#77716f;--border:#e7e5e3;--white:#fff;--soft:#f8f8f7}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--white);color:var(--ink);font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic",Meiryo,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.85}a{color:inherit;text-decoration:none}button{font:inherit}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.site-header{height:92px;background:white;border-bottom:1px solid #efeeec;position:relative;z-index:10}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;align-items:center}.brand img{width:204px;height:auto;display:block}.site-nav{display:flex;align-items:center;gap:38px;height:100%}.site-nav a{position:relative;font-size:12px;font-weight:700;letter-spacing:.04em}.site-nav a:hover{opacity:.65}.site-nav a.current:after{content:"";position:absolute;left:0;right:0;bottom:-9px;height:2px;background:linear-gradient(90deg,#ec3028 25%,#f0a521 25% 50%,#168fbe 50% 75%,#44a846 75%)}.nav-toggle{display:none}.hero{min-height:626px;background:#fff}.hero-inner{min-height:552px;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:45px}.eyebrow,.section-number,.business-type,.hero-bottom,.footer-inner{font-family:Arial,Helvetica,sans-serif;letter-spacing:.13em}.eyebrow{font-size:11px;color:#89827f;font-weight:700;margin:0 0 32px}.hero h1{font-size:clamp(34px,4.1vw,60px);line-height:1.52;letter-spacing:.045em;margin:0;font-weight:750}.period{color:inherit}.color-rule{display:flex;width:100px;height:3px;margin:34px 0 28px}.color-rule i{display:block;width:25%;background:#eb352d}.color-rule i:nth-child(2){background:#ed9a2b}.color-rule i:nth-child(3){background:#087eb5}.color-rule i:nth-child(4){background:#39a347}.hero-sub{font-size:14px;line-height:2.3;color:#655f5d;margin:0}.hero-graphic{display:flex;align-items:center;justify-content:center}.hero-graphic img{width:min(100%,350px);height:auto;display:block}.hero-bottom{height:74px;display:flex;justify-content:space-between;align-items:center;color:#9c9693;font-size:10px;border-top:1px solid var(--border)}.down-arrow{font-size:16px;margin-left:9px}.section{padding:114px 0;scroll-margin-top:0}.section-grid{display:grid;grid-template-columns:34% 66%;gap:0}.section-number{display:flex;align-items:center;gap:16px;font-size:12px;font-weight:700;margin:0 0 20px;color:#d34b3b}.section-number span{color:#88817c;font-size:10px;letter-spacing:.14em}.section-heading h2{font-size:29px;letter-spacing:.09em;margin:0;line-height:1.5}.philosophy{background:var(--soft)}.statement{font-size:clamp(26px,3vw,38px);font-weight:750;line-height:1.65;letter-spacing:.06em;margin:0 0 32px}.body-copy{font-size:14px;color:#6d6663;line-height:2.4;margin:0}.business{padding-bottom:128px}.business-top{align-items:end;margin-bottom:51px}.section-intro{margin:0;font-size:14px;line-height:2.3;color:#6d6663}.business-list{border-top:1px solid var(--border)}.business-item{display:grid;grid-template-columns:1fr 70px;gap:12px;align-items:center;padding:44px 0;border-bottom:1px solid var(--border)}.business-index{align-self:start;font-size:14px;font-weight:700;color:#aaa39e;letter-spacing:.1em}.business-type{font-size:10px;color:#8e8682;margin:0 0 9px;font-weight:700}.business-item h3{font-size:21px;letter-spacing:.055em;line-height:1.8;margin:0;font-weight:700}.business-line{justify-self:end;width:35px;height:3px}.business-line.orange{background:#ee6730}.business-line.blue{background:#168abd}.company{background:var(--soft)}.company-table{display:block}.company-row{display:grid;grid-template-columns:145px 1fr;padding:22px 0;border-bottom:1px solid #dedbd8;font-size:14px}.company-row:first-child{border-top:1px solid #dedbd8}.company-row dt{font-weight:700}.company-row dd{margin:0;line-height:1.9}.contact{padding:106px 0 125px}.contact-content>p:first-child{font-size:20px;font-weight:700;margin:0 0 18px}.contact-note{font-size:14px;color:#746e6b;margin:0;line-height:2}.site-footer{border-top:1px solid var(--border);padding:30px 0 36px}.footer-inner{display:flex;align-items:center;gap:30px;font-size:10px;color:#8d8783;letter-spacing:.08em}.footer-inner img{width:150px;height:auto;margin-right:auto}.footer-inner a:hover{text-decoration:underline}
@media(max-width:800px){.wrap{width:min(100% - 42px,560px)}.site-header{height:76px}.brand img{width:160px}.nav-toggle{display:flex;width:40px;height:40px;flex-direction:column;align-items:center;justify-content:center;gap:6px;background:none;border:0;cursor:pointer}.nav-toggle span{width:23px;height:2px;background:#201a19;display:block}.site-nav{display:none;position:absolute;top:76px;left:0;right:0;background:white;height:auto;padding:16px 22px 25px;border-bottom:1px solid var(--border);box-shadow:0 12px 22px #00000008;gap:0;flex-direction:column;align-items:stretch}.site-nav.open{display:flex}.site-nav a{padding:14px 0;font-size:14px}.site-nav a.current:after{display:none}.hero{min-height:unset}.hero-inner{grid-template-columns:1fr;gap:12px;padding-top:80px;padding-bottom:60px;min-height:0}.eyebrow{margin-bottom:26px}.hero h1{font-size:clamp(31px,8vw,44px);letter-spacing:.01em}.hero-sub{font-size:13px}.hero-graphic{justify-content:flex-end;margin-top:15px}.hero-graphic img{width:170px}.hero-bottom{height:62px}.section{padding:78px 0}.section-grid{grid-template-columns:1fr;gap:34px}.section-heading h2{font-size:25px}.statement{font-size:26px}.body-copy br{display:none}.business-top{margin-bottom:28px;gap:20px}.business-item{grid-template-columns:1fr 18px;gap:10px;padding:30px 0}.business-item h3{font-size:17px}.business-line{width:16px}.company-row{grid-template-columns:100px 1fr;font-size:13px}.contact-content>p:first-child{font-size:17px}.footer-inner{flex-wrap:wrap;gap:18px}.footer-inner img{width:120px;flex-basis:100%;margin-bottom:5px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Business detail link: existing row design retained */
.business-item-link{padding:0;display:block}
.business-click-target{display:grid;grid-template-columns:1fr 70px;gap:12px;align-items:center;padding:44px 0;width:100%;transition:background-color .15s}
.business-click-target:hover{background:#faf9f8}
.business-click-target:focus-visible{outline:2px solid #168abd;outline-offset:3px}
.business-click-target:hover h3{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:5px}
.contact-form{display:flex;flex-direction:column;gap:9px;margin-top:30px;max-width:600px}
.contact-form>label{font-weight:700;font-size:13px;margin-top:16px}
.required{font-size:10px;color:#8c3d33;font-weight:400;margin-left:8px}
.contact-form input:not([type=checkbox]),.contact-form textarea{border:1px solid #d4d0cd;background:white;border-radius:0;padding:13px 14px;font:inherit;font-size:14px;color:var(--ink);width:100%;min-width:0}
.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #168abd;outline-offset:1px}
.form-agreement{font-size:12px;margin-top:16px;color:#615b57}.form-agreement label{display:flex;gap:10px;align-items:flex-start}.form-agreement input{margin-top:6px;accent-color:#168abd}
.submit-button{font-size:13px;font-weight:700;cursor:pointer;align-self:flex-start;border:1px solid #201a19;background:#201a19;color:white;padding:15px 27px;margin-top:19px;display:flex;gap:48px;align-items:center;justify-content:space-between}
.submit-button:hover{background:white;color:#201a19}
.contact-form .contact-note{font-size:11px;color:#857e79;margin-top:13px;line-height:1.8}.honeypot{position:absolute;left:-9999px;opacity:0}
.detail-page{min-height:60vh}.detail-breadcrumb{font-size:12px;color:#77716f;margin-bottom:42px}.detail-breadcrumb a{text-decoration:underline;text-underline-offset:3px}.detail-lead{max-width:700px;font-size:16px;color:#514b48;line-height:2.3}.detail-rule{height:1px;background:var(--border);margin:55px 0}.detail-features{display:grid;grid-template-columns:1fr 1fr;gap:40px;max-width:800px}.detail-features h2{font-size:20px;margin:0 0 12px}.detail-features p{font-size:14px;color:#67605c;line-height:2.1}
@media(max-width:800px){.business-click-target{grid-template-columns:1fr 18px;gap:10px;padding:30px 0}.contact-form{margin-top:16px}.detail-features{grid-template-columns:1fr;gap:16px}}


/* 草津グルメ部専用ページ — ロゴと公式SNSへの導線 */
.gourmet-intro{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:64px;align-items:center;padding:0 0 4px}
.gourmet-intro-copy{min-width:0}
.gourmet-logo{display:block;width:100%;max-width:270px;height:auto;margin:0 auto}
.gourmet-social{margin-top:38px}
.gourmet-social-label{font-size:12px;font-weight:700;letter-spacing:.04em;color:#77716f;margin:0 0 15px}
.gourmet-links{display:flex;flex-wrap:wrap;gap:12px}
.gourmet-link{display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:11px 18px;border:1px solid #d9d7d4;background:#fff;font-size:13px;font-weight:700;min-width:185px;transition:border-color .12s}
.gourmet-link:hover{border-color:#201a19}
.gourmet-link:focus-visible{outline:2px solid #168abd;outline-offset:3px}
.gourmet-link svg{display:block;flex:none}
.gourmet-link .link-arrow{font-size:13px;margin-left:auto;color:#77716f}
@media(max-width:800px){.gourmet-intro{grid-template-columns:1fr;gap:34px}.gourmet-logo{max-width:220px}.gourmet-link{min-width:min(100%,185px)}.gourmet-social{margin-top:29px}}
