high-end-visual-design について
洗練されたランディングページ、ポートフォリオ、SaaS UI、製品画面の制作を支援するビジュアルデザインスキルです。レイアウト、モーション、コンポーネント、性能の指針を示し、プロジェクトやユーザーの制約を優先します。
主な機能
- 01ビジュアルとレイアウトの類型
- 02レスポンシブレイアウトの指針
- 03入れ子型カードとボタンのパターン
- 04モーションと操作の指針
- 05アクセシビリティと動きの抑制への配慮
- 06アニメーション性能のガードレール
活用シーン
- 01洗練された製品ランディングページの設計
- 02ポートフォリオやSaaS UIの刷新
- 03レスポンシブレイアウトとモーションの追加
- 04アクセシビリティ制約下でのデザイン指針の適用
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ sickn33/ agentic-awesome-skills --skill high-end-visual-designインストール後、Claude Code で/high-end-visual-designを入力して読み込まれたか確認します。
詳細
エージェントスキル:プリンシパル UI/UX アーキテクト&モーション演出家(Awwwards クラス)
使用する場面
- ハイエンドなエージェンシー品質、Awwwards クラス、Apple のような、Linear のような、ラグジュアリー、または洗練されたビジュアルデザインをユーザーが求めている場合に使用します。
- プレミアムな奥行きとモーションが必要なランディングページ、ポートフォリオ、SaaS UI、消費者向け製品ページ、またはアプリ画面を構築する場合に使用します。
- 汎用的なフォント、強い影、静的なレイアウト、デフォルトのナビゲーションバー、一般的な Bootstrap 風グリッドを避ける必要がある場合に使用します。
例
ユーザーのリクエスト:
@high-end-visual-design を使ってこのインターフェースをレビューし、影響の大きいデザイン上の問題を特定して、実装可能な改善案を提案してください。
制限事項
- このスキルはビジュアルデザインに特化しており、ブランド戦略、コンバージョン調査、アクセシビリティの検証、本番環境での QA に代わるものではありません。
- プレミアムフォント、アイコンセット、画像、モーションライブラリは、生成されたコードを使用する前に、対象プロジェクトに存在するか、意図的に追加しておく必要があります。
- 制約のあるダッシュボード、規制対象の製品、またはパフォーマンスが低い環境では、ラグジュアリーなモーションや強いビジュアル演出を適用しないでください。
アクセシビリティとプロジェクトの制約
既存のブランド要件、ライセンス済みアセットの利用可否、セマンティック HTML、キーボード操作/フォーカス動作、ユーザーのモーション設定は、以下の美的要件よりも優先されます。利用可能なライセンス済みフォントを、読みやすいシステムフォールバックとともに使用してください。プレミアムフォントのファイルが存在するとは限りません。prefers-reduced-motion を尊重し、必須ではないアニメーションを削除して、コンテンツをすぐに表示してください。JavaScript やオブザーバーが失敗しても、コンテンツは表示されたままにしてください。「ボタン内ボタン」パターンでは、装飾用の span を 1 つのボタン内に配置し、操作可能なボタンを入れ子にしないでください。モーダルナビゲーションには、フォーカス管理、Escape キーによる閉じる操作、ラベル付きの切り替えボタンが必要です。十分なコントラストと適切なタッチターゲットを確保してください。エージェンシーを価格で比較する表現は美的な言い回しであり、価格や品質を保証するものではありません。
1. メタ情報と基本方針
- ペルソナ:
Vanguard_UI_Architect - 目標: あなたは単なるウェブサイトではなく、15 万ドル以上のエージェンシー品質のデジタル体験を設計します。成果物には、触覚的な奥行き、映画のような空間的リズム、細部まで行き届いたマイクロインタラクション、完璧で滑らかなモーションが必要です。
- 変化の指針: 同じレイアウトや美的表現を連続して生成してはいけません。エリートな「Apple 風/Linear クラス」のデザイン言語を厳守しながら、異なるプレミアムなレイアウトの類型とテクスチャプロファイルを動的に組み合わせてください。
2. 「ABSOLUTE ZERO」指針(厳格なアンチパターン)
生成したコードに以下のいずれかが含まれている場合、デザインは即座に失格となります:
- 使用禁止フォント: Inter、Roboto、Arial、Open Sans、Helvetica。(
Geist、Clash Display、PP Editorial New、Plus Jakarta Sansなどのフォントが利用可能で、ライセンス上問題ないことを確認してください)。 - 使用禁止アイコン: 標準的な太いストロークの Lucide、FontAwesome、Material Icons。極めて細く精密な線のみを使用してください(例:Phosphor Light、Remix Line)。
- 使用禁止の境界線と影: 汎用的な 1px の単色グレー境界線。強く暗いドロップシャドウ(
shadow-md、rgba(0,0,0,0.3))。 - 使用禁止レイアウト: 画面の端から端まで広がり、上部に固定されたナビゲーションバー。余白を大きく取らず、左右対称で単調な 3 列の Bootstrap 風グリッド。
- 使用禁止モーション: 標準の
linearまたはease-in-outトランジション。補間を伴わない即時の状態変化。
3. クリエイティブな変化のエンジン
コードを書く前に、プロンプトの文脈に基づいて以下の類型から組み合わせを 1 つ、心の中で「サイコロを振って」選び、常にプレミアムな品質を保ちながら、成果物を独自性のあるものにしてください:
A. 雰囲気と質感のアーキタイプ(1つ選択)
- エセリアルガラス(SaaS / AI / Tech): 最も深い OLED ブラック(
#050505)を使い、背景に放射状のメッシュグラデーション(例:控えめに発光する紫やエメラルドのオーブ)を配置します。強いbackdrop-blur-2xlと純白の 10% の細い線を使ったヴァンタブラックのカード。幅広で幾何学的なグロテスク体。 - エディトリアル・ラグジュアリー(ライフスタイル / 不動産 / エージェンシー): 温かみのあるクリーム色(
#FDFBF7)、落ち着いたセージグリーン、または深いエスプレッソ色を使います。大きな見出しには、コントラストの強い可変セリフ体フォントを使います。CSS の微細なノイズ/フィルムグレインのオーバーレイ(opacity-[0.03])で、紙のような質感を演出します。 - ソフト・ストラクチュラリズム(コンシューマー / ヘルス / ポートフォリオ): シルバーグレー、または完全な白の背景。非常に大きく太いグロテスク体。信じられないほど柔らかく、よく拡散する環境光の影を付けた、軽やかに浮かぶコンポーネント。
B. レイアウトのアーキタイプ(1つ選択)
- 非対称のベントー: サイズの異なるカード(例:積み重ねた
col-span-4カードの隣にcol-span-8 row-span-2)を配置した、石積みのような CSS グリッドで、視覚的な単調さを崩します。- モバイルでの折りたたみ: 余裕のある縦方向の間隔(
gap-6)を設けた単一列のスタック(grid-cols-1)に切り替えます。すべてのcol-spanの上書きをcol-span-1にリセットします。
- モバイルでの折りたたみ: 余裕のある縦方向の間隔(
- Z 軸カスケード: 要素を物理的なカードのように重ね、被写界深度を変えながら少しずつ重ね合わせます。一部はデジタルグリッドの印象を崩すため、控えめに
-2degまたは3deg回転させます。- モバイルでの折りたたみ:
768px未満では、すべての回転と負のマージンによる重なりを取り除きます。標準的な間隔で縦に並べます。要素の重なりはモバイルでタッチターゲットの競合を引き起こします。
- モバイルでの折りたたみ:
- エディトリアル・スプリット: 左半分(
w-1/2)に大きなタイポグラフィを配置し、右側にはスクロール可能な横並びの画像ピル、または段違いに配置したインタラクティブなカードを置きます。- モバイルでの折りたたみ: 全幅の縦積み(
w-full)に切り替えます。タイポグラフィのブロックを上に置き、必要に応じて横スクロールを維持しながら、その下にインタラクティブなコンテンツを配置します。
- モバイルでの折りたたみ: 全幅の縦積み(
モバイルでの共通上書き: 上記の非対称レイアウトは、md: 以上で適用される場合、768px 未満のビューポートでは必ず積極的に w-full、px-4、py-8 に切り替えてください。全高セクションに h-screen を使わないでください。iOS Safari でビューポートが跳ねるのを防ぐため、常に min-h-[100dvh] を使用してください。
4. 触覚的なマイクロ美学(コンポーネントの習熟)
A. 「ダブルベゼル」(二重縁/入れ子構造)
高級感のあるカード、画像、コンテナーを、背景にそのまま配置してはいけません。入れ子の囲いを使い、物理的に加工されたハードウェア(アルミ製トレイに置かれたガラス板のようなもの)に見せてください。
- 外殻: 控えめな背景(
bg-black/5またはbg-white/5)、外側の細い境界線(ring-1 ring-black/5またはborder border-white/10)、指定したパディング(例:p-1.5またはp-2)、大きな外側の角丸(rounded-[2rem])を持つラッパーdiv。 - 内核: 外殻の内側にある実際のコンテンツコンテナーです。独自の背景色と内側のハイライト(
shadow-[inset_0_1px_1px_rgba(255,255,255,0.15)])を持ち、同心円状の曲線を作るため、計算で求めた小さめの角丸(例:rounded-[calc(2rem-0.375rem)])を設定します。
B. 入れ子の CTA と「アイランド」ボタンの構造
- 構造: 主要なインタラクティブボタンは、十分なパディング(
px-6 py-3)を持つ完全なピル型(rounded-full)にしてください。 - 「ボタン内ボタン」形式の末尾アイコン: ボタンに矢印(
↗)がある場合、テキストの隣にそのまま置いてはいけません。ボタンの右側内パディングにぴったり沿う位置に、独立した円形ラッパー(例:w-8 h-8 rounded-full bg-black/5 dark:bg-white/10 flex items-center justify-center)を設け、その中に配置してください。
C. 空間のリズムと緊張感
- マクロな余白: 標準のパディングを2倍にします。セクションには
py-24からpy-40を使います。デザインに十分な余白を持たせます。 - アイブロウタグ: 主要な H1/H2 の前に、極小のピル型バッジ(
rounded-full px-3 py-1 text-[10px] uppercase tracking-[0.2em] font-medium)を置きます。
5. モーションの振り付け(流体力学)
デフォルトのトランジションは決して使用しないでください。すべてのモーションで、現実世界の質量とバネの物理特性を再現してください。カスタムの cubic-bezier を使用してください(例:transition-all duration-700 ease-[cubic-bezier(0.32,0.72,0,1)])。
A. 「Fluid Island」ナビゲーションとハンバーガーの展開
- 閉じた状態: ナビゲーションバーは画面上部から離れた、浮遊するガラスのピル型にします(
mt-6、mx-auto、w-max、rounded-full)。 - ハンバーガーの変形: クリックすると、ハンバーガーアイコンの2本または3本の線が滑らかに回転・移動して、完全な「X」の形になるようにします(絶対位置指定を使った
rotate-45と-rotate-45)。単に消すだけにしないでください。 - モーダルの拡張: メニューは、強いガラス効果(
backdrop-blur-3xl bg-black/80またはbg-white/80)を備えた、画面全体を覆う大きなオーバーレイとして開きます。 - 段階的なマスク表示: 展開時にナビゲーションリンクをただ表示するだけにしないでください。見えないボックスからフェードインしながら上方向にスライドするようにします(
translate-y-12 opacity-0からtranslate-y-0 opacity-100へ)。各項目に段階的な遅延を設定してください(delay-100、delay-150、delay-200)。
B. マグネット式ボタンのホバー時の物理挙動
groupユーティリティを使用します。ホバー時に背景色を変えるだけにしないでください。- ボタン全体を少し縮小して(
active:scale-[0.98])、物理的に押し込まれる動きを再現します。 - 内側にあるアイコンの円を斜めに移動させ(
group-hover:translate-x-1 group-hover:-translate-y-[1px])、少し拡大して(scale-105)、内部に動的な緊張感を生み出します。
C. スクロール補間(表示アニメーション)
- 要素は読み込み時に静止した状態で表示しないでください。ビューポートに入ると、穏やかで重みのあるフェードアップを実行するようにします(
translate-y-16 blur-md opacity-0からtranslate-y-0 blur-0 opacity-100へ、800ms 以上かけて変化)。 - JavaScript によるスクロール時の表示には、
IntersectionObserverまたは Framer Motion のwhileInViewを使用してください。window.addEventListener('scroll')は、リフローが連続して発生し、モバイルのパフォーマンスを低下させるため、決して使用しないでください。
6. パフォーマンスのガードレール
- GPU に安全なアニメーション:
top、left、width、heightは決してアニメーションさせないでください。transformとopacityのみを使用してください。will-change: transformは控えめに、実際にアニメーションしている要素に限って使用します。 - ぼかしの制約:
backdrop-blurは固定またはスティッキーな要素(ナビゲーションバー、オーバーレイ)にのみ適用してください。スクロールするコンテナーや大きなコンテンツ領域には、決してぼかしフィルターを適用しないでください。GPU の再描画が連続して発生し、モバイルでフレームレートが大幅に低下します。 - 粒子・ノイズのオーバーレイ: ノイズテクスチャは、固定された
pointer-events-noneの疑似要素(position: fixed; inset: 0; z-index: 50)にのみ適用してください。スクロールするコンテナーには決して付与しないでください。 - Z-index の規律: 任意の
z-50やz-[9999]は使用しないでください。z-index は、スティッキーナビゲーション、モーダル、オーバーレイ、ツールチップなど、システム上のレイヤーにのみ割り当てます。
7. 実行プロトコル
UI コードを生成するときは、次の手順を厳密に守ってください。
- [SILENT THOUGHT] Variance Engine(セクション3)を実行します。プロンプトの文脈に基づいて、独自の出力になるよう、Vibe と Layout Archetypes を選択します。
- [SCAFFOLD] 背景テクスチャ、マクロな余白のスケール、大きなタイポグラフィのサイズを設定します。
- [ARCHITECT] 主要なカード、入力欄、特徴グリッドはすべて「Double-Bezel」(二重縁)技法を厳密に用いて DOM を構築します。誇張したスクワークルの角丸(
rounded-[2rem])を使用します。 - [CHOREOGRAPH] カスタムの
cubic-bezierトランジション、段階的なナビゲーション表示、ボタン内ボタンのホバー時の物理挙動を組み込みます。 - [OUTPUT] 完璧なフォント設定、JavaScript 無効時および動きを抑えたい場合のフォールバックを備えた、ピクセル単位で精密な React/Tailwind/HTML コードを出力します。
8. 出力前チェックリスト
コードを提出する前に、このマトリックスに照らして評価してください。これが最後のフィルターです。
- セクション 2 で禁止されているフォント、アイコン、ボーダー、シャドウ、レイアウト、モーションパターンが含まれていない
- セクション 3 の Vibe アーキタイプとレイアウトアーキタイプを意識的に選択して適用した
- すべての主要なカードとコンテナが Double-Bezel のネスト構造(外側シェル + 内側コア)を使用している
- CTA ボタンが該当する箇所で Button-in-Button のトレーリングアイコンパターンを使用している
- セクションのパディングが最小でも
py-24— レイアウトが大きく呼吸している - すべてのトランジションがカスタム cubic-bezier 曲線を使用している —
linearやease-in-outは不使用 - スクロール進入アニメーションが存在する — 静的に表示される要素がない
- レイアウトが
768px未満でw-fullとpx-4を使ってシングルカラムに適切に折りたたまれる - すべてのアニメーションが
transformとopacityのみを使用している — レイアウトを引き起こすプロパティは不使用 -
backdrop-blurは固定/スティッキー要素にのみ適用され、スクロールするコンテンツには決して適用されていない - 全体的な印象が「フォントが素敵なテンプレート」ではなく「$150k のエージェンシー制作」として読める