*{margin:0;padding:0;box-sizing:border-box}
body{font-family:'Segoe UI',Tahoma,Geneva,Verdana,sans-serif;line-height:1.6;color:#333;background:#fff}
a{color:#d32f2f}
nav{background:#fff;padding:15px 0;position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px rgba(0,0,0,.08)}
nav .container{display:flex;justify-content:space-between;align-items:center}
.logo-text{font-size:1.15rem;font-weight:700;color:#000;letter-spacing:2px;text-decoration:none}
.logo-text span{color:#d32f2f;font-size:.72rem;display:block;letter-spacing:3px;font-weight:600}
.nav-links{display:flex;gap:28px;list-style:none;flex-wrap:wrap}
.nav-links a{text-decoration:none;color:#333;font-weight:500;font-size:.95rem}
.nav-links a:hover,.nav-links a.active{color:#d32f2f}
.container{max-width:1200px;margin:0 auto;padding:0 20px}
.btn{padding:16px 40px;font-size:1rem;font-weight:600;border:none;border-radius:4px;cursor:pointer;text-decoration:none;display:inline-block;transition:all .3s;text-transform:uppercase;letter-spacing:1px}
.btn-primary{background:#d32f2f;color:#fff}
.btn-primary:hover{background:#b71c1c;transform:translateY(-3px);box-shadow:0 10px 30px rgba(211,47,47,.3)}
.btn-secondary{background:transparent;color:#fff;border:2px solid #fff}
.btn-secondary:hover{background:#fff;color:#d32f2f;transform:translateY(-3px)}
.cta-buttons{display:flex;gap:20px;flex-wrap:wrap}
.menu-hero{background:linear-gradient(rgba(20,20,20,.72),rgba(20,20,20,.72)),url('/assets/ichiban-hero.webp');background-size:cover;background-position:center;color:#fff;padding:70px 20px}
.menu-hero h1{font-size:2.6rem;margin-bottom:10px}
.menu-hero p{opacity:.92;max-width:760px}
.crumbs{font-size:.85rem;padding:14px 0;color:#777}
.crumbs a{color:#777;text-decoration:none}
.crumbs a:hover{color:#d32f2f}
.menu-nav{background:#faf9f7;border-bottom:1px solid #eee;padding:14px 0}
.menu-nav ul{display:flex;gap:10px;list-style:none;flex-wrap:wrap}
.menu-nav a{display:inline-block;padding:8px 16px;border:1px solid #ddd;border-radius:3px;text-decoration:none;color:#444;font-size:.88rem;background:#fff}
.menu-nav a:hover{border-color:#d32f2f;color:#d32f2f}
.menu-nav a.active{background:#d32f2f;border-color:#d32f2f;color:#fff}
section.menu{padding:50px 0}
h2.sec{font-size:1.6rem;color:#111;margin:40px 0 6px;padding-bottom:10px;border-bottom:2px solid #d32f2f}
h2.sec:first-of-type{margin-top:0}
.items{display:grid;grid-template-columns:repeat(auto-fill,minmax(330px,1fr));gap:0 40px}
.item{padding:18px 0;border-bottom:1px dotted #ddd}
.item-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px}
h3.item-name{font-size:1.03rem;font-weight:600;color:#111}
.price{color:#d32f2f;font-weight:700;white-space:nowrap}
.item p{color:#666;font-size:.9rem;margin-top:4px}
.note{background:#faf9f7;border-left:4px solid #d32f2f;padding:16px 20px;margin:0 0 30px;font-size:.92rem;color:#555}
.cards{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:22px;margin:30px 0}
.card{border:1px solid #eee;border-radius:6px;padding:24px;text-decoration:none;color:inherit;transition:all .25s;display:block}
.card:hover{border-color:#d32f2f;box-shadow:0 8px 24px rgba(0,0,0,.07);transform:translateY(-3px)}
.card h2{font-size:1.2rem;color:#d32f2f;margin-bottom:8px}
.card p{color:#666;font-size:.9rem}
.disclaimer{font-size:.78rem;color:#999;padding:26px 0;border-top:1px solid #eee;margin-top:40px}
footer{background:#1a1a1a;color:#aaa;padding:44px 0;text-align:center;font-size:.9rem}
footer a{color:#ffd700;text-decoration:none}
footer .cta-buttons{justify-content:center;margin:22px 0}
@media(max-width:768px){.nav-links{display:none}.menu-hero h1{font-size:1.9rem}.items{grid-template-columns:1fr}}
