Skip to content

プロダクト概要

プロダクト名

Miss World Japan 2026 Voting Site

ミッション・コンセプト

「多様な個性が響き合い、可能性を解き放つ」をテーマに、Miss World Japan 2026 ファイナリストへのファン投票を行うWebサイト。日本女性の内面の美しさと多様な個性をオンライン上で広く支持・応援できる場を提供する。

ターゲットユーザー

  • ファイナリスト候補者を応援したい一般ユーザー(日本国内中心)
  • ソーシャルメディア(Facebook / Instagram)アカウントを保有しているユーザー
  • スマートフォン・PC双方からアクセスするユーザー

コア価値

  1. エンゲージメント: 1日1回の無料投票で日常的にサイトに訪れる動機を作る
  2. 応援の可視化: ランキング表示と「投票者貢献度ランキング」で応援の熱量を可視化
  3. マネタイズ: 投票券(クレジット)購入による有料投票で運営を支える
  4. ブランド体験: ゴールド/ローズゴールドを基調とした上品で華やかなビジュアル

主要機能

  • 候補者一覧表示(順位と得票数を伴うグリッド)
  • 候補者詳細ページ(複数画像のスライダー、PR文、プロフィール、応援者ランキング)
  • 候補者ランキング画面(上位を特別表示、得票率の可視化)
  • 無料投票(1日1回、再投票可能になるまでのクールダウン表示)
  • 有料投票(投票券パッケージを購入し、任意候補者へ投票)
  • ソーシャルログイン(Facebook / Instagram)
  • クレジットカード決済
  • 投票完了時の祝祭演出

投票期間

開催ごとの投票期間(開始日・終了日)は VotingPeriod テーブルで管理し、運営側で登録・変更可能(固定値ではない)。サイト上の表示も同テーブルから取得した値を用いる。

  • 現開催の値(参考): 2026年4月1日 〜 4月30日 ※実値はDB登録値が正

ビジネスルール

  • 無料投票: 認証ユーザー1人あたり1日1票(日付変更でリセット)
  • 有料投票: 投票券パッケージを購入し、任意候補者へ一括投票
  • ログイン要件: 投票・購入の両方にソーシャルログインが必須
  • 投票券パッケージ: 票数・価格・「人気」フラグ・表示順・有効/無効はすべて CreditPackage テーブルで管理し、運営側で追加・変更可能(固定値ではない)。初期シード(prisma/seed.ts)の例:
    • 10票 / ¥1,000
    • 35票 / ¥3,000(人気)
    • 60票 / ¥5,000
    • 150票 / ¥10,000

候補者データ

候補者は氏名・出身地・年齢・身長・職業・趣味・特技・座右の銘・夢・メッセージ・複数の画像といったプロフィール情報を持ち、得票数は投票履歴から集計する。候補者数は年度や運営方針により変動するため、固定値として扱わない。

管理機能

運営者が候補者・画像をCRUDするための管理画面を提供する。

全画面共通UI要件

サイト内のすべての画面で共通して提供されるUI要件。各画面の requirements.md では再掲せず、本セクションを参照する。

スクロール補助

Purpose: 縦長コンテンツでもユーザーがページ先頭へ素早く戻れるようにする。 Scope: サイト内の全画面。

Acceptance Criteria (EARS)

  • WHEN ユーザーが画面を一定量スクロールした THEN システムはページトップへ戻る手段を提示する
  • WHEN ユーザーがその手段を実行した THEN システムはページトップへ戻る

フッター

Purpose: 運営会社の情報と Copyright 表記をサイト共通として提示する。 Scope: サイト内の全画面。

Acceptance Criteria (EARS)

  • THE SYSTEM SHALL 全画面のフッター領域に「運営会社」リンク(外部 https://www.missworld.tokyo/corporate.html を新規タブで開く)と Copyright 表記を表示する

非機能要件(全画面共通)

サイト全体で適用される非機能要件。各画面の requirements.md では再掲せず、本セクションを参照する(画面固有の補足要件はその spec に個別記述)。

UI/レイアウト

  • スマホファースト(候補者カードはレスポンシブグリッドで表示)
  • 軽快なアニメーションと装飾的なグラデーション背景による上質なブランド体験

アクセシビリティ

  • 候補者画像の alt には候補者名を含む
  • ボタンの disabled 状態・押下状態・選択状態を支援技術(スクリーンリーダー等)へ aria-* で伝達する
  • ボタンの状態(投票可否)と再投票可能までの残り時間をテキストで明示する
  • カラーコントラストは WCAG AA レベル(本文 4.5:1 以上)を満たす
  • フォーカスリングを視覚的に明示する
  • 順位や状態などの情報は色や形だけに依存させず、数値テキストでも提供する

SEO

  • 全画面でメタデータ(title / description / OGP)を設定する
  • 動的コンテンツを持つ画面は、コンテンツに応じてメタデータを生成する(候補者ごとの OGP 画像・タイトル等の具体仕様は各 spec を参照)