/* 代表挨拶（MESSAGE）2026-10-12・Claude。理念・外楽価値の作り（value.css）を写して vl- を ms- に替えた。地は砂の色、英字は Jost、本文は Zen Kaku Gothic New
   表・図は画面の幅に収める。個人と法人で中身は同じ（法人側のリンクは message.js が /biz に替える） */
@font-face{font-family:MS Jost;src:url('/assets/standalone/fonts/jost.woff2') format('woff2');font-weight:100 900;font-display:swap}
@font-face{font-family:MS Zen;src:url('/assets/standalone/fonts/zen-kaku-gothic-new-400.woff2') format('woff2');font-weight:400;font-display:swap}
:root{--sand:#f5d5b3;--tint:#ebe9e4;--dark:#252b28;--ink:#2a302e;--sub:#383f34;--line:rgba(42,48,46,.16);--accent:#8f7246}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--sand);color:var(--ink);font-family:'MS Jost','MS Zen','Zen Kaku Gothic New',sans-serif;font-size:14px;line-height:1.85;-webkit-font-smoothing:antialiased}
img{display:block;width:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
h1,h2,h3,p,figure{margin:0}
h2{font-size:32px;line-height:1.55;font-weight:400;letter-spacing:.02em}
h3{font-size:17px;line-height:1.6;font-weight:500}
.ms-eyebrow{display:block;font:400 44px/1.05 'MS Jost',sans-serif;letter-spacing:.03em;text-transform:uppercase;margin-bottom:14px}
.ms-eyebrow--light{color:#f2efe6}
.ms-kicker{display:block;font:400 12px 'MS Jost',sans-serif;letter-spacing:.16em;margin-bottom:16px}
.ms-sec{padding:96px max(48px,calc((100% - 1180px)/2))}
.ms-sec--tint{background:var(--tint)}
.ms-sec--dark{background:var(--dark);color:#f2efe6}
.ms-head{display:grid;grid-template-columns:1fr 1fr;gap:16px 70px;align-items:end;margin-bottom:44px}
.ms-head .ms-eyebrow{grid-column:1/-1;margin-bottom:0}
.ms-head>p{font-size:14px;color:var(--sub);max-width:520px}
.ms-sec--dark .ms-head>p{color:#e3e6dd}
.ms-links{display:flex;flex-wrap:wrap;gap:10px 28px;margin-top:28px}
.ms-links a{font-size:13px;border-bottom:1px solid currentColor;padding-bottom:2px}

/* 表紙 */
.ms-hero{position:relative;height:min(860px,92svh);min-height:560px;color:#fff;overflow:hidden}
.ms-hero__img{position:absolute;inset:0;height:100%}
.ms-hero__shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,20,22,.2),rgba(10,20,22,.08) 40%,rgba(10,20,22,.72))}
.ms-hero__in{position:absolute;left:max(48px,calc((100% - 1180px)/2));right:48px;bottom:72px}
.ms-hero__en{font:300 96px/.92 'MS Jost',sans-serif;letter-spacing:-.01em;margin-bottom:26px}
.ms-hero h1{font-size:30px;line-height:1.6;font-weight:400;letter-spacing:.04em}

/* 宣言 */
.ms-big{font-size:46px;line-height:1.5;letter-spacing:.06em;margin:6px 0 28px}
.ms-q{margin-top:26px!important;font-size:22px!important;color:var(--ink)!important;letter-spacing:.06em}

/* いま */
.ms-why{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:stretch}
.ms-why img{height:100%;min-height:380px;border-radius:3px}
.ms-why__list article{display:grid;grid-template-columns:170px minmax(0,1fr);gap:18px;align-items:baseline;padding:20px 0;border-top:1px solid var(--line)}
.ms-why__list article:first-child{border-top:0;padding-top:0}
.ms-why__list b{font:300 36px/1.15 'MS Jost','MS Zen',sans-serif;letter-spacing:-.01em}
.ms-why__list b small{font-size:14px}
.ms-why__list strong{display:block;font-weight:500;font-size:14px}
.ms-why__list span{display:block;font-size:12.5px;color:var(--sub);line-height:1.7}

/* 4つの事業 */
.ms-pillars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.ms-pillars article{min-width:0}
.ms-pillars img{aspect-ratio:4/5;border-radius:3px}
.ms-pillars span{display:block;font:300 15px 'MS Jost',sans-serif;color:var(--accent);margin-top:14px}
.ms-pillars h3{font-size:19px;font-weight:400;margin:2px 0 8px}
.ms-pillars p{font-size:13px;color:var(--sub)}

/* つくれる物 */
.ms-make{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}
.ms-make a{min-width:0}
.ms-make img{aspect-ratio:1;border-radius:3px;transition:transform .5s}
.ms-make a:hover img{transform:scale(1.03)}
.ms-make span{display:block;font-size:13px;margin-top:8px;font-weight:500}

/* 広がり */
.ms-beyond{display:grid;grid-template-columns:1.2fr 1fr;gap:44px;align-items:center}
.ms-beyond__main img{aspect-ratio:16/10;border-radius:3px}
.ms-beyond__list article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 12px;padding:18px 0;border-top:1px solid rgba(242,239,230,.25)}
.ms-beyond__list article:first-child{border-top:0;padding-top:0}
.ms-beyond__list span{grid-row:1/3;font:300 22px 'MS Jost',sans-serif;color:#e3c99a}
.ms-beyond__list h3{font-weight:400;font-size:18px}
.ms-beyond__list p{font-size:13px;color:#e3e6dd}

/* 数字 */
.ms-nums{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:28px}
.ms-nums article{border-top:1px solid var(--ink);padding-top:16px;min-width:0}
.ms-nums b{display:block;font:300 64px/1.05 'MS Jost',sans-serif;letter-spacing:-.02em}
.ms-nums b small{font-size:30px}
.ms-nums span{display:block;font-size:13px;margin-top:8px}

/* 住まい・施設 */
.ms-for{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.ms-for img{aspect-ratio:16/10;border-radius:3px}
.ms-tag{display:block;font:400 11px 'MS Jost',sans-serif;letter-spacing:.16em;color:var(--sub);margin-top:14px}
.ms-for h3{font-size:22px;font-weight:400;margin:2px 0 4px}
.ms-for p{font-size:13px;color:var(--sub)}
.ms-works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:40px;padding-top:28px;border-top:1px solid var(--line)}
.ms-works img{aspect-ratio:4/3;border-radius:3px}
.ms-works span{display:block;font-size:11.5px;color:var(--sub);margin-top:10px}
.ms-works b{font:400 17px 'MS Jost',sans-serif}

/* もっと深く */
.ms-more{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--line)}
.ms-more a{display:block;padding:22px 24px 22px 0;border-bottom:1px solid var(--line);position:relative;min-width:0}
.ms-more a::after{content:'→';position:absolute;right:16px;top:22px}
.ms-more span{display:block;font:400 10.5px 'MS Jost',sans-serif;letter-spacing:.14em;color:var(--sub)}
.ms-more b{display:block;font-size:16px;font-weight:500;margin:4px 0}
.ms-more em{display:block;font-style:normal;font-size:12.5px;color:var(--sub)}

/* 締め */
.ms-contact{position:relative;min-height:540px;display:flex;align-items:center;color:#fff;overflow:hidden}
.ms-contact>img{position:absolute;inset:0;height:100%;filter:brightness(.55)}
.ms-contact__in{position:relative;padding:64px max(48px,calc((100% - 1180px)/2))}
.ms-contact h2{font-size:36px}
.ms-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:28px}
.ms-btns a{padding:14px 26px;background:#f2efe6;color:var(--dark);font-size:13px;border-radius:2px}
.ms-btns a+a{background:transparent;color:#fff;border:1px solid rgba(255,255,255,.7)}

/* ---- タブレット ---- */
@media (max-width:980px){
 .ms-pillars,.ms-make,.ms-nums{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ms-why,.ms-beyond{grid-template-columns:minmax(0,1fr)}
 .ms-why img{min-height:0;aspect-ratio:16/10}
 .ms-more{grid-template-columns:repeat(2,minmax(0,1fr))}
}
/* ---- スマホ（庭・施設と同じ密度） ---- */
@media (max-width:640px){
 body{font-size:12px;line-height:1.8}
 h2{font-size:20px;line-height:1.55}
 h3{font-size:14px}
 .ms-sec{padding:44px 18px}
 .ms-eyebrow{font-size:30px;margin-bottom:8px}
 .ms-head{display:block;margin-bottom:22px}
 .ms-head>p{font-size:12px;margin-top:12px}
 .ms-hero{height:600px;min-height:0}
 .ms-hero__in{left:18px;right:18px;bottom:36px}
 .ms-kicker{font-size:10.5px;letter-spacing:.12em;margin-bottom:10px}
 .ms-hero__en{font-size:58px;margin-bottom:16px}
 .ms-hero h1{font-size:20px}
 .ms-big{font-size:25px;margin:4px 0 18px}
 .ms-q{font-size:16px!important;margin-top:16px!important}
 .ms-why{gap:16px}
 .ms-why__list article{grid-template-columns:104px minmax(0,1fr);gap:10px;padding:12px 0}
 .ms-why__list b{font-size:22px}
 .ms-why__list b small{font-size:11px}
 .ms-why__list strong{font-size:12px}
 .ms-why__list span{font-size:11px}
 .ms-pillars{grid-template-columns:minmax(0,1fr);gap:0}
 .ms-pillars article{display:grid;grid-template-columns:118px minmax(0,1fr);gap:2px 12px;padding:14px 0;border-top:1px solid var(--line)}
 .ms-pillars img{grid-row:1/4;aspect-ratio:3/4}
 .ms-pillars span{margin:0;font-size:12px}
 .ms-pillars h3{font-size:15px;margin:0}
 .ms-pillars p{font-size:11.5px;line-height:1.75}
 .ms-make{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}
 .ms-make span{font-size:11px;margin-top:4px;line-height:1.35}
 .ms-links{gap:8px 18px;margin-top:18px}
 .ms-links a{font-size:12px}
 .ms-beyond{gap:18px}
 .ms-beyond__list article{grid-template-columns:30px minmax(0,1fr);padding:12px 0}
 .ms-beyond__list span{font-size:16px}
 .ms-beyond__list h3{font-size:14px}
 .ms-beyond__list p{font-size:11.5px}
 .ms-nums{gap:18px 14px}
 .ms-nums b{font-size:40px}
 .ms-nums b small{font-size:20px}
 .ms-nums span{font-size:11.5px;margin-top:4px}
 .ms-for{gap:14px}
 .ms-for h3{font-size:15px}
 .ms-for p{font-size:11.5px}
 .ms-tag{font-size:10px;margin-top:8px}
 .ms-works{gap:8px;margin-top:24px;padding-top:18px}
 .ms-works span{font-size:10.5px;margin-top:6px}
 .ms-works b{font-size:12px;line-height:1.35;display:block}
 .ms-more{grid-template-columns:minmax(0,1fr)}
 .ms-more a{padding:14px 30px 14px 0}
 .ms-more a::after{top:16px;right:4px}
 .ms-more b{font-size:14px;margin:2px 0}
 .ms-more em{font-size:11.5px}
 .ms-contact{min-height:440px}
 .ms-contact__in{padding:44px 18px}
 .ms-contact h2{font-size:21px}
 .ms-btns a{font-size:12px;padding:12px 18px}
}
/* 2026-10-12 直し */
.ms-nw{white-space:nowrap}
.ms-why__list article:last-child{padding-bottom:0}
@media (max-width:640px){.ms-why__list b{font-size:19px;line-height:1.3}}
/* WHY NOW：右の列を写真の縦の中央に（「外の空間」の下の空きをなくす）・見出しの数字を1行に */
@media (min-width:981px){
 .ms-why{align-items:center}
 .ms-why img{min-height:0;aspect-ratio:4/3;height:auto}
 .ms-why__list article{grid-template-columns:220px minmax(0,1fr)}
 .ms-why__list b{white-space:nowrap;font-size:32px}
}

/* ── 代表挨拶だけの部品 ── */
.ms-hero__en{font-size:84px}
.ms-sp{display:none}
.ms-intro{padding:110px max(48px,calc((100% - 980px)/2)) 96px;text-align:center}
.ms-intro .ms-eyebrow{font-size:14px;letter-spacing:.2em;color:var(--sub)}
.ms-intro .ms-big{font-size:36px;line-height:1.7}
.ms-intro p{font-size:16px;line-height:2;margin-top:20px}
.ms-intro small{display:block;font-size:12.5px;color:var(--sub);margin-top:10px;letter-spacing:.1em}
/* 代表挨拶の文 */
.ms-msg{display:grid;grid-template-columns:300px minmax(0,1fr);gap:56px}
.ms-msg__hd .ms-eyebrow{margin-bottom:6px}
.ms-msg__hd h2{font-size:26px}
.ms-msg__body p{font-size:15px;line-height:2.2;margin-bottom:22px;max-width:720px}
.ms-msg__body .ms-sign{margin:34px 0 0;font-size:13px;line-height:1.9;color:var(--sub)}
.ms-msg__body .ms-sign b{font-size:16px;font-weight:500;color:var(--ink)}
/* 歩み */
.ms-story{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.ms-story li{border-top:2px solid var(--ink);padding-top:16px}
.ms-story b{display:block;font:300 44px/1 'MS Jost',sans-serif;color:var(--accent)}
.ms-story h3{font-size:17px;margin:12px 0 6px}
.ms-story p{font-size:13px;color:var(--sub)}
/* 自ら遊ぶ */
.ms-play{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:48px;align-items:center}
.ms-play img{aspect-ratio:4/3;border-radius:3px}
.ms-play__list article{display:grid;grid-template-columns:44px minmax(0,1fr);gap:4px 12px;padding:20px 0;border-top:1px solid rgba(242,239,230,.25)}
.ms-play__list article:last-child{border-bottom:1px solid rgba(242,239,230,.25)}
.ms-play__list span{grid-row:span 2;font:300 24px/1.2 'MS Jost',sans-serif;color:#e3c99a}
.ms-play__list h3{font-size:18px;font-weight:400}
.ms-play__list p{font-size:13.5px;color:#e3e6dd}
/* 自らデザインする */
.ms-design{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.4fr);gap:56px;align-items:start}
.ms-design__txt p{font-size:14.5px;line-height:2.1;color:var(--sub);margin-bottom:18px}
.ms-design__txt .ms-design__lead{font-size:21px;line-height:1.8;color:var(--ink)}
.ms-works{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ms-works img{aspect-ratio:4/5;border-radius:3px}
.ms-works b{display:block;font:400 20px 'MS Jost',sans-serif;letter-spacing:.08em;margin-top:12px}
.ms-works span{display:block;font:400 11.5px 'MS Jost',sans-serif;color:var(--sub);letter-spacing:.06em}
/* 結び */
.ms-conclusion{position:relative;min-height:600px;display:flex;align-items:center;color:#fff;overflow:hidden}
.ms-conclusion>img{position:absolute;inset:0;height:100%;filter:brightness(.5)}
.ms-conclusion__in{position:relative;padding:72px max(48px,calc((100% - 1180px)/2));max-width:900px}
.ms-conclusion h2{font-size:34px;line-height:1.7}
.ms-conclusion p{margin-top:18px;font-size:14px;line-height:2;color:rgba(255,255,255,.9)}
.ms-btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:32px}
.ms-btns a{padding:14px 26px;background:var(--dark);color:#f2efe6;font-size:13px;border-radius:2px}
.ms-btns a+a{background:transparent;color:var(--ink);border:1px solid var(--ink)}
@media (max-width:980px){
 .ms-msg{grid-template-columns:minmax(0,1fr);gap:20px}
 .ms-story{grid-template-columns:repeat(2,minmax(0,1fr));gap:28px 20px}
 .ms-play{grid-template-columns:minmax(0,1fr);gap:24px}
 .ms-design{grid-template-columns:minmax(0,1fr);gap:28px}
}
@media (max-width:640px){
 .ms-hero__en{font-size:44px}
 .ms-sp{display:inline}
 .ms-intro{padding:56px 18px 48px}
 .ms-intro .ms-eyebrow{font-size:11px}
 .ms-intro .ms-big{font-size:21px}
 .ms-intro p{font-size:13px;margin-top:14px}
 .ms-intro small{font-size:11px}
 .ms-msg__hd h2{font-size:18px}
 .ms-msg__body p{font-size:12.5px;line-height:2;margin-bottom:14px}
 .ms-msg__body .ms-sign{margin-top:20px;font-size:11.5px}
 .ms-msg__body .ms-sign b{font-size:14px}
 .ms-story{grid-template-columns:minmax(0,1fr);gap:0}
 .ms-story li{display:grid;grid-template-columns:64px minmax(0,1fr);gap:2px 10px;border-top:1px solid var(--line);padding:14px 0}
 .ms-story b{grid-row:span 2;font-size:22px}
 .ms-story h3{font-size:14px;margin:0}
 .ms-story p{font-size:12px;line-height:1.8}
 .ms-play__list article{grid-template-columns:30px minmax(0,1fr);padding:14px 0}
 .ms-play__list span{font-size:17px}
 .ms-play__list h3{font-size:15px}
 .ms-play__list p{font-size:12px;line-height:1.8}
 .ms-design__txt p{font-size:12.5px;line-height:2;margin-bottom:12px}
 .ms-design__txt .ms-design__lead{font-size:16px}
 .ms-works{gap:10px}
 .ms-works b{font-size:14px;margin-top:8px}
 .ms-works span{font-size:10px}
 .ms-conclusion{min-height:480px}
 .ms-conclusion__in{padding:44px 18px}
 .ms-conclusion h2{font-size:20px}
 .ms-conclusion p{font-size:12px}
 .ms-btns{margin-top:22px}
 .ms-btns a{font-size:12px;padding:12px 18px}
}
