Design Decisions — site/top Variant A (rev 2)

「ものすごく B2B」 極の top page。 大企業の HR / CTO / CEO 層 (40-60 代、 保守的、 稟議書ベース) を読み手と想定。 corporate evergreen + dense layout + keigo を採用し、 個別 KPI は [DEMO] mark で fabrication と明示区別。

このファイル更新 (rev 2): 初稿 (2026-05-27) で月額 ¥240,000 / 90 日 pilot / Google Meet 対応 / SOC 2 取得済 / 専任 CS 等を creative で生成し、 共同創業者共有前に Justine が catch。 今回 (2026-05-28) は /tmp/site_canon_facts.txt ホワイトリストに厳密照合し、 forbidden patterns 10 種について grep self-audit で 0 件確認済 (§ 9 参照)。

1. 主タスクと上位構造

決定: top page を 「稟議書を書く前段の検討者」 の 1 回目のスキャンで完結するよう 8 セクションの密度ある縦長構造とした。

大企業の検討者は 6-12 ヶ月の検討期間に入る前に、 「これは持って帰ってよい案件か」 を 5 分以内で判断する。 そのため hero で (1) 何の SaaS か (2) 何をしないか (3) パイロット仕様の核心数字 を即提示。 続く §02-§05 で 「問題 → 既知コスト → ガバナンス姿勢 → 監視ではない明言」 を順に積み、 §06 spec table と §07 FAQ で稟議用の事実確認を済ませる構成。

canon: permanent-ui-principles §7 (progressive disclosure) + variant brief A.tone (dense data, corporate evergreen)

決定: hero は左 (コピー + CTA) + 右 (構造シグナル KPI パネル) の 2 カラム split。

「対話健全性の構造的可視化」 と言葉だけで言うより、 右側に EMERGING grade pill + delta arrow 付き KPI カードを置いた方が 「これは数値 SaaS だ」 と 1 秒で伝わる。 KPI カード自体には [DEMO] tag を明示し、 fabrication ではなく仮想顧客 (demo株式会社) のサンプル画面と分かるようにした。

参照: kashi/src/app/page.tsx §1 (split hero pattern) + 2026-05-27 失敗ふりかえり (数値 fabrication 対策で [DEMO] tag 必須化)

2. レイアウト

決定: max-width 1280px / 24px gutter / 8 セクション縦積み + dense grid (3 列 decl / 3 列 nums / 2 列 dontdo / 1 列 spec table / 1 列 FAQ accordion)。

B2B 検討者の典型 device は 13-15 インチ laptop と外部モニタ。 1280 を超えるレイアウトは稟議に貼る spec PDF として見にくい。 dense grid と spec table の組み合わせは Stripe / Atlassian / SmartHR の corp page で確立されたパターン。

参照: globals.css token (色のみ採用、 spacing は variant 仕様に基づき独自) + variant A.layout 「多段グリッド」

決定: 上部 utility bar (法人・自治体向け / パートナー / 採用 / JP/EN / お問い合わせ) + sticky header の 2 段構造。

大企業向け SaaS の corp サイトでほぼ標準。 法人・自治体向けである旨を最上段に明示することで 「個人 SaaS と間違えた潜在ユーザ」 を入口で振り分ける。

参照: SmartHR / カオナビ / Talknote 等の B2B SaaS top の utility bar 慣例

決定: sticky bottom-bar をスクロールで hero 通過後に出現させ、 「パイロット相談」 + 「資料請求」 に常時 1 click 距離を維持。

B2B 検討者は long scroll を全部読んだ後に CTA を探す。 末尾以外でも CTA に到達できるよう sticky 化したが、 hero と被らないよう scroll threshold を仕掛けた (hero 通過後にのみ表示)。 mobile では footer が遠いので削った (sticky 自体を 768px 以下で hide)。

canon: WCAG 2.5.5 (44px touch target) + permanent-ui-principles 触感原則 (画面端 sticky は控えめに展開)

3. 採用したトークン

font 使い分け

4. 採用した evidence-grade 表現

決定: hero KPI パネル下段に grade-pill (EMERGING / blue) を 1 つだけ提示。

color alone NG canon を守るため、 必ず EMERGING という text label と swatch (square) をセットで表示。 color blind 対応として swatch は色のない box ではなく color box (色 + 形 + text 3 重情報)。 grade は EMERGING を採用 (構造シグナルが立ち上がりつつあるという意味)、 STABLE や HIGH-CONFIDENCE-STABLE は 「all clear」 寄りで permanent-ui-principles §6 (No-Signal rule) と緊張するので hero では避けた。

canon: design_system_v1 evidence-grade scale + permanent-ui-principles §6 (No-Signal rule, all-clear NG)

決定: NOT DOING cells の tag color は grade-blocked (#6B7280) を採用。

「Kashi がしない 4 項目」 は禁止ラベルなので、 negative-but-neutral な grade-blocked を採用。 grade-weak (orange) や red は危険信号で 「Kashi 自身が危険」 と誤読されるので避けた。

5. 削った要素 (現状の Kashi top page から)

6. 追加した要素 (現状にない)

7. 既知のトレードオフ / 未解決

トレードオフ: hero KPI パネルの [DEMO] tag は正直さを優先したが、 検討者によっては 「数字が無いんじゃないか」 と読む。

Kashi は実稼働の長期累積 KPI が無いステージ。 fabrication せず DEMO 明示は canon 正解だが、 enterprise SaaS 慣れした検討者は 「他社サイトには数字が並んでいる」 と感じる可能性。 mitigation 案: pilot 後 N=3 案件で OK 取れた数字が出たら DEMO を実数に置換 (今回は無理しない)。

未解決: 認証連携 (SSO 等) を 「導入時に個別協議」 とのみ書いたが、 検討者は具体的な list が欲しい。

canon に SSO/SAML/OIDC 実装状況の確定 source が無いため確定的記述を避けた。 mitigation 案: 「セキュリティ仕様書」 を PDF として別途用意し、 「資料請求」 button から取得できるようにする (今回 mockup では link 先 placeholder)。

未解決: 会議基盤について 「Zoom」 のみ明記、 他は 「個別協議」 とした。

Google Meet / Teams は integration 未実装。 これを 「対応済」 と書いたら 2026-05-27 の事故再発。 一方、 大企業ユーザは Teams を主力で使うケース多く、 hard-blocker になる可能性。 mitigation 案: pilot 相談時に hearing → roadmap 化、 サイト側は不確定情報を出さない (今回 mockup の判断)。

トレードオフ: spec table を hero 上ではなく §05 に置いた。

「価格 ご相談」 の行が hero に出ると弱く見える。 spec table は decision-ready な検討者向けの section として §05 に配置、 hero は CTA + 三原則 (構造 / 個人 / 評価不使用) で抽象的に強さを出した。 hero に value-prop を寄せた構成。

8. 実装フェーズへの引き継ぎ

このモックアップを実装する際の注意:

9. Canon-verify self-audit (rev 2 で追加、 mandatory)

index.html に対し /tmp/site_canon_facts.txt の forbidden patterns 10 種を grep。 すべて 0 件 であることを確認した。

#PatternHits
01¥[0-9]+,[0-9]{3} (金額 hard-code)0
0290 ?日 (pilot 期間 mis-spec)0
03Google Meet0
04Microsoft Teams0
05SSO0
06SAML0
07SOC 20
08ISO 270010
09専任 CS0
10離職率.{0,3}[0-9]+ ?%0

PASS 10/10 forbidden patterns clean. Variant A は canon-bounded のまま B2B dense tone を維持できている。 ROI 「年収の 1-2 倍」 は §3 の num-card で残したが、 これは canon 確定 source (横浜市立大学 + 経産省) で messages/ja.json section3Card2Number の verbatim 引用なので Kashi 自身の効果値ではない。

audit method: grep -cE '<pattern>' index.html を 10 回実行 (bash one-liner)。

10. Justine confirm 推奨ポイント (rev 2)

  1. hero KPI パネルの [DEMO] tag — fabrication 防止の最低ライン。 「DEMO 表記が逆にダサく見える」 と感じる場合は、 KPI パネル自体を削って hero を 1 カラム化することも可能 (B2B 密度は落ちるが正直さは増す)。
  2. 運用仕様 table の 「ご相談」 placeholder の多さ — 価格 / 認証 / サポート体制 / レポートの 4 行が placeholder。 検討者によっては 「何も決まっていない」 と読む。 mitigation で別 PDF (セキュリティ仕様書) を 「資料請求」 から出す前提で、 今は site では出さない判断。
  3. pilot-cta の disavow line 「数値の改善を約束できる段階にいません」 — 通常の B2B コピーでは弱気に映る。 でも canon doctrine (forbidden claims registry) を守るには必須。 Variant C で実証された disavow pattern を A でも明示採用したが、 残すか弱めるかは Justine 判断。