Regalis Japan Group株式会社 Logo

Regalis Arche Type (RAT診断) システム詳細仕様書

1. システム概要

1.1 基本情報

1.2 システムの目的

8つの学問領域を統合した科学的根拠に基づくスーツ診断システムにより、ユーザーの個性に最適化されたオーダースーツスタイルを提案し、診断から予約まで一貫したフローを提供する。

1.3 ターゲットユーザー


2. 診断アルゴリズム

2.1 4軸分析システム(S-C-P-M)

2.1.1 質問構成

必須質問(8問):

  1. Q1 (S軸): 手首のくるぶしの骨の特徴は?
    • 左: しっかりと出ていて目立つ → -2
    • 右: あまり目立たず、丸みがある → +2
  2. Q2 (S軸): スーツを着た時の悩みは?
    • 左: 肩が角張る、または余る → -1
    • 右: 着太りする、またはシワが入る → +1
  3. Q3 (C軸): 瞳(黒目)の印象は?
    • 左: 黒くはっきりして、白目と対比がある → -2
    • 右: ソフトな茶色やグレーで穏やか → +2
  4. Q4 (C軸): 似合うマフラーの色は?
    • 左: ビビッドな赤やロイヤルブルー → -1
    • 右: キャメルやモスグリーン → +1
  5. Q5 (P軸): 理想とするリーダー像は?
    • 左: 先頭に立ち、明確な決断で導く → -2
    • 右: 皆の意見を聞き、調和を図る → +2
  6. Q6 (P軸): パーティでの振る舞いは?
    • 左: 少人数と深い話をする/観察する → -1
    • 右: 多くの人と挨拶し場を盛り上げる → +1
  7. Q7 (M軸): 惹かれる建築様式は?
    • 左: 歴史の重みを感じる石造りの古典建築 → -2
    • 右: ガラスや金属を使ったモダンな建築 → +2
  8. Q8 (M軸): 仕事における「成功」とは?
    • 左: 組織や伝統を盤石にすること → -1
    • 右: 新しい価値や市場を創ること → +1

オプション質問(10問):

2.1.2 スコアリングロジック

// 各軸のスコア計算
const sScore = (answers.q1?.S || 0) + (answers.q2?.S || 0);
const sPositive = sScore >= 0; // Hard if positive/zero, Soft if negative

const cScore = (answers.q3?.C || 0) + (answers.q4?.C || 0);
const cPositive = cScore >= 0; // High if positive/zero, Blend if negative

const pScore = (answers.q5?.P || 0) + (answers.q6?.P || 0);
const pPositive = pScore >= 0; // Auth if positive/zero, Friend if negative

const mScore = (answers.q7?.M || 0) + (answers.q8?.M || 0);
const mPositive = mScore >= 0; // Trad if positive/zero, Inno if negative

2.1.3 アーキタイプマッピング

4軸の組み合わせにより、16種類のアーキタイプを判定:

// コード生成: S-C-P-M (each is H/S, H/B, A/F, T/I)
const code = [
  sPositive ? 'H' : 'S',  // Hard / Soft
  cPositive ? 'H' : 'B',  // High / Blend
  pPositive ? 'A' : 'F',  // Auth / Friend
  mPositive ? 'T' : 'I'   // Trad / Inno
].join('');

// マッピングテーブル
const mapping: Record<string, string> = {
  // Sovereign Group (Tradition & Authority dominant)
  "HHAT": "01", "SHAT": "01", "HBAT": "02", "SBAT": "02",
  // Dandy/Maverick Group (Innovation & Friendliness dominant)
  "HHFI": "11", "SHFI": "11", "HBFI": "16", "SBFI": "16",
  // Cross Types (Mix)
  "HHFT": "01", "HBFT": "02", // Tradition wins
  "HHAI": "11", "HBAI": "02", // Innovation wins
  // Additional mappings (fallback to closest)
  "HHAF": "01", "HHBF": "02", "SHBF": "11", "SBFF": "16",
};

2.2 4軸の詳細定義

S (Structure) - 身体構造軸

C (Contrast) - 視覚的対比軸

P (Presence) - 社会的存在感軸

M (Mindset) - 美的価値観軸


3. 16種類のアーキタイプ定義

3.1 アーキタイプ一覧

ID 名称(英語) 名称(日本語) グループ MBTIコード
01 The Sovereign 至高の君主 Rulers ESTJ:ISTJ
02 The Strategist 冷徹な戦略家 Rulers ENTJ:INTJ
03 The Aristocrat 貴族 Rulers ENFJ:ESFJ
04 The Futurist Executive 未来主義者エグゼクティブ Rulers ENTP:ENFP
05 The Iron Commander 鉄の指揮官 Challengers ESTJ:ISTJ
06 The Tech Strategist テック・ストラテジスト Challengers INTJ:ISTP
07 The Heritage Hunter ヘリテッジ・ハンター Challengers ISTP:ISFP
08 The Urban Maverick 都会の異端児 Challengers ENTP:ESTP
09 The Classic Gentleman クラシック・ジェントルマン Harmonizers ESFJ:ISFJ
10 The Mode Icon モード・アイコン Harmonizers ISFP:INFJ
11 The Elegant Dandy 優雅な伊達男 Harmonizers ENFJ:ESFP
12 The Neo Classicist ネオ・クラシシスト Harmonizers INFP:INFJ
13 The Artisan 職人 Innovators ISTP:ISFP
14 The Street Smart ストリート・スマート Innovators ESTP:ENFP
15 The Naturalist ナチュラリスト Innovators ISFP:INFP
16 The Gentle Creator 創造的ミニマリスト Innovators INTP:INFJ

3.2 アーキタイプデータ構造

各アーキタイプには以下の情報が含まれる:

{
  id: string;              // アーキタイプID('01'〜'16')
  name: string;             // 英語名称
  group: string;            // グループ分類(Rulers/Challengers/Harmonizers/Innovators)
  desc: string;             // 説明文
  catchphrase?: string;     // キャッチフレーズ
  icon: IconComponent;      // アイコンコンポーネント
  color: string;            // グラデーションカラー(Tailwindクラス)
  recOptions: {             // 推奨オプション
    button: { name: string, price: number },
    lining: { name: string, price: number }
  },
  details: {                // 詳細レポート(4セクション)
    fashion: { title, text, items[] },
    psychology: { title, text, tag },
    romance: { title, text, lucky },
    philosophy: { title, text }
  }
}

3.3 画像マッピング

MBTIコードベースの画像ファイル名マッピング:

const ARCHETYPE_MBTI_MAP: Record<string, string> = {
  '01': 'ESTJ:ISTJ',
  '02': 'ENTJ:INTJ',
  // ... 全16種類
};

// 画像パス生成
const getArchetypeImagePath = (archetypeId: string): string => {
  const mbtiCode = ARCHETYPE_MBTI_MAP[archetypeId] || 'ESTJ:ISTJ';
  return `/images/MBTIキャラクター/Gemini_Generated_Image_${mbtiCode}.png`;
};

4. 8つの学問領域

4.1 学問領域一覧

  1. 服飾形態学(Morphology)
    • 骨格とシルエットの科学的適合性
    • 英国サヴィル・ロウ式 vs ナポリ仕立ての判定
  2. 色彩学(Color Theory)
    • 肌色・瞳色とファッションカラーの調和
    • 高彩度 vs 低彩度の適合性分析
  3. 深層心理学(Psychology)
    • MBTIベースの性格特性分析
    • 16種類のMBTIタイプへのマッピング
  4. 自我同一性理論(Identity Theory)
    • 自己認知と社会的役割の分析
    • アイデンティティ形成プロセスの解明
  5. 進化心理学(Evolutionary Psychology)
    • 恋愛行動とパートナー選択の分析
    • 資源保持能力と庇護欲の評価
  6. 神学・哲学(Theology & Philosophy)
    • 人生観と価値観の根底分析
    • カトリック神学 vs 実存主義の対比
  7. 社会学(Sociology)
    • 社会的地位とファッションの関係
    • リーダーシップスタイルの社会的影響
  8. 美学(Aesthetics)
    • 美的判断とスタイル選択の分析
    • 伝統 vs 革新の美的価値観

4.2 詳細レポートセクション

各診断結果には、以下の4つのセクションからなる詳細分析を提供(アコーディオン形式):

4.2.1 SARTORIAL LOGIC(服飾形態学・色彩学)

4.2.2 IDENTITY & PSYCHOLOGY(深層心理学・自我同一性)

4.2.3 PHILOSOPHY & THEOLOGY(神学・哲学・人生論)

4.2.4 ROMANCE & FORTUNE(恋愛社会学・運勢)


5. 技術仕様

5.1 フロントエンド技術スタック

5.2 アプリケーション構造

suit-mbti-app/
├── src/
│   ├── App.tsx                    # メインアプリケーション
│   ├── InstagramStoryShare.tsx   # Instagramストーリー共有コンポーネント
│   ├── main.tsx                  # エントリーポイント
│   └── index.css                 # グローバルスタイル
├── dist/                         # ビルド出力
├── package.json
├── tsconfig.json
├── vite.config.ts
└── tailwind.config.js

5.3 アプリケーション状態管理

// アプリケーション状態
type AppState = 
  | 'welcome'           // ウェルカム画面
  | 'diagnosis'         // 診断中
  | 'optional_prompt'   // オプション質問プロンプト
  | 'loading'           // 結果計算中
  | 'result'            // 結果表示
  | 'booking'           // 予約フォーム
  | 'lottery_spin'      // 抽選アニメーション
  | 'lottery_result';   // 抽選結果

5.4 データフロー

  1. 質問回答: ユーザーが8問の必須質問に回答
  2. スコア計算: 4軸(S-C-P-M)のスコアを計算
  3. アーキタイプ判定: マッピングテーブルからアーキタイプIDを決定
  4. プラン生成: アーキタイプに基づき3つのプランを自動生成
  5. 結果表示: アーキタイプ情報、プラン、詳細レポートを表示

6. プラン提案システム

6.1 3つのプランタイプ

Best Value(ベストバリュー)

Milestone(マイルストーン)

Authentic(オーセンティック)

6.2 プラン選択ロジック

// 生地選択ロジック
const isSoft = !sPositive;        // S軸がSoftの場合
const isGlossy = mPositive && pPositive; // M軸がTradかつP軸がAuthの場合

const valueFabric = FABRIC_PLANS.omc;
const milestoneFabric = isGlossy ? FABRIC_PLANS.reda_silky : FABRIC_PLANS.vbc_n;
const authenticFabric = isSoft ? FABRIC_PLANS.zegna : FABRIC_PLANS.dormeuil;

6.3 価格計算

// 価格計算ロジック
const vestCostRate = vestPref > 0 ? 0.35 : 0;  // ベストは基本価格の35%
const optionCost = Object.values(recOptions).reduce((sum, opt) => sum + opt.price, 0);
const total = fabricCost + vestCost + optionCost;
const marketTotal = marketBase + marketVest + (optionCost * 1.2);
const diff = marketTotal - total;  // 割引額
const discountRate = Math.round((diff / marketTotal) * 100);

7. UI/UX設計

7.1 デザインテーマ

7.2 画面構成

7.2.1 ウェルカム画面

7.2.2 診断画面

7.2.3 結果画面

7.2.4 予約フォーム

7.2.5 抽選画面

7.3 レスポンシブデザイン


8. Instagramストーリー共有機能

8.1 機能概要

診断結果を1080x1920pxの高解像度画像として生成し、Instagramストーリーに投稿可能にする機能。

8.2 画像レイアウト

8.3 画像生成プロセス

// 1. html2canvasライブラリの読み込み
// 2. Google Fontsの読み込み(Cinzel Decorative, Noto Serif JP)
// 3. 要素を1080x1920pxにリサイズ
// 4. html2canvasで画像生成(scale: 2, useCORS: true)
// 5. Blobに変換
// 6. Web Share APIまたはダウンロード

8.4 シェア方法

  1. Web Share API: ネイティブシェアメニューを表示(モバイル対応)
  2. Instagramアプリ直接起動: iOS/Androidのディープリンクを試行
  3. フォールバック: 画像をダウンロードし、手動でInstagramに投稿

9. 予約システム連携

9.1 予約フロー

  1. 診断結果画面でプランを選択
  2. 「無料採寸を依頼する」ボタンをクリック
  3. 予約フォームに入力(名前、メール、電話、年齢)
  4. フォーム送信
  5. 抽選実行(1/200の確率で無料スーツ当選)
  6. 結果表示(当選/落選)

9.2 管理ID生成

// 管理IDフォーマット
const identityId = `${archetype.id}-${physicalType.code}`;
const fullId = `${identityId}-${selectedPlan.toUpperCase().substring(0,3)}`;

// 例: "01-A-MIL" (アーキタイプ01、体型A、Milestoneプラン)

9.3 抽選システム

const LOTTERY_PROBABILITY = 200; // 1/200の確率
const isWinner = Math.floor(Math.random() * LOTTERY_PROBABILITY) === 0;

10. データ構造

10.1 質問データ構造

interface Question {
  id: string;              // 質問ID('q1'〜'q8')
  category: string;         // カテゴリ('PHYSICAL'/'VISUAL'/'SOCIAL'/'AESTHETIC')
  text: string;            // 質問文
  left: string;            // 左選択肢
  right: string;           // 右選択肢
  factor: 'S' | 'C' | 'P' | 'M';  // 影響する軸
}

10.2 回答データ構造

interface Answers {
  [questionId: string]: {
    S?: number;  // Structure軸スコア(-2, -1, 0, 1, 2)
    C?: number;  // Contrast軸スコア
    P?: number;  // Presence軸スコア
    M?: number;  // Mindset軸スコア
  };
}

10.3 診断結果データ構造

interface DiagnosisResult {
  archetype: ArchetypeDefinition;  // アーキタイプ定義
  physicalType: PhysicalType;       // 体型タイプ
  plans: {
    value: PlanData;
    milestone: PlanData;
    authentic: PlanData;
  };
  corrections: string[];            // 補正項目
  identityId: string;               // 識別ID
  axisScores: {                    // 4軸スコア
    S: number;
    C: number;
    P: number;
    M: number;
  };
  axisResults: {                   // 4軸結果
    S: 'Hard' | 'Soft';
    C: 'High' | 'Blend';
    P: 'Auth' | 'Friend';
    M: 'Trad' | 'Inno';
  };
}

10.4 プランデータ構造

interface PlanData {
  title: string;           // プラン名("Best Value"等)
  subtitle: string;        // サブタイトル
  fabric: FabricInfo;      // 生地情報
  total: number;          // 合計金額(税込)
  marketTotal: number;    // 市場価格
  diff: number;           // 割引額
  discountRate: number;   // 割引率(%)
  vestCost: number;       // ベスト追加費用
}

11. パフォーマンス最適化

11.1 画像最適化

11.2 コード分割

11.3 キャッシング


12. セキュリティ

12.1 データ保護

12.2 プライバシー


13. アクセシビリティ

13.1 WCAG準拠

13.2 多言語対応


14. テスト戦略

14.1 単体テスト

14.2 統合テスト

14.3 UIテスト


15. デプロイメント

15.1 ビルドプロセス

# 開発環境
npm run dev

# 本番ビルド
npm run build

# プレビュー
npm run preview

15.2 デプロイ先

15.3 環境変数


16. 今後の拡張計画

16.1 機能拡張

16.2 データ分析

16.3 学術的検証


17. 参考資料

17.1 関連ドキュメント

17.2 外部リソース


18. 変更履歴

v9.0.0 (2025年11月)


19. 連絡先

開発・運用: Regalis Japan Group株式会社 提供元: オーダースーツ研究所 by Regalis Japan Group 診断システムURL: /order-diagnosis.html


文書作成日: 2025年11月28日 最終更新日: 2025年11月28日 バージョン: 1.0