Design Vault Search use case, structure, colour, notes /
Index Categories Tags 日本語
Back to index

Topics — Three Cards Lined Up by Date, Category and Headline

Three Column
Design
Topics — Three Cards Lined Up by Date, Category and Headline
column 1
column 2
column 3
140 96

1920 × 1080 Seen as a design

Take it with you

Copy and paste, or save a file and hand it over. For a machine with no network, one “Everything” file is enough.

Everything

topics-dated-cards-everything.md

Everything in this panel, including the contents behind each URL, in one Markdown file

Prompt

1.1 KB
Produce one slide to the following specification.

- Canvas 1920 × 1080
- Margin top 96 right 140 bottom 56 left 140
- 3 equal columns, gap 40

## Type (px against a 1920px canvas)
kicker  22px / 700 / tracking 0.16em / tabular numerals
title  52px / 700 / leading 1.35 / tabular numerals
date  24px / 700 / tabular numerals
category  20px / 500 / tabular numerals
headline  32px / 700 / leading 1.45 / tabular numerals
body  22px / 400 / leading 1.7 / tabular numerals
folio  16px / 400 / tabular numerals

## Colour
Ground #FFFFFF / Surface #F2F4F8 / Ink #0E1A2B / Muted #5B6879 / Accent #1D3F72 / Rule #D6DCE5

## Constraints — dropping these breaks it
- Three events in date order — rank them by importance and the sequence gets misread
- Put one number in each card (units, countries, investment)
- Images are 16:9 stand-ins; until photos exist, pale navy shapes only mark the slot
- Keep each headline to one line; whatever spills goes into the detail line

Replace the content with [your content]. Keep the measurements and colours as given.
For an exact reproduction, use the verbatim HTML at https://design-vault.pages.dev/designs/topics-dated-cards/pattern.html.

Spec

1.5 KB

/ai/designs/topics-dated-cards.json

format: slide-16x9
density: medium
layout:
  kind: 3-column
  canvas:
    w: 1920
    h: 1080
  margin:
    top: 96
    right: 140
    bottom: 56
    left: 140
  columns:
    count: 3
    gap: 40
type:
  kicker:
    size: 22
    weight: 700
    tracking: 0.16em
    numeric: tabular
  title:
    size: 52
    weight: 700
    leading: 1.35
    numeric: tabular
  date:
    size: 24
    weight: 700
    numeric: tabular
  category:
    size: 20
    weight: 500
    numeric: tabular
  headline:
    size: 32
    weight: 700
    leading: 1.45
    numeric: tabular
  body:
    size: 22
    weight: 400
    leading: 1.7
    numeric: tabular
  folio:
    size: 16
    weight: 400
    numeric: tabular
colors:
  ground: "#FFFFFF"
  surface: "#F2F4F8"
  ink: "#0E1A2B"
  muted: "#5B6879"
  accent: "#1D3F72"
  rule: "#D6DCE5"
rules:
  - Three events in date order — rank them by importance and the sequence gets misread
  - Put one number in each card (units, countries, investment)
  - Images are 16:9 stand-ins; until photos exist, pale navy shapes only mark the slot
  - Keep each headline to one line; whatever spills goes into the detail line

Files

pattern.html

4.9 KB

/designs/topics-dated-cards/pattern.html — The artboard itself, font subset included — open it and this picture draws.

Show contents
<!doctype html>
<meta charset="utf-8">
<title>今期の出来事 — 日付・分類・見出しを揃えた 3 枚のカード</title>
<meta name="dv-font" content="IBM Plex Sans JP:400;500;700">
<link rel="stylesheet" href="./font.css">
<style>
  /* この版そのもの。index.md の layout / type / colors は、この HTML を
     scripts/render-pattern.mjs で実測した結果であって、別に書いた説明ではない。
     会社・人物・数値はすべて説明用の架空のもの。 */
  :root {
    --ground: #FFFFFF;
    --surface: #F2F4F8;
    --ink: #0E1A2B;
    --muted: #5B6879;
    --accent: #1D3F72;
    --rule: #D6DCE5;
    --fig-1: color-mix(in srgb, var(--accent) 8%, var(--ground));
    --fig-2: color-mix(in srgb, var(--accent) 22%, var(--ground));
    --fig-3: color-mix(in srgb, var(--accent) 45%, var(--ground));
  }
  * { box-sizing: border-box; margin: 0; }
  html, body { width: 1920px; height: 1080px; }
  body { font-family: "IBM Plex Sans JP", "IPAGothic", sans-serif; font-variant-numeric: tabular-nums; }

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

  .kicker { font-size: 22px; font-weight: 700; letter-spacing: .16em; color: var(--accent); }
  .title { font-size: 52px; font-weight: 700; line-height: 1.35; margin-top: 12px; }
  /* 頁の足:社名・資料名・頁番号。どの頁でも同じ位置に置く */
  .folio { display: flex; justify-content: space-between; font-size: 16px; color: var(--muted); border-top: 1px solid var(--rule); padding-top: 16px; }

  .cards { display: grid; grid-template-columns: repeat(3, 1fr); column-gap: 40px; align-content: center; }
  .card { border-top: 4px solid var(--accent); }
  /* 写真の差し替え枠。16:9 で、図形は中身を示さず置き場所だけを示す */
  .fig { aspect-ratio: 16 / 9; background: var(--fig-1); }
  .fig svg { display: block; width: 100%; height: 100%; }
  .txt { padding-top: 28px; }
  .meta { display: flex; gap: 20px; align-items: baseline; }
  .date { font-size: 24px; font-weight: 700; }
  .cat { font-size: 20px; font-weight: 500; color: var(--accent); border: 1.5px solid var(--accent); padding: 2px 12px; }
  .head { font-size: 32px; font-weight: 700; line-height: 1.45; margin-top: 16px; }
  .body { font-size: 22px; line-height: 1.7; color: var(--muted); margin-top: 12px; }

</style>

<div class="artboard" data-artboard>
  <div class="content" data-content>
    <div>
      <p class="kicker" data-type="kicker">上期のトピックス</p>
      <h1 class="title" data-type="title">製品・提携・設備で、計画の 3 本の柱が動き出した</h1>
    </div>
      <div class="cards">
        <div class="card" data-col="1">
          <div class="fig"><svg viewBox="0 0 400 225" aria-hidden="true"><rect x="120" y="70" width="160" height="110" rx="10" fill="var(--fig-2)"/><circle cx="200" cy="125" r="30" fill="var(--fig-3)"/></svg></div>
          <div class="txt">
            <p class="meta"><span class="date" data-type="date">2026.06.02</span><span class="cat" data-type="category">製品</span></p>
            <p class="head" data-type="headline">診療所向けの小型分析装置を発売</p>
            <p class="body" data-type="body">卓上に置ける大きさ。初年度 1,200 台を見込む</p>
          </div>
        </div>
        <div class="card" data-col="2">
          <div class="fig"><svg viewBox="0 0 400 225" aria-hidden="true"><circle cx="160" cy="125" r="60" fill="var(--fig-2)"/><circle cx="240" cy="125" r="60" fill="var(--fig-3)" fill-opacity=".85"/></svg></div>
          <div class="txt">
            <p class="meta"><span class="date">2026.07.15</span><span class="cat">提携</span></p>
            <p class="head">北欧の検査機器会社と販売で提携</p>
            <p class="body">欧州 6 か国で、当社の計測サービスを提供する</p>
          </div>
        </div>
        <div class="card" data-col="3">
          <div class="fig"><svg viewBox="0 0 400 225" aria-hidden="true"><rect x="80" y="150" width="240" height="30" fill="var(--fig-3)"/><rect x="110" y="90" width="50" height="60" fill="var(--fig-2)"/><rect x="175" y="90" width="50" height="60" fill="var(--fig-2)"/><rect x="240" y="90" width="50" height="60" fill="var(--fig-2)"/></svg></div>
          <div class="txt">
            <p class="meta"><span class="date">2026.09.01</span><span class="cat">設備</span></p>
            <p class="head">仙台工場に自動組立ラインを新設</p>
            <p class="body">組立の工数を 3 割減らす。投資額は 18 億円</p>
          </div>
        </div>
      </div>
    <div class="folio">
      <p data-type="folio">アオバ精工株式会社 2027 年 3 月期 第 2 四半期 決算説明資料</p>
      <p>08</p>
    </div>
  </div>
</div>

font.css

3.9 KB

/designs/topics-dated-cards/font.css — Not in Everything

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

@font-face {
  font-family: 'IBM Plex Sans JP';
  font-style: normal;
  font-weight: 400;
  font-display: block;
  src: url(./font-0.woff2) format('woff2');
  unicode-range: U+20, U+2c, U+2e, U+30-33, U+35-39, U+2014, U+3000-3002, U+3048, U+304b-304e, U+3051-3052, U+3055-305a, U+305f-3060, U+3066-3069, U+306b, U+306e-3071, U+3080, U+3089, U+308b, U+3092, U+3099-309a, U+30a2, U+30a4, U+30aa-30ac, U+30af-30b0, U+30b5-30b6, U+30b9-30ba, U+30c3, U+30c8-30c9, U+30cf-30d4, U+30e9, U+30f3, U+30fb-30fc, U+4e0a, U+4e8b, U+4eca, U+4ed8-4ed9, U+4f1a, U+4f9b, U+5099, U+5104, U+5186, U+51fa, U+5206, U+521d, U+5272, U+52d5, U+5317, U+534a, U+5353, U+53f0, U+5411, U+54c1, U+5668, U+56db, U+56fd, U+578b, U+5834, U+58f2, U+5927, U+5c0f, U+5dde, U+5de5, U+5e74, U+5ea6, U+5f0f, U+5f53, U+6240, U+6295, U+63c3, U+63d0, U+643a, U+6570, U+6599, U+65b0, U+65e5, U+660e, U+6708, U+671f, U+672c, U+6765, U+6790, U+679a, U+67f1, U+67fb, U+682a, U+691c, U+6a5f, U+6b27, U+6c7a, U+6e1b, U+6e2c, U+753b, U+7642, U+767a, U+793e, U+7acb, U+7b2c, U+7b97, U+7cbe, U+7d44, U+7f6e, U+81ea, U+88c5, U+88fd, U+898b, U+8a08, U+8a2d, U+8a3a, U+8aac, U+8ca9, U+8cc7, U+8fbc, U+984d, U+985e;
}
@font-face {
  font-family: 'IBM Plex Sans JP';
  font-style: normal;
  font-weight: 500;
  font-display: block;
  src: url(./font-1.woff2) format('woff2');
  unicode-range: U+20, U+2c, U+2e, U+30-33, U+35-39, U+2014, U+3000-3002, U+3048, U+304b-304e, U+3051-3052, U+3055-305a, U+305f-3060, U+3066-3069, U+306b, U+306e-3071, U+3080, U+3089, U+308b, U+3092, U+3099-309a, U+30a2, U+30a4, U+30aa-30ac, U+30af-30b0, U+30b5-30b6, U+30b9-30ba, U+30c3, U+30c8-30c9, U+30cf-30d4, U+30e9, U+30f3, U+30fb-30fc, U+4e0a, U+4e8b, U+4eca, U+4ed8-4ed9, U+4f1a, U+4f9b, U+5099, U+5104, U+5186, U+51fa, U+5206, U+521d, U+5272, U+52d5, U+5317, U+534a, U+5353, U+53f0, U+5411, U+54c1, U+5668, U+56db, U+56fd, U+578b, U+5834, U+58f2, U+5927, U+5c0f, U+5dde, U+5de5, U+5e74, U+5ea6, U+5f0f, U+5f53, U+6240, U+6295, U+63c3, U+63d0, U+643a, U+6570, U+6599, U+65b0, U+65e5, U+660e, U+6708, U+671f, U+672c, U+6765, U+6790, U+679a, U+67f1, U+67fb, U+682a, U+691c, U+6a5f, U+6b27, U+6c7a, U+6e1b, U+6e2c, U+753b, U+7642, U+767a, U+793e, U+7acb, U+7b2c, U+7b97, U+7cbe, U+7d44, U+7f6e, U+81ea, U+88c5, U+88fd, U+898b, U+8a08, U+8a2d, U+8a3a, U+8aac, U+8ca9, U+8cc7, U+8fbc, U+984d, U+985e;
}
@font-face {
  font-family: 'IBM Plex Sans JP';
  font-style: normal;
  font-weight: 700;
  font-display: block;
  src: url(./font-2.woff2) format('woff2');
  unicode-range: U+20, U+2c, U+2e, U+30-33, U+35-39, U+2014, U+3000-3002, U+3048, U+304b-304e, U+3051-3052, U+3055-305a, U+305f-3060, U+3066-3069, U+306b, U+306e-3071, U+3080, U+3089, U+308b, U+3092, U+3099-309a, U+30a2, U+30a4, U+30aa-30ac, U+30af-30b0, U+30b5-30b6, U+30b9-30ba, U+30c3, U+30c8-30c9, U+30cf-30d4, U+30e9, U+30f3, U+30fb-30fc, U+4e0a, U+4e8b, U+4eca, U+4ed8-4ed9, U+4f1a, U+4f9b, U+5099, U+5104, U+5186, U+51fa, U+5206, U+521d, U+5272, U+52d5, U+5317, U+534a, U+5353, U+53f0, U+5411, U+54c1, U+5668, U+56db, U+56fd, U+578b, U+5834, U+58f2, U+5927, U+5c0f, U+5dde, U+5de5, U+5e74, U+5ea6, U+5f0f, U+5f53, U+6240, U+6295, U+63c3, U+63d0, U+643a, U+6570, U+6599, U+65b0, U+65e5, U+660e, U+6708, U+671f, U+672c, U+6765, U+6790, U+679a, U+67f1, U+67fb, U+682a, U+691c, U+6a5f, U+6b27, U+6c7a, U+6e1b, U+6e2c, U+753b, U+7642, U+767a, U+793e, U+7acb, U+7b2c, U+7b97, U+7cbe, U+7d44, U+7f6e, U+81ea, U+88c5, U+88fd, U+898b, U+8a08, U+8a2d, U+8a3a, U+8aac, U+8ca9, U+8cc7, U+8fbc, U+984d, U+985e;
}

Notes

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

出典を持たない自作パターン。pattern.html が版そのもので、cover.png と frontmatter の layout / type / colors はどちらもそこから機械的に測った結果。一式「決算・経営報告」の 1 枚で、架空の会社「アオバ精工」の第 2 四半期決算説明として描いてある。会社・人物・数値はすべて架空。

A self-authored pattern. pattern.html is the artboard itself; both cover.png and the measurements in the frontmatter are derived from it. One of the eight results-briefing slides, drawn as a fictional company’s half-year results deck; every company, person and figure on it is invented.

Techniques

Apply to