/* 外部フォント・ライブラリなし。写真は同梱のimagesフォルダーから読み込みます。 */
:root{--paper:#faf8f2;--ink:#333e32;--muted:#5c6256;--green:#3e513c;--line:#d8dace;--cream:#eeeee4;--serif:"Yu Mincho","Hiragino Mincho ProN",serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Meiryo",sans-serif;font-size:15px;line-height:1.95}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}a:focus-visible,summary:focus-visible{outline:3px solid #9b582f;outline-offset:5px}p,h1,h2,h3{margin-top:0}p{margin-bottom:20px}.wrap{width:min(1160px,calc(100% - 80px));margin-inline:auto}.skip{position:fixed;left:16px;top:-100px;background:white;padding:10px;z-index:10}.skip:focus{top:10px}.demo-banner{background:var(--green);color:#fff;text-align:center;font-size:11px;letter-spacing:.12em;padding:8px 20px}.demo-banner span{margin-left:16px;letter-spacing:.04em}.header{min-height:110px;display:flex;justify-content:space-between;align-items:center;gap:30px}.brand{font-family:Georgia,serif;font-size:34px;line-height:1.2;letter-spacing:.035em}.brand span{display:block;font-family:Arial,sans-serif;font-size:9px;letter-spacing:.19em;margin-top:9px}nav{display:flex;gap:28px;align-items:center;font-size:12px}.nav-contact{border-bottom:1px solid var(--ink);padding-block:9px}.nav-contact span{margin-left:15px}.hero{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:34px;padding-top:20px;padding-bottom:72px}.hero-copy{padding:20px 0}.eyebrow{font-family:Arial,sans-serif;font-size:10px;letter-spacing:.2em;font-weight:600;margin-bottom:28px}h1,h2{font-family:var(--serif);font-weight:500;letter-spacing:.06em}h1{font-size:clamp(30px,3.5vw,49px);line-height:1.65;margin-bottom:26px}.hero-copy>p:not(.eyebrow):not(.hero-note){font-size:14px;line-height:2.2}.hero-copy .lead{margin-bottom:8px}.button{background:var(--green);color:#fff;display:inline-flex;justify-content:space-between;align-items:center;gap:30px;min-height:56px;padding:15px 26px;font-size:13px;border:1px solid var(--green);cursor:pointer;transition:background .2s}.button:hover{background:#293c29;text-decoration:none}.hero .button{margin:14px 0 18px}.hero-note{font-size:10px;color:var(--muted);margin-bottom:0}.hero-art{position:relative;border-radius:47% 47% 3px 3px;overflow:hidden;background:#e6dccb}.hero-art svg{width:100%;height:auto;display:block}.art-caption{position:absolute;bottom:30px;left:28px;font-size:10px;letter-spacing:.19em;color:#35412f}.art-label{position:absolute;right:20px;top:48%;writing-mode:vertical-rl;font-size:8px;letter-spacing:.16em;color:#4a513f}.section{padding-block:86px}h2{font-size:29px;line-height:1.8;margin-bottom:22px}h3{font-size:17px;font-weight:500;line-height:1.65}.concept{display:grid;grid-template-columns:1fr 1.35fr;gap:70px;border-top:1px solid var(--line)}.concept-copy{padding-top:26px;font-size:14px}.values{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}.values span{border:1px solid #c5caba;border-radius:30px;padding:6px 17px;font-size:11px}.menu-section{background:var(--cream)}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:32px}.section-heading p:last-child{font-size:11px;color:var(--muted)}.section-heading h2{font-size:27px;margin-bottom:0}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.menu-card{position:relative;padding:30px 24px;background:var(--paper);border-top:2px solid #b7bea9}.menu-card.featured{border-top-color:var(--green)}.menu-number{font-family:Georgia,serif;font-size:34px;color:#7d876b;display:block;line-height:1.3;margin-bottom:24px}.menu-en{font-size:9px;letter-spacing:.17em;margin-bottom:8px}.menu-card>p{font-size:12px}.menu-card .price{font-family:Georgia,serif;font-size:29px;white-space:nowrap;border-bottom:1px solid var(--line);padding-block:18px;margin-bottom:16px}.price span{font-family:"Yu Gothic",sans-serif;font-size:10px}.price span:first-child{font-size:12px;margin-right:10px}.menu-card .menu-detail{font-size:10px;margin:0;line-height:1.8}.small{font-size:11px;color:var(--muted)}.menu-footnote{margin:24px 0 0}.flow{display:grid;grid-template-columns:1fr 1.2fr;gap:80px}.flow>div>p:last-child{font-size:12px}.steps{padding:0;margin:0;list-style:none}.steps li{display:flex;gap:26px;border-bottom:1px solid var(--line);padding:20px 0}.steps li:first-child{padding-top:0}.steps li>span{font:22px Georgia,serif;color:#758166;padding-top:5px}.steps h3{margin-bottom:8px;font-size:15px}.steps p{font-size:12px;margin:0}.contact-section{background:#e8ebdf;border-top:1px solid var(--line);padding-block:72px;text-align:center}.contact-inner>p{font-size:13px}.contact-inner .eyebrow{font-size:10px}.contact-inner .small{font-size:11px;margin:22px 0 0}.contact-demo{max-width:540px;margin:26px auto 0}.contact-demo summary{list-style:none;width:min(100%,340px);margin-inline:auto;text-align:left}.contact-demo summary::-webkit-details-marker{display:none}.contact-demo[open] summary{background:#293c29}.demo-message{margin-top:20px;padding:22px;background:var(--paper);border:1px solid #b9c2ad;text-align:left;font-size:13px}.demo-message p{margin:8px 0 0}.footer{display:flex;align-items:center;justify-content:space-between;gap:26px;padding-block:36px}.footer .brand{font-size:26px}.footer p{font-size:10px;margin:0}.footer>a:last-child{font-size:11px}
@media(min-width:1400px){.hero{gap:70px}.hero-copy{padding-left:18px}}
@media(max-width:950px){.wrap{width:calc(100% - 48px)}nav{gap:16px}nav>a:first-child{display:none}.hero{gap:24px}h1{font-size:33px}.hero-note{max-width:270px}.concept,.flow{gap:35px}.menu-grid{gap:12px}.menu-card{padding:24px 17px}.menu-card h3{font-size:15px}.menu-card .price{font-size:25px}.section-heading h2{font-size:23px}}
@media(max-width:700px){.wrap{width:calc(100% - 40px)}.demo-banner{font-size:9px;padding:7px 10px}.demo-banner span{display:block;margin:1px 0 0;font-size:10px}.header{min-height:88px;gap:12px}.brand{font-size:29px}.brand span{font-size:8px}nav>a:not(.nav-contact){display:none}nav{font-size:11px}.nav-contact span{margin-left:5px}.hero{grid-template-columns:1fr;gap:26px;padding-top:8px;padding-bottom:50px}.hero-copy{padding:12px 0 0}.eyebrow{font-size:9px;margin-bottom:22px}h1{font-size:clamp(29px,7.7vw,43px);margin-bottom:20px}.hero-copy>p:not(.eyebrow):not(.hero-note){font-size:13px}.hero .button{margin-top:7px}.hero-note{max-width:none;font-size:10px}.hero-art{max-width:470px;width:100%;margin:auto}.hero-art svg{max-height:420px;object-fit:cover;object-position:50% 55%}.section{padding-block:52px}.concept,.flow{grid-template-columns:1fr;gap:18px}h2{font-size:25px}.concept-copy{padding-top:0;font-size:13px}.desktop-break{display:none}.values{gap:8px}.values span{font-size:10px;padding-inline:12px}.section-heading{display:block;margin-bottom:24px}.section-heading h2{font-size:25px}.section-heading p:last-child{margin-top:15px;margin-bottom:0}.menu-grid{grid-template-columns:1fr;gap:16px}.menu-card{padding:24px}.menu-number{float:right;font-size:30px;margin:0}.menu-card h3{font-size:19px}.menu-card>p{font-size:13px}.menu-card .price{font-size:30px;padding-block:8px}.menu-card .menu-detail{font-size:11px}.steps li{padding-block:21px}.flow>div>p:last-child{margin-bottom:16px}.contact-section{padding-block:50px}.contact-section h2{font-size:24px}.footer{flex-wrap:wrap;gap:22px}.footer p{width:100%;order:3}.footer>a:last-child{margin-left:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* 同梱写真版 */
.hero-photo{margin:0;min-width:0}.hero-art img{display:block;width:100%;height:auto;aspect-ratio:600/640;object-fit:cover;object-position:center 15%}@media(max-width:700px){.hero-photo{width:100%;max-width:470px;margin:auto}.hero-art img{max-height:none;aspect-ratio:4/5;object-position:center 20%}}


