:root{--font-text:"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;--font-heading:"Yu Mincho","Hiragino Mincho ProN","Noto Serif CJK JP",serif;--ink:#252321;--red:#9b292b;--paper:#f8f6f1;--line:#d8d3ca}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:90px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-text);font-size:16px;line-height:1.95}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--red)}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--red);outline-offset:6px}.skip{position:absolute;top:-80px}.skip:focus{top:0;z-index:10;background:white}.review{background:var(--ink);color:white;font-size:11px;letter-spacing:.1em;padding:5px 6%;display:flex;justify-content:space-between}header{padding:22px 6%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{font-family:var(--font-heading);font-size:21px;font-weight:bold;text-decoration:none;letter-spacing:.12em}nav{display:flex;gap:30px;font-size:12px}nav a{text-decoration:none}.hero{padding:76px 8% 0;display:grid;grid-template-columns:1.2fr 1fr;gap:35px;max-width:1440px;margin:auto}.eyebrow{color:var(--red);font-size:13px;font-weight:500;letter-spacing:.06em;margin:0 0 22px}h1,h2,h3,.concept{font-family:var(--font-heading);font-weight:500}h1{font-size:clamp(42px,5.3vw,76px);line-height:1.45;letter-spacing:.045em;margin:0 0 28px}.lead{font-family:var(--font-heading);font-size:21px;line-height:1.9}.intro{font-size:14px;margin:28px 0}.button{display:inline-flex;justify-content:space-between;gap:56px;background:var(--red);color:white;text-decoration:none;font-size:13px;padding:14px 23px}.button:hover{background:var(--ink);color:white}.text-link{display:block;font-size:13px;margin:22px 0;width:fit-content}.hero-art{margin:0;align-self:center;max-width:390px;justify-self:end;transform:rotate(1deg)}.hero-art img{width:100%;height:auto;display:block;mix-blend-mode:multiply}figcaption{font-size:10px;color:#6a635d;margin-top:10px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;border-top:1px solid var(--line);padding:23px 0;font-size:12px;margin-top:30px}.section{padding:100px 8%;max-width:1440px;margin:auto}h2{font-size:clamp(30px,3.7vw,46px);line-height:1.5;margin:0 0 28px}h3{font-size:23px;line-height:1.6;margin:10px 0}.story{display:grid;grid-template-columns:1fr 1.2fr;gap:0 90px;border-top:1px solid var(--line)}.story>.eyebrow{grid-column:1/-1}.story p{margin-top:0}.note{font-size:12px;line-height:1.8;border-left:2px solid var(--red);padding:0 0 0 18px;color:#655e58;margin-top:30px}.section-head{display:flex;justify-content:space-between;gap:60px;align-items:center;margin-bottom:50px}.section-head>p{font-size:14px}.history{background:#eeebe4}.timeline{list-style:none;padding:0;margin:0}.timeline li{display:grid;grid-template-columns:minmax(205px,1fr) 3fr;gap:30px;border-top:1px solid #c8c2b8;padding:35px 0}.year{font-family:var(--font-text);color:var(--ink);font-size:28px;font-weight:500;line-height:1.65;letter-spacing:0;font-variant-numeric:lining-nums proportional-nums}.year span{font-size:17px;margin-left:6px}.tag{font-size:10px;border:1px solid #a9a198;padding:3px 8px;letter-spacing:.08em}.tag.red{border-color:var(--red);color:var(--red)}.timeline p{max-width:720px;margin:12px 0;font-size:15px}.timeline a{font-size:11px}.small{font-size:12px!important;color:#6b625b}.history-note{display:grid;grid-template-columns:1fr 3fr;gap:30px;border-top:2px solid var(--ink);padding-top:25px;margin-top:15px;font-size:13px}.history-note span{color:var(--red);font-weight:600}.history-note p{margin:0}.sea{text-align:center;background:var(--ink);color:var(--paper)}.sea .eyebrow{color:#d39b94}.places{display:flex;align-items:center;justify-content:center;gap:35px;margin:45px 0;font-family:var(--font-heading);font-size:25px}.places small{display:block;font:11px sans-serif;margin-top:12px;color:#c8c0b9}.places i{color:#9b6662}.sea .small{color:#c8c0b9}.comic-tabs{display:flex;border-bottom:1px solid var(--line);gap:4px}.comic-tabs button{font:inherit;cursor:pointer;border:0;background:transparent;padding:13px 24px;color:var(--ink)}.comic-tabs button[aria-pressed=true]{background:var(--red);color:white}#comic-page{padding:35px 0;min-height:270px;max-width:850px}#comic-page h3{font-size:29px}#comic-page p{font-size:16px}.page-no{color:var(--red);font-size:12px;letter-spacing:.12em}.product{background:var(--red);color:white;text-align:center}.product .eyebrow{color:#ead0ca}.concept{font-size:21px}.product h2{font-size:clamp(44px,6vw,72px);letter-spacing:.12em}.product dl{max-width:640px;margin:40px auto;text-align:left;font-size:14px}.product dl div{display:grid;grid-template-columns:120px 1fr;border-top:1px solid #c36e6c;padding:15px 0}.product dd{margin:0}.product .small{color:#f2d8d3}.future{border-top:1px solid #c36e6c;margin:45px auto 0;padding-top:30px;max-width:640px;font-size:14px}.sources>p{font-size:13px;max-width:800px}.sources ol{padding-left:22px;margin:35px 0}.sources li{padding:16px 0 16px 10px;border-bottom:1px solid var(--line);font-size:14px}.sources li span{display:block;font-size:12px;color:#6b625b;margin-top:8px}details{margin-top:35px;border:1px solid var(--line);padding:22px;font-size:13px}summary{cursor:pointer}.downloads{display:flex;flex-wrap:wrap;gap:20px}footer{padding:40px 8%;border-top:1px solid var(--line);display:flex;flex-wrap:wrap;justify-content:space-between;font-size:13px}footer p{font-size:12px}footer small{flex-basis:100%;font-size:10px;color:#6b625b;margin-top:20px}@media(max-width:700px){header{padding:18px 6%;align-items:flex-start}.brand{font-size:16px}nav{gap:13px;font-size:10px}.hero{padding:45px 6% 0;grid-template-columns:1fr;gap:25px}.hero-art{max-width:270px;justify-self:center;margin-top:10px}.hero-bottom{display:block;margin-top:10px}.hero-bottom span{display:block}.section{padding:65px 7%}.story{display:block}.section-head{display:block;margin-bottom:30px}.timeline li{grid-template-columns:1fr;gap:10px;padding:25px 0}.year{font-size:24px}.history-note{display:block}.history-note p{margin-top:12px}.places{gap:17px;flex-wrap:wrap;font-size:20px}.places i{display:none}.places span{width:40%;padding:14px}.comic-tabs{justify-content:space-between}.comic-tabs button{padding:11px 15px}.product dl div{grid-template-columns:100px 1fr}.review{font-size:9px}h1{font-size:43px}.lead{font-size:19px}.downloads{flex-direction:column}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.editorial-image{margin:28px 0 40px}.editorial-image img{display:block;width:100%;height:auto;mix-blend-mode:multiply}.hospitality>.editorial-image{max-width:880px;margin:35px auto 55px}.culture-columns{display:grid;grid-template-columns:1fr 1fr;gap:60px}.culture-columns p,.founders p,.flavor-note p{font-size:15px}.flavor-note{border-top:1px solid var(--line);margin-top:40px;padding-top:30px;max-width:900px}.founder-story{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}.founders .editorial-image{margin:0}.komurasaki{display:grid;grid-template-columns:1fr 1.2fr;gap:70px;margin-top:80px;border-top:1px solid var(--line);padding-top:50px}.large-quote{font-family:var(--font-heading);color:var(--red);font-size:25px!important;line-height:1.7;margin-top:35px}.hero-art{max-width:460px;transform:none}@media(max-width:700px){.culture-columns,.founder-story,.komurasaki{grid-template-columns:1fr;gap:28px}.hero-art{max-width:100%}.komurasaki{margin-top:50px}.culture-columns article+article{border-top:1px solid var(--line);padding-top:25px}}

.hero-art{max-width:390px}.finished-comic{display:block;width:100%;height:auto;border:1px solid var(--line)}#comic-page{max-width:760px;margin:auto}#comic-page h3{text-align:center}.comic-tabs{max-width:760px;margin:auto}.comic-controls{display:flex;justify-content:space-between;align-items:center;gap:15px;max-width:760px;margin:10px auto 25px}.comic-controls button{font:inherit;font-size:13px;border:1px solid var(--line);padding:12px 18px;cursor:pointer;background:transparent}.comic-controls button:disabled{opacity:.3;cursor:default}.comic-controls span{font-size:12px}.research-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px}.food-comparison{padding:28px 0;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 2fr;gap:40px}.food-comparison h3{margin-top:0}.source-note{font-size:12px;color:#6b625b}.research-grid p,.food-comparison p{font-size:15px}@media(max-width:700px){.research-grid,.food-comparison{grid-template-columns:1fr;gap:20px}.hero-art{max-width:270px}#comic{padding-left:4%;padding-right:4%}#comic-page h3{font-size:23px}.timeline .year{font-size:24px}.comic-controls button{padding:12px 14px}}

.beef-origin{background:#eeebe4;border-top:1px solid var(--line)}.origin-quote{font-family:var(--font-heading);font-size:clamp(26px,3.4vw,42px);line-height:1.7;color:var(--red);margin:25px 0 40px}.origin-body{max-width:780px;margin-left:auto}.origin-body>p{margin:0 0 25px}.origin-statement{font-family:var(--font-heading);font-size:26px;line-height:1.8;border-top:1px solid var(--line);padding-top:25px}.product a{color:inherit;font-size:13px}@media(max-width:700px){.origin-quote{font-size:25px}.origin-statement{font-size:23px}}

.comic-scroll{max-width:760px;margin:0 auto}.comic-sheet{margin:0 0 65px}.comic-sheet h3{text-align:center;margin-bottom:24px}.comic-sheet .page-no{text-align:center;font-size:11px;color:var(--red);letter-spacing:.15em}.comic-sheet details{margin-top:15px}.comic-sheet .finished-comic{width:100%;height:auto}@media(max-width:700px){.comic-sheet{margin-bottom:45px}.comic-sheet h3{font-size:23px}}

ruby{ruby-align:center}rt{font-family:"Hiragino Kaku Gothic ProN",sans-serif;font-size:.5em;letter-spacing:0;font-weight:400}

/* 落ち着いた和文の文字組み。数字も本文と同じ書体に揃える。 */
body{font-kerning:normal;font-variant-numeric:lining-nums proportional-nums;overflow-wrap:anywhere}
.review{letter-spacing:.02em}.brand{letter-spacing:.06em}
.timeline .year{font-feature-settings:"lnum" 1;overflow-wrap:normal}
.tag{font-size:11px;letter-spacing:.02em}
.comic-sheet .page-no{font-family:var(--font-text);font-size:12px;letter-spacing:.02em;color:#6b625b}
.sources li::marker{font-family:var(--font-text);font-size:12px;color:#6b625b}
.sources li{padding-left:6px}.product h2{letter-spacing:.06em}
@media(max-width:700px){.timeline li{grid-template-columns:1fr}.timeline .year{font-size:24px}.eyebrow{font-size:12px;letter-spacing:.05em}}

/* Shared typography and navigation for all language editions. */
header{flex-wrap:wrap;gap:16px 28px}
.language-switch{flex-basis:100%;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px 20px;padding-top:12px;border-top:1px solid var(--line);font-family:var(--font-text);font-size:12px;line-height:1.6}
.language-switch a{padding:5px 0;color:#6b625b;text-decoration:none}
.language-switch a[aria-current="page"]{color:var(--red);border-bottom:1px solid var(--red)}
html:lang(en) h1{font-size:clamp(34px,4.1vw,58px);letter-spacing:0;line-height:1.25}
html:lang(en) h2{font-size:clamp(29px,3.3vw,43px);letter-spacing:0;line-height:1.35}
html:lang(en) h3{font-size:23px;line-height:1.45}
html:lang(en) body{font-family:Arial,"Hiragino Sans",sans-serif;line-height:1.8;overflow-wrap:break-word}
html:lang(en) .brand{font-size:20px;letter-spacing:.02em}
html:lang(en) .year{font-size:25px}
html:lang(en) .tag{display:inline-block;line-height:1.5}
html:lang(en) .button{gap:24px}
html:lang(en) .product h2{font-size:clamp(34px,5vw,62px);letter-spacing:0}
html:lang(en) .product dl div{grid-template-columns:150px 1fr;gap:15px}
html:lang(ko){--font-text:"Apple SD Gothic Neo","Malgun Gothic",sans-serif;--font-heading:"Apple SD Gothic Neo","Malgun Gothic",sans-serif}
html:lang(ko) body{word-break:keep-all;overflow-wrap:break-word;line-height:1.9}
html:lang(ko) h1{font-size:clamp(36px,4.8vw,66px);letter-spacing:0}
html:lang(zh){--font-text:"PingFang SC","Microsoft YaHei",sans-serif;--font-heading:"Songti SC","SimSun",serif}
html:not(:lang(ja)) .comic-sheet details{border:0;border-left:2px solid var(--red);padding:8px 0 8px 20px}
html:not(:lang(ja)) .comic-sheet summary{font-weight:600;line-height:1.6}
html:not(:lang(ja)) .comic-sheet details p{margin:12px 0;font-size:15px}
@media(max-width:700px){header{gap:13px}.language-switch{justify-content:flex-start;gap:8px 20px}.brand{flex-basis:100%}nav{flex-wrap:wrap;font-size:12px;gap:20px}html:lang(en) .year{font-size:23px}html:lang(en) .product dl div{grid-template-columns:1fr;gap:5px}html:lang(en) .places span{width:44%}}
