/* index.html 由来のページ固有CSS（案Aモックから移植・260825） */
/* FV：非対称2分割。写真に文字を載せない構図 */
.fv{display:grid;grid-template-columns:.84fr 1.16fr;min-height:min(76vh,640px)}
.fv .txt{display:flex;flex-direction:column;justify-content:center;padding:clamp(38px,5.5vw,84px) var(--gut)}
.fv .vert{writing-mode:vertical-rl;font-family:var(--min);font-weight:500;position:relative;
  font-size:clamp(19px,2.3vw,27px);letter-spacing:.24em;line-height:2.1;height:min(56vh,470px);margin-left:auto}
/* 縦組みの起筆に橙の軸を一本。第一印象に差し色を確実に置く */
.fv .vert::before{content:'';position:absolute;top:0;left:calc(100% + 22px);
  width:2px;height:86px;background:var(--daidai-deco)}
.fv figure img{width:100%;height:100%;object-fit:cover;min-height:min(76vh,640px)}
/* 三つのめぐみ */
.megumi{background:var(--sumi);color:#EDE7DC}
.megumi .eyebrow{color:var(--daidai-deco)}
.megumi .g{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(18px,3vw,48px);margin-top:52px}
.megumi img{aspect-ratio:4/3;object-fit:cover;width:100%;filter:brightness(.94)}
.megumi .no{font-family:var(--min);font-size:13.5px;letter-spacing:.28em;color:var(--daidai-deco);margin-top:20px}
.megumi h3{font-family:var(--min);font-weight:500;font-size:24px;letter-spacing:.2em;margin-top:8px}
.megumi p{font-size:14px;line-height:2.3;color:#B4AB9C;margin-top:12px}
/* 事業：優先度で面積を変える */
.biz{border-top:1px solid var(--sand)}
.row{display:grid;gap:clamp(24px,4vw,58px);align-items:center;padding:clamp(44px,6vw,86px) 0;border-bottom:1px solid var(--sand)}
.row.a{grid-template-columns:1.06fr .94fr}
.row.b{grid-template-columns:.94fr 1.06fr}
.row.c{grid-template-columns:.6fr 1fr;padding-block:clamp(34px,4.2vw,56px)}
.row figure{overflow:hidden}
.row img{width:100%;object-fit:cover;transition:transform 1.2s var(--ease)}
.row.a img,.row.b img{aspect-ratio:4/3}.row.c img{aspect-ratio:16/9}
.row:hover img{transform:scale(1.03)}
.rank{font-family:var(--lat);font-size:12.5px;letter-spacing:.28em;color:var(--daidai)}
.row h2{font-family:var(--min);font-weight:500;letter-spacing:.13em;line-height:1.6;margin-top:11px}
.row.a h2{font-size:clamp(25px,3.3vw,38px)}.row.b h2{font-size:clamp(21px,2.6vw,30px)}.row.c h2{font-size:clamp(18px,2vw,22px)}
.row .d{font-size:14.5px;line-height:2.4;color:var(--sub);margin-top:16px;max-width:34em}
.spec{margin-top:22px;border-top:1px solid var(--sand)}
.spec div{display:grid;grid-template-columns:84px 1fr;gap:13px;padding:10px 0;border-bottom:1px solid var(--sand);font-size:14px}
.spec dt{font-family:var(--lat);font-size:12px;letter-spacing:.18em;color:var(--daidai);padding-top:4px}
.btnrow{display:flex;gap:11px;flex-wrap:wrap;margin-top:25px}
.ended{display:inline-block;font-size:12px;background:var(--sand);color:var(--sub);padding:3px 10px;border-radius:99px;margin-top:9px}
/* NEWS */
.news{background:var(--white)}
.nhead{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;flex-wrap:wrap;margin-bottom:34px}
.ngrid{display:grid;grid-template-columns:1.12fr 1fr;gap:clamp(22px,3.6vw,52px);align-items:start}
.feat figure{overflow:hidden;margin-bottom:18px}
.feat img{width:100%;aspect-ratio:16/10;object-fit:cover;transition:transform 1.1s var(--ease)}
.feat:hover img{transform:scale(1.035)}
.feat h3{font-family:var(--min);font-weight:500;font-size:clamp(17px,1.9vw,21px);letter-spacing:.07em;line-height:1.85;margin-top:11px}
.feat p{font-size:14px;color:var(--sub);line-height:2.2;margin-top:11px}
/* MESSAGE */
.msg{background:var(--paper-2)}
.msg .in{display:flex;flex-direction:row-reverse;justify-content:center;gap:clamp(18px,3vw,48px);padding:clamp(58px,7.5vw,108px) var(--gut)}
.msg .c{writing-mode:vertical-rl;font-family:var(--min);letter-spacing:.2em;line-height:2.15;height:min(58vh,490px)}
.msg .c.h{font-size:clamp(17px,2vw,24px);font-weight:500;color:var(--daidai)}
.msg .c.t{font-size:clamp(12.5px,1.3vw,14.5px);color:var(--sumi)}
/* 取引先 */
.clients{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--sand);border:1px solid var(--sand);margin-top:30px}
.clients div{background:var(--paper);padding:24px 14px;text-align:center;font-size:14px;line-height:1.8}
/* CTA */
.cta{background:var(--sumi);color:var(--paper);text-align:center;padding:clamp(58px,7.5vw,104px) 0}
.cta .eyebrow{color:var(--daidai-deco)}
.cta h2{font-family:var(--min);font-weight:500;font-size:clamp(21px,2.8vw,32px);letter-spacing:.17em}
.cta p{font-size:14.5px;color:#B4AB9C;line-height:2.4;margin-top:18px}
.cta .btn{border-color:var(--paper);color:var(--paper);margin-top:30px}
.cta .btn:hover{background:var(--paper);color:var(--sumi)}
@media(max-width:1000px){
  .fv{grid-template-columns:1fr}.fv .vert{writing-mode:horizontal-tb;height:auto;margin:18px 0 0}
  /* 横組みに切り替わると橙の軸が右へ22pxはみ出す（SP390で4pxの横スクロール）。
     見出しの上へ寝かせる。eyebrowの下線に見えないよう見出し側へ寄せる */
  .fv .vert::before{left:0;top:-14px;width:44px;height:2px}
  .fv figure img{min-height:50vh}
  .megumi .g{grid-template-columns:1fr}.ngrid{grid-template-columns:1fr}
  .row.a,.row.b,.row.c{grid-template-columns:1fr}.row.b figure{order:-1}
  .clients{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:720px){ .msg .in{gap:15px}.msg .c{height:min(48vh,360px)} }

/* 🔴 260824 企業理念（全文）を縦組みで流す。行数が増えるので寸法を締める */
.msg .in{gap:clamp(11px,1.5vw,22px) !important}
.msg .c{height:575px !important;letter-spacing:.13em !important;line-height:2 !important}
/* 原文に改行が無い長い段落は、読点の位置でだけ折り返す（語の途中で割れるのを防ぐ） */
.msg .c .nw{white-space:nowrap}
.msg .c.h{font-size:clamp(20px,2.3vw,28px) !important}
.msg .c.t{font-size:clamp(14px,1.45vw,16px) !important}
@media(max-width:900px){.msg .in{overflow-x:auto;justify-content:flex-start;padding-inline:var(--gut)}}

/* 三つのちから → 出店実績への導線（260826 CEO指示）
   墨地の上なので .more の既定色（橙の文字用）では沈む。淡色に置き換える。 */
.megumi-cta{margin-top:clamp(40px,5vw,64px);text-align:center}
.megumi-cta p{font-size:14px;line-height:2.3;color:#B4AB9C;margin-bottom:20px}
.megumi .megumi-cta .more{color:#EDE7DC;border-bottom-color:var(--daidai-deco)}
.megumi .megumi-cta .more:hover{color:var(--daidai-deco)}
