Design System.
すべての公開ページで使われる VGS のブランドガイドライン、コンポーネントライブラリ、デザインパターンの拠り所。
カラーパレット
Tailwind 設定で定義されたブランドと UI のカラー。すべてのページでこれらのクラスを一貫して使用してください。
ブランド
brand-500
#F0E6C8
brand-400
#F4ECCE
brand-300
#FAF6E7
brand-600
#B5A87F
brand-700
#B45309
brand-800
#92400E
グレースケール
gray-900
#18181b
gray-800
#27272a
gray-700
#3f3f46
gray-600
#52525b
gray-500
#71717a
gray-400
#a1a1aa
ステータスカラー
emerald-400
Success
rose-500
Danger
sky-400
Info
amber-500
Warning
タイポグラフィ
2つの書体ファミリーがタイプシステムを構成します。見出しとディスプレイには Audiowide、本文と UI には Inter(サンセリフ)。
見出し font-audiowide uppercase tracking-tight
見出しレベル1
text-4xl md:text-6xl font-audiowide uppercase
見出しレベル2
text-3xl md:text-4xl font-audiowide uppercase
見出しレベル3
text-xl font-audiowide uppercase
本文 Default sans-serif (Inter), text-gray-400 for secondary
本文はさまざまなサイズで Inter を使用します。デフォルトの色は主要コンテンツには白、二次的な説明や補助テキストには gray-400 です。
text-lg text-gray-400 leading-relaxed
ラベルとキャプション text-xs uppercase tracking-wider text-gray-500
セクションラベル
ボタン
ボタンは3つの要素を組み合わせます。バリアント(色)、サイズ、任意のエフェクト。
バリアント
サイズ
エフェクト
.btn-glow is the standard CTA halo. .btn-glow-intense doubles it for the single most important CTA on a page. .btn-shimmer adds a one-shot light sweep on hover. .btn-press adds a micro scale-down on click for tactile feedback.
使い方
<!-- Variant + size + effect compose freely -->
<button class="btn-primary btn-lg btn-glow">Get Started</button>
<button class="btn-secondary btn-md">Learn more</button>
<button class="btn-ghost btn-sm btn-press">Cancel</button>
/* CSS — src/styles/globals.css */
.btn-glow:hover { box-shadow: 0 0 12px rgba(240,230,200,0.15), 0 0 24px rgba(240,230,200,0.05); }
.btn-press:active { transform: scale(0.96); }サーフェス
ガラス、カード、バッジ、タブ。シャンパン色のガラスは VGS の象徴的なサーフェスです。
ガラス
.glass
Standard glass surface. Champagne-tinted backdrop blur, 16px radius. Best for full-width sections and hero overlays.
.glass-card
Slightly stronger explicit variant with a 12px blur. Drop-in replacement when .glass feels too soft.
カード
.card
Base translucent card. Padding 6, radius sm.
.card-elevated
Adds a subtle shadow. Use sparingly for elevation.
.card-interactive
Pointer cursor + hover state. Use when the entire card is clickable.
.card-compact
Tighter padding (p-4) — for dense rows and grids.
.card-minimal
Resets background, padding, and border. Used as a wrapper that should not visually exist.
バッジ
アニメーション
スクロールで発動するアニメーションは任意で有効化できます。常に「視差効果を減らす」設定を尊重します。
スクロールアニメーション
Fade Up
data-animate (default)
Fade Left
data-animate="fade-left"
Fade Right
data-animate="fade-right"
Scale
data-animate="scale"
Staggered Delays
Add data-stagger="100" on a parent container. Child elements with data-animate will automatically receive incremental delays (in ms).
<!-- Staggered children -->
<div data-stagger="100">
<div data-animate>0ms delay</div>
<div data-animate>100ms delay</div>
<div data-animate>200ms delay</div>
</div>アイコン
公開ページは Font Awesome Etch アイコンパックを使用します。一貫した美学を持つ約280個の厳選アイコンのサブセットです。
house
gamepad
trophy
arrow-down-to-line
angle-right
arrows-rotate
使い方
<!-- HTML -->
<i class="fa-etch fa-solid fa-gamepad text-2xl text-brand-500"></i>
<i class="fa-brands fa-discord text-xl"></i>クラシック FA → Etch のリネーム
Several common classic-FA names do not exist in Etch and have different replacements. Check the CLAUDE.md icon list before adding a new icon.
chevron-down → angle-down
download → arrow-down-to-line
circle-check → check
shield-halved → shield
hard-drive → compact-disc
spinner → arrows-rotate fa-spin