# DESIGN.md — 角川武蔵野ミュージアム(Kadokawa Culture Museum) > 角川武蔵野ミュージアム(https://kadcul.com/)のデザイン仕様書。 > 2020 年開館。隈研吾設計の巨大な花崗岩の塊の中に、図書館・美術館・博物館が同居する複合文化施設。 > 最大の特徴は **セクション見出しを `writing-mode: vertical-rl` の縦組みで組む**こと。「企画展/イベント/ライブラリー」「ニュース」「本棚劇場」が**縦に立ち、`letter-spacing: 0.2em` で開く**。**日本語サイトで縦組み見出しを主構造に据えた数少ない例**。 > 色は **墨 `#231815` と 山吹 `#ffcc00` の 2 色**。`#231815` は印刷業界の「スミ」(リッチブラック)で、**純黒より赤みのある温かい黒**。KADOKAWA という出版社の出自が色に出ている。 > **枠線はすべて `3px`**。1px の細い罫を使わず、**版画のような太い輪郭**で要素を囲む。 > **`box-shadow` は実測 0 件**。 > 実サイトの computed style 実測(2026-08-12 取得。トップ+「イベント」ページ)に基づく。 --- ## 1. Visual Theme & Atmosphere - **デザイン方針**: **白地に、墨の太い輪郭と縦組みの見出し**。装飾を持たず、**線の太さ(3px)と文字の向き(縦組み)だけ**で日本的な佇まいを作る - **角川武蔵野ミュージアムについて**: 図書館・美術館・博物館が 1 棟に同居する「ミュージアム」。**扱うコンテンツの幅が極端に広い**(ラノベ・マンガ・現代アート・古典籍)ため、UI 側は徹底して中立に保ち、**展示のビジュアルに色を任せる** - **密度**: 中〜高密度。トップは KV カルーセル → 重要なお知らせ(墨帯)→ トピックス(灰帯)→ 企画展/イベント/ライブラリー(クリーム地)→ フロアガイド の縦積み。**帯の色でセクションを切る** - **キーワード**: 白地、墨 `#231815`、山吹 `#ffcc00`、縦組み見出し、`letter-spacing: 0.2em`、3px の枠線、影なし、Noto Sans JP - **特徴**: - **セクション見出しが縦組み**(`writing-mode: vertical-rl`)。28px / weight 700 / **`letter-spacing: 5.6px = 0.2em`**。コンテンツ列の左に縦に立てる - **フロアガイドの小見出しも縦組み**(20px / weight 700 / **`letter-spacing: 4px = 0.2em`**)。「本棚劇場」「エディットタウン」「マンガ・ラノベ図書館」 - **墨 `#231815` は純黒ではない**。rgb(35,24,21) の**赤みを帯びた黒**で、印刷の「スミ」に由来する。純黒 `#000000` は本文にしか使わない - **枠線はすべて `3px solid`**。ボタン・アウトライン・チケット CTA。**1px の罫を使わない** - **主 CTA は山吹 `#ffcc00` の pill + 墨の 3px 枠**。ページ内で唯一の高彩度で、**「チケットを買う」だけがこの色** - **主 CTA 以外のボタンは `border-radius: 0`**。**pill は「チケット」専用の形** - **カテゴリバッジは矩形(radius 0)の小さな色面**。企画展=紫 `#905ed3`、ライブラリー=緑 `#4abf23`、イベント=シアン `#38b9e1`、開催中=墨、開催予定=温灰 `#766965` - **`font-weight: 100`(Thin)が使われる**。「蔵書/収蔵品 検索」と日付表示。**日本語サイトで Thin を実運用する珍しい例** - **`box-shadow` は実測 0 件**。奥行きは帯の面色と 3px の枠だけ - **`palt` を掛けない**(`font-feature-settings: normal`) --- ## 2. Color Palette & Roles > 実測値。地は純白 `#ffffff`(`pageBackground.resolved` = `rgb(255,255,255)` / 根拠 `body`)。**墨と山吹の 2 色が骨格**で、そこにカテゴリ識別用の高彩度が 4 色加わる。 ### Brand(ブランド) - **Sumi** (`#231815`, rgb 35,24,21): **主色**。テキスト、枠線、帯、バッジ、検索ボタンの面。**印刷の「スミ」に由来する赤みのある黒**。純黒 `#000000` より温かい > 出版社の色。CMYK のリッチブラックを RGB に落とした値で、KADOKAWA グループの紙媒体と地続きの色を Web 上でも使っている - **Yamabuki** (`#ffcc00`, rgb 255,204,0): **唯一の高彩度アクセント**。「チケット購入はこちら」「チケット」の面。**この色は購買導線だけに使う** - **Cream** (`#f7f3de`, rgb 247,243,222): 「企画展/イベント/ライブラリー」セクションの地。**紙の色**に寄せた温かい白 - **Black** (`#000000`): 本文テキストの色。**枠や面には使わない**(面は必ず `#231815`) ### Category(カテゴリ識別色) - **Purple** (`#905ed3`, rgb 144,94,211): **企画展**バッジ - **Green** (`#4abf23`, rgb 74,191,35): **ライブラリー**バッジ - **Cyan** (`#38b9e1`, rgb 56,185,225): **イベント**バッジ - **Warm Gray** (`#766965`, rgb 118,105,101): **開催予定**バッジ。**墨 `#231815` の彩度を落とした同系色**で、「まだ始まっていない」を弱さで示す - **Sumi** (`#231815`): **開催中**バッジ。**現在進行中のものだけ主色を使う** > **カテゴリの 3 色(紫・緑・シアン)は互いに補色関係を作らない配置**。彩度は高いが、いずれも 12px の小さなバッジにしか現れないため画面を支配しない。 ### Neutral(面・罫) - **Background** (`#ffffff`): ページ地色。純白 - **Surface** (`#e9e9e9`, rgb 233,233,233): トピックス帯、言語切替メニューの面 - **Ink Muted** (`#939393`, rgb 147,147,147): 写真クレジット(「写真:新津保建秀」) - **Scrim** (`rgba(0,0,0,0.8)` + **`repeating-linear-gradient(-45deg, rgba(0,0,0,0.2) 0 7.5px, transparent 0 15px)`**): モーダルのオーバーレイ。**単なる黒の半透明ではなく、45° のハッチングを重ねる**。このサイト固有の処理 ### Semantic(意味的な色) サイト上に明示的なエラー色・成功色は現れない。実装時は以下を目安にする。 - **Danger/Error**: `#c0392b` 目安。**山吹 `#ffcc00` と隣接させない**(購買導線と紛れる) - **Warning**: **`#ffcc00` を流用しない**。山吹はチケット専用に温存し、警告には `#d98c00` 程度の一段沈んだ橙を当てる - **Success**: `#4abf23`(既存の Green)を流用する - **非活性**: 面 `#e9e9e9` / 文字 `#939393` / 枠 `3px solid #939393` --- ## 3. Typography Rules > **縦組みの見出しと `letter-spacing: 0.2em`** がこのサイトの核。書体は Noto Sans JP 単独で、**ウェイトは 100 / 400 / 700 の 3 段**(Thin を実運用する)。 ### 3.1 和文フォント - **全要素共通**: **Noto Sans JP**(Google Fonts)。Adobe Fonts に依存しないため、**preview.html でも実サイトと同じ書体が出る** - **ウェイト**: **100(Thin)/ 400(本文)/ 700(見出し・ボタン)** の 3 段 - **100 は「蔵書/収蔵品 検索」と日付表示にだけ**当てる。**日本語で Thin を実用する珍しい設計**で、墨地の上に白い細字を置くコントラストが効いている - **フォールバック**: `メイリオ` → `Meiryo` → `"ヒラギノ角ゴ ProN W3"` → `"Hiragino Kaku Gothic ProN"` → `游ゴシック` → `YuGothic` → `sans-serif` - **メイリオを最優先のフォールバックに置く**(ヒラギノ・游ゴシックより先)。Windows 環境での可読性を最優先した順序 - **フォールバック側に Thin(100)を持つ書体が無い**。メイリオ・ヒラギノ・游ゴシックいずれも最軽量は Regular なので、**Noto Sans JP の 100 を必ず読み込む**こと。落ちると Thin の箇所が Regular になり印象が変わる ### 3.2 欧文フォント - **欧文専用の書体を持たない**。「Kadokawa Culture Museum」もロゴ画像で、本文中の英数字は Noto Sans JP の字形で出る - 例外はカルーセルの操作ボタン(Previous / Next / language)のみで、そこだけ `Arial` が当たる。**自社の設計には持ち込まない** - 等幅フォントは使わない - **preview.html での注記**: Noto Sans JP は Google Fonts から取得できるため、**代替フォントを立てる必要がない**。実サイトと同じ書体で確認できる(**ウェイト 100 / 400 / 700 の 3 つを読み込むこと**) ### 3.3 font-family 指定 ```css /* 全要素共通 */ font-family: "Noto Sans JP", メイリオ, Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 游ゴシック, YuGothic, sans-serif; /* body の既定 */ font-size: 16px; font-weight: 400; line-height: 1.5; /* 24px */ letter-spacing: 0.02em; /* 0.32px */ color: #000000; font-feature-settings: normal; /* palt は使わない */ ``` **フォールバックの考え方**: - **和文を先頭に置く**。欧文専用書体で先取りしない - **メイリオをヒラギノより先に置く**。Windows 環境を優先した順序(ヌーラボと同じ方針だが、こちらはより徹底している) - **要素ごとに `font-family` を切り替えない**。1 スタックで通す - **Noto Sans JP の 100 / 400 / 700 の 3 ウェイトを必ず読み込む**。フォールバック側に Thin が無いため、100 が落ちると設計が崩れる ### 3.4 文字サイズ・ウェイト階層 | Role | Size | Weight | Line Height | Letter Spacing | Writing Mode | 備考 | |------|------|--------|-------------|----------------|--------------|------| | Section Head (Vertical) | 28px | **700** | 1.5 (42px) | **0.2em (5.6px)** | **`vertical-rl`** | 「企画展/イベント/ライブラリー」「ニュース」 | | Section Head | 28px | **700** | 1.5 (42px) | 0.011em (0.32px) | `horizontal-tb` | 「フロアガイド」「角川武蔵野ミュージアムを知る」 | | Floor Head (Vertical) | 20px | **700** | 1.5 (30px) | **0.2em (4px)** | **`vertical-rl`** | 「本棚劇場」「エディットタウン」 | | Article Head | 20px | **700** | 1.5 (30px) | 0.016em (0.32px) | `horizontal-tb` | 「館長通信 No.18」 | | Body | 16px | 400 | **1.5 (24px)** | **0.02em (0.32px)** | `horizontal-tb` | `body` の基準 | | Nav (Bold) | 16px | **700** | 1.5 (24px) | 0.02em (0.32px) | `horizontal-tb` | 「チケット」「営業カレンダー」 | | Sub Head | 16px | **700** | 1.5 (24px) | 0.02em (0.32px) | `horizontal-tb` | 「トピックス」「館長挨拶」 | | Nav (Mid) | 14px | **700** | 1.5 (21px) | 0.023em (0.32px) | `horizontal-tb` | 「企画展/イベント」(グローバルナビ) | | Footer Nav | 14px | 400 | 1.5 (21px) | 0.023em (0.32px) | `horizontal-tb` | 「サイトマップ」 | | Button (Outline) | 14px | **700** | 1.5 | 0.023em (0.32px) | `horizontal-tb` | 「くわしく見る」「特設ページはこちら」 | | Util Nav | 12px | 400 | 1.5 (18px) | 0.027em (0.32px) | `horizontal-tb` | 「営業カレンダー」「本日の営業時間:」 | | Ticket CTA | 12px | **700** | 1.5 (18px) | 0.027em (0.32px) | `horizontal-tb` | 「チケット購入はこちら」 | | Button (Small) | 12px | **700** | 1.5 | 0.027em (0.32px) | `horizontal-tb` | 「続きを読む」「一覧へ」 | | Search (Thin) | 12px | **100** | 1.5 (18px) | 0.027em (0.32px) | `horizontal-tb` | 「蔵書/収蔵品 検索」。**Thin** | | Date (Thin) | 12px | **100** | 1.5 (18px) | 0.027em (0.32px) | `horizontal-tb` | 「2026/7/15」。**Thin** | | Badge | 12px | 400 | 1.5 | 0.027em (0.32px) | `horizontal-tb` | 「企画展」「開催中」 | | Credit | 10px | 400 | 1.5 (15px) | 0.032em (0.32px) | `horizontal-tb` | 「写真:新津保建秀」 | - **`letter-spacing` は 2 系統**: 通常は **`0.32px` の px 固定**(16px で 0.02em)、**縦組み見出しだけ `0.2em`**(28px → 5.6px / 20px → 4px) - **縦組みの `0.2em` は em 指定で、サイズが変わっても比率が保たれる**。横組みの `0.32px` とは指定方法自体が違う - **`line-height` は全要素 1.5**。見出しも本文もバッジも同じ - **ウェイトは 100 / 400 / 700 の 3 段**。**500 と 600 を使わない** - **文字サイズは 28 / 20 / 16 / 14 / 12 / 10 の 6 段**。24px や 18px を作らない ### 3.5 行間・字間 - **本文の行間 (line-height)**: **1.5**(16px → 24px)。**全要素 1.5 で通す** - **字間 (letter-spacing)**: - **横組み: `0.32px` の px 固定**(`body` から継承)。16px で 0.02em、28px で 0.011em、12px で 0.027em - **縦組みの見出し: `0.2em`**(28px → 5.6px / 20px → 4px)。**横組みの 10〜18 倍**に開く - **縦組みだけ字間を極端に開く**のがこのサイトの手癖。**縦に並んだ文字を「一文字ずつ読ませる」ためのリズム**で、横組みの詰まった字間との対比が効いている - **`palt` は使わない**(`font-feature-settings: normal`) **ガイドライン**: - **横組みの字間は `0.32px` の px 固定を `body` に置き、要素ごとに上書きしない** - **縦組みの見出しには必ず `0.2em`** を当てる。px ではなく em で指定し、サイズが変わっても比率を保つ - **横組みの文章に `0.2em` を当てない**。0.2em は縦組み見出し専用 - **行間 1.5 を全要素で守る** - **ウェイトは 100 / 400 / 700 の 3 段だけ**。500 や 600 を挟まない - **Thin(100)を当てるのは「墨地の上の白い細字」と「日付」だけ**。白地の上の黒文字に 100 を使わない(読めなくなる) ### 3.6 禁則処理・改行ルール ```css overflow-wrap: break-word; line-break: strict; word-break: normal; ``` **禁則対象**: - 行頭禁止: `)」』】〕〉》、。,.・:;?!` - 行末禁止: `(「『【〔〈《` - **展覧会名は極端に長く、記号を含む**(「銀河鉄道999 THE GALAXY EXPERIENCE あの旅は、まだ続いている。」)。**欧文の連なり(THE GALAXY EXPERIENCE)を内部で折らない** - **「/」区切りの見出しは、スラッシュの後で折る**(「企画展/イベント/ライブラリー」→ 縦組みでは「企画展/イベント」「/ライブラリー」の 2 列) - 「エディットタウン」「マンガ・ラノベ図書館」等のカタカナ語は、**中黒 `・` の前で折らない** - 日付(`2026.07.14`)とタイトルは同じ行に置き、間で折らない - **縦組みの見出しは折り返し位置を手動で決める**(`
` で明示)。自動折り返しに任せると列の高さが揃わない - ボタンのラベル(「くわしく見る」「一覧へ」)は折り返さない(`white-space: nowrap`) ### 3.7 OpenType 機能 ```css font-feature-settings: normal; /* palt を掛けない */ ``` - **`palt` は使わない**。Noto Sans JP の等幅の字面をそのまま使う - **縦組みでは特に `palt` を掛けない**。縦組みの `letter-spacing: 0.2em` は「開く」ための値で、`palt` の「詰める」方向と衝突する - **和欧が同じ書体**なので `銀河鉄道999 THE GALAXY EXPERIENCE` のような混植でも字形が揃う - 縦組みで英数字を扱う場合は `text-combine-upright` を使う(下記 3.8) ### 3.8 縦書き **このサイトの設計の核**。セクション見出しとフロアガイドの小見出しが縦組みで、コンテンツ列の左に立つ。 ```css /* セクション見出し */ writing-mode: vertical-rl; text-orientation: mixed; font-family: "Noto Sans JP", メイリオ, Meiryo, "ヒラギノ角ゴ ProN W3", 游ゴシック, sans-serif; font-size: 28px; font-weight: 700; line-height: 1.5; letter-spacing: 0.2em; /* = 5.6px。縦組み専用の広い字間 */ color: #231815; /* フロアガイドの小見出し */ font-size: 20px; letter-spacing: 0.2em; /* = 4px */ ``` - **縦組み見出しは「コンテンツ列の左」に置く**。右ではなく左(`vertical-rl` の書字方向としては行が右から左に進むが、ブロック自体はレイアウトの左端に配置する) - **`letter-spacing: 0.2em` は em 指定**。px で固定しない - **複数行に割るときは `
` で明示**する(「企画展/イベント」「/ライブラリー」)。自動折り返しに任せると列の高さが揃わない - 縦組み中の英数字・年号は **`text-combine-upright: all`** で 2 桁までを縦中横にする - **本文は縦組みにしない**。縦組みは見出しだけの記号として温存する - **バッジ・ボタンを縦組みブロックの中に入れない**(横長の要素が縦の行を割る) --- ## 4. Component Stylings ### Buttons **Ticket CTA(山吹の pill)** — このサイトを象徴する形 - Background: **`#ffcc00`**(山吹) - Text: **`#231815`**(墨) - Border: **`3px solid #231815`** - Padding: `0 16px`(ヘッダー内)/ `16px`(ナビ内) - Border Radius: **`50px`** — **サイト内で pill はこれだけ** - Font: 12〜16px / **weight 700** / lh 1.5 / ls 0.32px - 例: 「チケット購入はこちら」「チケット」 - **購買導線だけがこの色・この形**。他の CTA に山吹や pill を使わない **Filled Button(墨)** - Background: **`#231815`** - Text: `#ffffff` - Border: **`3px solid #231815`** - Padding: `6px 15px` - Border Radius: **`0px`** - Font: 14px / **weight 700** - 例: 「特設ページはこちら」 - 検索ボタン(「蔵書/収蔵品 検索」)は同じ面色で **weight 100(Thin)/ 12px / padding `0 16px`** **Outline Button(墨の 3px 枠)** - Background: **`transparent`** - Text: **`#231815`** - Border: **`3px solid #231815`** - Padding: `6px 20px`(小)/ `6px 15px`(中) - Border Radius: **`0px`** - Font: 12〜14px / **weight 700** - 例: 「続きを読む」「一覧へ」「くわしく見る」「一覧」 - **左に `›` のシェブロンを置く** - **枠は必ず 3px**。1px にしない **Carousel Control** - Background: `#231815` - Border Radius: **`50%`** - Padding: `1px 6px` - 例: Previous / Next(KV カルーセル) ### Badges **Category Badge(矩形の小さな色面)** - Background: **`#905ed3`**(企画展)/ **`#4abf23`**(ライブラリー)/ **`#38b9e1`**(イベント)/ **`#231815`**(開催中)/ **`#766965`**(開催予定) - Text: `#ffffff` - Border: なし - Padding: **`2px 5px`**(極端に小さい) - Border Radius: **`0px`** - Font: **12px / weight 400** / lh 1.5 / ls 0.32px - **バッジは pill にしない**。pill はチケット専用の形 - **状態(開催中/開催予定)と分類(企画展/イベント/ライブラリー)を同じ形で並べる**。色だけで区別する - **weight は 400**(ボタンの 700 と分ける)。バッジは「読ませる」ものであって「押させる」ものではない ### Bands(セクション帯) **Important Band(重要なお知らせ)** - Background: **`#231815`**(墨) - Text: `#ffffff` - 日付: **12px / weight 100(Thin)** - 見出し: 16px / weight 400 - 右端に「一覧」のアウトラインボタン(**枠は `3px solid #ffffff`** に反転) - **ページ最上部に置く全幅の帯**。白地との明度差で最優先の情報だと伝える **Topics Band(トピックス)** - Background: **`#e9e9e9`** - Text: `#000000` - 見出しラベル: 16px / weight 700 / `#231815` - **墨帯のすぐ下に置く。濃 → 淡 の 2 段で優先度を示す** **Content Band(企画展/イベント/ライブラリー)** - Background: **`#f7f3de`**(クリーム) - **左端に縦組みの見出し**(28px / weight 700 / ls 0.2em / `#231815`) - 右にカードの横スクロール列 ### Cards - Background: `#ffffff` - Border: なし - Border Radius: **`0px`** - Shadow: **なし**(実測 0 件) - 構成: **サムネイル(展覧会ポスター)→ バッジ 2 つ(状態 + 分類)→ タイトル(16px / weight 700)→ 期間・場所(12px)** - **カードは矩形・影なし・枠なし**。展覧会ポスターの矩形がそのままカードの輪郭になる - **ポスターに色を任せる**。カードの UI 側は色を持たない ### Modal Scrim(オーバーレイ) このサイト固有の処理。**単なる黒の半透明ではない**。 ```css background-color: rgba(0, 0, 0, 0.8); background-image: repeating-linear-gradient( -45deg, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0.2) 7.5px, rgba(0, 0, 0, 0) 0, rgba(0, 0, 0, 0) 15px ); ``` - **`rgba(0,0,0,0.8)` の上に 45° のハッチング(7.5px の線 / 15px の周期)を重ねる** - 版画やスクリーントーンを思わせる質感で、**「印刷物」としての出自を UI の質感に持ち込んでいる** - **背景の写真が透けて見えつつ、ハッチングが均一なテクスチャを与える** ### Inputs サイト上に独立した入力欄は現れない(検索は別ドメインの蔵書検索システムへ遷移する)。実装時は以下に揃える。 - Background: `#ffffff` - Border: **`3px solid #231815`**(このサイトの枠は必ず 3px) - Border (focus): `3px solid #ffcc00`(山吹) - Border Radius: **`0px`** - Padding: `10px 14px` - Font: 16px / weight 400 / ls 0.32px - Text Color: `#000000` / Placeholder: `#939393` --- ## 5. Layout Principles ### Spacing Scale | Token | Value | |-------|-------| | XS | 2px | | S | 6px | | M | 15px | | L | 24px | | XL | 48px | | XXL | 80px | | XXXL | 120px | ### Container - Max Width: **1240px**(サイト全体の標準コンテナ) - サブコンテナ: **1200px** - 読み物カラム: **800px** - Padding (horizontal): 24〜48px - **KV カルーセルは全幅ブリード**(左右の隣スライドが見切れる) - **帯(重要なお知らせ・トピックス)は全幅**、中身は 1240px に収める - ヘッダーは全幅・白地・不透過。**2 段構成**(上段=ユーティリティ + チケット CTA、下段=グローバルナビ) ### Grid - Columns: 展覧会カードは **4 カラムの横スクロール列**、フロアガイドは 2 カラム、フッターは 4 カラム - Gutter: 24px - **セクションの区切りは帯の面色で作る**: 白 → 墨 `#231815` → `#e9e9e9` → 白 → クリーム `#f7f3de` - **縦組み見出しはコンテンツ列の左に置き、幅 80〜120px の縦帯として確保する** - カードの列は**横スクロール**(折り返さない)。左右に `‹ ›` のシェブロンを置く --- ## 6. Depth & Elevation **実測の `box-shadow` は 0 件**。このサイトは影を一切使わない。 | Level | Shadow | 用途 | |-------|--------|------| | 0 | `none` | **すべて**。白地・帯の面色・3px の枠だけで構成する | | — | `rgba(0,0,0,0.8)` + 45° ハッチング | モーダルのスクリム(影ではなくオーバーレイ) | - 奥行きは **帯の面色(`#ffffff` → `#231815` → `#e9e9e9` → `#f7f3de`)と 3px の枠**だけで表現する - **落ち影・浮き上がりを作らない**。カードもボタンも完全にフラット - **「浮かせる」代わりに「囲む」**。3px の太い枠が影の役割を代替している - モーダルのスクリムは**必ず 45° のハッチングとセット**で使う(`rgba(0,0,0,0.8)` 単独にしない) --- ## 7. Do's and Don'ts ### Do(推奨) - **セクション見出しを `writing-mode: vertical-rl` の縦組みで組む**。28px / weight 700 / **`letter-spacing: 0.2em`** - **縦組みの字間は em 指定(0.2em)**にする。px で固定しない - **縦組みの折り返しは `
` で明示する**(自動折り返しに任せない) - **墨は `#231815`(赤みのある黒)を使う**。純黒 `#000000` は本文テキストにだけ当て、面や枠には使わない - **枠線はすべて `3px solid`** にする。1px の細い罫を使わない - **山吹 `#ffcc00` はチケット購入導線だけ**に使い、`border-radius: 50px` の pill にする - **チケット以外のボタンは `border-radius: 0`** にする。pill をチケット専用の形として温存する - **カテゴリバッジは矩形(radius 0)・padding `2px 5px`・12px / weight 400**。状態と分類を同じ形で並べ、色だけで区別する - **ウェイトは 100 / 400 / 700 の 3 段**で通す - **Thin(100)は「墨地の上の白い細字」と「日付」だけ**に当てる - **`line-height` は全要素 1.5**、横組みの `letter-spacing` は `0.32px` の px 固定を `body` に置く - **セクションは帯の面色で切る**(白 → `#231815` → `#e9e9e9` → 白 → `#f7f3de`) - **展覧会ポスターに色を任せ、カードの UI 側は色を持たない** - **影を使わない**。奥行きは面色と 3px の枠で作る - モーダルのスクリムは **`rgba(0,0,0,0.8)` + 45° ハッチング**のセットで使う - **Noto Sans JP の 100 / 400 / 700 を必ず読み込む**(フォールバックに Thin が無い) - コンテナ幅は **1240px**、読み物カラムは **800px** ### Don't(禁止) - **横組みの文章に `letter-spacing: 0.2em` を当てない**(0.2em は縦組み見出し専用) - **本文を縦組みにしない**(縦組みは見出しの記号として温存する) - **縦組みブロックの中にバッジやボタンを入れない**(横長の要素が縦の行を割る) - **面や枠に純黒 `#000000` を使わない**(必ず墨 `#231815`) - **枠線を 1px にしない**(すべて 3px) - **チケット以外の CTA に山吹 `#ffcc00` を使わない**(Warning にも流用しない) - **チケット以外のボタンを pill にしない** - **バッジを pill にしない**(矩形 radius 0) - **バッジの weight を 700 にしない**(バッジは 400、ボタンは 700 で役割を分ける) - **ウェイト 500 / 600 を使わない**(100 / 400 / 700 の 3 段) - **白地の上の黒文字に weight 100 を使わない**(読めなくなる。Thin は墨地の白抜きと日付だけ) - **文字サイズに 24px / 18px を作らない**(28 / 20 / 16 / 14 / 12 / 10 の 6 段) - **行間を要素ごとに変えない**(全要素 1.5) - **`box-shadow` を作らない**(実測 0 件) - **カードに枠や角丸を付けない**(ポスターの矩形がそのまま輪郭) - **モーダルのスクリムをハッチングなしの単色にしない** - `palt` を掛けない、字間を詰める方向に動かさない - **カテゴリ色(紫・緑・シアン)を 12px のバッジより大きい面に広げない** --- ## 8. Responsive Behavior ### Breakpoints | Name | Width | 説明 | |------|-------|------| | Mobile | ≤ 767px | 1 カラム。**縦組み見出しは横組みに切り替える**。ナビはドロワー、チケット CTA は固定表示で残す | | Tablet | 768–1024px | 2 カラム。カードは 2 列の横スクロール | | Desktop | > 1024px | 縦組み見出し + 4 カラムの横スクロール列+最大 1240px コンテナ | ### 縦組みのレスポンシブ - **モバイルでは縦組みを解除する**(`writing-mode: horizontal-tb`)。縦帯の幅 80〜120px を確保できないため - ただし**`letter-spacing: 0.2em` は横組みに切り替えても維持する**。見出しの手触りを残す - タブレット(768px 以上)では縦組みを維持し、**幅を 60px に詰める** ### タッチターゲット - 最小サイズ: 44px × 44px(WCAG 基準)。**チケット CTA は padding を `12px 24px` に広げて高さ 44px を確保する**(デスクトップの `0 16px` では足りない) - アウトラインボタンは **padding `6px 20px` → モバイルで `12px 20px`** に広げる - **バッジ(padding `2px 5px`)はタップ領域にしない**。表示専用 - カードは**カード全体をタップ領域**にする - カルーセルのシェブロンは**当たり判定を 44px に広げる**(見た目は小さいまま) ### フォントサイズの調整 - 本文 16px は据え置く(14px を下回らない) - Section Head 28px → モバイルでは 20〜22px。**`letter-spacing: 0.2em` は維持する**(横組みに切り替えても) - Floor Head 20px → 18px。**0.2em は維持** - Article Head 20px → 18px - ボタン 12〜14px は縮めない(タップ領域の高さが崩れる) - **Thin(100)の 12px はモバイルでも 12px を維持する**。これ以上小さくすると Thin が判読できない - **行間 1.5 と横組みの字間 0.32px はモバイルでも維持する** --- ## 9. Agent Prompt Guide ### クイックリファレンス ``` Background: #ffffff (純白) Sumi: #231815 (主色。印刷のスミ=赤みのある黒。面・枠・帯・バッジ) Yamabuki: #ffcc00 (唯一の高彩度。チケット購入導線だけ) Cream: #f7f3de (企画展セクションの地。紙の色) Surface: #e9e9e9 (トピックス帯・言語切替メニュー) Black: #000000 (本文テキストのみ。面や枠には使わない) Ink Muted: #939393 (写真クレジット・非活性) Purple: #905ed3 (企画展バッジ) Green: #4abf23 (ライブラリーバッジ・Success に流用) Cyan: #38b9e1 (イベントバッジ) Warm Gray: #766965 (開催予定バッジ。墨の彩度を落とした同系色) Scrim: rgba(0,0,0,0.8) + repeating-linear-gradient(-45deg, rgba(0,0,0,.2) 0 7.5px, transparent 0 15px) Font: "Noto Sans JP", メイリオ, Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 游ゴシック, YuGothic, sans-serif Body: 16px / weight 400 / lh 1.5 / ls 0.02em (0.32px) Weight: 100 / 400 / 700 の 3 段(500・600 は使わない) 100 は「墨地の上の白い細字」と日付だけ Size: 28 / 20 / 16 / 14 / 12 / 10 の 6 段(24px・18px を作らない) Line Height: 全要素 1.5 Letter Spacing: 横組み 0.32px(px 固定・body から継承)/ 縦組み見出し 0.2em(em 指定) Writing Mode: セクション見出しとフロア小見出しは vertical-rl Feature: font-feature-settings: normal(palt を使わない) Radius: チケット CTA のみ pill 50px / カルーセル操作 50% / それ以外はすべて 0 Border: すべて 3px solid(1px の罫を使わない) Shadow: none(実測 0 件) Container: 1240px(サブ 1200px、読み物 800px) ``` ### プロンプト例 ``` 角川武蔵野ミュージアムのデザインシステムに従って、複合文化施設の展示一覧ページを作成してください。 - フォントは "Noto Sans JP", メイリオ, Meiryo, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", 游ゴシック, YuGothic, sans-serif の 1 スタックを全要素に当てる。 Noto Sans JP の 100 / 400 / 700 の 3 ウェイトを必ず読み込む - セクション見出しは writing-mode: vertical-rl の縦組みで組む。 28px / weight 700 / line-height 1.5 / letter-spacing 0.2em(em 指定)/ 色 #231815。 コンテンツ列の左に幅 80〜120px の縦帯として置き、折り返しは
で明示する - 横組みの letter-spacing は 0.32px の px 固定を body に置いて全要素に継承させる。 0.2em は縦組み見出し専用で、横組みの文章には当てない - line-height は全要素 1.5。ウェイトは 100 / 400 / 700 の 3 段だけで、500・600 を使わない。 weight 100(Thin)は墨地の上の白い細字と日付にだけ当てる - 文字サイズは 28 / 20 / 16 / 14 / 12 / 10 の 6 段から選ぶ(24px・18px を作らない) - 主色は墨 #231815(印刷のスミ=赤みのある黒)。面・枠・帯・バッジはすべてこの色で、 純黒 #000000 は本文テキストにだけ使う - 枠線はすべて 3px solid にする。1px の細い罫を使わない - チケット購入 CTA だけが山吹 #ffcc00:背景 #ffcc00 / 文字 #231815 / 3px solid #231815 / border-radius 50px / 12〜16px weight 700。 この色とこの pill は購買導線専用で、他の CTA や Warning に流用しない - チケット以外のボタンは border-radius 0: 塗り=背景 #231815 / 白文字 / 3px solid #231815 / padding 6px 15px / 14px weight 700 アウトライン=transparent / 文字 #231815 / 3px solid #231815 / padding 6px 20px / 12〜14px weight 700、左に › のシェブロン - カテゴリバッジは矩形(border-radius 0)・padding 2px 5px・12px weight 400・白文字。 企画展 #905ed3 / ライブラリー #4abf23 / イベント #38b9e1 / 開催中 #231815 / 開催予定 #766965。状態と分類を同じ形で並べ、色だけで区別する。 バッジを pill にしない、weight を 700 にしない - セクションは全幅の帯の面色で切る:白 → 墨 #231815 → #e9e9e9 → 白 → クリーム #f7f3de - カードは矩形・枠なし・影なし。展覧会ポスターの矩形がそのまま輪郭になり、 カードの UI 側は色を持たない(色はポスターに任せる) - box-shadow は一切使わない。奥行きは帯の面色と 3px の枠だけで作る - モーダルのスクリムは rgba(0,0,0,0.8) に repeating-linear-gradient(-45deg, rgba(0,0,0,.2) 0 7.5px, transparent 0 15px) を重ねる。 単色の半透明にしない - モバイル(≤767px)では縦組みを横組みに切り替えるが、letter-spacing 0.2em は維持する - コンテナ幅は最大 1240px、読み物カラムは 800px - font-feature-settings は normal(palt は掛けない) ```