Design Vault 用途・構成・配色・本文で検索 /
索引 カテゴリ タグ English
索引に戻る

要求一覧への回答 — 代替提案の行だけを塗る

表
要求一覧への回答 — 代替提案の行だけを塗る
140 104

1920 × 1080 作品として見る

持ち帰る

コピーして貼るか、ファイルに保存して渡す。ネットにつながらない環境には「全部入り」を 1 つ渡せば足りる。

全部入り

requirements-response-table-everything.md

このパネルの中身を、URL の先にあるファイルの中身まで含めて 1 つにまとめた Markdown

依頼文

1.7 KB
以下の仕様でスライドを 1 枚作ってください。

- 版面 1920 × 1080
- 余白 上 104 右 140 下 104 左 140

## 強調
3 行目のみ。手段は 塗り + 太さ だけ。ほかは変えない

## 文字(版面 1920px に対する px)
title  44px / 700 / 字間 0.01em / 行送り 1.3
count  17px / 400 / 等幅数字
col  15px / 500 / 字間 0.12em
rid  19px / 500 / 等幅数字
req  21px / 500 / 行送り 1.5
verdict  17px / 500
how  17px / 400 / 行送り 1.7
when  17px / 400
foot  16px / 400 / 行送り 1.8

## 配色
地 #FFFFFF / 面 #F4F6F9 / 文字 #131820 / 補助 #667183 / 強調 #1F5FA8 / 罫 #DBE1E9

## 外すと崩れる点
- 判定は「満たす/代替提案/第 2 期」の 3 値だけにする。「条件付きで満たす」は条件が読まれないまま合意された扱いになる
- 塗るのは代替提案の行だけ。満たす行を塗ると表全体が強調になり、議論すべき 1 行が沈む
- 実現方式を同じ行に置く。別紙に送ると「代替提案」の 3 文字だけが残り、何が違うのか分からないまま持ち帰られる
- 抜粋なら件数を見出しの隣に書く。全 48 件のうち 6 件だと分かって初めて、この 1 枚が議題になる
- 要求番号は発注側の採番をそのまま使う。振り直すと、以後すべての質疑で番号の突き合わせが要る

内容は[ここに自分の内容を書く]に置き換えてください。寸法と配色はそのまま守ってください。
正確に再現する場合は、この HTML をそのまま使ってください: https://design-vault.pages.dev/designs/requirements-response-table/pattern.html

仕様

2.0 KB

/ai/designs/requirements-response-table.json

format: slide-16x9
density: high
layout:
  kind: table
  canvas:
    w: 1920
    h: 1080
  margin:
    top: 104
    right: 140
    bottom: 104
    left: 140
  emphasis:
    row: 3
    via:
      - fill
      - weight
type:
  title:
    size: 44
    weight: 700
    tracking: 0.01em
    leading: 1.3
  count:
    size: 17
    weight: 400
    numeric: tabular
  col:
    size: 15
    weight: 500
    tracking: 0.12em
  rid:
    size: 19
    weight: 500
    numeric: tabular
  req:
    size: 21
    weight: 500
    leading: 1.5
  verdict:
    size: 17
    weight: 500
  how:
    size: 17
    weight: 400
    leading: 1.7
  when:
    size: 17
    weight: 400
  foot:
    size: 16
    weight: 400
    leading: 1.8
colors:
  ground: "#FFFFFF"
  surface: "#F4F6F9"
  ink: "#131820"
  muted: "#667183"
  accent: "#1F5FA8"
  rule: "#DBE1E9"
rules:
  - 判定は「満たす/代替提案/第 2 期」の 3 値だけにする。「条件付きで満たす」は条件が読まれないまま合意された扱いになる
  - 塗るのは代替提案の行だけ。満たす行を塗ると表全体が強調になり、議論すべき 1 行が沈む
  - 実現方式を同じ行に置く。別紙に送ると「代替提案」の 3 文字だけが残り、何が違うのか分からないまま持ち帰られる
  - 抜粋なら件数を見出しの隣に書く。全 48 件のうち 6 件だと分かって初めて、この 1 枚が議題になる
  - 要求番号は発注側の採番をそのまま使う。振り直すと、以後すべての質疑で番号の突き合わせが要る

ファイル

pattern.html

5.5 KB

/designs/requirements-response-table/pattern.html — 版そのものの HTML。書体の部分集合ごと同梱で、開けばこの絵がそのまま出ます。

中身を見る
<!doctype html>
<meta charset="utf-8">
<title>要求一覧への回答 — 代替提案の行だけを塗る</title>
<meta name="dv-font" content="Zen Kaku Gothic New:400;500;700">
<link rel="stylesheet" href="./font.css">
<style>
  /* この版そのもの。index.md の layout / type / colors は、この HTML を
     scripts/render-pattern.mjs で実測した結果であって、別に書いた説明ではない。 */
  :root {
    --ground: #FFFFFF;
    --surface: #F4F6F9;
    --ink: #131820;
    --muted: #667183;
    --accent: #1F5FA8;
    --rule: #DBE1E9;
  }
  * { box-sizing: border-box; margin: 0; }
  html, body { width: 1920px; height: 1080px; }
  body { font-family: "Zen Kaku Gothic New", "IPAGothic", sans-serif; }

  .artboard {
    width: 1920px; height: 1080px;
    background: var(--ground); color: var(--ink);
    padding: 104px 140px;                 /* → layout.margin */
  }
  .content { height: 100%; display: grid; grid-template-rows: auto 1fr auto; }

  .head { display: flex; align-items: baseline; justify-content: space-between; gap: 40px; }
  .title { font-size: 44px; font-weight: 700; line-height: 1.3; letter-spacing: .01em; }
  .count { font-size: 17px; font-weight: 400; color: var(--muted); font-variant-numeric: tabular-nums; }

  .table { align-self: center; width: 100%; }
  /* 要求番号・要求事項・判定・実現方式・工程。判定列は固定幅にして、
     縦に読んだとき「満たす/代替」の並びが揃って見えるようにする。 */
  .row { display: grid; grid-template-columns: 132px 1fr 132px 1.15fr 168px; align-items: baseline; gap: 34px; padding: 26px 22px; border-bottom: 1px solid var(--rule); }
  .row:first-child { border-top: 1px solid var(--rule); }
  .row.head-row { padding-top: 18px; padding-bottom: 18px; border-bottom-color: var(--ink); }
  .col { font-size: 15px; font-weight: 500; letter-spacing: .12em; color: var(--muted); }

  .rid { font-size: 19px; font-weight: 500; color: var(--muted); font-variant-numeric: tabular-nums; }
  .req { font-size: 21px; font-weight: 500; line-height: 1.5; }
  .how { font-size: 17px; font-weight: 400; line-height: 1.7; color: var(--muted); }
  .when { font-size: 17px; font-weight: 400; color: var(--muted); }
  /* 判定は 3 値。「満たす」を塗ると表が真っ青になって読み所を失うので、
     塗るのは代替提案の行だけにする。 */
  .verdict { font-size: 17px; font-weight: 500; }
  .row[data-alt] { background: var(--surface); }
  .row[data-alt] .verdict { color: var(--accent); font-weight: 700; }
  .row[data-out] .req,
  .row[data-out] .verdict { color: var(--muted); }

  .foot { font-size: 16px; font-weight: 400; line-height: 1.8; color: var(--muted); border-top: 1px solid var(--rule); padding-top: 24px; }
</style>

<div class="artboard" data-artboard>
  <div class="content" data-content>
    <div class="head">
      <h1 class="title" data-type="title">要求一覧への回答(抜粋)</h1>
      <p class="count" data-type="count">全 48 件中 6 件を抜粋 / 全件は付録 A-1</p>
    </div>

    <div class="table">
      <div class="row head-row">
        <p class="col" data-type="col">要求番号</p>
        <p class="col">要求事項</p>
        <p class="col">判定</p>
        <p class="col">実現方式</p>
        <p class="col">対応工程</p>
      </div>

      <div class="row" data-row="1">
        <p class="rid" data-type="rid">RQ-012</p>
        <p class="req" data-type="req">受注登録を 3 画面以内で完了できること</p>
        <p class="verdict" data-type="verdict">満たす</p>
        <p class="how" data-type="how">入力の 2 画面化+確認 1 画面</p>
        <p class="when" data-type="when">基本設計</p>
      </div>
      <div class="row" data-row="2">
        <p class="rid">RQ-018</p>
        <p class="req">既存の在庫システムと即時に連携すること</p>
        <p class="verdict">満たす</p>
        <p class="how">連携基盤経由の同期呼び出し</p>
        <p class="when">基本設計</p>
      </div>
      <div class="row" data-row="3" data-alt data-emphasis="fill weight">
        <p class="rid">RQ-023</p>
        <p class="req">帳票をすべて現行と同一の様式で出力すること</p>
        <p class="verdict">代替提案</p>
        <p class="how">主要 9 帳票は同一。残り 4 帳票は統合を提案</p>
        <p class="when">要件定義</p>
      </div>
      <div class="row" data-row="4">
        <p class="rid">RQ-031</p>
        <p class="req">同時接続 400 名で応答 2 秒以内</p>
        <p class="verdict">満たす</p>
        <p class="how">性能試験で確認、結果を報告</p>
        <p class="when">総合テスト</p>
      </div>
      <div class="row" data-row="5">
        <p class="rid">RQ-040</p>
        <p class="req">操作履歴を 5 年間保持すること</p>
        <p class="verdict">満たす</p>
        <p class="how">監査ログを別領域へ日次で退避</p>
        <p class="when">基本設計</p>
      </div>
      <div class="row" data-row="6" data-out>
        <p class="rid">RQ-044</p>
        <p class="req">モバイル端末からの受注登録</p>
        <p class="verdict">第 2 期</p>
        <p class="how">第 1 期は参照のみ。登録は次期で対応</p>
        <p class="when">対象外</p>
      </div>
    </div>

    <p class="foot" data-type="foot">判定は「満たす/代替提案/第 2 期」の 3 値のみ。条件付きで満たす、は使いません — 条件が読まれないまま合意された扱いになるためです。</p>
  </div>
</div>

font.css

4.7 KB

/designs/requirements-response-table/font.css — 全部入りには入れていない

中身を見る
/* dv-subset v2 — generated by scripts/subset-font.mjs. Do not edit.
 * font    Zen Kaku Gothic New 400;500;700
 * chars   182 (423d6d0c10c6f4cb)
 *
 * pattern.html の文字だけを含む部分集合。描画時に外部へ取りに行かないよう同梱する。
 * 版の文字を変えたら取り直すこと — 忘れると足りない字が豆腐になる。
 * その取り忘れは pattern-entries.test.ts が上の指紋で検出する。
 */

@font-face {
  font-family: 'Zen Kaku Gothic New';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(./font-0.woff2) format('woff2');
  unicode-range: U+2d, U+30-36, U+38-39, U+41, U+51-52, U+2014, U+3001-3002, U+300c-300d, U+3044, U+304b-304e, U+3051-305c, U+305f-3060, U+3066-306b, U+306e-3070, U+3072-3073, U+3078-3079, U+307e-307f, U+3081, U+3089-308c, U+3092-3093, U+3099, U+30a4, U+30af-30b0, U+30b7-30ba, U+30c6-30c9, U+30cf-30d0, U+30e0, U+30e2, U+30eb, U+30ed, U+4e00, U+4e2d, U+4e3b, U+4e86, U+4e8b, U+4ed8, U+4ee3, U+4ee5, U+4ef6, U+4f5c, U+4f7f, U+4fdd, U+5024, U+5165, U+5168, U+5185, U+51fa, U+5224-5225, U+529b, U+5316, U+5373, U+53c2, U+53d7, U+53f7, U+5408, U+540c-540d, U+544a, U+547c, U+56de, U+5728, U+57df, U+57fa, U+5831, U+5857, U+5916, U+5b58, U+5b8c, U+5b9a, U+5b9f, U+5bfe, U+5c65, U+5de5, U+5e33, U+5e74, U+5eab, U+5f0f, U+5fdc, U+6027, U+610f, U+6271, U+629c, U+6301, U+63a5, U+63d0, U+643a, U+64cd, U+65b9, U+65e2, U+65e5, U+6642, U+66ff, U+671f, U+672b-672c, U+6761, U+679c, U+67fb, U+6848, U+69d8, U+6b21, U+6b74, U+6b8b, U+6c42, U+6ce8, U+6e80, U+7167, U+73fe, U+7531, U+753b, U+756a, U+767b, U+76e3-76e4, U+78ba, U+7968, U+79d2, U+7a0b, U+7aef, U+7b2c, U+7b54, U+7c8b, U+7d4c, U+7d50, U+7d71, U+7d9a, U+7dcf, U+7fa9, U+80fd, U+884c, U+8981, U+89a7, U+8a08, U+8a2d, U+8a66, U+8a8d, U+8aad, U+8c61, U+9000, U+9023, U+907f, U+9332, U+9593, U+9762, U+9805, U+9818, U+9a13, U+ff08-ff09, U+ff0b, U+ff0f;
}
@font-face {
  font-family: 'Zen Kaku Gothic New';
  font-style: normal;
  font-weight: 500;
  font-display: block;
  src: url(./font-1.woff2) format('woff2');
  unicode-range: U+2d, U+30-36, U+38-39, U+41, U+51-52, U+2014, U+3001-3002, U+300c-300d, U+3044, U+304b-304e, U+3051-305c, U+305f-3060, U+3066-306b, U+306e-3070, U+3072-3073, U+3078-3079, U+307e-307f, U+3081, U+3089-308c, U+3092-3093, U+3099, U+30a4, U+30af-30b0, U+30b7-30ba, U+30c6-30c9, U+30cf-30d0, U+30e0, U+30e2, U+30eb, U+30ed, U+4e00, U+4e2d, U+4e3b, U+4e86, U+4e8b, U+4ed8, U+4ee3, U+4ee5, U+4ef6, U+4f5c, U+4f7f, U+4fdd, U+5024, U+5165, U+5168, U+5185, U+51fa, U+5224-5225, U+529b, U+5316, U+5373, U+53c2, U+53d7, U+53f7, U+5408, U+540c-540d, U+544a, U+547c, U+56de, U+5728, U+57df, U+57fa, U+5831, U+5857, U+5916, U+5b58, U+5b8c, U+5b9a, U+5b9f, U+5bfe, U+5c65, U+5de5, U+5e33, U+5e74, U+5eab, U+5f0f, U+5fdc, U+6027, U+610f, U+6271, U+629c, U+6301, U+63a5, U+63d0, U+643a, U+64cd, U+65b9, U+65e2, U+65e5, U+6642, U+66ff, U+671f, U+672b-672c, U+6761, U+679c, U+67fb, U+6848, U+69d8, U+6b21, U+6b74, U+6b8b, U+6c42, U+6ce8, U+6e80, U+7167, U+73fe, U+7531, U+753b, U+756a, U+767b, U+76e3-76e4, U+78ba, U+7968, U+79d2, U+7a0b, U+7aef, U+7b2c, U+7b54, U+7c8b, U+7d4c, U+7d50, U+7d71, U+7d9a, U+7dcf, U+7fa9, U+80fd, U+884c, U+8981, U+89a7, U+8a08, U+8a2d, U+8a66, U+8a8d, U+8aad, U+8c61, U+9000, U+9023, U+907f, U+9332, U+9593, U+9762, U+9805, U+9818, U+9a13, U+ff08-ff09, U+ff0b, U+ff0f;
}
@font-face {
  font-family: 'Zen Kaku Gothic New';
  font-style: normal;
  font-weight: 700;
  font-display: block;
  src: url(./font-2.woff2) format('woff2');
  unicode-range: U+2d, U+30-36, U+38-39, U+41, U+51-52, U+2014, U+3001-3002, U+300c-300d, U+3044, U+304b-304e, U+3051-305c, U+305f-3060, U+3066-306b, U+306e-3070, U+3072-3073, U+3078-3079, U+307e-307f, U+3081, U+3089-308c, U+3092-3093, U+3099, U+30a4, U+30af-30b0, U+30b7-30ba, U+30c6-30c9, U+30cf-30d0, U+30e0, U+30e2, U+30eb, U+30ed, U+4e00, U+4e2d, U+4e3b, U+4e86, U+4e8b, U+4ed8, U+4ee3, U+4ee5, U+4ef6, U+4f5c, U+4f7f, U+4fdd, U+5024, U+5165, U+5168, U+5185, U+51fa, U+5224-5225, U+529b, U+5316, U+5373, U+53c2, U+53d7, U+53f7, U+5408, U+540c-540d, U+544a, U+547c, U+56de, U+5728, U+57df, U+57fa, U+5831, U+5857, U+5916, U+5b58, U+5b8c, U+5b9a, U+5b9f, U+5bfe, U+5c65, U+5de5, U+5e33, U+5e74, U+5eab, U+5f0f, U+5fdc, U+6027, U+610f, U+6271, U+629c, U+6301, U+63a5, U+63d0, U+643a, U+64cd, U+65b9, U+65e2, U+65e5, U+6642, U+66ff, U+671f, U+672b-672c, U+6761, U+679c, U+67fb, U+6848, U+69d8, U+6b21, U+6b74, U+6b8b, U+6c42, U+6ce8, U+6e80, U+7167, U+73fe, U+7531, U+753b, U+756a, U+767b, U+76e3-76e4, U+78ba, U+7968, U+79d2, U+7a0b, U+7aef, U+7b2c, U+7b54, U+7c8b, U+7d4c, U+7d50, U+7d71, U+7d9a, U+7dcf, U+7fa9, U+80fd, U+884c, U+8981, U+89a7, U+8a08, U+8a2d, U+8a66, U+8a8d, U+8aad, U+8c61, U+9000, U+9023, U+907f, U+9332, U+9593, U+9762, U+9805, U+9818, U+9a13, U+ff08-ff09, U+ff0b, U+ff0f;
}

ノート

この構成について / About this pattern

RFP の要求一覧に 1 件ずつ回答する表。pattern.html が版そのもので、cover.png と frontmatter の寸法はどちらもそこから機械的に出している。編集するのは pattern.html だけ。

A table answering an RFP’s requirement list one row at a time. pattern.html is the artboard itself; both cover.png and the measurements come from it, so the three cannot drift apart.

Techniques

Apply to