/* Interior pages share the approved paper, typography and fine rules. */
body[data-page]{--page-accent:#215639;--page-text:#215639}
body[data-page="yuima"]{--page-accent:#38a169;--page-text:#276f4b}
body[data-page="sabaki"]{--page-accent:#1a365d;--page-text:#1a365d}
body[data-page="kassha"]{--page-accent:#9b4a2c;--page-text:#9b4a2c}
main{min-width:0}main h1,main h2,main h3{color:var(--page-text)}
main h2,main h3{font-family:'Noto Serif JP',serif}
main p,main li,main dd,main td{overflow-wrap:anywhere}
.business-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:28px 8%;align-content:center;min-height:850px;min-height:max(850px,100svh);padding:160px 7% 95px;border-bottom:1px solid var(--page-accent)}
.business-heading{grid-column:1;grid-row:1;align-self:end}
.business-heading .eyebrow{color:var(--page-text);margin-bottom:26px}
.business-heading h1{font:400 clamp(64px,7.5vw,118px)/1.1 Georgia,serif;letter-spacing:-.045em}
.business-heading .reading{margin:14px 0 28px;color:var(--page-text)}
.business-heading h2{font-size:clamp(19px,2vw,28px);line-height:1.65}
.business-model{grid-column:2;grid-row:1 / 3;position:relative;min-width:0;min-height:430px;align-self:stretch}
.business-model #scene{position:absolute;inset:0;width:100%;height:100%;visibility:hidden}
.scene-ready .business-model #scene{visibility:visible}
.business-model .fallback-art{position:absolute;left:10%;top:10%;width:80%;height:80%;object-fit:contain;filter:drop-shadow(12px 20px 15px #23392e20)}
.business-intro{grid-column:1;grid-row:2;max-width:580px;line-height:2.15}
.etymology{color:var(--page-text);font-size:14px;margin-bottom:25px}
.page-section{padding:100px 7%;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2.2fr);gap:7%;border-bottom:1px solid var(--line)}
.section-heading{min-width:0}.section-index{display:block;color:var(--page-text);font:14px Georgia,serif;margin-bottom:24px}
.section-heading h2{font-size:clamp(22px,2.1vw,32px);line-height:1.7}
.section-body{min-width:0}.section-body>p{max-width:750px}.section-body>p+p{margin-top:25px}
.plain-list{list-style:none;margin:0;padding:0}.plain-list li{position:relative;padding:17px 0 17px 24px;border-bottom:1px solid var(--line)}
.plain-list li:before{content:'';position:absolute;left:0;top:30px;width:6px;height:6px;background:var(--page-accent);border-radius:50%}
.subheading{font-size:24px;line-height:1.6;margin-bottom:28px}.editorial-rows+.subheading{margin-top:60px}
.editorial-rows{list-style:none;padding:0;margin:35px 0 0}.editorial-rows>li{display:grid;grid-template-columns:55px minmax(0,1fr);gap:20px;border-top:1px solid var(--page-accent);padding:32px 0 45px}
.row-number{font:36px/1.3 Georgia,serif;color:var(--page-text)}.editorial-rows h3{font-size:clamp(22px,2.2vw,30px);line-height:1.6;margin-bottom:20px}
.line-name{font-size:13px;color:var(--page-text);letter-spacing:.04em;margin-bottom:15px}
.menu-facts{margin:24px 0 0}.menu-facts>div{display:grid;grid-template-columns:minmax(90px,1fr) minmax(0,3fr);gap:18px;padding:12px 0;border-top:1px solid var(--line)}
.menu-facts dt{font-size:13px;color:var(--page-text)}.menu-facts dd{margin:0;font-size:16px}
.flow-agent{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px;margin-bottom:60px}.flow-agent h3{font-size:24px}.flow-agent .menu-facts>div{display:block}.flow-agent dt{margin-bottom:8px}
.process{list-style:none;margin:0;padding:0}.process li{display:grid;grid-template-columns:58px minmax(0,1fr);gap:20px;padding:25px 0;border-top:1px solid var(--line)}.process li:first-child{border-color:var(--page-accent)}.process span{font:36px/1.4 Georgia,serif;color:var(--page-text)}
.related-links{display:flex;gap:40px;margin-top:35px}.related-links a{flex:1;color:var(--page-text);border-color:var(--page-accent)}
.page-contact{padding:100px 7%;background:#eeeee5}.page-contact h2{font-size:clamp(30px,4.3vw,66px);line-height:1.65}.page-contact h2 span{color:var(--page-text)}
.page-contact-links{display:flex;align-items:end;gap:70px;margin-top:40px}.page-contact-links .text-link{width:min(100%,420px);color:var(--page-text);border-color:var(--page-accent)}.page-contact-links .phone{margin:0;color:var(--page-text);border-color:var(--page-accent)}
.next-business{padding:70px 7%;display:grid;grid-template-columns:1fr auto auto;align-items:center;gap:45px;color:var(--page-text);border-top:1px solid var(--page-accent);border-bottom:1px solid var(--page-accent)}
.next-business>span:first-child{font:18px 'Noto Serif JP',serif}.next-business strong{font:400 clamp(50px,8vw,120px)/1.2 Georgia,serif;letter-spacing:-.045em}.next-business>span:last-child{font-size:50px;transition:transform .25s}.next-business:hover>span:last-child{transform:translate(4px,-4px)}
.page-title{padding:190px 7% 95px;border-bottom:1px solid var(--line)}.page-title h1{font-size:clamp(38px,6vw,88px);line-height:1.6}.page-title>p:last-child:not(.eyebrow){max-width:650px;margin-top:35px;font-size:16px}
.story-prose{font-family:'Noto Serif JP',serif;font-size:clamp(21px,2.1vw,30px);line-height:2}.story-prose p+p{margin-top:1.7em}
.timeline{list-style:none;padding:0;margin:65px 0 0}.timeline li{display:grid;grid-template-columns:100px minmax(0,1fr);gap:30px;border-top:1px solid var(--line);padding:24px 0}.timeline time{font:22px/1.6 Georgia,serif;color:var(--page-text)}
body[data-page="about"] .editorial-copy>p+p{margin-top:25px}body[data-page="about"] .farm{gap:7%;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}body[data-page="about"] .editorial-copy>p:not(.note):not(.eyebrow){font-size:16px}
.company-table{border-collapse:collapse;width:100%;font-size:16px}.company-table th,.company-table td{padding:24px 0;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}.company-table th{width:28%;padding-right:22px;font-weight:400;font-size:14px;color:var(--page-text)}.company-table a{text-decoration:underline;text-underline-offset:5px;overflow-wrap:anywhere}
.direct-contact{padding:55px 7% 100px}.direct-contact>a{display:grid;grid-template-columns:1fr auto;gap:12px 24px;border-bottom:1px solid var(--page-accent);padding:32px 0;color:var(--page-text)}.direct-contact>a>span{grid-column:1/-1;font-size:13px}.direct-contact strong{font:400 clamp(28px,5.8vw,84px)/1.4 Georgia,serif;letter-spacing:-.02em;overflow-wrap:anywhere;min-width:0}.direct-contact i{font-style:normal;font-size:clamp(24px,4vw,50px);align-self:center}
.subject-links>a{display:grid;grid-template-columns:minmax(110px,1fr) minmax(0,2.4fr) auto;gap:24px;padding:28px 0;border-top:1px solid var(--line);align-items:center}.subject-name{color:var(--page-text);font-family:'Noto Serif JP',serif}.subject-links>a>span:last-child{grid-column:3}.subject-links a:hover{border-color:var(--page-accent)}address{font-style:normal;line-height:2.2}
@media(max-width:1000px){.page-section{grid-template-columns:minmax(0,1fr);gap:36px}.section-heading{display:flex;align-items:baseline;gap:24px}.section-index{margin:0}.business-hero{column-gap:5%}.next-business{gap:25px}}
@media(max-width:768px){
.business-hero{display:flex;flex-direction:column;min-height:0;padding:calc(var(--header-height) + 48px) 7% 65px;gap:24px}.business-heading{align-self:stretch}.business-heading h1{font-size:clamp(44px,12vw,90px)}.business-heading .eyebrow{margin-bottom:20px}.business-heading .reading{margin-bottom:18px}.business-heading h2{font-size:19px}.business-model{flex:none;min-height:0;height:290px;height:clamp(250px,38svh,360px);width:100%}.business-intro{max-width:none;font-size:16px}.etymology{margin-bottom:20px}
.page-section{padding:65px 7%;gap:28px}.section-heading h2{font-size:23px}.section-index{font-size:13px}.editorial-rows>li{grid-template-columns:minmax(0,1fr);gap:15px;padding:28px 0 35px}.row-number{font-size:29px}.editorial-rows h3{font-size:22px}.subheading{font-size:23px}.menu-facts>div{display:block}.menu-facts dt{margin-bottom:6px}.flow-agent{grid-template-columns:1fr;gap:30px}.process li{grid-template-columns:minmax(0,1fr);gap:16px}.process span{font-size:30px}.related-links{flex-direction:column;gap:15px}.page-contact{padding:65px 7%}.page-contact h2{font-size:clamp(26px,7.5vw,36px)}.page-contact-links{display:block;margin-top:25px}.page-contact-links .phone{margin-top:30px}.next-business{padding:45px 7%;grid-template-columns:1fr auto;gap:22px}.next-business>span:first-child{grid-column:1/-1;font-size:15px}.next-business strong{font-size:clamp(48px,12.5vw,80px)}.next-business>span:last-child{font-size:35px}
.page-title{padding:calc(var(--header-height) + 56px) 7% 65px}.page-title h1{font-size:clamp(32px,8.5vw,56px)}.story-prose{font-size:21px;line-height:2}.timeline li{grid-template-columns:80px minmax(0,1fr);gap:20px}.timeline time{font-size:20px}.company-table th,.company-table td{display:block;width:100%}.company-table th{border:0;padding:22px 0 8px}.company-table td{padding:0 0 22px}.direct-contact{padding:15px 7% 65px}.direct-contact>a{gap:15px 10px}.direct-contact strong{font-size:clamp(22px,6.4vw,48px)}.subject-links>a{grid-template-columns:minmax(0,1fr) auto;gap:12px}.subject-links>a>span:first-child{grid-column:1}.subject-links>a>span:nth-child(2):not(:last-child){grid-column:1;grid-row:2}.subject-links>a>span:last-child{grid-column:2;grid-row:1/3}
}

@media(max-width:768px){
  .section-heading{display:block}
  .section-index{margin-bottom:12px}
  .timeline li{grid-template-columns:minmax(0,1fr);gap:8px}
  .etymology,.line-name,.menu-facts dt,.company-table th,.direct-contact>a>span{font-size:15px}
  .company-table a{display:inline-flex;align-items:center;min-height:44px;max-width:100%}
  .business-heading h2{font-size:clamp(18px,5vw,24px)}
  .section-heading h2,.editorial-rows h3,.subheading{font-size:clamp(21px,5.8vw,28px)}
}
