版の配色
1920 × 1080 作品として見る 版そのものを描画 — どの倍率でも字は潰れません 骨格・余白・カラムを重ねた状態
1920 × 1080 作品として見る 版そのものを描画 — どの倍率でも字は潰れません 骨格・余白・カラムを重ねた状態
コピーして貼るか、ファイルに保存して渡す。ネットにつながらない環境には「全部入り」を 1 つ渡せば足りる。
このパネルの中身を、URL の先にあるファイルの中身まで含めて 1 つにまとめた Markdown — 大きいのでファイルで渡す(コピーは 32KB まで)
以下の仕様でスライドを 1 枚作ってください。 - 版面 1920 × 1080 - 余白 上 96 右 128 下 96 左 128 ## 文字(版面 1920px に対する px) title 42px / 700 / 字間 0.02em legend 17px / 400 who 23px / 700 / 行送り 1.3 stance 15px / 400 note 17px / 400 / 行送り 1.8 count 15px / 500 / 等幅数字 ## 配色 地 #10141A / 面 #1A2029 / 文字 #EDF1F6 / 補助 #8A94A2 / 強調 #5BC0BE / 罫 #262F3A ## 外すと崩れる点 - 塗るのは 1 者だけ。全員を色分けすると「誰から話すか」が消える - 線は SVG、節は HTML。描画順がそのまま重なり順になり、節が必ず線の上に乗る - 孤立した節を置かない。線の無い関係者は、この図に載せる理由が無い 内容は[ここに自分の内容を書く]に置き換えてください。寸法と配色はそのまま守ってください。 正確に再現する場合は、この HTML をそのまま使ってください: https://design-vault.pages.dev/designs/stakeholder-network-hub/pattern.html
/ai/designs/stakeholder-network-hub.json
format: slide-16x9
density: medium
layout:
kind: network
canvas:
w: 1920
h: 1080
margin:
top: 96
right: 128
bottom: 96
left: 128
type:
title:
size: 42
weight: 700
tracking: 0.02em
legend:
size: 17
weight: 400
who:
size: 23
weight: 700
leading: 1.3
stance:
size: 15
weight: 400
note:
size: 17
weight: 400
leading: 1.8
count:
size: 15
weight: 500
numeric: tabular
colors:
ground: "#10141A"
surface: "#1A2029"
ink: "#EDF1F6"
muted: "#8A94A2"
accent: "#5BC0BE"
rule: "#262F3A"
rules:
- 塗るのは 1 者だけ。全員を色分けすると「誰から話すか」が消える
- 線は SVG、節は HTML。描画順がそのまま重なり順になり、節が必ず線の上に乗る
- 孤立した節を置かない。線の無い関係者は、この図に載せる理由が無い{
"format": "slide-16x9",
"density": "medium",
"layout": {
"kind": "network",
"canvas": {
"w": 1920,
"h": 1080
},
"margin": {
"top": 96,
"right": 128,
"bottom": 96,
"left": 128
}
},
"type": {
"title": {
"size": 42,
"weight": 700,
"tracking": "0.02em"
},
"legend": {
"size": 17,
"weight": 400
},
"who": {
"size": 23,
"weight": 700,
"leading": 1.3
},
"stance": {
"size": 15,
"weight": 400
},
"note": {
"size": 17,
"weight": 400,
"leading": 1.8
},
"count": {
"size": 15,
"weight": 500,
"numeric": "tabular"
}
},
"colors": {
"ground": "#10141A",
"surface": "#1A2029",
"ink": "#EDF1F6",
"muted": "#8A94A2",
"accent": "#5BC0BE",
"rule": "#262F3A"
},
"rules": [
"塗るのは 1 者だけ。全員を色分けすると「誰から話すか」が消える",
"線は SVG、節は HTML。描画順がそのまま重なり順になり、節が必ず線の上に乗る",
"孤立した節を置かない。線の無い関係者は、この図に載せる理由が無い"
]
} /designs/stakeholder-network-hub/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>
:root {
--ground: #10141A;
--surface: #1A2029;
--ink: #EDF1F6;
--muted: #8A94A2;
--accent: #5BC0BE;
--rule: #262F3A;
}
* { 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: 96px 128px;
}
.content { height: 100%; display: grid; grid-template-rows: auto 1fr auto; gap: 36px; }
.head { display: flex; align-items: baseline; justify-content: space-between; gap: 64px; }
.title { font-size: 42px; font-weight: 700; letter-spacing: .02em; }
.legend { font-size: 17px; font-weight: 400; color: var(--muted); }
.plane { position: relative; }
/* 線は SVG、節は HTML。線を先に描いてから節を置くので、
節が必ず線の上に乗る(描画順がそのまま重なり順になる)。 */
.edges { position: absolute; inset: 0; width: 100%; height: 100%; }
.node { position: absolute; transform: translate(-50%, -50%);
background: var(--surface); border: 1px solid var(--rule);
padding: 20px 26px; display: grid; gap: 7px; text-align: center; white-space: nowrap; }
.who { font-size: 23px; font-weight: 500; line-height: 1.3; }
.stance { font-size: 15px; font-weight: 400; color: var(--muted); }
/* 説得の対象 1 者だけを立てる。全員を色分けすると「誰から話すか」が消える。 */
.node[data-key] { border-color: var(--accent); background: var(--accent); }
.node[data-key] .who { color: var(--ground); font-weight: 700; }
.node[data-key] .stance { color: color-mix(in srgb, var(--ground) 76%, transparent); }
.foot { border-top: 1px solid var(--rule); padding-top: 24px;
display: flex; justify-content: space-between; gap: 48px; }
.note { font-size: 17px; font-weight: 400; line-height: 1.8; color: var(--muted); max-width: 1280px; }
.count { font-size: 15px; font-weight: 500; color: var(--muted); font-variant-numeric: tabular-nums; }
</style>
<div class="artboard" data-artboard>
<div class="content" data-content>
<div class="head">
<h1 class="title" data-type="title">この決裁に関わる 7 者</h1>
<p class="legend" data-type="legend">太い線は週次で話す相手。細い線は報告だけの関係</p>
</div>
<div class="plane">
<svg class="edges" viewBox="0 0 1664 640" preserveAspectRatio="none">
<g stroke="var(--rule)" stroke-width="1.5" fill="none">
<path d="M832 320 L1380 130" />
<path d="M832 320 L300 540" />
<path d="M832 320 L1380 540" />
<path d="M300 130 L300 540" />
<path d="M1380 130 L1380 540" />
<path d="M300 130 L1380 130" />
<path d="M832 320 L832 614" />
</g>
<g stroke="var(--accent)" stroke-width="3" fill="none">
<path d="M832 320 L832 70" />
<path d="M832 70 L1380 130" />
<path d="M832 320 L300 130" />
</g>
</svg>
<div class="node" data-key style="left:50%; top:10.9%">
<p class="who" data-type="who">情報システム部 部長</p>
<p class="stance" data-type="stance">決裁者 / 現状は中立</p>
</div>
<div class="node" style="left:50%; top:50%">
<p class="who">情報システム部 課長</p>
<p class="stance">窓口 / 推進に前向き</p>
</div>
<div class="node" style="left:18%; top:20.3%">
<p class="who">経理部 部長</p>
<p class="stance">費用の承認 / 慎重</p>
</div>
<div class="node" style="left:82.9%; top:20.3%">
<p class="who">製造本部 本部長</p>
<p class="stance">停止時間に反対</p>
</div>
<div class="node" style="left:18%; top:84.4%">
<p class="who">営業部 課長</p>
<p class="stance">現場の代表 / 賛成</p>
</div>
<div class="node" style="left:82.9%; top:84.4%">
<p class="who">保守ベンダー</p>
<p class="stance">期限の当事者</p>
</div>
<div class="node" style="left:50%; top:96%">
<p class="who">当社 営業担当</p>
<p class="stance">窓口 / 週次で同席</p>
</div>
</div>
<div class="foot">
<p class="note" data-type="note">製造本部の反対は停止時間だけが理由です。ここを先に潰せば、経理部の慎重さは費用の内訳で解けます。順序を逆にすると 2 回とも説明し直しになります。</p>
<p class="count" data-type="count">週次で話す相手 3 者 / 報告のみ 4 者</p>
</div>
</div>
</div>
/designs/stakeholder-network-hub/font.css — 全部入りには入れていない
/* dv-subset v2 — generated by scripts/subset-font.mjs. Do not edit.
* font Zen Kaku Gothic New 400;500;700
* chars 123 (125f7129851bb3a3)
*
* 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+2f, U+32-34, U+37, U+2014, U+3001-3002, U+3044, U+304b-304e, U+3051-305c, U+305f-3060, U+3066-306b, U+306e-3070, U+307e-307f, U+3082, U+308a-308b, U+308f, U+3092, U+3099, U+30b7-30ba, U+30bf-30c0, U+30c6-30c7, U+30d8-30d9, U+30e0, U+30f3, U+30fc, U+4e2d, U+4e8b, U+4ee3, U+4fc2, U+4fdd, U+505c, U+5148, U+5185, U+524d, U+53cd, U+53e3, U+540c, U+5411, U+544a, U+55b6, U+56de, U+56f3, U+5831, U+5834, U+592a, U+5b88, U+5bfe, U+5c64, U+5e2d, U+5e8f, U+5f53, U+60c5, U+614e, U+6210, U+624b, U+627f, U+62c5, U+6301, U+63a8, U+660e, U+6642, U+671f, U+672c, U+696d, U+6b21, U+6b62, U+6c7a, U+6f70, U+72b6, U+73fe, U+7406, U+7528, U+7531, U+76f4, U+76f8, U+793a, U+793e, U+7a93, U+7acb, U+7d30, U+7d4c, U+7dda, U+7e4b, U+8005, U+8868, U+88c1, U+88fd, U+89e3, U+8a33, U+8a71, U+8a8d, U+8aac, U+8ab2, U+8cbb, U+8cdb, U+9006, U+9020, U+9031-9032, U+90e8, U+91cd, U+9577, U+9593, U+95a2, U+9650, U+968e, U+9806;
}
@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+2f, U+32-34, U+37, U+2014, U+3001-3002, U+3044, U+304b-304e, U+3051-305c, U+305f-3060, U+3066-306b, U+306e-3070, U+307e-307f, U+3082, U+308a-308b, U+308f, U+3092, U+3099, U+30b7-30ba, U+30bf-30c0, U+30c6-30c7, U+30d8-30d9, U+30e0, U+30f3, U+30fc, U+4e2d, U+4e8b, U+4ee3, U+4fc2, U+4fdd, U+505c, U+5148, U+5185, U+524d, U+53cd, U+53e3, U+540c, U+5411, U+544a, U+55b6, U+56de, U+56f3, U+5831, U+5834, U+592a, U+5b88, U+5bfe, U+5c64, U+5e2d, U+5e8f, U+5f53, U+60c5, U+614e, U+6210, U+624b, U+627f, U+62c5, U+6301, U+63a8, U+660e, U+6642, U+671f, U+672c, U+696d, U+6b21, U+6b62, U+6c7a, U+6f70, U+72b6, U+73fe, U+7406, U+7528, U+7531, U+76f4, U+76f8, U+793a, U+793e, U+7a93, U+7acb, U+7d30, U+7d4c, U+7dda, U+7e4b, U+8005, U+8868, U+88c1, U+88fd, U+89e3, U+8a33, U+8a71, U+8a8d, U+8aac, U+8ab2, U+8cbb, U+8cdb, U+9006, U+9020, U+9031-9032, U+90e8, U+91cd, U+9577, U+9593, U+95a2, U+9650, U+968e, U+9806;
}
@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+2f, U+32-34, U+37, U+2014, U+3001-3002, U+3044, U+304b-304e, U+3051-305c, U+305f-3060, U+3066-306b, U+306e-3070, U+307e-307f, U+3082, U+308a-308b, U+308f, U+3092, U+3099, U+30b7-30ba, U+30bf-30c0, U+30c6-30c7, U+30d8-30d9, U+30e0, U+30f3, U+30fc, U+4e2d, U+4e8b, U+4ee3, U+4fc2, U+4fdd, U+505c, U+5148, U+5185, U+524d, U+53cd, U+53e3, U+540c, U+5411, U+544a, U+55b6, U+56de, U+56f3, U+5831, U+5834, U+592a, U+5b88, U+5bfe, U+5c64, U+5e2d, U+5e8f, U+5f53, U+60c5, U+614e, U+6210, U+624b, U+627f, U+62c5, U+6301, U+63a8, U+660e, U+6642, U+671f, U+672c, U+696d, U+6b21, U+6b62, U+6c7a, U+6f70, U+72b6, U+73fe, U+7406, U+7528, U+7531, U+76f4, U+76f8, U+793a, U+793e, U+7a93, U+7acb, U+7d30, U+7d4c, U+7dda, U+7e4b, U+8005, U+8868, U+88c1, U+88fd, U+89e3, U+8a33, U+8a71, U+8a8d, U+8aac, U+8ab2, U+8cbb, U+8cdb, U+9006, U+9020, U+9031-9032, U+90e8, U+91cd, U+9577, U+9593, U+95a2, U+9650, U+968e, U+9806;
}
出典を持たない自作パターン。pattern.html が版そのもので、cover.png と frontmatter の
layout / type / colors はどちらもそこから機械的に測った結果。編集するのは pattern.html
だけで、寸法を手で書き直すことはない。
A self-authored pattern. pattern.html is the artboard itself; both cover.png and the
measurements in the frontmatter are derived from it, so the three cannot drift apart.
Edit the artboard, never the numbers.