:root{--ink:#302f27;--muted:#67675a;--cream:#fbf7ee;--yellow:#f5d363;--green:#355b43;--line:#deddd1;--orange:#cb6628}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:#fff;color:var(--ink);font-family:"Noto Sans JP","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.95;-webkit-text-size-adjust:100%}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.5;letter-spacing:.035em}h1,h2{font-family:"Yu Mincho","Hiragino Mincho ProN",serif;font-weight:600}h1{font-size:clamp(36px,4.1vw,62px);line-height:1.55}h2{font-size:clamp(28px,3vw,42px);margin-bottom:28px}h3{font-size:23px;margin-bottom:16px}p{margin-bottom:22px}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--green)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #cb6628;outline-offset:5px}img{display:block;width:100%;height:auto}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:900px}.section{padding-block:100px}.bottom-space{padding-bottom:100px}.cream{background:var(--cream)}.center{text-align:center;margin:36px 0 0}.eyebrow{display:block;color:var(--green);font-family:Arial,sans-serif;font-size:12px;letter-spacing:.16em;font-weight:700;line-height:1.6;margin-bottom:22px}.lead{font-size:18px;max-width:740px;color:var(--muted)}.large-text{font-size:21px;line-height:1.9}.note{font-size:14px;color:var(--muted)}header{background:rgba(255,255,255,.98);position:sticky;top:0;z-index:20;border-bottom:1px solid #eeeee6}.header-inner{max-width:1440px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:18px 40px}.brand{width:220px;flex-shrink:0}.brand img{width:100%;height:auto}nav{display:flex;gap:26px;align-items:center}nav a{text-decoration:none;font-size:13px;font-weight:700;white-space:nowrap;padding:10px 0}nav a[aria-current]{color:var(--green);box-shadow:0 2px var(--green)}nav a:last-child{background:var(--green);color:#fff;padding:12px 22px;border-radius:2px}.menu-toggle{display:none}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:44px;min-height:56px;padding:13px 26px;background:var(--green);color:white;text-decoration:none;font-size:14px;font-weight:700;border:1px solid var(--green);border-radius:2px}.button:hover{background:#234531;color:#fff}.button span{font-size:21px;line-height:1}.button.secondary{background:transparent;color:var(--green)}.button.secondary:hover{background:#e4ebdf}.hero{max-width:1520px;margin:0 auto;display:grid;grid-template-columns:44% 56%;padding:38px 40px 0;background:var(--cream);position:relative}.hero-copy{padding:50px 32px 48px 5.6vw}.hero-copy h1{margin-bottom:22px}.hero-copy p:not(.eyebrow){font-size:16px}.hero-photo{min-height:630px;position:relative;overflow:hidden;border-radius:150px 0 0 0}.hero-photo>img{height:100%;object-fit:cover;object-position:45% center}.photo-note{position:absolute;bottom:22px;right:20px;color:white;background:#233b2cd9;font-size:11px;letter-spacing:.1em;padding:8px 15px}.hero-sub{display:block;margin-top:20px;font-size:14px;text-decoration:none}.hero-sub span{padding-left:22px}.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;font-size:11px;color:var(--muted);padding:22px 0;letter-spacing:.07em}.hero-bottom a{text-decoration:none}.intro-grid{display:grid;grid-template-columns:1fr 1.15fr;gap:100px}.text-link{display:inline-block;margin-top:8px;text-decoration:none;border-bottom:1px solid var(--ink);font-size:14px;font-weight:700;padding-bottom:8px}.text-link span{margin-left:48px}.section-heading{margin-bottom:42px}.section-heading h2{margin-bottom:16px}.section-heading p{color:var(--muted)}.product-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px}.product-card{background:white}.product-card img{aspect-ratio:3/2;object-fit:cover}.product-copy{padding:30px 34px 35px}.product-copy h3{font-size:24px}.product-copy p:not(.eyebrow){font-size:15px;color:var(--muted)}.photo-link{display:block;overflow:hidden}.split{display:grid;grid-template-columns:1fr 1fr;gap:74px;align-items:center}.split img{aspect-ratio:3/2;object-fit:cover}.image-frame{overflow:hidden;border-radius:2px}.factory-banner{background:#edf1e8;padding:85px 0}.contact-band{background:#f3d678;padding:75px 0;text-align:center}.contact-band .eyebrow{color:#5b512e}.contact-band h2{margin-bottom:20px}.contact-band p{font-size:15px}.contact-band .button{min-width:270px}footer{padding:58px 0 20px;font-size:13px;background:#fff}.footer-grid{display:grid;grid-template-columns:1fr 1fr;gap:60px}.footer-logo{width:230px;margin-bottom:24px}.footer-nav{display:grid;grid-template-columns:1fr 1fr;align-content:start;gap:13px 30px}.footer-nav a{text-decoration:none}.copyright{margin-top:50px;padding-top:18px;border-top:1px solid var(--line);display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.skip{position:fixed;top:-100px;left:12px;z-index:100;background:white;padding:12px}.skip:focus{top:12px}.page-intro{padding-block:76px 60px}.page-intro h1{margin-bottom:28px}.brand-relation{display:flex;align-items:center;justify-content:space-around;gap:18px;background:var(--cream);border:1px solid var(--line);padding:30px}.brand-relation>div{text-align:center;flex:1}.brand-relation small{display:block;font-size:12px;color:var(--muted);margin-bottom:12px}.brand-relation strong{font-size:20px}.brand-relation img{max-width:195px;margin:auto}.cream .brand-relation{background:white}.product-detail{display:grid;grid-template-columns:1.1fr 1fr;gap:64px;align-items:center}.product-detail img{aspect-ratio:3/2;object-fit:cover}.ingredients{padding:20px 0 0 20px;border-top:1px solid var(--line);font-size:15px}.table-scroll{overflow-x:auto}.comparison{margin-top:55px}table{border-collapse:collapse;width:100%;font-size:14px;text-align:left}caption{text-align:left;margin-bottom:16px;color:var(--muted)}td,th{padding:20px;border-bottom:1px solid var(--line);vertical-align:top}thead{background:var(--cream)}.pop-layout{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.pop-layout img{height:auto}.wide-photo img{max-height:580px;object-fit:cover;border-radius:2px}.steps{padding:0;list-style:none;margin:0}.steps li{display:grid;grid-template-columns:85px 1fr;gap:20px;border-top:1px solid var(--line);padding:30px 0}.steps li>span{color:#a37e22;font-size:38px;font-family:Georgia,serif}.steps li p{margin-bottom:0;max-width:880px}.steps h3{font-size:23px;margin-bottom:10px}.check-list{padding:0;list-style:none}.check-list li{border-bottom:1px solid var(--line);padding:12px 0}.check-list li:before{content:'✓';color:var(--green);margin-right:12px}.process-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px 38px}.process-grid img{aspect-ratio:3/2;object-fit:cover;margin-bottom:24px}.process-grid .eyebrow{margin-bottom:10px}.process-grid h3{margin-bottom:12px}.profile{margin:0}.profile>div{display:grid;grid-template-columns:160px 1fr;border-bottom:1px solid var(--line);padding:24px 0;gap:25px}.profile dt{font-weight:700}.profile dd{margin:0}.policy h2{font-family:inherit;font-size:23px;margin-top:42px;margin-bottom:14px}.policy p{color:#4d5046}.form-box{background:var(--cream);padding:40px}.form-box label{display:block;font-weight:700;margin:22px 0 8px}.form-box input:not([type=checkbox]),.form-box select,.form-box textarea{width:100%;padding:12px;border:1px solid #aaa99d;background:white;border-radius:2px;color:var(--ink);font-size:16px}.form-box textarea{min-height:180px;resize:vertical}.required{color:#9c3b1e;font-size:12px;margin-left:12px}.optional{font-size:12px;color:var(--muted);margin-left:10px}.form-actions{display:flex;gap:16px;flex-wrap:wrap;margin-top:30px}.form-actions button{cursor:pointer}.form-actions button:disabled{opacity:.5;cursor:not-allowed}.alert{padding:20px 24px;border-left:4px solid var(--orange);background:#fff1df;margin-bottom:30px}.success{border-color:var(--green);background:#edf5e8}.form-error{color:#9c3b1e}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.consent{font-size:14px;font-weight:400!important}.contact-direct{padding:24px 0}.confirm dd{white-space:pre-wrap;overflow-wrap:anywhere}.confirm dt{font-weight:bold;margin-top:20px}.form-box .privacy-note{font-size:13px}.page-intro+.wide-photo{margin-top:0}[id]{scroll-margin-top:110px}@media(min-width:1450px){.hero-copy{padding-left:70px}}@media(max-width:1100px){.header-inner{padding:16px 24px}.brand{width:180px}nav{gap:16px}nav a{font-size:12px}.hero{padding:28px 28px 0}.hero-copy{padding:32px 25px 32px 10px}.hero-photo{min-height:590px}.wrap{width:calc(100% - 64px)}.split{gap:42px}.intro-grid{gap:55px}}@media(max-width:850px){.header-inner{padding:12px 20px}.brand{width:180px}.menu-toggle{display:flex;align-items:center;gap:22px;border:0;background:transparent;font-size:13px;min-height:44px;color:var(--ink)}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:18px 24px 28px;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:4px}nav.open{display:flex}nav a{font-size:15px;padding:12px}nav a[aria-current]{box-shadow:none;background:var(--cream)}.hero{grid-template-columns:1fr 1fr;padding:25px 24px 0}.hero-copy{padding:28px 20px 25px 0}.hero-copy h1{font-size:42px}.hero-photo{min-height:540px;border-radius:100px 0 0}.hero .button{gap:18px;padding:12px 18px;font-size:12px}.intro-grid{gap:36px}.section{padding-block:70px}.product-copy{padding:24px}.product-copy h3{font-size:21px}.product-grid{gap:24px}.product-detail{gap:36px}.product-detail h2{font-size:30px}.brand-relation{padding:24px 14px}.brand-relation strong{font-size:16px}.pop-layout{gap:35px}}@media(max-width:600px){body{font-size:16px;line-height:1.95}.wrap{width:calc(100% - 40px)}h1{font-size:36px}h2{font-size:29px}h3{font-size:22px}.hero{display:flex;flex-direction:column;padding:0}.hero-copy{padding:35px 24px 32px}.hero-copy h1{font-size:34px;margin-bottom:20px;line-height:1.5}.desktop-break{display:none}.hero-copy .eyebrow{font-size:10px;margin-bottom:18px}.hero-copy p:not(.eyebrow){font-size:15px}.hero-copy .button{font-size:14px;gap:25px;min-width:285px}.hero-photo{min-height:0;height:300px;border-radius:70px 0 0 0;margin-left:24px}.hero-photo img{object-position:45% 50%}.photo-note{font-size:10px;bottom:14px;right:12px}.hero-bottom{padding:18px 24px;font-size:9px;gap:10px}.hero-bottom>a{display:none}.section{padding-block:60px}.bottom-space{padding-bottom:60px}.intro-grid,.split,.product-grid,.product-detail,.pop-layout,.process-grid{grid-template-columns:1fr;gap:30px}.large-text{font-size:19px}.section-heading{margin-bottom:30px}.product-copy{padding:25px}.product-copy h3{font-size:22px}.product-grid{gap:28px}.factory-banner{padding:55px 0}.contact-band{padding:54px 0}.contact-band h2{font-size:28px}.contact-band p{font-size:14px}.footer-grid{grid-template-columns:1fr;gap:36px}.footer-logo{width:210px}.footer-nav{gap:13px}.copyright{margin-top:35px;font-size:10px;gap:15px}.page-intro{padding-block:48px 36px}.page-intro .lead{font-size:16px}.page-intro h1{font-size:34px}.brand-relation{flex-direction:column;padding:30px 16px;gap:14px}.brand-relation>span{transform:rotate(90deg)}.brand-relation img{width:180px}.brand-relation strong{font-size:20px}.brand-relation small{margin-bottom:5px}.steps li{grid-template-columns:45px 1fr;gap:16px;padding:25px 0}.steps li>span{font-size:29px}.steps h3{font-size:21px}.steps p{font-size:15px}.product-detail h2{font-size:28px}.ingredients{font-size:14px}td,th{padding:14px;min-width:150px}.process-grid{gap:40px}.profile>div{grid-template-columns:1fr;gap:5px;padding:20px 0}.profile dd{overflow-wrap:anywhere}.form-box{padding:22px}.form-box label{font-size:15px}.form-actions{flex-direction:column}.form-actions .button{justify-content:center}.policy h2{font-size:21px}.policy p{font-size:15px}.comparison h2{font-size:26px}.eyebrow{font-size:11px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{animation:none!important;transition:none!important}}
@media print{header,.contact-band,.menu-toggle{display:none}.wrap{width:100%}.section{padding-block:30px}body{font-size:11pt}.hero{padding:0}.hero-photo{min-height:0}.hero-copy{padding:20px}.hero-copy h1{font-size:30pt}footer{break-inside:avoid}a{color:inherit}}

@media(max-width:360px){.hero-copy h1{font-size:29px}.hero-copy .button{min-width:0;width:100%;gap:12px}.brand{width:155px}.header-inner{padding:10px 16px}}
@media(max-width:600px){.page-intro h1{font-size:28px}}@media(max-width:360px){.page-intro h1{font-size:24px}}