@charset "UTF-8";
/*
  refine.css — 2026-10-08 デザイン調整（「AIっぽさ・素人っぽさ」を減らす）
  全3ページで brand-header.css の後に読み込む最終レイヤー。
  文章・価格・リンク・写真は変更せず、見た目の扱いだけを整える。
  元に戻す場合は、各HTMLからこのファイルの<link>を外すだけでよい。
*/

/* ---------- 1. 文字：見出しを確実に明朝で、本文の灰色を濃く ---------- */
:root{
  --serif:"Hiragino Mincho ProN","Yu Mincho","YuMincho","Noto Serif JP","Noto Serif CJK JP",serif;
  --sans:"Hiragino Kaku Gothic ProN","Hiragino Sans","Yu Gothic","YuGothic","Noto Sans JP","Noto Sans CJK JP",Meiryo,sans-serif;
  --muted:#4e5850;          /* 薄すぎた灰色の本文を、読みやすい墨色へ */
  --gold-ink:#8a6d38;       /* 生成りの上で読める金 */
}
body{color:#24392f}
p{color:inherit}

/* 気持ちを伝える一文は明朝で（ゴシックの説明文と役割を分ける） */
.story-lead,.about-closing,.table-closing,.rice-story-points,
.consulting-business-heading p,.business-heading>p{font-family:var(--serif)}

/* ---------- 2. テンプレートっぽい飾りを外す ---------- */
/* 英字の大文字ラベル（ABOUT US / COMPANY / CONTACT / OUR SUPPORT など）は、
   すぐ下に日本語の見出しがあるため重複。非表示にする。 */
.section-kicker .eyebrow,
.company .eyebrow,
.contact .eyebrow,
.service-aside .eyebrow,
.strip-origin,
.support-label>span:first-child,
.consulting-hero-mark>span:last-child{display:none}

/* 1つしかないのに付いていた「01」 */
.service-aside .service-number{display:none}

/* 順番のない実践経験に付いていた 01〜06 → 小さな金の点へ */
.experience-list li>span{font-size:0;line-height:0;align-self:center}
.experience-list li>span::before{content:"";display:block;width:.45rem;height:.45rem;border-radius:50%;background:var(--gold-ink);opacity:.75}
.experience-list li{grid-template-columns:.9rem minmax(0,1fr)}

/* 「―― ラベル」の線をやめ、小さな金の明朝の見出しに */
.story-label{gap:0;font:500 .875rem/1.8 var(--serif);letter-spacing:.24em;color:var(--gold-ink)}
.story-label::before{display:none}
.soil-inner .story-label{color:#d9c99e}
.section-kicker>span:not(.eyebrow){font-family:var(--serif);letter-spacing:.24em;color:var(--gold-ink)}

/* ---------- 3. 冒頭（ファーストビュー）：見出しを主役に ---------- */
@media (min-width:761px){
  .cover-copy{
    min-height:clamp(40rem,52vw,48rem);
    grid-template-columns:auto auto minmax(0,1fr);
    grid-template-rows:auto 1fr auto auto;
    column-gap:clamp(1.2rem,2vw,2rem);
    padding:3rem 6% 3.5rem;
  }
  .cover-copy .eyebrow{grid-column:1/-1;grid-row:1}
  /* 縦書きの読み順（右→左）：見出し → 添え書き */
  .cover-copy h1{grid-column:2;grid-row:2;font-size:clamp(2.8rem,4.6vw,4.6rem);line-height:1.25;letter-spacing:.2em;gap:.5em}
  .cover-copy h1 span:last-child{padding-top:2.6em}
  .cover-name{grid-column:1;grid-row:2;justify-self:start;align-self:end;margin:0 0 .4rem;font-size:.9375rem;letter-spacing:.3em;color:#efe6cd;opacity:.95}
  .cover-intro{grid-column:1/-1;grid-row:3;margin-top:1.5rem}
  .cover-actions{grid-column:1/-1;grid-row:4;flex-direction:row;align-items:center;justify-self:start;gap:2rem;margin-top:1.8rem}
}
/* 白い塗りの四角ボタン → 写真になじむ細い線のボタン */
.cover-actions .story-button{background:transparent;color:#fffef9;border:1px solid rgba(255,254,249,.75);letter-spacing:.12em;font-family:var(--serif)}
.cover-actions .story-button:hover{background:#fffef9;color:var(--ink)}
.cover-actions .story-text-link{color:#fffef9;border-color:rgba(255,254,249,.55);letter-spacing:.1em}
.cover-grain strong{letter-spacing:.16em}
.cover-photo figcaption{opacity:.7}

/* ---------- 4. ボタン：明朝でゆったり ---------- */
.story-button,.rice-action{font-family:var(--serif);letter-spacing:.14em;padding-left:2.4rem;padding-right:2.4rem}

/* ---------- 5. 余白とリズム ---------- */
.story-strip p{color:var(--muted)}
.story-strip{justify-content:center;gap:1rem 3.5rem}
h2{letter-spacing:.12em}

/* ---------- 6. スマートフォン ---------- */
@media (max-width:760px){
  .cover-copy h1{font-size:clamp(2.3rem,10vw,3rem);letter-spacing:.18em}
  .cover-copy h1 span:last-child{padding-top:2.2em}
  .cover-actions{flex-direction:row;flex-wrap:wrap;gap:.8rem 1.6rem;align-items:center}
  .story-strip{justify-content:flex-start}
}

/* ---------- 7. ロゴ：名刺写真の切り抜き → くっきりしたSVGへ（2026-10-08） ---------- */
/* logo-lockup.svg は元のロゴを線データに起こしたもの。形・配置・金色・筆文字は元のまま。 */
.header .brand-identity{padding:.7rem 2.4rem .7rem 1rem}
.header .brand-logo{display:block;height:3.6rem;width:auto;flex:none;position:relative;z-index:1}
@media(max-width:800px){.header .brand-logo{height:3rem}}
@media(max-width:360px){.header .brand-logo{height:2.7rem}}
@media(forced-colors:active){.header .brand-logo{display:none}}
/* フッター・署名などのマークも、AI生成のマスク画像ではなく同じ線データに */
.brand-symbol{-webkit-mask-image:url('/logo-mark-solid.svg');mask-image:url('/logo-mark-solid.svg')}

/* つぶ感を冒頭の主役に。縦書きと画面幅に応じた文字サイズを引き継ぐ。 */
.cover-copy h1 .cover-headline{
  font-size:1.4em;
  line-height:1.15;
  letter-spacing:.1em;
}
/* 1列の見出しには、以前の2列目用の字下げを適用しない。 */
.cover-copy h1 span:only-child{padding-top:0}

/* v35: オンラインショップ導線・電話 */
.rice-teaser-actions{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.5rem}
.rice-teaser-actions .story-button{margin:0}
.rice-teaser-actions .story-button:not(.shop-button){background:transparent;color:var(--ink)}
.rice-teaser-actions .story-button:not(.shop-button):hover{background:var(--ink);color:var(--paper)}
.contact-options .email-button+.email-button{margin-top:1.25rem}
.lower-navigation a.nav-shop{background:#143a2c;border-color:#143a2c;color:#fff}
.lower-navigation a.nav-shop:hover,.lower-navigation a.nav-shop:focus-visible{background:#0e2a20;color:#fff}
.rice-contact .rice-action+.rice-action{margin-top:.9rem}
.rice-contact .rice-action{min-width:16rem}

/* v36: 購入しやすさの改善 */
.buy-button{display:inline-flex;align-items:center;justify-content:center;min-height:3rem;padding:.8rem 1.6rem;background:#143a2c;color:#fffef9;border:1px solid #143a2c;font:500 1rem/1.5 var(--sans);letter-spacing:.08em;text-decoration:none;transition:background .2s}
.buy-button:hover,.buy-button:focus-visible{background:#0e2a20;color:#fffef9}
.cover-actions .buy-button{background:#fffef9;color:#143a2c;border-color:#fffef9;font-weight:600}
.cover-actions .buy-button:hover,.cover-actions .buy-button:focus-visible{background:#efdfb8;border-color:#efdfb8;color:#143a2c}
.cover-actions{flex-wrap:wrap;align-items:center}
.cover-price{flex-basis:100%;margin:0 0 .2rem;color:#fffef9;font:500 .9375rem/1.6 var(--sans);letter-spacing:.04em}
.cover-price small{font-size:.8125rem;margin-left:.6rem;opacity:.9}
.header .navigation>a.nav-buy{background:#143a2c;color:#fffef9;border:1px solid #143a2c;border-radius:999px;padding:.35rem .95rem;min-height:2.75rem;display:inline-flex;align-items:center}
.header .navigation>a.nav-buy:hover,.header .navigation>a.nav-buy:focus-visible{background:#0e2a20;color:#fffef9}
.buy-block{scroll-margin-top:.75rem}
.buy-title{font:500 1.0625rem/1.6 var(--serif);letter-spacing:.08em;margin:0 0 1rem;color:var(--ink)}
.product-option .amazon-button{min-height:3rem;font-size:1rem}
.option-deal{display:inline-block;margin:.2rem 0 .9rem;padding:.2rem .7rem;border:1px solid #b08a3e;color:#6d531f;font-size:.875rem;line-height:1.7}
.buy-facts{margin:1.75rem 0 0;padding:1.25rem 1.4rem;background:#f6f4ea;border:1px solid #cdd2c3;font-size:.875rem;line-height:1.8}
.buy-facts div{display:grid;grid-template-columns:6.5rem minmax(0,1fr);gap:.8rem;padding:.35rem 0}
.buy-facts div+div{border-top:1px dashed #cdd2c3}
.buy-facts dt{color:var(--muted);margin:0}
.buy-facts dd{margin:0}
@media(max-width:600px){
 .cover-copy{min-height:0;padding-top:1.4rem;padding-bottom:1.6rem;gap:1rem .8rem}
 .cover-copy h1{font-size:clamp(1.9rem,8.4vw,2.4rem)}
 .cover-actions{gap:.75rem 1rem}
 .cover-actions .buy-button{width:100%;font-size:1rem;min-height:3rem}
 .cover-actions .story-button{font-size:.875rem;min-height:2.75rem;padding:.6rem 1rem}
 .header .navigation>a.nav-buy{padding:.3rem .8rem}
}
@media(max-width:540px){
 .purchase-inner{display:flex;flex-direction:column}
 .purchase-intro{display:contents}
 .purchase-intro>div{order:1;margin-bottom:2rem}
 .buy-block{order:2}
 .purchase-photo{order:3;width:70%;margin:2.5rem auto 0}
 .purchase-help{order:4}
 .purchase-intro h2{font-size:1.7rem;line-height:1.7;margin-bottom:1rem}
 .product-option{padding:1.5rem 0}
 .product-option p:not(.price):not(.price-note):not(.option-deal):not(.option-note):not(.purchase-status){margin-bottom:1rem}
 .buy-facts div{grid-template-columns:5.5rem minmax(0,1fr);gap:.6rem}
}
@media(prefers-reduced-motion:reduce){.buy-button{transition:none}}
/* v36: 冒頭の高さ調整（購入ボタンを最初の画面に） */
.cover-copy{min-height:0}
.cover-copy h1{font-size:clamp(2.2rem,min(4.6vw,6.2vh),4.6rem)}
@media(max-width:800px){
 .header .navigation>a.nav-buy{display:inline-flex;font-size:.875rem;padding:.3rem .9rem}
}
@media(max-width:600px){
 .header{padding-top:.4rem;padding-bottom:.4rem}
 .cover-copy .cover-intro{display:none}
 .cover-copy h1{font-size:clamp(1.75rem,min(8.4vw,5.6vh),2.4rem)}
 .cover-price small{display:block;margin:0}
}
@media(max-width:360px){
 .header .navigation>a.nav-buy{padding:.3rem .7rem;font-size:.8125rem}
}
@media(max-width:800px){.header .navigation>a.nav-buy{display:inline-flex!important}}
@media(min-width:601px) and (max-height:900px){
 .cover-copy{padding-top:1.6rem;padding-bottom:2rem;row-gap:1.1rem}
 .cover-copy .cover-intro{display:none}
}
@media(max-width:600px) and (max-height:700px){
 .cover-copy{padding-top:1rem;padding-bottom:1.2rem;row-gap:.7rem}
 .cover-copy h1{font-size:1.6rem;letter-spacing:.08em}
 .cover-name{font-size:.875rem}
}
.cover-actions{justify-content:flex-start}
.cover-price{width:100%;text-align:left;order:-1}
@media(min-width:601px) and (max-height:900px){.cover-copy h1{font-size:clamp(2.2rem,min(4.6vw,5.4vh),4.6rem)}}

/* v37: 炊きたての写真 */
.table-photo{max-width:34rem;margin:3.5rem auto 0}
.table-photo img,.rice-teaser .rice-photo img{width:100%;height:auto;display:block}
.table-photo figcaption{font-size:.8125rem;color:var(--muted);margin-top:.8rem;text-align:center;letter-spacing:.08em}
@media(max-width:540px){.table-photo{margin-top:2.5rem}}

/* v38: 冒頭を明るく（膜は文字のある場所だけ） */
.tsumugi-cover::before{background:linear-gradient(180deg,rgba(9,28,20,.42) 0%,rgba(9,28,20,0) 34%,rgba(9,28,20,0) 52%,rgba(9,28,20,.62) 100%),linear-gradient(90deg,rgba(9,28,20,.55),rgba(9,28,20,.25) 22%,rgba(9,28,20,0) 40%)!important}
.cover-copy{text-shadow:0 1px 3px rgba(0,0,0,.35),0 2px 14px rgba(0,0,0,.35)}
.cover-copy .buy-button,.cover-copy .story-button{text-shadow:none}
@media(max-width:600px){.tsumugi-cover::before{background:linear-gradient(180deg,rgba(9,28,20,.5) 0%,rgba(9,28,20,.12) 45%,rgba(9,28,20,.15) 58%,rgba(9,28,20,.7) 100%)!important}}
/* v38: みんなで、田んぼへ */
.together-chapter{background:var(--paper,#f6f3ea)}
.together-photo{margin:0}
.together-photo img{display:block;width:100%;height:auto;max-height:78vh;object-fit:cover}
.together-photo figcaption{max-width:1340px;margin:.7rem auto 0;padding:0 7%;font-size:.8125rem;color:var(--muted);letter-spacing:.08em}
.together-copy{padding-top:3.5rem;padding-bottom:1rem;text-align:center}
.together-copy .story-label{justify-content:center}
.together-copy h2{font-size:clamp(1.6rem,3vw,2.4rem);line-height:1.8;letter-spacing:.08em;margin:0 0 1.4rem}
.together-copy p:last-child{line-height:2.2;color:var(--ink)}
@media(max-width:540px){.together-copy{padding-top:2.5rem}.together-copy p:last-child br{display:none}.together-copy p:last-child{text-align:left}}

/* v41: 分野をはっきり */
.consulting-hero h1{font-size:clamp(1.9rem,3.6vw,3.4rem);line-height:1.7}
.fields{max-width:1340px;margin:0 auto;padding:1rem 7% 5rem}
.fields-head h2{font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.8;margin:0 0 2.2rem}
.field-cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1.5rem}
.field-card{background:#fbfaf5;border:1px solid var(--line);border-top:4px solid #143a2c;padding:1.8rem 1.6rem 1.6rem}
.field-tag{display:inline-block;margin:0 0 1rem;padding:.2rem .9rem;background:#143a2c;color:#fffef9;font:500 .9375rem/1.7 var(--sans);letter-spacing:.12em}
.field-card h3{font:500 1.35rem/1.7 var(--serif);margin:0 0 .8rem;letter-spacing:.04em}
.field-who{font-size:.875rem;color:#6d531f;margin:0 0 1rem;line-height:1.8}
.field-card ul{margin:0;padding:0;list-style:none}
.field-card li{position:relative;padding:.55rem 0 .55rem 1.1rem;border-top:1px dashed var(--line);font-size:.9375rem;line-height:1.8}
.field-card li::before{content:"";position:absolute;left:0;top:1.25rem;width:.45rem;height:.45rem;background:#b08a3e}
.strength{background:#143a2c;color:#fffef9}
.strength-inner{max-width:1240px;margin:0 auto;padding:5rem 7%;display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:2rem 8%;align-items:center}
.strength .story-label{color:#e6cf97}
.strength h2{font-size:clamp(1.6rem,2.6vw,2.4rem);line-height:1.8;margin:0 0 1.4rem;color:#fffef9}
.strength-inner>div>p{line-height:2.1;color:#e9ece4;margin:0}
.strength-figures{margin:0;display:grid;gap:1rem}
.strength-figures div{border:1px solid rgba(255,254,249,.35);padding:1.1rem 1.4rem}
.strength-figures div:first-child{background:#fffef9;color:#143a2c}
.strength-figures dt{font-size:.875rem;margin-bottom:.2rem}
.strength-figures dd{margin:0;font-size:1rem}
.strength-figures strong{font:500 2.4rem/1.3 Georgia,serif;margin-right:.2rem}
.strength-note{grid-column:1/-1;font-size:.8125rem;color:#c9d0c4;margin:0}
.support-types--plain{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:3rem;margin-top:2rem}
@media(max-width:900px){.field-cards{grid-template-columns:1fr}.strength-inner{grid-template-columns:1fr}.support-types--plain{grid-template-columns:1fr;gap:2rem}}
@media(max-width:700px){.fields{padding:.5rem 7% 3.5rem}.strength-inner{padding:3.5rem 7%}.strength-figures strong{font-size:2rem}}

.sp-only{display:none}
@media(max-width:700px){.sp-only{display:inline}}

/* v41b: 他業種からの拠点立ち上げ */
.support-types--plain{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}
.start-support{background:#fbfaf5;border:1px solid var(--line);border-top:4px solid #143a2c;padding:1.8rem 1.6rem}
.start-steps{list-style:none;margin:1.4rem 0 0;padding:0;display:grid;gap:.2rem}
.start-steps li{display:grid;grid-template-columns:2.2rem minmax(0,1fr);gap:.8rem;align-items:start;padding:.8rem 0;border-top:1px dashed var(--line)}
.start-steps li>span{display:flex;align-items:center;justify-content:center;width:2.2rem;height:2.2rem;border-radius:50%;background:#143a2c;color:#fffef9;font:500 1rem/1 Georgia,serif}
.start-steps p{margin:0;font-size:.9375rem;line-height:1.85}
.start-steps strong{display:block;font:500 1.0625rem/1.7 var(--serif);color:var(--ink)}
@media(max-width:900px){.support-types--plain{grid-template-columns:1fr}}
.consulting-page .support-types--plain article.start-support{padding:1.8rem 1.6rem!important}
@media(max-width:700px){.consulting-page .support-types--plain article.start-support{padding:1.4rem 1.2rem!important}}

/* v42: 新規立ち上げを主役に */
.start{max-width:1240px;margin:0 auto;padding:1rem 7% 5rem}
.start-head h2{font-size:clamp(1.6rem,2.8vw,2.6rem);line-height:1.7;margin:0 0 1.8rem}
.start .start-support{background:#fbfaf5;border:1px solid var(--line);border-top:4px solid #143a2c;padding:2.2rem 2.4rem}
.start .start-support>p:first-child{font-size:1.0625rem;line-height:2.1;margin:0}
.start .start-steps{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:2.5rem}
.support-types--single{max-width:46rem}
@media(max-width:800px){.start .start-steps{grid-template-columns:1fr}}
@media(max-width:700px){.start{padding:.5rem 7% 3.5rem}.start .start-support{padding:1.4rem 1.2rem}.start .start-support>p:first-child{font-size:1rem}}
.nw{display:inline-block;white-space:nowrap}
@media(max-width:360px){#fields-title,#start-title{font-size:1.4rem}}

/* v42b: 初回相談無料 */
.free-badge{display:flex;align-items:center;gap:.7rem;margin:0 0 1.4rem;font:500 1rem/1.6 var(--sans);color:#143a2c}
.free-badge>span{flex:none;display:inline-flex;align-items:center;justify-content:center;padding:.15rem .75rem;background:#b08a3e;color:#fffef9;font-size:.875rem;letter-spacing:.1em}
.free-badge--inline{margin:1.4rem 0 1rem}
.support-fee-note strong{color:#143a2c}
