// Skrrs portal — Services, Projects (list+detail), Guide, Company.
const { Button: IBtn, Badge: IBadge, Card: ICard, SectionHeader: IHd, Tag: ITag } = window.SkrrsDesignSystem_6013e8;

// ── Services ────────────────────────────────────────────────
function ServicesScreen({ onNav }) {
  const D = window.SKRRS_DATA;
  const { isMobile } = window.useViewport();
  return (
    <main>
      <window.PageHero marker="Service" icon="handshake" title="サービス紹介" image={window.SKRRS_IMG.consult}
        lead="「借りたい」企業にも、「貸したい」オーナー様にも。物件探しから条件交渉・契約・管理まで、専門エージェントがワンストップでお応えします。"
        crumbs={[{label:'ホーム',route:'home'},{label:'サービス紹介'}]} onNav={onNav} />

      <window.Container style={{ paddingTop:'var(--sp-12)', paddingBottom:'var(--sp-12)' }}>
        <div style={{ display:'flex', flexDirection:'column', gap:'var(--sp-6)' }}>
          {D.servicesDetail.map((s,i)=>(
            <div key={s.id} style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':(i%2?'1.1fr 0.9fr':'0.9fr 1.1fr'), gap:'var(--sp-8)',
              alignItems:'center', background:'var(--surface)', border:'1px solid var(--border-subtle)', 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':'4 / 3'} icon={s.icon} style={{ order: (!isMobile&&i%2)?2:1 }} />
              <div style={{ padding: isMobile?'var(--sp-6)':'var(--sp-10)', display:'flex', flexDirection:'column', gap:14, order:1 }}>
                <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.14em', textTransform:'uppercase', color:'var(--blue-600)' }}>{s.en}</span>
                <h2 style={{ margin:0, font:'700 var(--t-h2)/1.3 var(--font-display)', color:'var(--text-strong)' }}>{s.title}</h2>
                <p style={{ margin:0, font:'var(--fw-regular) var(--t-base)/1.8 var(--font-body)', color:'var(--text-body)' }}>{s.desc}</p>
                <ul style={{ margin:0, padding:0, listStyle:'none', display:'flex', flexDirection:'column', gap:9 }}>
                  {s.items.map(it=>(
                    <li key={it} style={{ display:'flex', alignItems:'center', gap:9, font:'var(--fw-medium) var(--t-sm)/1.4 var(--font-body)', color:'var(--text-strong)' }}>
                      <span style={{ display:'grid', placeItems:'center', width:20, height:20, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name="check" size={13} stroke={3}/></span>
                      {it}
                    </li>
                  ))}
                </ul>
                <div style={{ display:'flex', gap:10, flexWrap:'wrap' }}>
                  <IBtn variant="primary" pill iconRight={<window.Icon name="arrowR" size={15}/>} onClick={()=>onNav(i===0?'lease':'manage')}>{i===0?'借りたい方へ・詳しく見る':'貸したい方へ・詳しく見る'}</IBtn>
                  <IBtn variant="secondary" iconLeft={<window.Icon name="mail" size={15}/>} onClick={()=>onNav('contact')}>相談する</IBtn>
                </div>
              </div>
            </div>
          ))}
        </div>
      </window.Container>

      {/* 総合サポート（差別化：仲介・管理の先まで） */}
      <section style={{ padding:'var(--sp-6) 0 var(--sp-12)' }}>
        <window.Container>
          <IHd marker={D.totalSupport.marker} title={D.totalSupport.title} align="center" lead={D.totalSupport.lead} />
          <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:3},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-10)' }}>
            {D.totalSupport.items.map((it,i)=>(
              <a key={it.t} className={it.route?'sk-card':''} onClick={()=>it.route && onNav(it.route)}
                style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)',
                  overflow:'hidden', display:'flex', flexDirection:'column', cursor: it.route?'pointer':'default' }}>
                <window.Photo src={[window.SKRRS_IMG.brokerageFee, window.SKRRS_IMG.supportInterior, window.SKRRS_IMG.supportLaunch][i]} alt={it.t} hue="var(--blue-700)" ratio="16 / 9" icon={it.icon} />
                <div style={{ padding:'var(--sp-6)', display:'flex', flexDirection:'column', gap:11, flex:1 }}>
                  <span style={{ display:'inline-flex', alignItems:'center', gap:10 }}>
                    <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={it.icon} size={20}/></span>
                    <span style={{ font:'700 var(--t-h4)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{it.t}</span>
                  </span>
                  <span style={{ font:'var(--fw-regular) var(--t-sm)/1.8 var(--font-body)', color:'var(--text-muted)' }}>{it.d}</span>
                  {it.route && (
                    <span style={{ marginTop:'auto', paddingTop:8, display:'inline-flex', alignItems:'center', gap:6,
                      font:'var(--fw-bold) var(--t-sm)/1 var(--font-body)', color:'var(--blue-600)' }}>
                      詳細を見る <window.Icon name="chevR" size={15}/>
                    </span>
                  )}
                </div>
              </a>
            ))}
          </div>
        </window.Container>
      </section>

      {/* process */}
      <section style={{ background:'var(--blue-50)', padding:'var(--sp-16) 0' }}>
        <window.Container>
          <IHd marker="Process" title="借りる場合の、ご契約までの流れ" align="center"
            lead="物件を貸したいオーナー様の流れは、「貸したい方へ」のページでご案内しています。" />
          <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:3},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-10)' }}>
            {D.process.map(p=>(
              <div key={p.n} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding:'var(--sp-6)', display:'flex', flexDirection:'column', gap:10 }}>
                <span style={{ font:'700 var(--t-h2)/1 var(--font-num)', color:'var(--blue-300)' }}>{p.n}</span>
                <span style={{ font:'700 var(--t-h4)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{p.t}</span>
                <span style={{ font:'var(--fw-regular) var(--t-sm)/1.7 var(--font-body)', color:'var(--text-muted)' }}>{p.d}</span>
              </div>
            ))}
          </div>
          <div style={{ display:'flex', justifyContent:'center', gap:12, flexWrap:'wrap', marginTop:'var(--sp-10)' }}>
            <IBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>} onClick={()=>onNav('contact')}>無料で相談する</IBtn>
            <IBtn variant="secondary" size="lg" iconRight={<window.Icon name="arrowR" size={16}/>} onClick={()=>onNav('manage')}>貸したい方の流れを見る</IBtn>
          </div>
        </window.Container>
      </section>
    </main>
  );
}

// ── お客様の声 list（多業種・projectsルート） ───────────────
function ProjectsScreen({ onNav, onOpenProject }) {
  const D = window.SKRRS_DATA;
  const { isMobile, isTablet } = window.useViewport();
  const cols = isMobile?2:isTablet?2:3;
  const [cat, setCat] = React.useState('all');
  // 絞り込みは業種で行う。読み手は「自分と同じ業種の事例」を探すため。
  // 選択肢は掲載データから自動生成するので、事例を追加すればタブも増える。
  const cats = [['all','すべて']].concat(
    D.projects.reduce((acc,p)=>(acc.indexOf(p.cat)<0 && p.cat ? acc.concat([p.cat]) : acc), []).map(c=>[c,c])
  );
  const list = D.projects.filter(p => cat==='all' || p.cat===cat);
  const published = (D.release||{}).voices;
  const TYPE_LABEL = { office:'オフィス', retail:'店舗', rnd:'教室', industrial:'倉庫', datacenter:'工場' };
  return (
    <main>
      <window.PageHero marker="Voice" icon="quote" title="お客様の声" image={window.SKRRS_IMG.teamDiscussion}
        lead="IT・飲食・学習塾・物流・製造・クリニックなど、業種を問わず事業の節目をご一緒しています。実際にご利用いただいたお客様の声をご紹介します。"
        crumbs={[{label:'ホーム',route:'home'},{label:'お客様の声'}]} onNav={onNav} />
      {!published ? (
        <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-20)' }}>
          <window.ComingSoon area="voices" onNav={onNav} />
        </window.Container>
      ) : (
      <window.Container style={{ paddingTop:'var(--sp-12)', paddingBottom: isMobile?'var(--sp-16)':'var(--sp-20)' }}>
        <div style={{ display:'flex', gap:8, flexWrap:'wrap', marginBottom:'var(--sp-8)' }}>
          {cats.map(([k,l])=>(<ITag key={k} selected={cat===k} onClick={()=>setCat(k)}>{l}</ITag>))}
        </div>
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${cols},1fr)`, gap:'var(--sp-6)' }}>
          {list.map(p=>(
            <a key={p.id} onClick={()=>onOpenProject(p)} style={{ cursor:'pointer', display:'flex', flexDirection:'column',
              background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)', overflow:'hidden', boxShadow:'var(--shadow-sm)' }}>
              <window.Photo src={p.img} alt={p.cat} hue={`var(--type-${p.tone})`} ratio="16 / 9" icon="building" />
              <div style={{ padding: isMobile?'var(--sp-4)':'var(--sp-6)', display:'flex', flexDirection:'column', gap: isMobile?9:12, flex:1 }}>
                <window.Icon name="quote" size={isMobile?20:26} style={{ color:'var(--blue-300)' }}/>
                <span style={{ font:`var(--fw-bold) ${isMobile?'var(--t-sm)':'var(--t-h4)'}/1.5 var(--font-display)`, color:'var(--text-strong)' }}>{p.voice}</span>
                <div style={{ display:'flex', alignItems:'center', gap:8, flexWrap:'wrap' }}>
                  <IBadge tone={p.tone} size={isMobile?'sm':'md'}>{p.cat}</IBadge>
                  {TYPE_LABEL[p.tone] && (
                    <span style={{ display:'inline-flex', alignItems:'center', gap:4, padding:'3px 9px', borderRadius:'var(--r-pill)',
                      background:'var(--blue-50)', color:'var(--blue-700)', font:'var(--fw-bold) var(--t-2xs)/1.4 var(--font-body)' }}>
                      <window.Icon name="building" size={11}/>{TYPE_LABEL[p.tone]}
                    </span>
                  )}
                  {!isMobile && <span style={{ font:'var(--fw-regular) var(--t-xs)/1 var(--font-body)', color:'var(--text-muted)' }}>{p.client}</span>}
                </div>
                {!isMobile && <div style={{ display:'flex', flexWrap:'wrap', gap:6 }}>
                  {p.result.slice(0,2).map(r=>(<IBadge key={r} tone="blue">{r}</IBadge>))}
                </div>}
                <span style={{ marginTop:'auto', display:'inline-flex', alignItems:'center', gap:6, font:`var(--fw-bold) ${isMobile?'var(--t-xs)':'var(--t-sm)'}/1 var(--font-body)`, color:'var(--blue-600)' }}>詳しく見る <window.Icon name="arrowR" size={14}/></span>
              </div>
            </a>
          ))}
        </div>

        {/* 事例を読んだ直後がいちばん相談しやすい。一覧の末尾で受ける。 */}
        <div style={{ marginTop:'var(--sp-12)', background:'linear-gradient(150deg, var(--blue-50), var(--surface))',
          border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)', padding: isMobile?'var(--sp-7)':'var(--sp-10)',
          display:'flex', flexDirection:'column', alignItems:'center', gap:14, textAlign:'center' }}>
          <h2 style={{ margin:0, font:`700 ${isMobile?'var(--t-h4)':'var(--t-h3)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>
            同じような状況の方は、お気軽にご相談ください。
          </h2>
          <p style={{ margin:0, maxWidth:520, font:'var(--fw-regular) var(--t-sm)/1.8 var(--font-body)', color:'var(--text-muted)' }}>
            業種や規模が違っても、進め方の考え方は共通しています。ご相談は無料です。
          </p>
          <IBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={17}/>} onClick={()=>onNav('contact')}>無料で相談する</IBtn>
        </div>
      </window.Container>
      )}
    </main>
  );
}

// ── お客様の声 detail ───────────────────────────────────────
function ProjectDetail({ project, onNav, onConsult, onOpenProject }) {
  const D = window.SKRRS_DATA;
  const p = project || D.projects[0];
  const { isMobile } = window.useViewport();
  // 関連事例：同じ業種を優先し、足りなければ同じ物件種別で補う（最大3件）。
  const others = D.projects.filter(v => v.id !== p.id);
  const related = others.filter(v => v.cat === p.cat)
    .concat(others.filter(v => v.cat !== p.cat && v.tone === p.tone))
    .slice(0, 3);
  return (
    <main>
      <window.PageHero marker="Voice" icon="quote" title={p.title} image={p.img}
        crumbs={[{label:'ホーム',route:'home'},{label:'お客様の声',route:'projects'},{label:p.cat}]} onNav={onNav} />
      <window.Container style={{ paddingTop:'var(--sp-10)', paddingBottom:'var(--sp-16)', maxWidth:880 }}>
        <div style={{ display:'flex', flexDirection:'column', gap:14, padding:'var(--sp-8)', marginBottom:'var(--sp-8)',
          background:'linear-gradient(150deg, var(--blue-50), var(--surface))', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)' }}>
          <window.Icon name="quote" size={30} style={{ color:'var(--blue-400)' }}/>
          <p style={{ margin:0, font:'700 var(--t-h3)/1.6 var(--font-display)', color:'var(--text-strong)' }}>{p.voice}</p>
          <div style={{ display:'flex', alignItems:'center', gap:10, flexWrap:'wrap' }}>
            <IBadge tone={p.tone}>{p.cat}</IBadge>
            <span style={{ font:'var(--fw-medium) var(--t-sm)/1 var(--font-body)', color:'var(--text-muted)' }}>{p.client}・{p.area}</span>
          </div>
        </div>
        <div style={{ display:'flex', flexDirection:'column', gap:9, marginBottom:'var(--sp-8)' }}>
          <span style={{ font:'var(--fw-medium) var(--t-xs)/1 var(--font-body)', color:'var(--text-muted)' }}>ご支援のポイント</span>
          {p.result.map(r=>(
            <span key={r} style={{ display:'flex', alignItems:'center', gap:9, font:'var(--fw-medium) var(--t-sm)/1.4 var(--font-body)', color:'var(--text-strong)' }}>
              <span style={{ display:'grid', placeItems:'center', width:20, height:20, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name="check" size={13} stroke={3}/></span>{r}
            </span>
          ))}
        </div>
        <h2 style={{ margin:'0 0 var(--sp-4)', font:'700 var(--t-h3)/1.2 var(--font-display)', color:'var(--text-strong)' }}>課題と、ご一緒した内容</h2>
        <p style={{ margin:'0 0 var(--sp-8)', font:'var(--fw-regular) var(--t-base)/1.95 var(--font-body)', color:'var(--text-body)' }}>{p.summary}</p>
        <div style={{ display:'flex', gap:12, flexWrap:'wrap' }}>
          {/* 事例の物件種別を引き継いで、お問い合わせの「ご相談の種別」を事前選択する */}
          <IBtn variant="primary" pill iconLeft={<window.Icon name="mail" size={17}/>}
            onClick={()=> onConsult ? onConsult(p.tone) : onNav('contact')}>同様のご相談をする</IBtn>
          <IBtn variant="ghost" iconLeft={<window.Icon name="chevL" size={16}/>} onClick={()=>onNav('projects')}>お客様の声一覧へ戻る</IBtn>
        </div>

        {/* 関連事例（読み終えた人を一覧に戻さず、次の事例へ送る） */}
        {related.length > 0 && (
          <div style={{ marginTop:'var(--sp-14)', paddingTop:'var(--sp-10)', borderTop:'1px solid var(--border-subtle)' }}>
            <h2 style={{ margin:'0 0 var(--sp-6)', font:'700 var(--t-h4)/1.4 var(--font-display)', color:'var(--text-strong)' }}>ほかの事例も見る</h2>
            <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:3},1fr)`, gap:'var(--sp-4)' }}>
              {related.map(v=>(
                <a key={v.id} className="sk-card" onClick={()=> onOpenProject ? onOpenProject(v) : onNav('projects')}
                  style={{ cursor:'pointer', display:'flex', flexDirection:'column', gap:10, height:'100%',
                    background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding:'var(--sp-5)' }}>
                  <window.Icon name="quote" size={20} style={{ color:'var(--blue-300)' }}/>
                  <span style={{ font:'var(--fw-bold) var(--t-sm)/1.6 var(--font-display)', color:'var(--text-strong)' }}>{v.voice}</span>
                  <div style={{ marginTop:'auto', display:'flex', alignItems:'center', gap:7, flexWrap:'wrap' }}>
                    <IBadge tone={v.tone} size="sm">{v.cat}</IBadge>
                    <span style={{ font:'var(--fw-regular) var(--t-2xs)/1 var(--font-body)', color:'var(--text-muted)' }}>{v.client}</span>
                  </div>
                </a>
              ))}
            </div>
          </div>
        )}
      </window.Container>
    </main>
  );
}

// ── Guide (はじめての方へ) ──────────────────────────────────
function GuideScreen({ onNav }) {
  const D = window.SKRRS_DATA;
  const { isMobile } = window.useViewport();
  const [openQ, setOpenQ] = React.useState(0);
  return (
    <main>
      <window.PageHero marker="Guide" icon="user" title="はじめての方へ" image={window.SKRRS_IMG.meetingThree}
        lead="事業用不動産を「借りたい」「貸したい」、そのどちらも。ご相談からご契約までの流れと、Skrrsが大切にしていることをご案内します。ご相談はすべて無料です。"
        crumbs={[{label:'ホーム',route:'home'},{label:'はじめての方へ'}]} onNav={onNav} />

      {/* welcome band (安心感を伝えるビジュアル) */}
      <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-6)' }}>
        <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'1fr 1fr', gap:'var(--sp-10)', alignItems:'center' }}>
          <window.Photo src={window.SKRRS_IMG.pairSmiling} alt="お客様に寄り添う担当者" hue="var(--blue-700)" ratio={isMobile?'16 / 10':'5 / 4'} icon="user" style={{ borderRadius:'var(--r-lg)', boxShadow:'var(--shadow-sm)' }} />
          <div style={{ display:'flex', flexDirection:'column', gap:16 }}>
            <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.14em', textTransform:'uppercase', color:'var(--blue-600)' }}>Welcome</span>
            <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h2)':'var(--t-h1)'}/1.45 var(--font-display)`, color:'var(--text-strong)' }}>はじめてでも、安心してご相談ください。</h2>
            <p style={{ margin:0, font:`var(--fw-regular) ${isMobile?'var(--t-base)':'var(--t-lead)'}/1.95 var(--font-body)`, color:'var(--text-body)' }}>
              「何から始めればいいか分からない」という段階でも大丈夫です。事業用不動産の専門エージェントが、ご状況をていねいにうかがい、拠点づくりを最後までご一緒します。一度きりのお取引で終わらせず、次の拠点、その次の挑戦までご相談いただける——そんなかかりつけの不動産会社を目指しています。
            </p>
          </div>
        </div>
      </window.Container>

      {/* 借りる / 貸す 動線（ページ上部で早めに振り分ける） */}
      <window.Container style={{ paddingTop:'var(--sp-12)', paddingBottom:'var(--sp-6)' }}>
        <p style={{ margin:'0 0 var(--sp-5)', textAlign:'center',
          font:`var(--fw-medium) ${isMobile?'var(--t-sm)':'var(--t-base)'}/1.7 var(--font-body)`, color:'var(--text-muted)' }}>
          ご相談の内容に近いほうから、詳しいご案内へお進みいただけます。
        </p>
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:2},1fr)`, gap:'var(--sp-5)' }}>
          {[{en:'For Tenants',label:'借りたい方へ',sub:'物件を探している企業様',icon:'handshake',route:'lease'},
            {en:'For Owners',label:'貸したい方へ',sub:'物件を貸したいオーナー様',icon:'shield',route:'manage'}].map(b=>(
            <a key={b.route} onClick={()=>onNav(b.route)} style={{ cursor:'pointer', display:'flex', alignItems:'center', gap:16,
              background:'linear-gradient(150deg, var(--blue-900), var(--blue-800))', borderRadius:'var(--r-lg)', padding:'var(--sp-7)', color:'#fff' }}>
              <span style={{ display:'grid', placeItems:'center', width:54, height:54, borderRadius:'var(--r-pill)', background:'rgba(255,255,255,0.12)', color:'#fff', flex:'none' }}><window.Icon name={b.icon} size={26}/></span>
              <div style={{ display:'flex', flexDirection:'column', gap:4, flex:1 }}>
                <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.14em', textTransform:'uppercase', color:'var(--blue-300)' }}>{b.en}</span>
                <span style={{ font:'700 var(--t-h4)/1.3 var(--font-display)', color:'#fff' }}>{b.label}</span>
                <span style={{ font:'var(--fw-regular) var(--t-xs)/1 var(--font-body)', color:'rgba(255,255,255,0.7)' }}>{b.sub}</span>
              </div>
              <window.Icon name="arrowR" size={20} style={{ color:'#fff', flex:'none' }}/>
            </a>
          ))}
        </div>
      </window.Container>

      {/* こんなお悩み */}
      <window.Container style={{ paddingTop:'var(--sp-12)', paddingBottom:'var(--sp-6)' }}>
        <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:12 }}>Worries</span>
          <h2 style={{ margin:'0 0 12px', font:`var(--fw-bold) ${isMobile?'var(--t-h4)':'var(--t-display)'}/1.25 var(--font-display)`, color:'var(--text-strong)', letterSpacing:'var(--ls-tight)', whiteSpace: isMobile?'nowrap':'normal' }}>こんなお悩み、ありませんか？</h2>
          <p style={{ margin:0, font:`var(--fw-regular) ${isMobile?'var(--t-sm)':'var(--t-base)'}/1.8 var(--font-body)`, color:'var(--text-muted)' }}>借りたい方も、貸したい方も。事業用不動産にまつわるお困りごとを、Skrrsが引き受けます。</p>
        </div>
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?2:3},1fr)`, gap: isMobile?'var(--sp-3)':'var(--sp-5)', marginTop:'var(--sp-10)' }}>
          {D.guideWorries.map(w=>(
            <div key={w.t} style={{ display:'flex', flexDirection: isMobile?'column':'row', gap: isMobile?10:14, background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding: isMobile?'var(--sp-4)':'var(--sp-6)' }}>
              <span style={{ display:'grid', placeItems:'center', width: isMobile?38:44, height: isMobile?38:44, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name={w.icon} size={isMobile?18:20}/></span>
              <div style={{ display:'flex', flexDirection:'column', gap:6 }}>
                <span style={{ font:`700 ${isMobile?'var(--t-sm)':'var(--t-base)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>{w.t}</span>
                <span style={{ font:`var(--fw-regular) ${isMobile?'var(--t-xs)':'var(--t-sm)'}/1.65 var(--font-body)`, color:'var(--text-muted)' }}>{w.d}</span>
              </div>
            </div>
          ))}
        </div>
      </window.Container>

      {/* ご利用の流れ */}
      <section style={{ background:'var(--blue-50)', padding:'var(--sp-16) 0' }}>
        <window.Container>
          <IHd marker="How to use" title="ご相談から契約までの流れ" align="center"
            lead="大きく4つのステップで進みます。物件探しから契約までの詳しい流れは、「借りたい方へ」のページでご案内しています。" />
          <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:4},1fr)`, gap: isMobile?'var(--sp-3)':'var(--sp-5)', marginTop:'var(--sp-10)' }}>
            {D.guideSteps.map(s=> isMobile ? (
              /* スマホ：NO/件名（上段）・イラスト/詳細（下段）のコンパクト2×2 */
              <div key={s.n} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding:'var(--sp-4)',
                display:'grid', gridTemplateColumns:'48px 1fr', columnGap:14, rowGap:8, alignItems:'center' }}>
                <span style={{ font:'700 var(--t-h2)/1 var(--font-num)', color:'var(--blue-300)', textAlign:'center' }}>{s.n}</span>
                <span style={{ font:'700 var(--t-base)/1.3 var(--font-display)', color:'var(--text-strong)' }}>{s.t}</span>
                <span style={{ display:'grid', placeItems:'center', width:48, height:48, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)' }}><window.Icon name={s.icon} size={22}/></span>
                <span style={{ font:'var(--fw-regular) var(--t-xs)/1.6 var(--font-body)', color:'var(--text-muted)' }}>{s.d}</span>
              </div>
            ) : (
              <div key={s.n} style={{ position:'relative', background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding:'var(--sp-6)', display:'flex', flexDirection:'column', gap:12 }}>
                <div style={{ display:'flex', alignItems:'center', gap:12 }}>
                  <span style={{ display:'grid', placeItems:'center', width:48, height:48, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)' }}><window.Icon name={s.icon} size={22}/></span>
                  <span style={{ font:'700 var(--t-h2)/1 var(--font-num)', color:'var(--blue-300)' }}>{s.n}</span>
                </div>
                <span style={{ font:'700 var(--t-h4)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{s.t}</span>
                <span style={{ font:'var(--fw-regular) var(--t-sm)/1.7 var(--font-body)', color:'var(--text-muted)' }}>{s.d}</span>
              </div>
            ))}
          </div>
        </window.Container>
      </section>

      {/* 安心ポイント */}
      <window.Container style={{ paddingTop:'var(--sp-16)', paddingBottom:'var(--sp-6)' }}>
        <IHd marker="Why Skrrs" title="Skrrsが選ばれる、4つの安心" align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:2},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-10)' }}>
          {D.guidePoints.map(p=>(
            <div key={p.t} style={{ display:'flex', gap:16, background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding:'var(--sp-7)' }}>
              <span style={{ display:'grid', placeItems:'center', width:52, height:52, borderRadius:'var(--r-pill)', background:'var(--blue-600)', color:'#fff', flex:'none' }}><window.Icon name={p.icon} size={24}/></span>
              <div style={{ display:'flex', flexDirection:'column', gap:7 }}>
                <span style={{ font:'700 var(--t-h4)/1.3 var(--font-display)', color:'var(--text-strong)' }}>{p.t}</span>
                <span style={{ font:'var(--fw-regular) var(--t-sm)/1.8 var(--font-body)', color:'var(--text-muted)' }}>{p.d}</span>
              </div>
            </div>
          ))}
        </div>
      </window.Container>

      {/* ビジュアルブレイク（アイコン連続区間のあとに写真を挟む） */}
      <window.PhotoBand src={window.SKRRS_IMG.consult} eyebrow="Our Approach"
        title="物件ではなく、事業から考えます。"
        sub="何坪必要か。その立地で人は採れるか。その用途で、そもそも稼働できるか。物件をご紹介する前に、事業の前提から一緒に整理します。"
        position="center 30%" cta="無料で相談する" onNav={onNav} />

      {/* FAQ（faqPage の featured 項目だけを抜粋。全文は faq ページ） */}
      <section style={{ background:'var(--blue-50)', padding:'var(--sp-16) 0' }}>
        <window.Container style={{ maxWidth:820 }}>
          <IHd marker="FAQ" title="よくあるご質問" align="center"
            lead="ご相談の前に多くいただくご質問です。ほかの質問も一覧でご覧いただけます。" />
          <div style={{ marginTop:'var(--sp-8)', display:'flex', flexDirection:'column', gap:12 }}>
            {window.SKRRS_FAQ_FEATURED().map((f,i)=>{
              const open = openQ===i;
              return (
                <div key={i} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', overflow:'hidden' }}>
                  <button onClick={()=>setOpenQ(open?-1:i)} style={{ width:'100%', display:'flex', alignItems:'center', justifyContent:'space-between', gap:14,
                    padding:'var(--sp-5)', border:'none', background:'transparent', cursor:'pointer', textAlign:'left' }}>
                    <span style={{ display:'flex', alignItems:'center', gap:12 }}>
                      <span style={{ font:'700 1.1rem/1 var(--font-num)', color:'var(--blue-600)' }}>Q</span>
                      <span style={{ font:'700 var(--t-base)/1.5 var(--font-display)', color:'var(--text-strong)' }}>{f.q}</span>
                    </span>
                    <window.Icon name="chevD" size={18} style={{ color:'var(--text-muted)', flex:'none', transform: open?'rotate(180deg)':'none', transition:'transform var(--dur-base) var(--ease-out)' }}/>
                  </button>
                  {open && (
                    <div style={{ padding:'0 var(--sp-5) var(--sp-5)', display:'flex', gap:12 }}>
                      <span style={{ font:'700 1.1rem/1 var(--font-num)', color:'var(--blue-300)' }}>A</span>
                      <p style={{ margin:0, font:'var(--fw-regular) var(--t-sm)/1.8 var(--font-body)', color:'var(--text-body)' }}>{f.a}</p>
                    </div>
                  )}
                </div>
              );
            })}
          </div>
          <div style={{ display:'flex', justifyContent:'center', marginTop:'var(--sp-8)' }}>
            <IBtn variant="secondary" iconRight={<window.Icon name="chevR" size={16}/>}
              onClick={()=>onNav('faq')}>よくあるご質問をすべて見る</IBtn>
          </div>
        </window.Container>
      </section>

      {/* CTA */}
      <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-16)' }}>
        <div style={{ display:'flex', flexDirection:'column', alignItems:'center', gap:16, textAlign:'center' }}>
          <h2 style={{ margin:0, font:'900 var(--t-h2)/1.4 var(--font-display)', color:'var(--text-strong)' }}>まずは、お気軽にご相談ください</h2>
          <p style={{ margin:0, maxWidth:520, font:'var(--fw-regular) var(--t-base)/1.8 var(--font-body)', color:'var(--text-body)' }}>
            はじめてのご相談も、2拠点目のご相談も、同じようにお受けします。ご相談は無料ですので、まずはいまの状況をお聞かせください。
          </p>
          <div style={{ display:'flex', gap:14, flexWrap:'wrap', justifyContent:'center' }}>
            <IBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>} onClick={()=>onNav('contact')}>無料で相談する</IBtn>
            <a href="tel:0359377544" style={{ display:'inline-flex', alignItems:'center', gap:8, color:'var(--blue-900)', textDecoration:'none' }}>
              <window.Icon name="phone" size={18}/><span style={{ font:'700 1.3rem/1 var(--font-num)' }}>03-5937-7544</span>
            </a>
          </div>
        </div>
      </window.Container>
    </main>
  );
}

// ── Company (会社概要) ──────────────────────────────────────
function CompanyScreen({ onNav }) {
  const c = window.SKRRS_DATA.company;
  const m = window.SKRRS_DATA.mvv;
  const a = window.SKRRS_DATA.about;
  const ceo = window.SKRRS_DATA.ceoMessage;
  const { isMobile, isTablet } = window.useViewport();
  const rows = [
    ['会社名', c.name], ['代表者', c.representative], ['事業責任者', c.executive],
    ['所在地', c.address], ['電話番号', c.tel],
    ['営業時間', c.hours], ['設立', c.established],
    ['事業内容', c.business.join('／')], ['免許番号', c.license],
    ['Web', c.url],
  ].filter(([, v]) => v && String(v).indexOf('◯') < 0);   // 未確定（空 or ◯プレースホルダ）の項目は行ごと出さない
  return (
    <main>
      <window.PageHero marker="Company" icon="building" title="会社概要" image={window.SKRRS_IMG.cityTowers}
        lead="事業の成長を、不動産から支える。Skrrs株式会社の会社情報です。"
        crumbs={[{label:'ホーム',route:'home'},{label:'会社概要'}]} onNav={onNav} />

      {/* 代表メッセージ */}
      <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-14)', maxWidth:980 }}>
        <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'380px 1fr', gap:'var(--sp-8)', alignItems:'center' }}>
          <window.Photo src={window.SKRRS_IMG.ceo} alt="取締役COO 石塚 秀明" hue="var(--blue-700)" icon="user" ratio="5 / 4" position="center 25%" style={{ borderRadius:'var(--r-lg)' }} />
          <div style={{ display:'flex', flexDirection:'column', gap:14 }}>
            <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.14em', textTransform:'uppercase', color:'var(--blue-600)' }}>Message</span>
            <h2 style={{ margin:0, font:'900 var(--t-h2)/1.5 var(--font-display)', color:'var(--text-strong)' }}>{ceo.title || '信頼される、かかりつけの不動産会社に。'}</h2>
            <p style={{ margin:0, font:'var(--fw-regular) var(--t-base)/1.95 var(--font-body)', color:'var(--text-body)' }}>{ceo.body}</p>
            <div style={{ display:'flex', alignItems:'baseline', gap:10 }}>
              <span style={{ font:'var(--fw-regular) var(--t-xs)/1 var(--font-body)', color:'var(--text-muted)' }}>{ceo.role}</span>
              <span style={{ font:'700 var(--t-h4)/1 var(--font-display)', color:'var(--text-strong)' }}>{ceo.name}</span>
            </div>
            {ceo.note && <span style={{ font:'var(--fw-regular) var(--t-2xs)/1.5 var(--font-body)', color:'var(--text-faint)' }}>{ceo.note}</span>}
          </div>
        </div>
      </window.Container>

      {/* 経営理念（2026-08-03 Reijiさん指示で Mission・Vision カードを削除。Value のみ掲出） */}
      <section style={{ padding:'var(--sp-6) 0 var(--sp-14)' }}>
        <window.Container style={{ maxWidth:980 }}>
          <IHd marker="Our Philosophy" title="私たちが大切にしていること" align="center"
            lead="Skrrsがすべてのお客様にお約束する、4つのValueです。" />
          <div style={{ marginTop:'var(--sp-10)' }}>
            <span style={{ display:'block', font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.14em', textTransform:'uppercase', color:'var(--blue-600)', marginBottom:'var(--sp-4)', textAlign:'center' }}>Value・私たちの約束</span>
            <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?2:isTablet?2:4},1fr)`, gap: isMobile?'var(--sp-3)':'var(--sp-4)' }}>
              {m.values.map(v=>(
                <div key={v.n} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding:'var(--sp-6)', display:'flex', flexDirection:'column', gap:10 }}>
                  <span style={{ display:'flex', alignItems:'center', justifyContent:'space-between' }}>
                    <span style={{ display:'grid', placeItems:'center', width:44, height:44, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)' }}><window.Icon name={v.icon} size={20}/></span>
                    {v.k && <span style={{ font:'700 var(--t-2xs)/1 var(--font-body)', letterSpacing:'0.22em', color:'var(--blue-300)' }}>{v.k}</span>}
                  </span>
                  <span style={{ font:'700 var(--t-base)/1.5 var(--font-display)', color:'var(--text-strong)' }}>{v.t}</span>
                  <span style={{ font:'var(--fw-regular) var(--t-xs)/1.75 var(--font-body)', color:'var(--text-muted)' }}>{v.d}</span>
                </div>
              ))}
            </div>
          </div>
        </window.Container>
      </section>

      {/* 想い・問題意識 */}
      <section style={{ background:'var(--blue-50)', padding:'var(--sp-14) 0' }}>
        <window.Container style={{ maxWidth:820 }}>
          <IHd marker="Story" title={a.problemTitle} align="center" />
          <div style={{ marginTop:'var(--sp-8)', display:'flex', flexDirection:'column', gap:18 }}>
            {a.problem.map((p,i)=>(
              <p key={i} style={{ margin:0, font:`var(--fw-regular) ${isMobile?'var(--t-base)':'var(--t-lead)'}/1.95 var(--font-body)`, color:'var(--text-body)' }}>{p}</p>
            ))}
          </div>
          {/* 目指す姿（Storyの締め。Why→Whereの2段構成） */}
          {a.aimLead && (
            <div style={{ marginTop:'var(--sp-10)', background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)', padding:'var(--sp-8)', textAlign:'left', boxShadow:'var(--shadow-sm)' }}>
              <span style={{ display:'block', font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.14em', textTransform:'uppercase', color:'var(--blue-600)', marginBottom:12 }}>Our Direction・{a.aimTitle}</span>
              <p style={{ margin:'0 0 12px', font:`700 ${isMobile?'var(--t-h4)':'var(--t-h3)'}/1.6 var(--font-display)`, color:'var(--text-strong)' }}>{a.aimLead}</p>
              <p style={{ margin:0, font:'var(--fw-regular) var(--t-sm)/1.9 var(--font-body)', color:'var(--text-body)' }}>{a.aimBody}</p>
            </div>
          )}
        </window.Container>
      </section>

      {/* フルビュー写真バンド（タグラインを重ねて締める） */}
      <section style={{ position:'relative', overflow:'hidden', marginBottom:'var(--sp-8)' }}>
        <window.Photo src={window.SKRRS_IMG.hero} alt="東京の街並み" hue="var(--blue-800)" ratio="auto" position="center 40%"
          style={{ position:'absolute', inset:0, aspectRatio:'auto' }} />
        <div style={{ position:'absolute', inset:0, background:'linear-gradient(100deg, rgba(7,24,43,0.62), rgba(7,48,75,0.28))' }} />
        <window.Container style={{ position:'relative', height: isMobile?320:460, display:'flex', flexDirection:'column', justifyContent:'flex-end', paddingTop:'var(--sp-12)', paddingBottom:'var(--sp-12)' }}>
          <span style={{ display:'inline-flex', alignItems:'center', gap:8, marginBottom:16 }}>
            <span style={{ width:28, 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-200)' }}>Our Field</span>
          </span>
          <p style={{ margin:0, maxWidth:640, font:`900 ${isMobile?'var(--t-h3)':'var(--t-h1)'}/1.5 var(--font-display)`, color:'#fff', letterSpacing:'-0.01em' }}>
            不動産の側面から<br/>日本のビジネスを加速させる。
          </p>
        </window.Container>
      </section>

      {/* 会社情報テーブル */}
      <window.Container style={{ paddingTop:'var(--sp-4)', paddingBottom:'var(--sp-16)', maxWidth:820 }}>
        <IHd marker="Company Profile" title="会社情報" align="center" />
        <table style={{ marginTop:'var(--sp-8)', width:'100%', borderCollapse:'collapse', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', overflow:'hidden' }}>
          <tbody>
            {rows.map(r=>(
              <tr key={r[0]} style={{ borderBottom:'1px solid var(--border-subtle)' }}>
                <th style={{ width:isMobile?120:200, textAlign:'left', padding:'15px 18px', background:'var(--surface-sunken)', verticalAlign:'top',
                  font:'var(--fw-bold) var(--t-sm)/1.5 var(--font-body)', color:'var(--text-strong)', borderRight:'1px solid var(--border-subtle)' }}>{r[0]}</th>
                <td style={{ padding:'15px 18px', background:'var(--surface)', font:'var(--fw-regular) var(--t-sm)/1.7 var(--font-body)', color:'var(--text-body)' }}>{r[1]}</td>
              </tr>
            ))}
          </tbody>
        </table>
        <div style={{ marginTop:'var(--sp-8)', display:'flex', gap:12, flexWrap:'wrap' }}>
          <IBtn variant="primary" pill iconLeft={<window.Icon name="mail" size={17}/>} onClick={()=>onNav('contact')}>お問い合わせ</IBtn>
          <IBtn variant="ghost" iconLeft={<window.Icon name="chevL" size={16}/>} onClick={()=>onNav('home')}>ホームへ戻る</IBtn>
        </div>
      </window.Container>
    </main>
  );
}

// ── 借りたい方へ（lease） ───────────────────────────────────
function LeaseScreen({ onNav }) {
  const D = window.SKRRS_DATA;
  const P = D.leasePage;
  const { isMobile } = window.useViewport();
  const voices = D.projects.filter(v=>['office','retail','rnd'].includes(v.tone)).slice(0,3);
  return (
    <main>
      <window.PageHero marker={P.marker} icon="handshake" title={P.title} lead={P.lead} image={window.SKRRS_IMG.svcTenant} position="center 35%"
        crumbs={[{label:'ホーム',route:'home'},{label:'サービス',route:'services'},{label:P.title}]} onNav={onNav} />

      {/* intro */}
      <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-10)' }}>
        <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'1.05fr 0.95fr', gap:'var(--sp-10)', alignItems:'center' }}>
          <div style={{ display:'flex', flexDirection:'column', gap:18 }}>
            <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h2)':'var(--t-h1)'}/1.45 var(--font-display)`, color:'var(--text-strong)' }}>{P.intro.title}</h2>
            <p style={{ margin:0, font:`var(--fw-regular) ${isMobile?'var(--t-base)':'var(--t-lead)'}/1.95 var(--font-body)`, color:'var(--text-body)' }}>{P.intro.body}</p>
          </div>
          <window.Photo src={window.SKRRS_IMG.consult} alt="お客様とのご相談" hue="var(--blue-700)" ratio={isMobile?'16 / 10':'4 / 3'} icon="handshake" style={{ borderRadius:'var(--r-lg)', boxShadow:'var(--shadow-sm)' }} />
        </div>
      </window.Container>

      {/* points */}
      <window.Container style={{ paddingTop:'var(--sp-6)', paddingBottom:'var(--sp-12)' }}>
        <IHd marker="Point" title="Skrrsの賃貸仲介・4つの特徴" align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:2},1fr)`, gap:'var(--sp-6)', marginTop:'var(--sp-10)' }}>
          {P.points.map((p,i)=>(
            <div key={p.n} style={{ display:'flex', flexDirection:'column', background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)', overflow:'hidden', boxShadow:'var(--shadow-sm)' }}>
              <window.Photo src={[window.SKRRS_IMG.meetingFive, window.SKRRS_IMG.consult, window.SKRRS_IMG.negotiation, window.SKRRS_IMG.warehouseInspect][i]} alt={p.t} hue="var(--blue-700)" ratio="16 / 7" icon={p.icon} />
              <div style={{ display:'flex', gap:'var(--sp-4)', padding:'var(--sp-6)' }}>
                <span style={{ display:'grid', placeItems:'center', width:48, height:48, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name={p.icon} size={22}/></span>
                <div style={{ display:'flex', flexDirection:'column', gap:7 }}>
                  <span style={{ font:'700 var(--t-h4)/1.3 var(--font-display)', color:'var(--text-strong)' }}>{p.t}</span>
                  <span style={{ font:'var(--fw-regular) var(--t-sm)/1.8 var(--font-body)', color:'var(--text-muted)' }}>{p.d}</span>
                </div>
              </div>
            </div>
          ))}
        </div>
      </window.Container>

      {/* process（借りたい：D.process 6STEP） */}
      <section style={{ background:'var(--blue-50)', padding:'var(--sp-16) 0' }}>
        <window.Container>
          <IHd marker="Process" title="ご契約までの流れ" align="center" />
          <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:3},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-10)' }}>
            {D.process.map(s=>(
              <div key={s.n} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding:'var(--sp-6)', display:'flex', flexDirection:'column', gap:10 }}>
                <span style={{ font:'700 var(--t-h2)/1 var(--font-num)', color:'var(--blue-300)' }}>{s.n}</span>
                <span style={{ font:'700 var(--t-h4)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{s.t}</span>
                <span style={{ font:'var(--fw-regular) var(--t-sm)/1.7 var(--font-body)', color:'var(--text-muted)' }}>{s.d}</span>
              </div>
            ))}
          </div>
        </window.Container>
      </section>

      {/* ビジュアルブレイク（後半の写真途切れを解消） */}
      <window.PhotoBand src={window.SKRRS_IMG.teamPortrait} eyebrow="Your Partner"
        title={<React.Fragment>専任の担当が、<br/>ご契約まで伴走します。</React.Fragment>}
        sub="ご相談は無料です。「まだ具体的には決まっていない」段階でも、相場感や必要な広さの目安をお伝えします。担当がひとりで最後まで受け持ち、ご希望に合う物件がなければ、無理にお勧めすることはありません。"
        position="center 35%" cta="不動産の相談をする" onNav={onNav} />

      {/* addon（2件・カードはクリックで詳細へ） */}
      <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-6)' }}>
        <IHd marker="Option" title="あわせてご利用いただけるサービス" align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:2},1fr)`,
          gap:'var(--sp-5)', marginTop:'var(--sp-8)', alignItems:'stretch' }}>
          {P.addon.map(a=>(
            <a key={a.t} className="sk-card" onClick={()=>a.route && onNav(a.route)}
              style={{ display:'flex', gap:'var(--sp-4)', height:'100%', cursor: a.route?'pointer':'default',
                background:'var(--surface)', border:'1px solid var(--border-subtle)',
                borderRadius:'var(--r-md)', padding: isMobile?'var(--sp-5)':'var(--sp-6)' }}>
              <span style={{ display:'grid', placeItems:'center', width:44, height:44, borderRadius:'var(--r-pill)',
                background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name={a.icon} size={20}/></span>
              <div style={{ display:'flex', flexDirection:'column', gap:6 }}>
                <span style={{ font:'700 var(--t-base)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{a.t}</span>
                <span style={{ font:'var(--fw-regular) var(--t-sm)/1.75 var(--font-body)', color:'var(--text-muted)' }}>{a.d}</span>
                {a.route && (
                  <span style={{ marginTop:'auto', paddingTop:6, display:'inline-flex', alignItems:'center', gap:6,
                    font:'var(--fw-bold) var(--t-sm)/1 var(--font-body)', color:'var(--blue-600)' }}>
                    {a.cta || '詳しく見る'} <window.Icon name="chevR" size={15}/>
                  </span>
                )}
              </div>
            </a>
          ))}
        </div>
      </window.Container>

      <LeaseManageCTA onNav={onNav} voices={voices} other={{label:'貸したい方はこちら', route:'manage'}} />
    </main>
  );
}

// ── 貸したい方へ（manage） ──────────────────────────────────
function ManageScreen({ onNav }) {
  const D = window.SKRRS_DATA;
  const P = D.managePage;
  const { isMobile } = window.useViewport();
  const voices = D.projects.filter(v=>['industrial','datacenter'].includes(v.tone)).slice(0,3);
  return (
    <main>
      <window.PageHero marker={P.marker} icon="shield" title={P.title} lead={P.lead} image={window.SKRRS_IMG.chartsData}
        crumbs={[{label:'ホーム',route:'home'},{label:'サービス',route:'services'},{label:P.title}]} onNav={onNav} />

      <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-10)' }}>
        <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'0.95fr 1.05fr', gap:'var(--sp-10)', alignItems:'center' }}>
          <window.Photo src={window.SKRRS_IMG.svcOwner} alt="市場分析とリーシング" hue="var(--blue-700)" ratio={isMobile?'16 / 10':'4 / 3'} icon="shield" style={{ borderRadius:'var(--r-lg)', boxShadow:'var(--shadow-sm)', order: isMobile?2:1 }} />
          <div style={{ display:'flex', flexDirection:'column', gap:18, order: isMobile?1:2 }}>
            <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h2)':'var(--t-h1)'}/1.45 var(--font-display)`, color:'var(--text-strong)', textWrap:'balance' }}>{P.intro.title}</h2>
            <p style={{ margin:0, font:`var(--fw-regular) ${isMobile?'var(--t-base)':'var(--t-lead)'}/1.95 var(--font-body)`, color:'var(--text-body)' }}>{P.intro.body}</p>
          </div>
        </div>
      </window.Container>

      {/* features 6 */}
      <window.Container style={{ paddingTop:'var(--sp-6)', paddingBottom:'var(--sp-12)' }}>
        <IHd marker="Features" title="Skrrsの物件管理・6つの特徴" align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?2:3},1fr)`, gap: isMobile?'var(--sp-3)':'var(--sp-6)', marginTop:'var(--sp-10)' }}>
          {P.features.map((f,i)=>(
            <div key={f.t} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)', overflow:'hidden', display:'flex', flexDirection:'column', boxShadow:'var(--shadow-sm)' }}>
              <window.Photo src={[window.SKRRS_IMG.officeReport, window.SKRRS_IMG.chartsData, window.SKRRS_IMG.consult, window.SKRRS_IMG.brokerageFee, window.SKRRS_IMG.negotiation, window.SKRRS_IMG.teamDiscussion][i]} alt={f.t} hue="var(--blue-700)" ratio="16 / 9" icon={f.icon} />
              <div style={{ padding: isMobile?'var(--sp-4)':'var(--sp-6)', display:'flex', flexDirection:'column', gap: isMobile?8:11 }}>
                <span style={{ display:'inline-flex', alignItems:'center', gap:9 }}>
                  <span style={{ display:'grid', placeItems:'center', width: isMobile?34:40, height: isMobile?34:40, borderRadius:'var(--r-pill)', background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name={f.icon} size={isMobile?17:20}/></span>
                  <span style={{ font:`700 ${isMobile?'var(--t-base)':'var(--t-h4)'}/1.3 var(--font-display)`, color:'var(--text-strong)' }}>{f.t}</span>
                </span>
                <span style={{ font:`var(--fw-regular) ${isMobile?'var(--t-xs)':'var(--t-sm)'}/1.75 var(--font-body)`, color:'var(--text-muted)' }}>{f.d}</span>
              </div>
            </div>
          ))}
        </div>
      </window.Container>

      {/* leasing points */}
      <section style={{ background:'var(--blue-900)', padding:'var(--sp-16) 0' }}>
        <window.Container>
          <div style={{ display:'flex', flexDirection:'column', alignItems:'center', gap:14 }}>
            <span style={{ display:'inline-flex', alignItems:'center', gap:8 }}>
              <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)' }}>Key Points</span>
            </span>
            <h2 style={{ margin:0, font:'var(--fw-bold) var(--t-display)/1.25 var(--font-display)', color:'#fff', letterSpacing:'var(--ls-tight)', textAlign:'center' }}>テナント誘致で押さえるべきポイント</h2>
          </div>
          <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:3},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-10)' }}>
            {P.leasingPoints.map((p,i)=>(
              <div key={p.t} style={{ background:'rgba(255,255,255,0.05)', border:'1px solid rgba(255,255,255,0.12)', borderRadius:'var(--r-md)', padding:'var(--sp-6)', display:'flex', flexDirection:'column', gap:10 }}>
                <span style={{ font:'700 var(--t-h2)/1 var(--font-num)', color:'var(--blue-300)' }}>{`0${i+1}`}</span>
                <span style={{ font:'700 var(--t-h4)/1.4 var(--font-display)', color:'#fff' }}>{p.t}</span>
                <span style={{ font:'var(--fw-regular) var(--t-sm)/1.7 var(--font-body)', color:'rgba(255,255,255,0.74)' }}>{p.d}</span>
              </div>
            ))}
          </div>
        </window.Container>
      </section>

      {/* steps 6 */}
      <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-6)' }}>
        <IHd marker="Process" title="テナント貸出までの流れ" align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:3},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-10)' }}>
          {P.steps.map(s=>(
            <div key={s.n} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding:'var(--sp-6)', display:'flex', flexDirection:'column', gap:10 }}>
              <span style={{ font:'700 var(--t-h2)/1 var(--font-num)', color:'var(--blue-300)' }}>{s.n}</span>
              <span style={{ font:'700 var(--t-h4)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{s.t}</span>
              <span style={{ font:'var(--fw-regular) var(--t-sm)/1.7 var(--font-body)', color:'var(--text-muted)' }}>{s.d}</span>
            </div>
          ))}
        </div>
      </window.Container>

      {/* ビジュアルブレイク（後半の写真途切れを解消） */}
      <window.PhotoBand src={window.SKRRS_IMG.growthCoins} eyebrow="Leasing"
        title="空室を、収益に変える。"
        sub="いま何件の反響があり、どこで止まっているのか。任せきりにせず、進捗が見える状態でお預かりします。ご成約後の日常管理から次の更新まで、同じ担当が続けて担当します。"
        position="center 50%" cta="物件管理を相談する" onNav={onNav} />

      <LeaseManageCTA onNav={onNav} voices={voices} other={{label:'借りたい方はこちら', route:'lease'}} />
    </main>
  );
}

// ── 共有CTA（声＋相談＋もう一方への導線） ───────────────────
function LeaseManageCTA({ onNav, voices, other }) {
  const { isMobile } = window.useViewport();
  return (
    <React.Fragment>
      {voices && voices.length>0 && (
        <section style={{ background:'var(--blue-50)', padding:'var(--sp-14) 0' }}>
          <window.Container>
            <IHd marker="Voice" title="お客様の声" align="center" />
            {(() => {
              const cards = voices.map(v=>(
                <a key={v.id} onClick={()=>onNav('projects')} style={{ cursor:'pointer', display:'flex', flexDirection:'column', gap:12, height:'100%',
                  background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)', padding: isMobile?'var(--sp-5)':'var(--sp-6)', boxShadow:'var(--shadow-sm)' }}>
                  <window.Icon name="quote" size={isMobile?20:24} style={{ color:'var(--blue-300)' }}/>
                  <span style={{ font:`var(--fw-bold) ${isMobile?'var(--t-sm)':'var(--t-base)'}/1.6 var(--font-display)`, color:'var(--text-strong)' }}>{v.voice}</span>
                  <div style={{ marginTop:'auto', display:'flex', alignItems:'center', gap:8, flexWrap:'wrap' }}>
                    <IBadge tone={v.tone} size={isMobile?'sm':'md'}>{v.cat}</IBadge>
                  </div>
                </a>
              ));
              return isMobile
                ? <div style={{ marginTop:'var(--sp-8)' }}><window.AutoCarousel basis="46%">{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>
      )}
      <window.Container style={{ paddingTop:'var(--sp-14)', paddingBottom:'var(--sp-16)' }}>
        <div style={{ background:'linear-gradient(150deg, var(--blue-900), var(--blue-800))', borderRadius:'var(--r-lg)',
          padding: isMobile?'var(--sp-8)':'var(--sp-12)', display:'flex', flexDirection:'column', alignItems:'center', gap:18, textAlign:'center' }}>
          <h2 style={{ margin:0, font:'900 var(--t-h2)/1.4 var(--font-display)', color:'#fff' }}>まずはお気軽にご相談ください</h2>
          <p style={{ margin:0, maxWidth:520, font:'var(--fw-regular) var(--t-base)/1.8 var(--font-body)', color:'rgba(255,255,255,0.82)' }}>
            ご相談は無料です。物件のことも、契約のお悩みも、専門のエージェントが親身にお応えします。
          </p>
          <div style={{ display:'flex', gap:14, flexWrap:'wrap', justifyContent:'center' }}>
            <IBtn variant="inverse" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>} onClick={()=>onNav('contact')}>無料で相談する</IBtn>
            <a onClick={()=>onNav(other.route)} style={{ cursor:'pointer', display:'inline-flex', alignItems:'center', gap:7,
              padding:'12px 18px', borderRadius:'var(--r-pill)', border:'1px solid rgba(255,255,255,0.4)',
              font:'var(--fw-bold) var(--t-sm)/1 var(--font-body)', color:'#fff' }}>
              {other.label}<window.Icon name="arrowR" size={16}/>
            </a>
          </div>
          <a href="tel:0359377544" style={{ display:'inline-flex', alignItems:'center', gap:8, color:'#fff', textDecoration:'none', marginTop:4 }}>
            <window.Icon name="phone" size={18}/><span style={{ font:'700 1.3rem/1 var(--font-num)' }}>03-5937-7544</span>
          </a>
        </div>
      </window.Container>
    </React.Fragment>
  );
}

// ── 法務ページ（3文書の共通レンダラ） ────────────────────────
// 本文は data.js の privacy.body / terms.body / cookies.body（ArticleBody 記法）。
// 文言の修正は data.js 側だけで完結する。3ページは必ず相互リンクさせる
// （同意の対象が片方だけ読める状態にしない）。文書を増やすときは LEGAL_DOCS に足す。
// ── 福利厚生サービス（従業員向け住宅仲介・社宅手配） ──────────
// 借りたい方へページの addon カードから遷移。構成は「企業側メリット → 従業員側メリット → 利用方法」。
function WelfareScreen({ onNav, onConsult }) {
  const W = window.SKRRS_DATA.welfarePage;
  const { isMobile } = window.useViewport();
  const goContact = () => (onConsult ? onConsult() : onNav('contact'));
  return (
    <main>
      <window.PageHero marker={W.marker} icon="users" title={W.title} lead={W.lead}
        image={window.SKRRS_IMG.meetingThree} position="center 30%" onNav={onNav}
        crumbs={[{label:'ホーム',route:'home'},{label:'借りたい方へ',route:'lease'},{label:'従業員向け住宅仲介・社宅手配'}]} />

      {/* ── 課題提起（共感の入り口） ── */}
      {W.challenge && (
        <window.Container style={{ paddingTop: isMobile?'var(--sp-8)':'var(--sp-10)' }}>
          <div style={{ maxWidth:760, margin:'0 auto', display:'flex', gap:14, alignItems:'flex-start',
            background:'var(--surface-sunken)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)',
            padding: isMobile?'var(--sp-5)':'var(--sp-6)' }}>
            <window.Icon name="quote" size={20} style={{ color:'var(--blue-300)', flex:'none', marginTop:2 }}/>
            <span style={{ font:'var(--fw-medium) var(--t-base)/1.8 var(--font-body)', color:'var(--text-body)' }}>{W.challenge}</span>
          </div>
        </window.Container>
      )}

      {/* ── 企業側：費用負担なし ＋ メリット ── */}
      <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)' }}>
        <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'1fr 1fr', gap: isMobile?'var(--sp-6)':'var(--sp-10)', alignItems:'start' }}>
          <div style={{ display:'flex', flexDirection:'column', gap:14 }}>
            <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.16em', textTransform:'uppercase', color:'var(--blue-600)' }}>For Companies</span>
            <h2 style={{ margin:0, font:`700 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>{W.corp.title}</h2>
            <p style={{ margin:0, font:'var(--fw-regular) var(--t-base)/1.9 var(--font-body)', color:'var(--text-body)' }}>{W.corp.body}</p>
          </div>
          <div style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)',
            boxShadow:'var(--shadow-sm)', padding: isMobile?'var(--sp-5)':'var(--sp-7)' }}>
            <span style={{ display:'block', font:'700 var(--t-base)/1.4 var(--font-display)', color:'var(--text-strong)', marginBottom:14 }}>{W.corp.meritTitle}</span>
            <div style={{ display:'flex', flexDirection:'column', gap:12 }}>
              {W.corp.merits.map(m=>(
                <span key={m} style={{ display:'flex', gap:10, alignItems:'flex-start', font:'var(--fw-medium) var(--t-sm)/1.6 var(--font-body)', color:'var(--text-body)' }}>
                  <span style={{ display:'grid', placeItems:'center', width:20, height:20, borderRadius:'var(--r-pill)',
                    background:'var(--blue-50)', color:'var(--blue-600)', flex:'none', marginTop:2 }}><window.Icon name="check" size={12} stroke={3}/></span>
                  {m}
                </span>
              ))}
            </div>
          </div>
        </div>
      </window.Container>

      {/* ── 従業員側：仲介手数料半額 ── */}
      <section style={{ background:'var(--blue-50)', marginTop: isMobile?'var(--sp-10)':'var(--sp-14)', padding: isMobile?'var(--sp-10) 0':'var(--sp-14) 0' }}>
        <window.Container>
          <div style={{ maxWidth:760, margin:'0 auto', textAlign:'center', display:'flex', flexDirection:'column', gap:14 }}>
            <span style={{ font:'600 var(--t-2xs)/1 var(--font-latin)', letterSpacing:'0.16em', textTransform:'uppercase', color:'var(--blue-600)' }}>For Employees</span>
            <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>{W.staff.title}</h2>
            <p style={{ margin:0, textAlign:'left', font:'var(--fw-regular) var(--t-base)/1.9 var(--font-body)', color:'var(--text-body)' }}>{W.staff.body}</p>
            <span style={{ textAlign:'left', font:'var(--fw-regular) var(--t-2xs)/1.6 var(--font-body)', color:'var(--text-muted)' }}>{W.staff.note}</span>
          </div>
          <div style={{ maxWidth:760, margin:'var(--sp-8) auto 0', background:'var(--surface)', border:'1px solid var(--border-subtle)',
            borderRadius:'var(--r-lg)', padding: isMobile?'var(--sp-5)':'var(--sp-7)' }}>
            <span style={{ display:'block', font:'700 var(--t-base)/1.4 var(--font-display)', color:'var(--text-strong)', marginBottom:14 }}>{W.staff.consultTitle}</span>
            <div style={{ display:'grid', gridTemplateColumns: isMobile?'1fr':'repeat(2,1fr)', gap:'10px var(--sp-6)' }}>
              {W.staff.consults.map(c=>(
                <span key={c} style={{ display:'flex', gap:10, alignItems:'center', font:'var(--fw-medium) var(--t-sm)/1.5 var(--font-body)', color:'var(--text-body)' }}>
                  <window.Icon name="check" size={14} style={{ color:'var(--blue-600)', flex:'none' }}/>{c}
                </span>
              ))}
            </div>
          </div>
          {/* 利用シーン（チップ） */}
          {(W.scenes||[]).length>0 && (
            <div style={{ maxWidth:760, margin:'var(--sp-6) auto 0', textAlign:'center' }}>
              <span style={{ display:'block', font:'var(--fw-medium) var(--t-sm)/1.4 var(--font-body)', color:'var(--text-muted)', marginBottom:12 }}>{W.scenesTitle}</span>
              <div style={{ display:'flex', flexWrap:'wrap', gap:8, justifyContent:'center' }}>
                {W.scenes.map(sc=>(
                  <span key={sc} style={{ display:'inline-flex', alignItems:'center', gap:6, padding:'8px 16px', borderRadius:'var(--r-pill)',
                    background:'var(--surface)', border:'1px solid var(--border-subtle)',
                    font:'var(--fw-bold) var(--t-xs)/1 var(--font-body)', color:'var(--text-body)' }}>
                    <window.Icon name="check" size={12} style={{ color:'var(--blue-600)' }}/>{sc}
                  </span>
                ))}
              </div>
            </div>
          )}
        </window.Container>
      </section>

      {/* ── なぜ無料か（ビジネスモデルの開示＝信頼の核） ── */}
      {W.why0 && (
        <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)' }}>
          <div style={{ maxWidth:760, margin:'0 auto', background:'var(--blue-900)', borderRadius:'var(--r-lg)',
            padding: isMobile?'var(--sp-6)':'var(--sp-8)', display:'flex', flexDirection:'column', gap:12 }}>
            <span style={{ display:'inline-flex', alignItems:'center', gap:10 }}>
              <span style={{ display:'grid', placeItems:'center', width:40, height:40, borderRadius:'var(--r-pill)', background:'rgba(255,255,255,0.1)', color:'var(--blue-300)', flex:'none' }}><window.Icon name="shield" size={19}/></span>
              <span style={{ font:`700 ${isMobile?'var(--t-h4)':'var(--t-h3)'}/1.4 var(--font-display)`, color:'#fff' }}>{W.why0.title}</span>
            </span>
            <p style={{ margin:0, font:'var(--fw-regular) var(--t-base)/1.9 var(--font-body)', color:'rgba(255,255,255,0.85)' }}>{W.why0.body}</p>
          </div>
        </window.Container>
      )}

      {/* ── 利用の流れ（4ステップ） ── */}
      <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)' }}>
        <IHd marker="Flow" title={W.flowTitle} align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:2},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-8)' }}>
          {W.flow.map(f=>(
            <div key={f.n} style={{ display:'flex', gap:16, background:'var(--surface)', border:'1px solid var(--border-subtle)',
              borderRadius:'var(--r-md)', padding: isMobile?'var(--sp-5)':'var(--sp-6)' }}>
              <span style={{ font:'700 var(--t-h2)/1 var(--font-num)', color:'var(--blue-300)', flex:'none' }}>{f.n}</span>
              <div style={{ display:'flex', flexDirection:'column', gap:6 }}>
                <span style={{ font:'700 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.75 var(--font-body)', color:'var(--text-muted)' }}>{f.d}</span>
              </div>
            </div>
          ))}
        </div>
        <div style={{ maxWidth:760, margin:'var(--sp-8) auto 0', background:'var(--blue-50)', border:'1px solid var(--blue-100)',
          borderRadius:'var(--r-md)', padding:'var(--sp-5)', display:'flex', gap:12 }}>
          <window.Icon name="check" size={19} style={{ color:'var(--blue-600)', flex:'none', marginTop:2 }}/>
          <div style={{ display:'flex', flexDirection:'column', gap:6 }}>
            <span style={{ font:'700 var(--t-sm)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{W.onboarding.title}</span>
            <span style={{ font:'var(--fw-regular) var(--t-sm)/1.8 var(--font-body)', color:'var(--text-body)' }}>{W.onboarding.body}</span>
          </div>
        </div>
      </window.Container>

      {/* ── Skrrsの強み（本業=事業用不動産への橋） ── */}
      {W.strength && (
        <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-12)' }}>
          <div style={{ maxWidth:760, margin:'0 auto', display:'flex', gap:16, alignItems:'flex-start',
            background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-lg)',
            boxShadow:'var(--shadow-sm)', padding: isMobile?'var(--sp-5)':'var(--sp-7)' }}>
            <span style={{ display:'grid', placeItems:'center', width:44, height:44, borderRadius:'var(--r-pill)',
              background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name="building" size={20}/></span>
            <div style={{ display:'flex', flexDirection:'column', gap:8 }}>
              <span style={{ font:'700 var(--t-base)/1.5 var(--font-display)', color:'var(--text-strong)' }}>{W.strength.title}</span>
              <span style={{ font:'var(--fw-regular) var(--t-sm)/1.85 var(--font-body)', color:'var(--text-body)' }}>{W.strength.body}</span>
              <a onClick={()=>onNav('services')} style={{ cursor:'pointer', display:'inline-flex', alignItems:'center', gap:6, marginTop:2,
                font:'var(--fw-bold) var(--t-sm)/1 var(--font-body)', color:'var(--blue-600)' }}>
                事業用不動産のサービスを見る <window.Icon name="chevR" size={15}/>
              </a>
            </div>
          </div>
        </window.Container>
      )}

      {/* ── CTA ── */}
      <window.Container style={{ paddingTop:'var(--sp-12)', paddingBottom: isMobile?'var(--sp-14)':'var(--sp-16)' }}>
        <div style={{ display:'flex', flexDirection:'column', alignItems:'center', gap:16, textAlign:'center' }}>
          <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.45 var(--font-display)`, color:'var(--text-strong)' }}>{W.cta.title}</h2>
          <p style={{ margin:0, font:'var(--fw-regular) var(--t-base)/1.8 var(--font-body)', color:'var(--text-body)' }}>{W.cta.sub}</p>
          <div style={{ display:'flex', gap:14, flexWrap:'wrap', justifyContent:'center', marginTop:4 }}>
            <IBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>} onClick={goContact}>{W.cta.primary}</IBtn>
            <IBtn variant="secondary" size="lg" pill onClick={goContact}>{W.cta.secondary}</IBtn>
          </div>
          <span style={{ font:'var(--fw-regular) var(--t-xs)/1.5 var(--font-body)', color:'var(--text-muted)' }}>お電話でも承ります　03-5937-7544（平日 10:00〜18:00）</span>
        </div>
      </window.Container>
    </main>
  );
}

// ── 契約条件の交渉・半額保証 詳細（negotiation ルート） ──────────
function NegotiationScreen({ onNav }) {
  const N = window.SKRRS_DATA.negotiationPage;
  const { isMobile } = window.useViewport();
  return (
    <main>
      <window.PageHero marker={N.marker} icon="sparkles" title={N.title} lead={N.lead}
        image={window.SKRRS_IMG.brokerageFee} position="center 40%" onNav={onNav}
        crumbs={[{label:'ホーム',route:'home'},{label:'サービス紹介',route:'services'},{label:'契約条件の交渉・半額保証'}]} />

      <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)' }}>
        <IHd marker="Negotiable" title={N.areasTitle} align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:2},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-8)' }}>
          {N.areas.map(a=>(
            <div key={a.t} style={{ display:'flex', gap:14, background:'var(--surface)', border:'1px solid var(--border-subtle)',
              borderRadius:'var(--r-md)', padding: isMobile?'var(--sp-5)':'var(--sp-6)' }}>
              <span style={{ display:'grid', placeItems:'center', width:44, height:44, borderRadius:'var(--r-pill)',
                background:'var(--blue-50)', color:'var(--blue-600)', flex:'none' }}><window.Icon name={a.icon} size={20}/></span>
              <div style={{ display:'flex', flexDirection:'column', gap:6 }}>
                <span style={{ font:'700 var(--t-base)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{a.t}</span>
                <span style={{ font:'var(--fw-regular) var(--t-sm)/1.75 var(--font-body)', color:'var(--text-muted)' }}>{a.d}</span>
              </div>
            </div>
          ))}
        </div>
      </window.Container>

      {/* 半額保証（この画面の核） */}
      <section style={{ background:'var(--blue-900)', marginTop: isMobile?'var(--sp-10)':'var(--sp-14)', padding: isMobile?'var(--sp-10) 0':'var(--sp-14) 0', position:'relative', 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), rgba(7,48,75,0.85))' }} />
        <window.Container style={{ position:'relative' }}>
          <div style={{ maxWidth:720, margin:'0 auto', textAlign:'center', display:'flex', flexDirection:'column', gap:14, alignItems:'center' }}>
            <span style={{ display:'grid', placeItems:'center', width:56, height:56, borderRadius:'var(--r-pill)', background:'rgba(255,255,255,0.1)', color:'var(--blue-300)' }}><window.Icon name="handshake" size={26}/></span>
            <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.4 var(--font-display)`, color:'#fff' }}>{N.guarantee.title}</h2>
            <p style={{ margin:0, textAlign:'left', font:'var(--fw-regular) var(--t-base)/1.9 var(--font-body)', color:'rgba(255,255,255,0.85)' }}>{N.guarantee.body}</p>
          </div>
        </window.Container>
      </section>

      <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)' }}>
        <div style={{ maxWidth:720, margin:'0 auto', background:'var(--blue-50)', border:'1px solid var(--blue-100)',
          borderRadius:'var(--r-md)', padding: isMobile?'var(--sp-5)':'var(--sp-7)', display:'flex', gap:14 }}>
          <window.Icon name="shield" size={20} style={{ color:'var(--blue-600)', flex:'none', marginTop:2 }}/>
          <div style={{ display:'flex', flexDirection:'column', gap:8 }}>
            <span style={{ font:'700 var(--t-base)/1.4 var(--font-display)', color:'var(--text-strong)' }}>{N.stance.title}</span>
            <span style={{ font:'var(--fw-regular) var(--t-sm)/1.85 var(--font-body)', color:'var(--text-body)' }}>{N.stance.body}</span>
          </div>
        </div>
      </window.Container>

      <window.Container style={{ paddingTop:'var(--sp-12)', paddingBottom: isMobile?'var(--sp-14)':'var(--sp-16)' }}>
        <div style={{ display:'flex', flexDirection:'column', alignItems:'center', gap:14, textAlign:'center' }}>
          <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>{N.cta.title}</h2>
          <p style={{ margin:0, font:'var(--fw-regular) var(--t-base)/1.8 var(--font-body)', color:'var(--text-body)' }}>{N.cta.sub}</p>
          <div style={{ display:'flex', gap:14, flexWrap:'wrap', justifyContent:'center', marginTop:4 }}>
            <IBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>} onClick={()=>onNav('contact')}>{N.cta.label}</IBtn>
            <a href="tel:0359377544" style={{ display:'inline-flex', alignItems:'center', gap:8, color:'var(--blue-900)', textDecoration:'none' }}>
              <window.Icon name="phone" size={18}/><span style={{ font:'700 1.3rem/1 var(--font-num)' }}>03-5937-7544</span>
            </a>
          </div>
        </div>
      </window.Container>
    </main>
  );
}

// ── 内装設計・工事 詳細（interior ルート） ─────────────────────
function InteriorScreen({ onNav, onConsult }) {
  const I = window.SKRRS_DATA.interiorPage;
  const { isMobile } = window.useViewport();
  const goContact = () => (onConsult ? onConsult() : onNav('contact'));
  return (
    <main>
      <window.PageHero marker={I.marker} icon="ruler" title={I.title} lead={I.lead}
        image={window.SKRRS_IMG.supportInterior} position="center 45%" onNav={onNav}
        crumbs={[{label:'ホーム',route:'home'},{label:'サービス紹介',route:'services'},{label:'内装設計・工事'}]} />

      {/* 課題提起：分けて進めた場合のリスク */}
      <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)' }}>
        <IHd marker="Problem" title={I.problemTitle} align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:3},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-8)' }}>
          {I.problems.map(p=>(
            <div key={p.t} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)', borderRadius:'var(--r-md)',
              padding: isMobile?'var(--sp-5)':'var(--sp-6)', display:'flex', flexDirection:'column', gap:8 }}>
              <span style={{ font:'700 var(--t-base)/1.5 var(--font-display)', color:'var(--text-strong)' }}>{p.t}</span>
              <span style={{ font:'var(--fw-regular) var(--t-sm)/1.8 var(--font-body)', color:'var(--text-muted)' }}>{p.d}</span>
            </div>
          ))}
        </div>
      </window.Container>

      {/* できること */}
      <section style={{ background:'var(--blue-50)', marginTop: isMobile?'var(--sp-10)':'var(--sp-14)', padding: isMobile?'var(--sp-10) 0':'var(--sp-12) 0' }}>
        <window.Container>
          <div style={{ maxWidth:720, margin:'0 auto' }}>
            <span style={{ display:'block', font:'700 var(--t-h4)/1.4 var(--font-display)', color:'var(--text-strong)', marginBottom:14, textAlign:'center' }}>{I.scopeTitle}</span>
            <div 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:12 }}>
              {I.scopes.map(sc=>(
                <span key={sc} style={{ display:'flex', gap:10, alignItems:'flex-start', font:'var(--fw-medium) var(--t-sm)/1.6 var(--font-body)', color:'var(--text-body)' }}>
                  <span style={{ display:'grid', placeItems:'center', width:20, height:20, borderRadius:'var(--r-pill)',
                    background:'var(--blue-50)', color:'var(--blue-600)', flex:'none', marginTop:2 }}><window.Icon name="check" size={12} stroke={3}/></span>
                  {sc}
                </span>
              ))}
            </div>
          </div>
        </window.Container>
      </section>

      {/* 進め方 */}
      <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)' }}>
        <IHd marker="Flow" title={I.flowTitle} align="center" />
        <div style={{ display:'grid', gridTemplateColumns:`repeat(${isMobile?1:2},1fr)`, gap:'var(--sp-5)', marginTop:'var(--sp-8)' }}>
          {I.flow.map(f=>(
            <div key={f.n} style={{ display:'flex', gap:16, background:'var(--surface)', border:'1px solid var(--border-subtle)',
              borderRadius:'var(--r-md)', padding: isMobile?'var(--sp-5)':'var(--sp-6)' }}>
              <span style={{ font:'700 var(--t-h2)/1 var(--font-num)', color:'var(--blue-300)', flex:'none' }}>{f.n}</span>
              <div style={{ display:'flex', flexDirection:'column', gap:6 }}>
                <span style={{ font:'700 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.75 var(--font-body)', color:'var(--text-muted)' }}>{f.d}</span>
              </div>
            </div>
          ))}
        </div>
      </window.Container>

      <window.Container style={{ paddingTop:'var(--sp-12)', paddingBottom: isMobile?'var(--sp-14)':'var(--sp-16)' }}>
        <div style={{ display:'flex', flexDirection:'column', alignItems:'center', gap:14, textAlign:'center' }}>
          <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>{I.cta.title}</h2>
          <p style={{ margin:0, font:'var(--fw-regular) var(--t-base)/1.8 var(--font-body)', color:'var(--text-body)' }}>{I.cta.sub}</p>
          <div style={{ display:'flex', gap:14, flexWrap:'wrap', justifyContent:'center', marginTop:4 }}>
            <IBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>} onClick={goContact}>{I.cta.label}</IBtn>
            <a href="tel:0359377544" style={{ display:'inline-flex', alignItems:'center', gap:8, color:'var(--blue-900)', textDecoration:'none' }}>
              <window.Icon name="phone" size={18}/><span style={{ font:'700 1.3rem/1 var(--font-num)' }}>03-5937-7544</span>
            </a>
          </div>
        </div>
      </window.Container>
    </main>
  );
}

// ── よくあるご質問 ─────────────────────────────────────────
// 出典は data.js の faqPage 1か所。はじめての方へページは featured のみを抜粋する。
window.SKRRS_FAQ_FEATURED = () =>
  (window.SKRRS_DATA.faqPage.groups || []).flatMap(g => g.items.filter(i => i.featured));

function FaqScreen({ onNav }) {
  const F = window.SKRRS_DATA.faqPage;
  const { isMobile } = window.useViewport();
  const [cat, setCat] = React.useState('all');
  const [open, setOpen] = React.useState({});
  const groups = cat === 'all' ? F.groups : F.groups.filter(g => g.key === cat);
  const total = F.groups.reduce((n, g) => n + g.items.length, 0);
  const toggle = (k) => setOpen(s => ({ ...s, [k]: !s[k] }));

  return (
    <main>
      <window.PageHero marker={F.marker} icon="user" title={F.title} lead={F.lead}
        image={window.SKRRS_IMG.meetingThree} position="center 35%" onNav={onNav}
        crumbs={[{label:'ホーム',route:'home'},{label:F.title}]} />

      <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)', paddingBottom: isMobile?'var(--sp-12)':'var(--sp-16)' }}>
        {/* カテゴリ絞り込み：借りたい／貸したい で入口が分かれる導線 */}
        <div style={{ display:'flex', gap:10, flexWrap:'wrap', marginBottom:'var(--sp-8)' }}>
          {[{ key:'all', label:`すべて（${total}件）`, icon:'grid' }].concat(F.groups.map(g=>({ key:g.key, label:g.label, icon:g.icon }))).map(t=>{
            const on = cat === t.key;
            return (
              <button key={t.key} onClick={()=>setCat(t.key)}
                style={{ display:'inline-flex', alignItems:'center', gap:8, padding:'10px 18px', cursor:'pointer',
                  borderRadius:'var(--r-pill)', border:`1.5px solid ${on?'var(--blue-900)':'var(--border-default)'}`,
                  background: on?'var(--blue-900)':'var(--surface)', color: on?'#fff':'var(--text-body)',
                  font:'var(--fw-bold) var(--t-sm)/1 var(--font-body)', transition:'all var(--dur-fast) var(--ease-out)' }}>
                <window.Icon name={t.icon} size={15}/>{t.label}
              </button>
            );
          })}
        </div>

        <div style={{ maxWidth:860 }}>
          {groups.map(g=>(
            <section key={g.key} style={{ marginBottom:'var(--sp-12)' }}>
              <div style={{ display:'flex', alignItems:'center', gap:12, marginBottom:'var(--sp-5)' }}>
                <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={g.icon} size={19}/></span>
                <h2 style={{ margin:0, font:`700 ${isMobile?'var(--t-h4)':'var(--t-h3)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>{g.label}</h2>
              </div>
              <div style={{ display:'flex', flexDirection:'column', gap:12 }}>
                {g.items.map((f,i)=>{
                  const k = g.key + i, isOpen = !!open[k];
                  return (
                    <div key={k} style={{ background:'var(--surface)', border:'1px solid var(--border-subtle)',
                      borderRadius:'var(--r-md)', overflow:'hidden', boxShadow: isOpen?'var(--shadow-sm)':'none' }}>
                      <button onClick={()=>toggle(k)} style={{ width:'100%', display:'flex', alignItems:'flex-start', justifyContent:'space-between',
                        gap:14, padding: isMobile?'var(--sp-4)':'var(--sp-5)', border:'none', background:'transparent', cursor:'pointer', textAlign:'left' }}>
                        <span style={{ display:'flex', alignItems:'flex-start', gap:12 }}>
                          <span style={{ font:'700 1.1rem/1.3 var(--font-num)', color:'var(--blue-600)', flex:'none' }}>Q</span>
                          <span style={{ font:`700 ${isMobile?'var(--t-sm)':'var(--t-base)'}/1.6 var(--font-display)`, color:'var(--text-strong)' }}>{f.q}</span>
                        </span>
                        <window.Icon name="chevD" size={18} style={{ color:'var(--text-muted)', flex:'none', marginTop:3,
                          transform: isOpen?'rotate(180deg)':'none', transition:'transform var(--dur-base) var(--ease-out)' }}/>
                      </button>
                      {isOpen && (
                        <div style={{ padding: isMobile?'0 var(--sp-4) var(--sp-4)':'0 var(--sp-5) var(--sp-5)', display:'flex', gap:12 }}>
                          <span style={{ font:'700 1.1rem/1.3 var(--font-num)', color:'var(--blue-300)', flex:'none' }}>A</span>
                          <p style={{ margin:0, font:'var(--fw-regular) var(--t-sm)/1.9 var(--font-body)', color:'var(--text-body)' }}>{f.a}</p>
                        </div>
                      )}
                    </div>
                  );
                })}
              </div>
            </section>
          ))}
        </div>
      </window.Container>

      {/* 解決しなかった人の受け皿。FAQの離脱地点にCTAを置く */}
      <section style={{ background:'var(--blue-50)', padding: isMobile?'var(--sp-12) 0':'var(--sp-16) 0' }}>
        <window.Container>
          <div style={{ display:'flex', flexDirection:'column', alignItems:'center', gap:16, textAlign:'center' }}>
            <h2 style={{ margin:0, font:`900 ${isMobile?'var(--t-h3)':'var(--t-h2)'}/1.4 var(--font-display)`, color:'var(--text-strong)' }}>
              お探しの答えが見つかりませんでしたか
            </h2>
            <p style={{ margin:0, maxWidth:560, font:'var(--fw-regular) var(--t-base)/1.85 var(--font-body)', color:'var(--text-body)' }}>
              個別の事情によって答えが変わるご質問も多くあります。ご相談は無料です。いまの状況をお聞かせいただければ、担当がお答えします。
            </p>
            <div style={{ display:'flex', gap:14, flexWrap:'wrap', justifyContent:'center', marginTop:4 }}>
              <IBtn variant="primary" size="lg" pill iconLeft={<window.Icon name="mail" size={18}/>} onClick={()=>onNav('contact')}>無料で相談する</IBtn>
              <a href="tel:0359377544" style={{ display:'inline-flex', alignItems:'center', gap:8, color:'var(--blue-900)', textDecoration:'none' }}>
                <window.Icon name="phone" size={18}/><span style={{ font:'700 1.3rem/1 var(--font-num)' }}>03-5937-7544</span>
              </a>
            </div>
            <span style={{ font:'var(--fw-regular) var(--t-xs)/1.5 var(--font-body)', color:'var(--text-muted)' }}>平日 10:00〜18:00</span>
          </div>
        </window.Container>
      </section>
    </main>
  );
}

const LEGAL_DOCS = [
  { route:'privacy', label:'プライバシーポリシー' },
  { route:'terms',   label:'利用規約' },
  { route:'cookies', label:'Cookieポリシー' },
];

function LegalDoc({ doc, icon, image, self, extra, onNav }) {
  const { isMobile } = window.useViewport();
  const others = LEGAL_DOCS.filter(d => d.route !== self);
  return (
    <main>
      <window.PageHero marker={doc.marker} icon={icon} title={doc.title} lead={doc.lead}
        image={image} position="center 45%" onNav={onNav}
        crumbs={[{label:'ホーム',route:'home'},{label:doc.title}]} />
      <window.Container style={{ paddingTop: isMobile?'var(--sp-10)':'var(--sp-14)', paddingBottom: isMobile?'var(--sp-12)':'var(--sp-16)' }}>
        <div style={{ maxWidth:780, margin:'0 auto' }}>
          <span style={{ display:'block', marginBottom:'var(--sp-8)',
            font:'var(--fw-regular) var(--t-sm)/1 var(--font-num)', color:'var(--text-faint)' }}>{doc.established}</span>
          {extra}
          <window.ArticleToc blocks={doc.body} />
          <window.ArticleBody blocks={doc.body} />
          <div style={{ marginTop:'var(--sp-10)', display:'flex', gap:12, flexWrap:'wrap' }}>
            <IBtn variant="primary" pill iconLeft={<window.Icon name="mail" size={17}/>} onClick={()=>onNav('contact')}>お問い合わせ</IBtn>
            {others.map(d => (
              <IBtn key={d.route} variant="secondary" iconRight={<window.Icon name="chevR" size={15}/>}
                onClick={()=>onNav(d.route)}>{d.label}</IBtn>
            ))}
          </div>
        </div>
      </window.Container>
    </main>
  );
}

// 分析・広告Cookieの稼働状況を、設定値そのものから表示する。
// 手書きで「現在は使用していません」と書くと、計測を有効化した瞬間に虚偽表示になる。必ず自動判定にすること。
function CookieStatus() {
  // 計測タグは /api/content の取得後に起動するため、描画直後は未定義のことがある。
  // 一拍おいて再判定し、「使用していません」と誤表示したまま固定されるのを防ぐ。
  const [, recheck] = React.useState(0);
  React.useEffect(() => {
    const id = setTimeout(() => recheck(n => n + 1), 1500);
    return () => clearTimeout(id);
  }, []);
  const cfg = window.SKRRS_ANALYTICS || {};
  const on = [];
  if (cfg.ga4 || window.gtag) on.push('Googleアナリティクス');
  if (cfg.metaPixel || window.fbq) on.push('Metaピクセル');
  const active = on.length > 0;
  return (
    <div style={{ margin:'0 0 var(--sp-8)', padding:'var(--sp-5)', display:'flex', gap:12, alignItems:'flex-start',
      background: active ? 'var(--surface-sunken)' : 'var(--blue-50)',
      border:`1px solid ${active ? 'var(--border-subtle)' : 'var(--blue-100)'}`, borderRadius:'var(--r-md)' }}>
      <window.Icon name={active ? 'target' : 'check'} size={19} style={{ color:'var(--blue-600)', flex:'none', marginTop:2 }}/>
      <div style={{ display:'flex', flexDirection:'column', gap:4 }}>
        <span style={{ font:'var(--fw-bold) var(--t-sm)/1.6 var(--font-display)', color:'var(--text-strong)' }}>
          現在の状況：{active ? `分析・広告のCookieを使用しています（${on.join('・')}）` : '分析・広告のCookieは使用していません'}
        </span>
        <span style={{ font:'var(--fw-regular) var(--t-xs)/1.7 var(--font-body)', color:'var(--text-muted)' }}>
          {active
            ? '「4. Cookieを無効にする方法」から、いつでも停止していただけます。'
            : '当サイトが設定しているのは、お問い合わせフォームの不正送信対策に必要なもののみです。計測を開始する際は、本ページに反映します。'}
        </span>
      </div>
    </div>
  );
}

function PrivacyScreen({ onNav }) {
  return <LegalDoc doc={window.SKRRS_DATA.privacy} icon="shield" image={window.SKRRS_IMG.cityTowers}
    self="privacy" onNav={onNav} />;
}

function TermsScreen({ onNav }) {
  return <LegalDoc doc={window.SKRRS_DATA.terms} icon="doc" image={window.SKRRS_IMG.cityAerial}
    self="terms" onNav={onNav} />;
}

function CookiesScreen({ onNav }) {
  return <LegalDoc doc={window.SKRRS_DATA.cookies} icon="layers" image={window.SKRRS_IMG.chartsData}
    self="cookies" extra={<CookieStatus />} onNav={onNav} />;
}

Object.assign(window, { ServicesScreen, ProjectsScreen, ProjectDetail, GuideScreen, CompanyScreen, LeaseScreen, ManageScreen, PrivacyScreen, TermsScreen, CookiesScreen, FaqScreen, WelfareScreen, NegotiationScreen, InteriorScreen });
