v2.1 + Arisa Extension phase-1-plus

iCAS Design System v2.1

高山さんが構築した v2.0 (Splashtop 本家ベース) に、2026-06-04 の UI 改修で生まれた新パターン (pill 形ボタン・3D シャドウ・進捗メーター・要確認カード等) を統合した拡張版。
base token は :root 共通、CAM/FWD は data-theme で variant 切替。

👤 高山ひろし (v2.0 設計者) — Splashtop ベース・トークン体系構築 👤 Arisa (v2.1 拡張) — UI 改修で発生したパターンの追加トークン化

目次

  1. v2.0 → v2.1 変更点サマリ NEW
  2. テーマ切替
  3. カラートークン NEW
  4. タイポグラフィ
  5. スペーシング
  6. Radius NEW
  7. Shadow NEW
  8. Motion
  9. Layout & Control
  10. コンポーネント例 NEW
  11. v2.1 追加コンポーネント token NEW
  12. 実装パターン NEW
  13. ローディング 6 パターン
  14. トークン生成パイプライン
  15. 設計思想 5 原則
  16. ID リファレンス早見表 NEW
  17. アイコン集 (Icon Library) NEW

v2.0 → v2.1 変更点サマリ

2026-06-04 のダッシュボード/CAM ハブ大規模 UI 改修で発生した独自パターンを正式トークン化。
追加 8 個 + 既存集約 2 個で、改修パターンの 95% を体系に取り込み。

分類追加 token / パターン値 / 内容主な利用箇所
Colorcolor.surface.primarySoftCAM #EAF1FB / FWD #EBF7EF (variant 別、不透明な薄色)ドロップダウン背景・薄塗りパネル
Colorcolor.alert.softBg#FEE2E2 (要確認アラート背景)BulkLogWidget 要確認状態
Radiusradius.pill999pxアクションボタン (進捗情報 / 役割分担入力 / 保存 / 編集) / CAM ハブの ic-item / ic-procbtn
Radiusradius.circle50%アバター画像 (Topbar / アカウントメニュー)
Shadowshadow.elevated3 段重ね (落ち影 + 厚み + 内側 highlight)CAM ハブ pill ボタンの立体感
Shadowshadow.popoverHeavyshadow.popover を強化 (重厚 dropdown 用)管理日付ドロップダウン
Layoutgrid.cols.5flex 0 0 20% (Bootstrap 12-col 系外)KPI 5 列レイアウト (col-lg-fifth)
ComponentprogressBar.*track 80×6px / fill 動的色 (primary→success at 100%)タスクスケジュール section 行
Componentcard.alert.*赤系グラデ + 左ライン赤 + パルスアニメBulkLogWidget 要確認状態
Patternlinked-accordion複数子の collapsed を親 state で同期ChartComboWidget

テーマ切替(Variants)

base token は :root 共通。primary 系 (color.primary.* / focus.ring) と surface.primarySoft のみを [data-theme="cam|fwd"] で上書き。

CAM — 連結会計メイン
Primary Blue
#206BC4
surface.primarySoft: #EAF1FB NEW
<html data-theme="cam">
FWD — 連結パッケージ
Primary Teal
#0D9488
surface.primarySoft: #EBF7EF NEW
<html data-theme="fwd">

カラートークン

セマンティック命名で用途別に分離。v2.1 で surface.primarySoft(variant 別の不透明な薄色背景)と alert.softBg(要確認状態カード)を追加。

Text — 文字色 v2.0 維持

text.base
#1A202C
--color-text
text.heading
#1C1C1C
--color-text-heading
text.strong
#333333
--color-text-strong
text.muted
#80859F
--color-text-muted
text.soft
#ACAFBB
--color-text-soft
text.onPrimary
#FFFFFF
--color-text-on-primary

Surface — 面(背景)

surface.default
#FFFFFF
--color-surface
surface.sunken
#F9F9F9
--color-surface-sunken
surface.cool
#F4F6FA
--color-surface-cool
surface.primarySoft (CAM)
#EAF1FB
--color-surface-primary-soft
data-theme=cam の薄塗り面
surface.primarySoft (FWD)
#EBF7EF
--color-surface-primary-soft
data-theme=fwd の薄塗り面

Border — 罫線 v2.0 維持

border.default
#DFE4E9
--color-border
border.subtle
#E2E8F0
--color-border-subtle
border.faint
#DDDDDD
--color-border-faint
border.strong
#C9D2DE
--color-border-strong

Primary — ブランドカラー

primary (CAM)
#206BC4
--color-primary
primary (FWD)
#0D9488
--color-primary
primary.hoverOverlay
rgba(...,0.08)
--color-primary-hover-overlay
focus.ring
#82B0EF
--color-focus-ring
iconHoverBg
#EBF2FC
--color-icon-hover-bg

Status — 成功 / 警告 / 危険

status.success
#10B981
success.vivid
#22C55E
success.vividStrong
#16A34A
success.softBg
#F0FDF4
warning
#F59E0B
warning.softBg
#FEF3C7
danger
#EF4444
danger.strong
#B91C1C
danger.softBg
#F4C7C7
alert.softBg
#FEE2E2
--color-alert-soft-bg
要確認カード背景(薄赤)

CF Band — 連結CF精算表 12 色 v2.0 維持

*1 前期末BS
*2 当期末BS
00 BS増減
10 為替影響
20 純額表示
30 総額表示
40 未収・未払
50 損益
81 前期仕訳
83 当期仕訳
99 その他
ZZ 総合計

タイポグラフィ v2.0 維持

フォント: Inter + Noto Sans JP/SC。base 16px、line-height 1.5。高密度テーブル用の逃がし token --text-table: 14px

tooltip
12px
tooltip のサンプル
--text-tooltip
sm
14px
副次テキスト / table 内
--text-sm
base
16px
body 既定 (Splashtop 同化)
--text-base
heading
24px
h1 / ページヘッダ
--text-heading
table(逃がし)
14px
fs-pivot / worksheet / 精算表
--text-table

スペーシング v2.0 維持

Splashtop 8 base スケール。--space-1--space-8

space-1
4px
space-2
8px
space-3
12px
space-4
16px
space-5
24px
space-6
32px
space-7
40px
space-8
48px

Radius — 角丸

用途別に 7 種類。v2.1 で radius.pill (999px)radius.circle (50%) を追加。pill はアクションボタンで頻用、circle はアバター画像専用。

4px
button / input
2px
checkbox
6px
popover
8px
modal
20px
avatar (pill)
999px
pill
50%
circle

Shadow — 影

v2.0 の 3 種 (tooltip / popover / modal) に加え、v2.1 で shadow.elevated(pill ボタンの立体感)と shadow.popoverHeavy(重厚 dropdown 用)を追加。

tooltip
--shadow-tooltip
popover
--shadow-popover
elevated
--shadow-elevated
popoverHeavy
--shadow-popover-heavy
/* elevated: 3 段重ね — pill ボタンの立体感 */
box-shadow:
  0 3px 0 color-mix(in srgb, var(--accent) 22%, var(--color-border)),  /* 下の厚み */
  0 4px 8px rgba(0,0,0,0.10),                                          /* 落ち影 */
  inset 0 1px 0 rgba(255,255,255,0.85);                                /* 上のハイライト */

/* popoverHeavy: 重厚 dropdown */
box-shadow:
  0 12px 32px rgba(15,23,42,0.22),                                     /* 大きな影 */
  0 4px 10px var(--color-primary-shadow),                              /* アクセント色の影 */
  inset 0 1px 0 rgba(255,255,255,0.85);                                /* 内側ハイライト */

Motion v2.0 維持

duration 3 種類、easing 3 種類のみ(一本主義)。

Duration

default
200ms
標準アニメーション
subnav
300ms
sub-nav expand 専用
sidebar
360ms
CAM/FWD サイドバー収納

Easing

default
ease
標準
subnav
cubic-bezier(0.4, 0, 0.2, 1)
sub-nav
sidebar
cubic-bezier(0.4, 0.2, 0, 1)
サイドバー

Layout & Control Height

寸法基準。v2.1 で grid.cols.5(KPI 5 列レイアウト)を追加。

Layout v2.0 維持

sidebar.width276px
sidebar.collapsedWidth61px
topbar.height49px
grid.cols.5 NEWflex: 0 0 20%
Bootstrap 12-col 系で取れない 1/5 幅を補完。lg 未満は 50% で 2 列折返し。

Control Height v2.0 維持

sm — コンパクト btn28px
md — 汎用 input/select32px
lg — 主操作 btn36px

コンポーネント例

v2.0 既定の角丸 4px に加え、v2.1 で pill 形 (999px) + elevated shadow のバリアントを追加。

Buttons (v2.0 既定)

Pill ボタン NEW v2.1

Button heights (sm / md / lg) v2.0 維持

Status badges

✓ 完了 ⚠ 警告 ✕ エラー 準備中

v2.1 追加コンポーネント token

単発の token ではなく、コンポーネント単位で値の組合せを定義。

① progressBar.* (タスク進捗インラインメーター)

個別 F/S 取込 3/5 (60%)
内部取引・債権債務照合 8/8 (100%)
progressBar:
  trackWidth: 80px
  trackHeight: 6px
  trackRadius: 3px
  trackBg: {color.border.default}
  fillColor: {color.primary.base}            /* < 100% */
  fillColorComplete: {color.successVivid}    /* = 100% */
  transition: width 280ms cubic-bezier(.22,.61,.36,1)

② card.alert.* (要確認状態カード)

⏱ 一括処理ログ ⚠ 要確認
2026/06/03 14:32
最終修正 2026/06/04 10:15
⏱ 一括処理ログ ✓ 最新
2026/06/04 09:00
card.alert:
  background: linear-gradient(180deg, rgba(254,226,226,0.4) 0%, #fff 60%)
  borderLeft: 5px solid {color.danger}     /* 既存 ::before 形式で左ライン */
  pulseAnimation: ks-bulk-log-pulse 1.6s ease-in-out infinite

③ avatar.circle (円形アバター画像)

avatar:
  shape: circle (border-radius: 50%)
  innerImg: position absolute + inset 0 + width/height 100% + object-fit cover
  sizes: 32px (topbar) / 40px (account menu) / 60px+ (profile)

実装パターン

トークンを組合せた構造的なパターン。複数コンポーネントの連携が必要なもの。

① linked-accordion (連動アコーディオン)

複数の子コンポーネントの開閉状態を親 state で同期。どちらの ▼ を押しても両方が同時に開閉。

セグメント別売上構成
[円グラフ]
経営指標推移
[折れ線]
// 親
const [collapsed, setCollapsed] = useState(true)
const toggle = () => setCollapsed((v) => !v)
<ChildA collapsed={collapsed} onToggle={toggle} />
<ChildB collapsed={collapsed} onToggle={toggle} />

// 子 (制御 / 非制御の両モード対応)
const isControlled = typeof collapsedProp === 'boolean'
const collapsed = isControlled ? collapsedProp : internalCollapsed

② portal-slot (Topbar への要素注入)

特定ページでのみ Topbar に要素を追加したい時、共通 Topbar に空 slot を置き、ページ側から createPortal で注入。Topbar に条件分岐を持ち込まない。

// 共通 Topbar
<div id="dashboard-edit-slot" />

// ページ側 (DashboardGrid)
const [slotEl, setSlotEl] = useState<HTMLElement | null>(null)
useEffect(() => setSlotEl(document.getElementById('dashboard-edit-slot')), [])
{slotEl && createPortal(<button>ダッシュボード編集</button>, slotEl)}

③ table-row-compact (Bootstrap .table の高さ圧縮)

Bootstrap .table はセル padding が高さの下限を決めている。trheight を指定するだけでは縮まないので、対象 tr に class を付けて padding 上書き。

.ks-gantt-host table.table > tbody > tr.ks-task-row > td {
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  vertical-align: middle;
  line-height: 1.1;
}

ローディング表示 — 6 パターン v2.0 維持

「いま画面に見えているものは、ロード完了後も同じものか?」で使い分け。

#パターン用途実装
1テーブル再取得 overlay同じ対象の更新中<LoadingOverlay />
2汎用スピナー小領域の読込.ks-loading + .ks-spinner
3ボタン内スピナー実行ボタンcam-input-spin
4初回フルロード rippleデータ未取得時.gl-ripple-overlay
5fs-pivot OlapCubefs-pivot 専用<OlapCubeLoaderOverlay />
6テーブル型スケルトンデータ入替時<TableSkeleton />

トークン生成パイプライン

design/DESIGN.md (frontmatter YAML)
        │
        ├──▶ build-theme-css.mjs (Node)
        │       │
        │       ├──▶ design/theme-overrides.yaml (CAM/FWD 差分)
        │       │
        │       ▼
        │   src/styles/theme.generated.css
        │       :root { --color-text: ...; --radius-pill: 999px; ... }
        │       [data-theme="cam"] { --color-primary: #206BC4; --color-surface-primary-soft: #EAF1FB; ... }
        │       [data-theme="fwd"] { --color-primary: #0D9488; --color-surface-primary-soft: #EBF7EF; ... }
        │
        ▼
src/styles/globals.css  @import './theme.generated.css';
        │
        ▼
全ページ・全コンポーネント

設計思想 — 5 原則 + v2.1 追補

  1. DESIGN.md がトークンの single source of truthglobals.css に token を直書きしない。
  2. Variants は post-process で展開[data-theme="cam|fwd"] ブロックは build-theme-css.mjs が生成。
  3. CAM/FWD の差分は最小限 — primary 系 (color.primary.* / focus.ring) + surface.primarySoft v2.1 追加 のみ。
  4. Bootstrap/Tabler との橋渡し--bs-* / --tblr-* は base token を参照。
  5. テーブル系は逃がし token--text-table: 14px
  6. v2.1 追加 Pill / Elevated は明示的な意図表明 — radius=4 が既定。pill (999px) と elevated shadow は「立体感・アクション喚起」の意図がある場合のみ採用する。
  7. v2.1 追加 独自実装より既存 pattern 採用 — linked-accordion / portal-slot / table-row-compact 等のパターンは命名済。新規 page で類似実装が必要なら、まず既存パターンの転用を検討。

ID リファレンス早見表 — 採番付きカタログ

各色・形・コンポーネントに ID を採番。指示するときに「BTN06 で」「C10 + R06」のように呼び出せます。NEW マークは v2.1 追加分。

🎨 Color (C01 〜 C44)

ID名前v2.1
C01text.base#1A202C
C02text.heading#1C1C1C
C03text.strong#333333
C04text.muted#80859F
C05text.soft#ACAFBB
C06text.onPrimary#FFFFFF
C07surface.default#FFFFFF
C08surface.sunken#F9F9F9
C09surface.cool#F4F6FA
C10surface.primarySoft (CAM)#EAF1FBNEW
C11surface.primarySoft (FWD)#EBF7EFNEW
C12border.default#DFE4E9
C13border.subtle#E2E8F0
C14border.faint#DDDDDD
C15border.strong#C9D2DE
C16primary (CAM)#206BC4
C17primary (FWD)#0D9488
C18primary.hoverOverlayrgba(32,107,196,.08)
C19focus.ring#82B0EF
C20iconHoverBg#EBF2FC
C21success#10B981
C22success.vivid#22C55E
C23success.vividStrong#16A34A
C24success.softBg#F0FDF4
C25success.border#86EFAC
C26warning#F59E0B
C27warning.softBg#FEF3C7
C28danger#EF4444
C29danger.strong#B91C1C
C30danger.softBg#F4C7C7
C31danger.border#FCA5A5
C32alert.softBg#FEE2E2NEW
C33cfBand.bsPrev *1 前期末BS#EEF2F7
C34cfBand.bsCurr *2 当期末BS#DCE3ED
C35cfBand.diff 00 BS増減#E8F1FB
C36cfBand.fx 10 為替影響#FDF3E2
C37cfBand.net 20 純額表示#E6F4EE
C38cfBand.gross 30 総額表示#D4EADD
C39cfBand.accrual 40 未収・未払#F2E9F7
C40cfBand.pl 50 損益#FBE8EC
C41cfBand.jvPrev 81 前期仕訳#F5E6D3
C42cfBand.jvCurr 83 当期仕訳#EAD3B5
C43cfBand.other 99 その他#ECECEC
C44cfBand.total ZZ 総合計#1F3A5F

⬛ Radius (R01 〜 R07)

ID名前v2.1
R01button / input4px
R02checkbox2px
R03popover6px
R04modal8px
R05avatar20px
R06pill999pxNEW
R07circle50%NEW

🪟 Shadow (S01 〜 S05)

ID名前サンプル用途v2.1
S01tooltiptooltip
S02popoverpopover/menu/dropdown
S03modalcenter modal
S04elevatedpill ボタン立体感NEW
S05popoverHeavy重厚 dropdownNEW

✏️ Typography (T01 〜 T05) + Weight (W01 〜 W04)

ID名前サンプル
T01tooltipサンプル text 12px12px
T02smサンプル text 14px14px
T03baseサンプル text 16px (body 既定)16px
T04headingサンプル heading 24px24px
T05table (逃がし)高密度テーブル 14px14px
W01normalThe quick brown fox 400400
W02mediumThe quick brown fox 500500
W03semiboldThe quick brown fox 600600
W04boldThe quick brown fox 700700

📏 Spacing (SP01 〜 SP08)

ID名前サイズ
SP01space-14px
SP02space-28px
SP03space-312px
SP04space-416px
SP05space-524px
SP06space-632px
SP07space-740px
SP08space-848px

🎬 Motion (M01-M03) / 📐 Control (CTRL01-CTRL03) / Layout (L01-L03)

IDカテゴリ名前
M01Motionduration.default200ms
M02Motionduration.subnav300ms
M03Motionduration.sidebar360ms
CTRL01Control Heightsm28px
CTRL02Control Heightmd32px
CTRL03Control Heightlg36px
L01Layoutsidebar.width276px
L02Layoutsidebar.collapsedWidth61px
L03Layouttopbar.height49px

▦ Grid (G01 〜 G08)

ID名前用途v2.1
G01col-12 (full)100%全幅
G02col-9 (lg)75%主領域 + サイドペイン
G03col-6 (md)50%2 列レイアウト
G04col-4 (third)33%3 列レイアウト
G05col-3 (sm)25%4 列 KPI
G06col-fifth20%5 列 KPINEW

🔘 Button Variant (BTN01 〜 BTN09)

IDサンプル説明構成v2.1
BTN01主アクションR01 + C16 bg
BTN02副アクションR01 + 透明 bg + C12 border
BTN03成功 CTAR01 + C23 bg
BTN04削除/破壊操作R01 + C28 bg
BTN05透明背景透明 + C18 hover
BTN06pill 形・主アクションR06 + C16 bgNEW
BTN07pill 形・副アクションR06 + 透明 bg + C12 borderNEW
BTN08立体感 (CAM ハブ用)R06 + S04 + 薄青グラデNEW
BTN09無効状態BTN01 + opacity 0.4

🏷️ Badge (BDG01 〜 BDG04)

IDサンプル説明構成
BDG01✓ 完了成功/完了C24 bg + C23 文字 + C25 border
BDG02⚠ 警告警告C27 bg
BDG03✕ エラーエラーC30 bg + C29 文字 + C31 border
BDG04準備中未対応/中立C08 bg + C04 文字 + C12 border

🧩 Component (CMP01 〜 CMP03)

ID名前サンプル説明v2.1
CMP01progressBar 3/5 セクション進捗インラインバーNEW
CMP02card.alert
⚠ 要確認
要確認状態カードNEW
CMP03avatar.circle
円形アバター画像NEW

🔗 Pattern (P01 〜 P03)

ID名前説明主な実装場所v2.1
P01linked-accordion複数子の collapsed を親 state で同期ChartComboWidgetNEW
P02portal-slot共通 Topbar に slot div、ページから portal で注入ダッシュボード編集ボタンNEW
P03table-row-compactBootstrap .table の高さ圧縮 (tr 単位)TaskTableGantt セクションNEW

⏳ Loading (LD01 〜 LD06)

ID名前用途実装
LD01LoadingOverlay同じ対象の更新中<LoadingOverlay show={loading} />
LD02汎用スピナー小領域の読込.ks-loading + .ks-spinner
LD03ボタン内スピナー実行ボタンcam-input-spin
LD04ripple初回ロード・キー未選択.gl-ripple-overlay
LD05OlapCubefs-pivot 専用<OlapCubeLoaderOverlay />
LD06TableSkeletonデータ入替時<TableSkeleton rows cols />

📖 ID の使い方

呼び出し例:

  • 「ここに BTN06 を配置して」 → Pill Primary ボタン
  • C10 + R06 + S04 で立体カードに」 → 薄青背景 + pill + elevated shadow
  • 「アラートは CMP02 + C32 / C28」 → 要確認カードに alert.softBg + danger 系
  • P01 で連動させて」 → linked-accordion パターン採用
  • 「タスク行は P03 でコンパクトに」 → table-row-compact パターン採用
  • G06 で 5 列並び」 → col-fifth (1/5 幅)

💡 ID は組み合わせて使えます。「BTN06 + S04」のように立体感ありの pill が欲しい場合は表現可能です。

アイコン集 (Icon Library)

Adobe Stock 由来の素材 + カスタム SVG + @tabler/icons-react の併用。アイコンも IC01 〜 で採番し、トークンと同じ感覚で呼び出せるようにする。

📂 配置先と命名規約

ディレクトリ用途備考
public/icons/adobestock/Adobe Stock からダウンロードした素材ライセンスを LICENSE.csv に記録
public/icons/custom/自前 SVG / PNG
npm: @tabler/icons-reactJSX で import するアイコン (既存)サイドバー・トップバーで多用

📛 ファイル命名規約

ic-{category}-{name}.{ext}

例:
  ic-action-edit.svg        ← アクション系 / 編集
  ic-domain-consolidation.svg ← 業務 / 連結
  ic-status-warning-shield.png  ← ステータス / 警告盾

category:
  nav      ナビゲーション(サイドバー / トップバー)
  action   アクション(編集 / 削除 / 保存 / 追加 / コピー / ダウンロード等)
  status   ステータス(成功 / 警告 / エラー / 読込 / ロック等)
  domain   業務領域(連結 / 仕訳 / CF / マスタ / 帳票等)
  data     データ表現(グラフ / 表 / カレンダー / 統計等)
  system   システム(設定 / 通知 / ヘルプ / ユーザー等)

📜 Adobe Stock ライセンス管理

各素材のメタ情報を public/icons/adobestock/LICENSE.csv に記録(asset_id / license_id / license_type / 使用許諾範囲 / クレジット要否)。後で監査・更新できるように。

file,asset_id,license_id,license_type,downloaded_at,allowed_use,credit_required,note
ic-action-edit.svg,123456789,STKL-XXX,standard,2026-06-05,web/print,no,
ic-domain-consolidation.svg,987654321,STKL-YYY,standard,2026-06-05,web,no,

🆔 アイコン採番 (IC01 〜)

素材ダウンロード時にこの表に追加。実物未配置の枠は灰色プレースホルダで表示。

ID プレビュー 名前 カテゴリ ファイル asset_id 使用例
━ nav (ナビゲーション)
IC01
未配置
ダッシュボードnavic-nav-dashboard.svgサイドバー第 1 項目
IC02
未配置
マスタ管理navic-nav-masters.svgサイドバー
IC03
未配置
運用管理navic-nav-settings.svgサイドバー
━ action (アクション)
IC11
未配置
編集 (鉛筆)actionic-action-edit.svg役割分担入力ボタン / 行内編集
IC12
未配置
保存 (ディスク)actionic-action-save.svg保存ボタン
IC13
未配置
削除 (ゴミ箱)actionic-action-delete.svg削除ボタン
IC14
未配置
追加 (+)actionic-action-add.svg新規追加
IC15
未配置
実行 (再生)actionic-action-play.svg一括処理 / batch 実行
IC16
未配置
ダウンロードactionic-action-download.svgCSV/Excel 出力
IC17
未配置
更新 (リロード)actionic-action-refresh.svg再取得
━ status (ステータス)
IC21
未配置
成功 (チェック)statusic-status-success.svg完了通知
IC22
未配置
警告 (三角)statusic-status-warning.svg要確認
IC23
未配置
エラー (×)statusic-status-error.svg失敗
IC24
未配置
情報 (i)statusic-status-info.svgヒント
IC25
未配置
ロック (鍵)statusic-status-lock.svg編集不可
━ domain (業務領域)
IC31
未配置
連結 (鎖)domainic-domain-consolidation.svg連結処理関連
IC32
未配置
仕訳 (帳簿)domainic-domain-journal.svg仕訳帳・元帳
IC33
未配置
キャッシュフローdomainic-domain-cf.svgCF 関連
IC34
未配置
F/S (財務諸表)domainic-domain-fs.svg個別 F/S 取込
IC35
未配置
会社 / グループdomainic-domain-company.svg連結グループ数 KPI
IC36
未配置
マスタ (DB)domainic-domain-master.svgマスタ管理
━ data (データ表現)
IC41
未配置
棒グラフdataic-data-bar.svg売上高推移
IC42
未配置
円グラフdataic-data-pie.svgセグメント別構成
IC43
未配置
折れ線dataic-data-line.svg経営指標推移
IC44
未配置
カレンダーdataic-data-calendar.svgタスクスケジュール
IC45
未配置
チェックリストdataic-data-checklist.svg決算チェックリスト
IC46
未配置
履歴 (時計)dataic-data-history.svg一括処理ログ
━ system (システム)
IC51
未配置
設定 (歯車)systemic-system-settings.svg各種設定
IC52
未配置
通知 (ベル)systemic-system-bell.svgお知らせ
IC53
未配置
ユーザー (人)systemic-system-user.svgアカウント
IC54
未配置
ヘルプ (?)systemic-system-help.svgヘルプ
IC55
未配置
検索 (虫眼鏡)systemic-system-search.svgサイドバー検索

📖 アイコンの使い方

呼び出し例:

  • IC11 を 16px で配置」 → <img src="/icons/adobestock/ic-action-edit.svg" width="16" />
  • BTN08 + IC15」 → Elevated pill ボタンに実行アイコン
  • 「KPI カードに IC35」 → 連結グループ数の左にビル/会社アイコン
  • CMP02 の頭に IC22」 → 要確認カードに警告三角

💡 同じ意味のアイコンは複数の category で重複しないように、命名規約に従い 1 つに決める。

🔄 Adobe Stock からの取り込み手順

  1. Adobe Stock で素材選定 → ライセンス購入
  2. SVG (第一候補) または PNG でダウンロード
  3. public/icons/adobestock/ に命名規約に沿ってリネーム配置
  4. LICENSE.csv に asset_id / license_id / 使用許諾範囲を追記
  5. 本 HTML の「アイコン採番」テーブルに IC番号 / プレビュー / ファイル名を追記
  6. 採番済の IC番号でコンポーネントから参照(例: <img src="/icons/adobestock/ic-action-edit.svg" />

⚖️ @tabler/icons-react との併用ルール

使い分け:

  • @tabler/icons-react ─ サイドバー / トップバー / フォーム内の小サイズ (16-20px)、線アイコン、CSS で色変更が必要なもの
  • Adobe Stock (SVG) ─ KPI カードのアクセント、ハブの大型アイコン (40px+)、ブランド感のある図像
  • カスタム SVG ─ iCAS 固有の業務概念 (連結ロジック / 仕訳タイプ等) で既存ライブラリに無いもの

同じアイコンを複数ソースから持ち込むと統一感が崩れるため、原則は 各カテゴリで使う供給元を 1 つに固定