@charset "UTF-8";:root{--cream:#fff9ed;--paper:#f9eedb;--brown:#38291e;--muted:#756758;--ochre:#bd812e;--rust:#a74e38;--olive:#6f7650;--white:#fffdf8;--space:clamp(72px,9vw,144px);--content:1160px;--font:system-ui,-apple-system,"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--fade-duration:.85s}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--brown);background:var(--cream);font-family:var(--font);font-size:16px;line-height:1.9}img{display:block;max-width:100%;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,button:focus-visible{outline:3px solid var(--rust);outline-offset:4px}button{font:inherit}.sample-bar{background:#ede2c9;text-align:center;padding:8px 16px;font-size:13px;line-height:1.6}.site-header{min-height:86px;padding:14px max(28px,calc((100vw - 1240px)/2));display:flex;align-items:center;justify-content:space-between;gap:24px;background:var(--cream);position:relative;z-index:20}.brand{font-size:12px;line-height:1.3;letter-spacing:.06em;white-space:nowrap}.brand strong{font-size:20px;font-weight:850}.site-header nav{display:flex;align-items:center;gap:clamp(12px,1.7vw,28px);font-size:13px;font-weight:700}.nav-index{border:1px solid var(--brown);border-radius:30px;padding:8px 16px}.menu-toggle{display:none}.hero{min-height:620px;position:relative;display:grid;grid-template-columns:45% 55%;background:var(--paper)}.hero-copy{align-self:center;padding:72px 8% 100px max(7%,calc((100vw - 1160px)/2));position:relative;z-index:2}.eyebrow{color:var(--rust);font-size:14px;font-weight:800;letter-spacing:.13em;margin:0 0 22px}.hero h1{font-size:clamp(34px,4vw,64px);line-height:1.55;letter-spacing:.045em;margin:0 0 24px;white-space:nowrap}.hero-copy>p:not(.eyebrow):not(.hero-note){max-width:440px}.text-link{display:inline-block;border-bottom:2px solid var(--rust);padding-bottom:5px;font-weight:800;margin-top:20px}.hero-note{font-size:12px;color:var(--muted);margin-top:32px}.hero-art{position:relative;min-height:560px;margin:26px 26px 26px 0}.photo-placeholder{height:100%;min-height:260px;background:linear-gradient(135deg,#d3a866,#f1dcb4 52%,#d6b58b);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:#533e28;text-align:center;padding:20px;border:1px solid #c9a879;font-weight:800}.photo-placeholder small{font-size:12px;font-weight:400}.hero-art>.photo-placeholder{border-radius:48% 8px 8px 8px;min-height:560px}.round-seal{position:absolute;right:-12px;bottom:34px;background:var(--rust);color:white;width:108px;height:108px;border-radius:44% 56% 54% 46%;display:grid;place-content:center;text-align:center;font-size:17px;font-weight:900;line-height:1.4;transform:rotate(8deg)}.hero-access{position:absolute;bottom:20px;left:max(7%,calc((100vw - 1160px)/2));font-size:13px;font-weight:800}.section{padding:var(--space) max(24px,calc((100vw - var(--content))/2))}.section-heading h2,.center-heading h2,.atmosphere h2,.contact h2{font-size:clamp(30px,3.4vw,48px);line-height:1.55;letter-spacing:.04em;margin:0 0 28px}.section-heading{margin-bottom:52px}.section-heading>p:last-child{max-width:650px}.intro-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(36px,7vw,110px);align-items:center}.intro-image{height:440px;position:relative}.photo-frame{overflow:hidden;background:#e4d6be}.image-caption{position:absolute;right:10px;bottom:10px;background:rgba(255,253,248,.9);padding:2px 10px;font-size:11px}.intro-image{border-radius:4px 110px 4px 4px}.intro-text{max-width:420px}.intro-text p{margin:0 0 25px}.concept{background:#efe1c7}.center-heading{text-align:center;max-width:640px;margin:0 auto 80px}.center-heading>p:last-child{margin-top:20px}.feature{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(35px,7vw,100px);align-items:center;margin-bottom:100px}.feature:last-child{margin-bottom:0}.feature:nth-of-type(odd) .feature-visual{order:2}.feature-visual{height:400px;position:relative}.feature-one .feature-visual{border-radius:4px 4px 120px 4px}.feature-two .feature-visual{border-radius:100px 4px 4px 4px}.feature-three .feature-visual{border-radius:4px 100px 4px 4px}.feature-copy{max-width:450px}.feature-number{color:var(--rust);font-weight:900;letter-spacing:.1em}.feature h3{font-size:clamp(26px,3vw,39px);line-height:1.55;margin:18px 0 20px}.feature p{max-width:430px}.menu-section{background:var(--cream)}.signature{display:grid;grid-template-columns:1.2fr .8fr;background:#ead5b2;min-height:430px}.signature-image .photo-placeholder{min-height:430px}.signature-copy{padding:clamp(30px,5vw,70px);align-self:center}.pill{display:inline-block;background:var(--rust);color:white;border-radius:30px;padding:4px 16px;font-size:13px;font-weight:800}.signature h3{font-size:clamp(26px,3vw,40px);line-height:1.5;margin:22px 0}.price{font-weight:900;font-size:19px}.price small,.menu-item small{font-size:12px}.menu-other{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:32px}.menu-item{background:var(--white)}.menu-photo{height:210px}.menu-photo .photo-placeholder{min-height:210px}.menu-item>div:last-child{padding:18px 20px 24px}.menu-item h3{font-size:20px;margin:0 0 8px}.menu-item p{font-size:14px;color:var(--muted);margin:0 0 14px}.center-action{text-align:center;margin-top:50px}.outline-button{display:inline-block;border:2px solid var(--brown);padding:13px 24px;border-radius:50px;font-weight:800;background:transparent;line-height:1.5}.outline-button:hover{background:var(--brown);color:white;text-decoration:none}.atmosphere{display:grid;grid-template-columns:1fr 1fr;gap:7%;align-items:center;background:#e4e4d4}.atmosphere-image{height:490px;border-radius:140px 4px 4px 4px;position:relative}.atmosphere-copy{max-width:480px}.fineprint{font-size:13px;color:var(--muted)}.news-list>div{display:grid;grid-template-columns:180px 1fr;gap:20px;align-items:center;border-bottom:1px solid #d8cbb7;padding:20px 0}.news-list span{font-size:13px;color:var(--rust);font-weight:800}.news-list p{margin:0}.information{background:#f0e2c7}.info-layout{display:grid;grid-template-columns:1.25fr .75fr;gap:8%}.info-layout dl{margin:0}.info-layout dl>div{display:grid;grid-template-columns:140px 1fr;padding:16px 0;border-bottom:1px solid #cdbb9d}.info-layout dt{font-weight:800}.info-layout dd{margin:0}.info-side{align-self:center}.info-side p{margin-bottom:30px}.contact{background:var(--rust);color:white;text-align:center}.contact .eyebrow{color:#ffe1ad}.contact-inner{max-width:740px;margin:auto}.contact .outline-button.light{border-color:white;color:white;margin-top:24px}.contact .outline-button.light:hover{background:white;color:var(--rust)}footer{padding:60px max(24px,calc((100vw - var(--content))/2)) 35px;background:#34291f;color:#fff8e9}.footer-main{display:flex;justify-content:space-between;gap:30px;align-items:start}.footer-main nav{display:flex;flex-wrap:wrap;gap:14px 25px;font-size:13px}footer>p{font-size:12px;color:#d4c9b9;border-top:1px solid #69584b;margin-top:50px;padding-top:20px}.reveal{opacity:1;transform:none}@media(prefers-reduced-motion:no-preference){.js-motion .reveal:not(.is-visible){opacity:0;transform:translateY(16px)}.js-motion .reveal{transition:opacity var(--fade-duration) ease-out,transform var(--fade-duration) ease-out}.js-motion .reveal.is-visible{opacity:1;transform:none}}@media(max-width:1050px){.site-header nav{gap:12px;font-size:12px}.hero h1{font-size:clamp(30px,4vw,48px)}.hero-copy{padding-left:7%}}@media(max-width:800px){.site-header{min-height:74px;padding:14px 22px}.menu-toggle{display:flex;width:44px;height:44px;flex-direction:column;align-items:center;justify-content:center;gap:6px;border:1px solid var(--brown);border-radius:4px;background:transparent;cursor:pointer}.menu-toggle span{display:block;width:21px;height:2px;background:var(--brown)}.js-nav .site-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:var(--cream);padding:18px 24px 26px;box-shadow:0 10px 18px #38291e18;flex-direction:column;align-items:stretch;font-size:16px;gap:0}.js-nav .site-header nav.is-open{display:flex}.site-header nav a{padding:12px 0;border-bottom:1px solid #e2d7c7}.site-header nav .nav-index{margin-top:14px;padding:10px 15px;text-align:center}.hero{grid-template-columns:1fr}.hero-copy{padding:60px 24px 28px}.hero h1{white-space:normal;font-size:clamp(32px,8vw,52px)}.hero-art{margin:0 24px 70px;min-height:350px}.hero-art>.photo-placeholder{min-height:350px;border-radius:100px 4px 4px 4px}.hero-access{left:24px;bottom:22px}.intro-grid,.feature,.atmosphere,.info-layout{grid-template-columns:1fr;gap:32px}.intro-image,.feature-visual,.atmosphere-image{height:clamp(260px,55vw,440px)}.feature:nth-of-type(odd) .feature-visual{order:0}.feature{margin-bottom:65px}.signature{grid-template-columns:1fr}.signature-image .photo-placeholder{min-height:330px}.menu-other{grid-template-columns:1fr 1fr}.atmosphere-copy{max-width:none}.footer-main{flex-direction:column}}@media(max-width:540px){.section{padding:70px 20px}.sample-bar{font-size:12px}.brand strong{font-size:17px}.hero-copy{padding:52px 20px 26px}.hero-art{margin:0 20px 65px}.hero-art>.photo-placeholder{min-height:300px}.round-seal{width:85px;height:85px;font-size:14px;right:-7px}.hero-access{left:20px}.center-heading{margin-bottom:48px}.section-heading{margin-bottom:34px}.intro-image,.feature-visual,.atmosphere-image{height:290px}.menu-other{grid-template-columns:1fr}.menu-photo{height:240px}.menu-photo .photo-placeholder{min-height:240px}.signature-image .photo-placeholder{min-height:280px}.news-list>div{grid-template-columns:1fr;gap:0}.info-layout dl>div{grid-template-columns:100px 1fr;gap:8px}.footer-main nav{display:grid;grid-template-columns:1fr 1fr}}
/* 画像の縦横比を維持し、狭い画面でのはみ出しを防止 */
.hero-art,.signature-image,.intro-image,.feature-visual,.atmosphere-image,.menu-photo{min-width:0;overflow:hidden}
.hero-art>.photo-placeholder{height:100%}
.hero-copy,.signature-copy,.feature-copy,.intro-text,.atmosphere-copy{min-width:0}
@media(max-width:800px){.site-header nav:not(.is-open){flex-wrap:wrap}.js-nav .site-header nav:not(.is-open){display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Curry photo update: maintain stable boxes and focal points */
.hero-art>img{width:100%;height:100%;min-height:560px;object-fit:cover;object-position:50% 50%;border-radius:90px 4px 4px 4px}
.signature-image{position:relative;min-height:430px;overflow:hidden}
.signature-image>img{height:100%;min-height:430px;object-fit:cover;object-position:center}
.menu-photo{position:relative;overflow:hidden}
.menu-photo img{object-fit:cover;object-position:center}
.hero-art .image-caption,.signature-image .image-caption,.menu-photo .image-caption{z-index:2}
@media(max-width:800px){.hero-art>img{min-height:350px;border-radius:80px 4px 4px 4px}.signature-image,.signature-image>img{min-height:330px}}
@media(max-width:540px){.hero-art>img{min-height:300px}.signature-image,.signature-image>img{min-height:280px}}
