// Skrrs portal — Home (marketing landing). Responsive + route-wired.
const { Button: SBtn, SectionHeader: SHd, Badge: SBadge, Card: SCard } = window.SkrrsDesignSystem_6013e8;

// 物件タイプのタイル（バンドルのSearchLauncherは使わず画面側で自前描画）
const HOME_TYPES = [
  { key:'office',     label:'オフィス', en:'Office',    icon:'building'  },
  { key:'retail',     label:'店舗',     en:'Retail',    icon:'store'     },
  { key:'rnd',        label:'教室',     en:'School',    icon:'school'    },
  { key:'industrial', label:'倉庫',     en:'Warehouse', icon:'warehouse' },
  { key:'datacenter', label:'工場',     en:'Factory',   icon:'factory'   },
];

function HomeScreen({ onNav, onSelectType, onOpenColumn }) {
  const D = window.SKRRS_DATA;
  const { isMobile, isTablet, isDesktop } = window.useViewport();
  const [hov, setHov] = React.useState(null);
  const colsCount = isMobile ? 1 : isTablet ? 2 : 4;
  const featCount = isMobile ? 3 : isTablet ? 3 : 5;
  const goType = (k) => { onSelectType && onSelectType(k); onNav('search'); };

  return (
    <main>
      {/* ── Hero ───────────────────────────────────────── */}
      <section style={{ position:'relative', background:'var(--blue-900)', overflow:'hidden' }}>
        <window.Photo src={window.SKRRS_IMG.hero} alt="東京の街並み" hue="var(--blue-800)" ratio="auto" position="center 38%" eager
          style={{ position:'absolute', inset:0, aspectRatio:'auto', borderRadius:0 }} />
        <div style={{ position:'absolute', inset:0,
          background:'linear-gradient(105deg, rgba(7,24,43,0.92) 0%, rgba(7,24,43,0.7) 42%, rgba(7,24,43,0.25) 100%)' }} />
        <window.Container style={{ position:'relative', paddingTop: isMobile?'var(--sp-12)':'var(--sp-24)', paddingBottom: isMobile?'var(--sp-12)':'var(--sp-20)' }}>
          <div style={{ maxWidth:660 }}>
            <span style={{ display:'inline-flex', alignItems:'center', gap:8, marginBottom:22 }}>
              <span style={{ width:28, height:2, background:'var(--blue-500)' }} />
              <span style={{ font:'600 var(--t-xs)/1 var(--font-latin)', letterSpacing:'0.18em',
                textTransform:'uppercase', color:'var(--blue-300)' }}>{D.hero.marker}</span>
            </span>
            <h1 style={{ margin:'0 0 18px', font:'900 var(--t-hero)/1.18 var(--font-display)',
              color:'#fff', letterSpacing:'-0.02em' }}
              dangerouslySetInnerHTML={{ __html: D.hero.title }} />
            {/* ベネフィット・チップ（数字込みで一目で価値を伝える） */}
            <div style={{ display:'flex', flexWrap:'wrap', gap:8, marginBottom:22 }}>
              {D.hero.benefits.map(b=>(
                <span key={b} style={{ display:'inline-flex', alignItems:'center', gap:6,
                  padding:'7px 14px', borderRadius:'var(--r-pill)', background:'rgba(255,255,255,0.1)',
                  border:'1px solid rgba(255,255,255,0.22)', backdropFilter:'blur(4px)',
                  font:'var(--fw-bold) var(--t-xs)/1 var(--font-body)', color:'#fff' }}>
                  <window.Icon name="check" size={13} style={{ color:'var(--blue-300)' }}/>{b}
                </span>
              ))}
            </div>
            <p style={{ margin:'0 0 32px', maxWidth:520, font:`var(--fw-regular) ${isMobile?'var(--t-base)':'var(--t-lead)'}/1.9 var(--font-body)`,
              color:'rgba(255,255,255,0.86)' }}>
              {D.hero.lead}
            </p>
            <div style={{ display:'flex', alignItems:'center', gap:16, flexWrap:'wrap' }}>
              <SBtn variant="primary" size="lg" pill
                iconLeft={<window.Icon name="mail" size={18}/>}
                onClick={()=>onNav('contact')}>無料で相談する</SBtn>
              <div style={{ display:'flex', flexDirection:'column', gap:2 }}>
                <span style={{ font:'var(--fw-medium) var(--t-2xs)/1 var(--font-body)', color:'rgba(255,255,255,0.7)' }}>お電話でのご相談</span>
                <a href="tel:0359377544" style={{ display:'inline-flex', alignItems:'center', gap:7, color:'#fff', textDecoration:'none' }}>
                  <window.Icon name="phone" size={17}/>
                  <span style={{ font:'700 var(--t-h2)/1 var(--font-num)' }}>03-5937-7544</span>
                </a>
              </div>
            </div>
          </div>
        </window.Container>
      </section>

      {/* ── Search launcher（種別から探す・自前タイル） ── */}
      <section style={{ background:'transparent', marginTop: isMobile?0:-40, position:'relative', zIndex:2 }}>
        <window.Container>
          <div style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)',
            borderRadius:'var(--r-xl)', boxShadow:'var(--shadow-lg)', padding: isMobile?'var(--sp-5)':'var(--sp-8)',
            marginTop: isMobile?'var(--sp-6)':0 }}>
            <div style={{ display:'flex', alignItems:'flex-end', justifyContent:'space-between', marginBottom:20, flexWrap:'wrap', gap:12 }}>
              <h2 style={{ margin:0, font:'700 var(--t-h2)/1.2 var(--font-display)', color:'var(--text-strong)' }}>種別から物件を探す</h2>
              <SBtn variant="ghost" size="sm" iconRight={<window.Icon name="chevR" size={15}/>} onClick={()=>onNav('search')}>すべての物件を見る</SBtn>
            </div>
            <div style={{ display:'grid',
              gridTemplateColumns: isMobile?'repeat(3, 1fr)':`repeat(${HOME_TYPES.length}, 1fr)`, gap: isMobile?'var(--sp-2)':'var(--sp-3)' }}>
              {HOME_TYPES.map(t=>{
                const on = hov===t.key;
                return (
                  <button key={t.key} onClick={()=>goType(t.key)}
                    onMouseEnter={()=>setHov(t.key)} onMouseLeave={()=>setHov(null)}
                    style={{ display:'flex', flexDirection:'column', alignItems:'center', justifyContent:'center',
                      gap: isMobile?6:10, padding: isMobile?'14px 4px':'22px 12px', cursor:'pointer',
                      background: on ? 'var(--blue-900)' : 'var(--surface)',
                      border:`1.5px solid ${on ? 'var(--blue-900)' : 'var(--border-default)'}`,
                      borderRadius:'var(--r-md)', boxShadow: on?'var(--shadow-sm)':'none',
                      transform: on?'translateY(-2px)':'none', transition:'all var(--dur-fast) var(--ease-out)' }}>
                    <span style={{ color: on?'var(--blue-300)':'var(--blue-700)', display:'inline-flex' }}>
                      <window.Icon name={t.icon} size={isMobile?24:30} stroke={1.6}/>
                    </span>
                    <span style={{ font:`var(--fw-bold) ${isMobile?'var(--t-sm)':'var(--t-base)'}/1.2 var(--font-display)`, color: on?'#fff':'var(--text-strong)' }}>{t.label}</span>
                    <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.08em',
                      textTransform:'uppercase', color: on?'rgba(255,255,255,0.6)':'var(--text-faint)' }}>{t.en}</span>
                  </button>
                );
              })}
            </div>
          </div>
        </window.Container>
      </section>

      {/* ── 非公開物件フック（希少性 × 問い合わせ動線） ── */}
      <section style={{ padding: isMobile?'var(--sp-10) 0 0':'var(--sp-12) 0 0' }}>
        <window.Container>
          <div style={{ position:'relative', overflow:'hidden', borderRadius:'var(--r-xl)', boxShadow:'var(--shadow-md)' }}>
            <window.Photo src={window.SKRRS_IMG.cityAerial} alt="非公開物件のご案内" hue="var(--blue-900)" ratio="auto"
              style={{ position:'absolute', inset:0, aspectRatio:'auto' }} />
            <div style={{ position:'absolute', inset:0, background:'linear-gradient(100deg, rgba(7,24,43,0.94) 0%, rgba(7,48,75,0.72) 100%)' }} />
            <div style={{ position:'relative', display:'grid', gridTemplateColumns: isMobile?'1fr':'1.25fr auto',
              gap: isMobile?'var(--sp-6)':'var(--sp-10)', alignItems:'center', padding: isMobile?'var(--sp-7)':'var(--sp-10)' }}>
              <div style={{ display:'flex', flexDirection:'column', gap:12 }}>
                <span style={{ display:'inline-flex', alignItems:'center', gap:8 }}>
                  <span style={{ width:24, height:2, background:'var(--blue-500)' }} />
                  <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.18em', textTransform:'uppercase', color:'var(--blue-300)' }}>{D.privateListings.marker}</span>
                </span>
                <span style={{ display:'inline-flex', alignItems:'baseline', gap:8, flexWrap:'wrap' }}>
                  <span style={{ font:'var(--fw-medium) var(--t-sm)/1 var(--font-body)', color:'rgba(255,255,255,0.75)' }}>非公開物件</span>
                  <span style={{ font:'900 clamp(2.2rem,1.4rem+2.6vw,3.2rem)/1 var(--font-num)', color:'#fff' }}>{D.privateListings.count}</span>
                  <span style={{ font:'var(--fw-bold) var(--t-h4)/1 var(--font-display)', color:'var(--blue-300)' }}>件以上</span>
                </span>
                <h3 style={{ margin:0, font:`700 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.4 var(--font-display)`, color:'#fff' }}>{D.privateListings.title}</h3>
                <p style={{ margin:0, maxWidth:560, font:'var(--fw-regular) var(--t-sm)/1.85 var(--font-body)', color:'rgba(255,255,255,0.82)' }}>{D.privateListings.lead}</p>
                <span style={{ font:'var(--fw-regular) var(--t-2xs)/1.5 var(--font-body)', color:'rgba(255,255,255,0.55)' }}>{D.privateListings.note}</span>
              </div>
              <div style={{ display:'flex', flexDirection:'column', gap:12, alignItems: isMobile?'flex-start':'stretch' }}>
                <SBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>} onClick={()=>onNav('contact')}>{D.privateListings.cta}</SBtn>
                <a href="tel:0359377544" style={{ display:'inline-flex', alignItems:'center', justifyContent:'center', gap:8, color:'#fff', textDecoration:'none',
                  padding:'12px 18px', borderRadius:'var(--r-pill)', border:'1px solid rgba(255,255,255,0.4)' }}>
                  <window.Icon name="phone" size={17}/><span style={{ font:'700 1.25rem/1 var(--font-num)' }}>03-5937-7544</span>
                </a>
                <span style={{ textAlign: isMobile?'left':'center', font:'var(--fw-regular) var(--t-2xs)/1.4 var(--font-body)', color:'rgba(255,255,255,0.6)' }}>平日 10:00〜18:00 ／ ご相談無料</span>
              </div>
            </div>
          </div>
        </window.Container>
      </section>

      {/* ── 信頼バッジ列（実在性・信頼の証明） ───────────── */}
      <section style={{ padding: isMobile?'var(--sp-10) 0 0':'var(--sp-14) 0 0' }}>
        <window.Container>
          <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?2:4},1fr)`, gap:'var(--sp-3)',
            background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding: isMobile?'var(--sp-5)':'var(--sp-6)' }}>
            {D.trustBadges.map((b,i)=>(
              <div key={b.label} style={{ display:'flex', alignItems:'center', gap:12,
                borderRight: (!isMobile && i<D.trustBadges.length-1)?'1px solid var(--border-subtle)':'none', paddingRight: isMobile?0:'var(--sp-4)' }}>
                <span style={{ display:'grid', placeItems:'center', width:40, height:40, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name={b.icon} size={19}/></span>
                <div style={{ display:'flex', flexDirection:'column', gap:2, minWidth:0 }}>
                  <span style={{ font:'var(--fw-medium) var(--t-2xs)/1.3 var(--font-body)', color:'var(--text-muted)' }}>{b.label}</span>
                  <span style={{ font:'700 var(--t-sm)/1.3 var(--font-display)', color:'var(--text-strong)', whiteSpace:'nowrap', overflow:'hidden', textOverflow:'ellipsis' }}>{b.value}</span>
                </div>
              </div>
            ))}
          </div>
        </window.Container>
      </section>

      {/* ── 想い / MVV ─────────────────────────────────── */}
      <section style={{ padding: isMobile?'var(--sp-12) 0 var(--sp-6)':'var(--sp-16) 0 var(--sp-10)' }}>
        <window.Container>
          <div style={{ textAlign:'center', maxWidth:760, margin:'0 auto' }}>
            <span style={{ display:'block', font:'600 var(--t-xs)/1 var(--font-latin)', letterSpacing:'0.18em',
              textTransform:'uppercase', color:'var(--blue-600)', marginBottom:14 }}>Our Mission</span>
            <h2 style={{ margin:'0 0 20px', font:`var(--fw-bold) ${isMobile?'var(--t-h2)':'var(--t-display)'}/1.25 var(--font-display)`, color:'var(--text-strong)', letterSpacing:'var(--ls-tight)', textWrap:'balance' }}
              dangerouslySetInnerHTML={{ __html: isMobile ? D.mvv.mission.title.replace('事業用不動産を、','事業用不動産を、<br>') : D.mvv.mission.title }} />
            <p style={{ margin:0, font:`var(--fw-regular) ${isMobile?'var(--t-base)':'var(--t-lead)'}/1.95 var(--font-body)`, color:'var(--text-body)' }}>
              {D.mvv.mission.body}
            </p>
            <p style={{ margin:'26px 0 0', font:`900 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.5 var(--font-display)`, color:'var(--blue-700)', letterSpacing:'-0.01em' }}>
              {D.hero.catch}
            </p>
          </div>
          {/* Values 4本柱（スマホ2列） */}
          <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?2:isTablet?2:4},1fr)`, gap: isMobile?'var(--sp-4)':'var(--sp-6)', marginTop:'var(--sp-14)' }}>
            {D.mvv.values.map(v=>(
              <div key={v.n} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)',
                borderRadius:'var(--r-lg)', padding: isMobile?'var(--sp-5)':'var(--sp-8) var(--sp-7)', display:'flex', flexDirection:'column', gap: isMobile?10:16, boxShadow:'var(--shadow-sm)' }}>
                <div style={{ display:'flex', alignItems:'center', gap:10 }}>
                  <span style={{ display:'grid', placeItems:'center', width: isMobile?42:52, height: isMobile?42:52, borderRadius:'var(--r-pill)',
                    background:'var(--blue-50)', color:'var(--blue-600)' }}><window.Icon name={v.icon} size={isMobile?20:24}/></span>
                  <span style={{ font:`700 ${isMobile?'1.2rem':'1.5rem'}/1 var(--font-num)`, color:'var(--blue-300)' }}>{v.n}</span>
                </div>
                <span style={{ font:`700 ${isMobile?'var(--t-base)':'var(--t-h4)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>{v.t}</span>
                <span style={{ font:`var(--fw-regular) ${isMobile?'var(--t-xs)':'var(--t-sm)'}/1.8 var(--font-body)`, color:'var(--text-muted)' }}>{v.d}</span>
              </div>
            ))}
          </div>
        </window.Container>
      </section>

      {/* ── Services（借りたい / 貸したい の2分岐） ─────── */}
      <section style={{ padding: isMobile?'var(--sp-12) 0':'var(--sp-12) 0 var(--sp-16)' }}>
        <window.Container>
          <SHd marker="Service" title="借りる・貸す、その先まで総合サポート" align="center"
            lead="「借りたい」企業にも「貸したい」オーナー様にも。さらに内装設計・工事、ホームページ・メール開設支援まで、事業の立ち上げに必要なことをワンストップでお応えします。" />
          <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'1fr 1fr', gap: isMobile?'var(--sp-4)':'var(--sp-6)', marginTop: isMobile?'var(--sp-8)':'var(--sp-10)' }}>
            {D.servicesDetail.slice(0,2).map((s,i)=>{
              const shortDesc = ['物件探し〜移転・出店まで、まるごと伴走。','空室対策・管理・運用まで、おまかせください。'][i] || s.desc;
              const target = ['lease','manage'][i] || 'services';
              return (
              <a key={s.id} onClick={()=>onNav(target)} style={{ cursor:'pointer', display:'block', position:'relative',
                borderRadius:'var(--r-lg)', overflow:'hidden', boxShadow:'var(--shadow-sm)' }}>
                <window.Photo src={s.img} alt={s.title} hue={s.hue} ratio={isMobile?'16 / 9':'21 / 9'} icon={s.icon} />
                <div style={{ position:'absolute', inset:0,
                  background:'linear-gradient(90deg, rgba(7,24,43,0.9), rgba(7,24,43,0.34))',
                  display:'flex', flexDirection:'column', justifyContent:'center', padding: isMobile?'var(--sp-5)':'var(--sp-8)', gap: isMobile?6:8 }}>
                  <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.14em',
                    textTransform:'uppercase', color:'var(--blue-300)' }}>{s.en}</span>
                  <span style={{ font:`700 ${isMobile?'var(--t-h4)':'var(--t-h3)'}/1.3 var(--font-display)`, color:'#fff' }}>{s.title}</span>
                  <span style={{ font:`var(--fw-regular) ${isMobile?'var(--t-xs)':'var(--t-sm)'}/1.6 var(--font-body)`, color:'rgba(255,255,255,0.82)' }}>{isMobile ? shortDesc : s.desc}</span>
                  <span style={{ display:'inline-flex', alignItems:'center', gap:5, marginTop: isMobile?4:6,
                    font:`var(--fw-bold) ${isMobile?'var(--t-xs)':'var(--t-sm)'}/1 var(--font-body)`, color:'#fff' }}>
                    詳細はこちら <window.Icon name="chevR" size={isMobile?14:15}/>
                  </span>
                </div>
              </a>
              );
            })}
          </div>
        </window.Container>
      </section>

      {/* ── 初期費用の最適化（損失回避の数値訴求） ──────── */}
      <section style={{ padding: isMobile?'var(--sp-6) 0':'var(--sp-10) 0' }}>
        <window.Container>
          <div style={{ textAlign:'center', maxWidth:720, margin:'0 auto' }}>
            <span style={{ display:'block', font:'600 var(--t-xs)/1 var(--font-latin)', letterSpacing:'0.18em', textTransform:'uppercase', color:'var(--blue-600)', marginBottom:12 }}>{D.costSaving.marker}</span>
            <h2 style={{ margin:'0 0 14px', font:`var(--fw-bold) ${isMobile?'var(--t-h2)':'var(--t-display)'}/1.25 var(--font-display)`, color:'var(--text-strong)', letterSpacing:'var(--ls-tight)', textWrap:'balance' }}
              dangerouslySetInnerHTML={{ __html: isMobile ? D.costSaving.title.replace('はじめの「初期費用」を、','はじめの「初期費用」を、<br>') : D.costSaving.title }} />
            <p style={{ margin:0, font:`var(--fw-regular) ${isMobile?'var(--t-sm)':'var(--t-base)'}/1.8 var(--font-body)`, color:'var(--text-muted)' }}>{D.costSaving.lead}</p>
          </div>
          {(() => {
            const card = (it) => (
              <div key={it.t} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)',
                padding: isMobile?'var(--sp-5)':'var(--sp-7)', display:'flex', flexDirection:'column', gap:10, boxShadow:'var(--shadow-sm)', height:'100%' }}>
                <span style={{ display:'grid', placeItems:'center', width: isMobile?44:48, height: isMobile?44:48, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)' }}><window.Icon name={it.icon} size={isMobile?21:22}/></span>
                <span style={{ font:`var(--fw-medium) var(--t-sm)/1.3 var(--font-body)`, color:'var(--text-muted)' }}>{it.t}</span>
                <span style={{ font:`900 ${isMobile?'var(--t-h4)':'var(--t-h3)'}/1.3 var(--font-display)`, color:'var(--blue-700)' }}>{it.v}</span>
                <span style={{ font:`var(--fw-regular) var(--t-sm)/1.7 var(--font-body)`, color:'var(--text-muted)' }}>{it.d}</span>
              </div>
            );
            const its = D.costSaving.items;
            return isMobile ? (
              <div style={{ display:'flex', flexDirection:'column', gap:'var(--sp-3)', marginTop:'var(--sp-10)' }}>
                <div style={{ display:'grid', gridTemplateColumns:'1fr 1fr', gap:'var(--sp-3)' }}>{card(its[0])}{card(its[1])}</div>
                {its[2] && card(its[2])}
              </div>
            ) : (
              <div style={{ display:'grid', gridTemplateColumns:'repeat(3,1fr)', gap:'var(--sp-5)', marginTop:'var(--sp-10)' }}>{its.map(card)}</div>
            );
          })()}
          <div style={{ display:'flex', justifyContent:'center', marginTop:'var(--sp-8)' }}>
            <SBtn variant="primary" pill iconLeft={<window.Icon name="mail" size={17}/>} onClick={()=>onNav('contact')}>初期費用について相談する</SBtn>
          </div>
        </window.Container>
      </section>

      {/* ── Columns ────────────────────────────────────── */}
      <section style={{ padding:'var(--sp-16) 0', background:'var(--blue-50)' }}>
        <window.Container>
          <SHd marker="Column" title="ビジネス現場を支える不動産コラム"
            lead="事業用不動産の契約・出店・移転に役立つ実務ノウハウを、Skrrsの専門目線でお届けします。"
            action={<SBtn variant="secondary" iconRight={<window.Icon name="chevR" size={16}/>} onClick={()=>onNav('columns')}>記事一覧を見る</SBtn>} />
          {(() => {
            const cards = D.columns.slice(0, isMobile?6:4).map(c=>(
              <a key={c.id} onClick={()=>onOpenColumn(c)} style={{ cursor:'pointer', display:'flex', flexDirection:'column', height:'100%',
                background:'var(--surface)', border:'1px solid var(--border-subtle)',
                borderRadius:'var(--r-md)', overflow:'hidden', boxShadow:'var(--shadow-sm)' }}>
                <window.Photo src={c.img} alt={c.title} hue={`var(--type-${c.tone})`} ratio="16 / 9" icon="doc" />
                <div style={{ padding:'var(--sp-4)', display:'flex', flexDirection:'column', gap:10 }}>
                  <div style={{ display:'flex', alignItems:'center', gap:8 }}>
                    <SBadge tone={c.tone}>{c.cat}</SBadge>
                    <span style={{ font:'var(--fw-regular) var(--t-2xs)/1 var(--font-num)', color:'var(--text-faint)' }}>{c.date}</span>
                  </div>
                  <span style={{ font:'var(--fw-bold) var(--t-sm)/1.5 var(--font-body)', color:'var(--text-strong)',
                    display:'-webkit-box', WebkitLineClamp:3, WebkitBoxOrient:'vertical', overflow:'hidden' }}>{c.title}</span>
                </div>
              </a>
            ));
            return isMobile
              ? <div style={{ marginTop:'var(--sp-8)' }}><window.AutoCarousel basis="46%">{cards}</window.AutoCarousel></div>
              : <div style={{ display:'grid', gridTemplateColumns:`repeat(${colsCount}, 1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-8)' }}>{cards}</div>;
          })()}
        </window.Container>
      </section>

      {/* ── Features ───────────────────────────────────── */}
      <section style={{ padding: isMobile?'var(--sp-12) 0':'var(--sp-20) 0' }}>
        <window.Container>
          <SHd marker="Why Skrrs" title="Skrrsが選ばれる理由" align="center"
            lead="専門エージェントが、借りる側も貸す側も一気通貫でサポートします。" />
          <div style={{ display:'grid', gridTemplateColumns:`repeat(${featCount}, 1fr)`, gap:'var(--sp-6) var(--sp-4)', marginTop:'var(--sp-10)' }}>
            {D.features.map((f,i)=>(
              <div key={f.t} style={{ display:'flex', flexDirection:'column', gap:14, textAlign:'center', alignItems:'center' }}>
                <div style={{ position:'relative', width:64, height:64, borderRadius:'var(--r-pill)',
                  background:'var(--blue-50)', display:'grid', placeItems:'center', color:'var(--blue-700)' }}>
                  <window.Icon name={['handshake','ruler','shield','layers','sparkles'][i]} size={26} stroke={1.6}/>
                  <span style={{ position:'absolute', top:-6, left:-6, width:24, height:24, borderRadius:'var(--r-pill)',
                    background:'var(--blue-600)', color:'#fff', display:'grid', placeItems:'center',
                    font:'700 0.75rem/1 var(--font-num)' }}>{i+1}</span>
                </div>
                <span style={{ font:'var(--fw-bold) var(--t-base)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{f.t}</span>
                <span style={{ font:'var(--fw-regular) var(--t-sm)/1.6 var(--font-body)', color:'var(--text-muted)' }}>{f.d}</span>
              </div>
            ))}
          </div>
          <div style={{ display:'flex', justifyContent:'center', marginTop:'var(--sp-12)' }}>
            <SBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>}
              onClick={()=>onNav('contact')}>自社に合うか、相談してみる</SBtn>
          </div>
        </window.Container>
      </section>

      {/* ── 対応できる領域（背景写真ブロック） ─────────── */}
      <section style={{ position:'relative', padding: isMobile?'var(--sp-14) 0':'var(--sp-20) 0', background:'var(--blue-900)', overflow:'hidden' }}>
        <window.Photo src={window.SKRRS_IMG.cityTowers} alt="" hue="var(--blue-900)" ratio="auto" position="center 45%"
          style={{ position:'absolute', inset:0, aspectRatio:'auto' }} />
        <div style={{ position:'absolute', inset:0, background:'linear-gradient(120deg, rgba(7,24,43,0.95) 0%, rgba(7,48,75,0.82) 100%)' }} />
        <window.Container style={{ position:'relative' }}>
          <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'1fr 1.1fr', gap:'var(--sp-12)', alignItems:'center' }}>
            <div>
              <span style={{ display:'inline-flex', alignItems:'center', gap:8, marginBottom:14 }}>
                <span style={{ width:32, height:2, background:'var(--blue-400)' }} />
                <span style={{ font:'600 var(--t-xs)/1 var(--font-latin)', letterSpacing:'0.18em', textTransform:'uppercase', color:'var(--blue-300)' }}>Our Coverage</span>
              </span>
              <SHd onDark title="ワンストップで対応できる領域"
                lead="借りる・貸すはもちろん、内装設計・工事からホームページ開設まで。事業の立ち上げに必要なことを、Skrrsひとつの窓口でカバーします。" />
              <div style={{ marginTop:'var(--sp-8)' }}>
                <SBtn variant="inverse" iconRight={<window.Icon name="arrowR" size={16}/>} onClick={()=>onNav('services')}>サービスを見る</SBtn>
              </div>
            </div>
            <div style={{ display:'grid', gridTemplateColumns:'1fr 1fr', gap:'var(--sp-3)' }}>
              {D.strengths.map(s=>(
                <div key={s} style={{ display:'flex', alignItems:'center', justifyContent:'space-between',
                  padding:'14px 16px', borderRadius:'var(--r-sm)', background:'rgba(255,255,255,0.05)',
                  border:'1px solid rgba(255,255,255,0.1)' }}>
                  <span style={{ font:'var(--fw-medium) var(--t-sm)/1.3 var(--font-body)', color:'#fff' }}>{s}</span>
                  <window.Icon name="check" size={15} style={{ color:'var(--blue-300)' }}/>
                </div>
              ))}
            </div>
          </div>
        </window.Container>
      </section>

      {/* ── Voices teaser ──────────────────────────────── */}
      <section style={{ padding: isMobile?'var(--sp-12) 0':'var(--sp-20) 0 var(--sp-12)' }}>
        <window.Container>
          <SHd marker="Voice" title="さまざまな業種のお客様の声"
            lead="IT・飲食・学習塾・物流・製造など、業種を問わず事業の節目をご一緒しています。"
            action={<SBtn variant="secondary" iconRight={<window.Icon name="chevR" size={16}/>} onClick={()=>onNav('projects')}>お客様の声を見る</SBtn>} />
          {(() => {
            const cards = D.projects.slice(0, isMobile?6:3).map(v=>(
              <a key={v.id} onClick={()=>onNav('projects')} style={{ cursor:'pointer', display:'flex', flexDirection:'column', height:'100%', minWidth:0, width:'100%',
                background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', overflow:'hidden', boxShadow:'var(--shadow-sm)' }}>
                <window.Photo src={v.img} alt={v.cat} hue={`var(--type-${v.tone})`} ratio={isMobile?'16 / 8':'16 / 9'} icon="building" />
                <div style={{ display:'flex', flexDirection:'column', gap: isMobile?7:10, padding: isMobile?'var(--sp-4)':'var(--sp-6)', flex:1 }}>
                  <window.Icon name="quote" size={isMobile?16:22} style={{ color:'var(--blue-300)', flex:'none' }}/>
                  <span style={{ font:`var(--fw-bold) ${isMobile?'var(--t-sm)':'var(--t-base)'}/1.5 var(--font-display)`, color:'var(--text-strong)' }}>{v.voice}</span>
                  <div style={{ marginTop:'auto', display:'flex', flexDirection:'column', alignItems:'flex-start', gap:5 }}>
                    <SBadge tone={v.tone} size="sm">{v.cat}</SBadge>
                    <span style={{ display:'inline-flex', alignItems:'center', gap:4, font:'var(--fw-regular) var(--t-2xs)/1.2 var(--font-body)', color:'var(--text-muted)' }}><window.Icon name="pin" size={12}/>{v.area}</span>
                  </div>
                </div>
              </a>
            ));
            return isMobile
              ? <div style={{ marginTop:'var(--sp-6)' }}><window.AutoCarousel basis="68%">{cards}</window.AutoCarousel></div>
              : <div style={{ display:'grid', gridTemplateColumns:'repeat(3,1fr)', gap:'var(--sp-5)', marginTop:'var(--sp-8)' }}>{cards}</div>;
          })()}
        </window.Container>
      </section>

      {/* ── タグライン ─────────────────────────────────── */}
      <section style={{ padding: isMobile?'var(--sp-6) 0':'var(--sp-10) 0' }}>
        <window.Container>
          <div style={{ background:'linear-gradient(150deg, var(--blue-900), var(--blue-800))', borderRadius:'var(--r-lg)',
            padding: isMobile?'var(--sp-8)':'var(--sp-12)', textAlign:'center' }}>
            <span style={{ display:'block', font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.18em',
              textTransform:'uppercase', color:'var(--blue-300)', marginBottom:14 }}>Our Promise</span>
            <p style={{ margin:0, font:`900 ${isMobile?'var(--t-h3)':'var(--t-h1)'}/1.6 var(--font-display)`, color:'#fff', letterSpacing:'-0.01em' }}>
              {D.tagline}
            </p>
          </div>
        </window.Container>
      </section>

      {/* ── News + CTA ─────────────────────────────────── */}
      <section style={{ padding: isMobile?'var(--sp-12) 0':'var(--sp-12) 0 var(--sp-20)' }}>
        <window.Container>
          <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'1fr 1fr', gap: isMobile?'var(--sp-10)':'var(--sp-16)' }}>
            <div>
              <SHd marker="News" title="お知らせ"
                action={<SBtn variant="ghost" iconRight={<window.Icon name="chevR" size={16}/>} onClick={()=>onNav('news')}>一覧を見る</SBtn>} />
              <div style={{ marginTop:'var(--sp-6)', display:'flex', flexDirection:'column' }}>
                {D.news.slice(0,4).map(n=>(
                  <a key={n.id} onClick={()=>onNav('news')} style={{ cursor:'pointer', display:'flex', gap:14, alignItems:'flex-start',
                    padding:'16px 0', borderBottom:'1px solid var(--border-subtle)' }}>
                    <span style={{ font:'var(--fw-medium) var(--t-xs)/1.5 var(--font-num)', color:'var(--text-muted)', flex:'none', width:74 }}>{n.date}</span>
                    <SBadge tone="navy" size="sm">{n.tag}</SBadge>
                    <span style={{ font:'var(--fw-regular) var(--t-sm)/1.6 var(--font-body)', color:'var(--text-body)' }}>{n.text}</span>
                  </a>
                ))}
              </div>
            </div>
            <SCard padding="lg" style={{ display:'flex', flexDirection:'column', justifyContent:'center', gap:18,
              background:'linear-gradient(150deg, var(--blue-50), var(--surface))' }}>
              <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.14em',
                textTransform:'uppercase', color:'var(--blue-600)' }}>Consult</span>
              <h3 style={{ margin:0, font:'700 var(--t-h2)/1.4 var(--font-display)', color:'var(--text-strong)' }}>
                経験豊富なエージェントが、<br/>あなたの立場で最適なご提案をします
              </h3>
              <p style={{ margin:0, font:'var(--fw-regular) var(--t-base)/1.8 var(--font-body)', color:'var(--text-body)' }}>
                オフィス・店舗・教室・倉庫・工場まで、幅広い事業ニーズに対応。物件探しも、契約のお悩みも、まずはお気軽にご相談ください。
              </p>
              <div style={{ display:'flex', alignItems:'center', gap:16, flexWrap:'wrap', marginTop:4 }}>
                <SBtn variant="primary" pill iconLeft={<window.Icon name="mail" size={17}/>} onClick={()=>onNav('contact')}>無料で相談する</SBtn>
                <a href="tel:0359377544" style={{ display:'inline-flex', alignItems:'center', gap:7, color:'var(--blue-900)', textDecoration:'none' }}>
                  <window.Icon name="phone" size={16}/><span style={{ font:'700 1.2rem/1 var(--font-num)' }}>03-5937-7544</span>
                </a>
              </div>
            </SCard>
          </div>
        </window.Container>
      </section>
    </main>
  );
}

Object.assign(window, { HomeScreen });
