AIR2企画書

1. タイトル案

  • 仮タイトル:「AIR2 – 空に還る約束 -」
    • 開発中の呼称として「AIR2」、権利上はサブタイトル部分で展開する想定。

2. 企画概要

  • ジャンル:ビジュアルノベル / 恋愛アドベンチャー
  • プレイ時間:1ルート 8〜10時間、フルコンプ 30〜40時間想定
  • 対応プラットフォーム:PC(Windows)、後発でコンシューマ / Steam 展開
  • ターゲット層
    • 10代後半〜30代のアニメ・ギャルゲー・泣きゲー ファン
    • 過去の「夏×感動系」作品が好きなユーザー
  • キーワード
    • 「夏の終わり」「空」「輪廻」「失われた時間」「叶わなかった約束」

3. コンセプト

  1. “空に還る”感動体験
    • 夏の終わりに訪れる「別れ」と「救い」を、プレイヤー自身の選択で体感させる。
  2. 複数ルートで一つの真実に収束
    • 各ヒロインルートで世界の断片が見え、すべてをクリアすることで“真相ルート”が解禁。
  3. 音楽と背景で“空気”を売るゲーム
    • BGM・背景・SE で、「蝉の声が聞こえてきそうな夏」の空気感を最大限に演出。

4. 世界観・舞台

  • 舞台:海沿いの小さな港町「空波町(そらなみちょう)」
    • 古くから「空へ還る人々」の伝承が残る町。
    • 夏になると観光客で賑わうが、どこか“取り残された時間”の気配が漂う。
  • 伝承
    • 「願いを叶えられなかった魂は、夏の終わりに空へ還り、もう一度だけこの町に戻ってくる」
    • 子どもたちの間では“空見様(そらみさま)”と呼ばれる謎の存在の噂がある。

5. 物語の骨子(大枠)

基本プロット

  • 主人公は、都会から空波町へとやってきた青年(or 高校生)。
  • 過去にこの町で過ごした記憶があるような“既視感”に悩まされている。
  • 町で出会うヒロインたちは、それぞれ「時間」や「記憶」に歪みを抱えている。
  • 各ルートで、主人公はヒロインの“未練”や“叶わなかった約束”に向き合い、
    最後に“空見様”と伝承の真実へ辿り着く。

章構成(イメージ)

  1. 序章:夏、空波町へ
    • 主人公が町に到着。ヒロインたちとの出会い。
  2. 日常パート
    • 学校・海辺・神社・古い灯台などで日常を積み重ねる。選択肢で好感度とルート分岐。
  3. 違和感の顕在化
    • ヒロインの周囲で時間のズレ・記憶の食い違い・デジャヴが増えていく。
  4. クライマックス
    • ヒロインごとの「過去の約束」や「失われた時間」の真相へ。
  5. エンディング
    • ルートごとに、ヒロインを“空へ還す”のか、“この世界につなぎとめる”のかが分岐。
  6. 真相ルート
    • 全ルートクリアで解禁。主人公自身の正体、空見様の真実、輪廻の構造が明かされる。

6. キャラクター案

■ 主人公(名前変更可)

  • 性別:男性
  • 設定:都会育ち。心にぽっかり穴が空いたような虚無感を抱え、療養も兼ねて空波町へ。
  • 特徴:時々“見たことのないはずの光景”を夢に見る。
  • 役割:プレイヤーの視点でありつつ、物語の“鍵”そのもの。

■ ヒロインA:海咲(みさき)

  • モチーフ:海 / ひまわり / 素直になれない
  • 性格:明るく元気だが、時折ふっと寂しそうな表情を見せる幼馴染ポジション。
  • 秘密:
    • 主人公とは「忘れているだけ」で深い過去のつながりがある。
    • ある“約束”のために、この町に“留まっている”存在かもしれない。

■ ヒロインB:静流(しずる)

  • モチーフ:神社 / 風鈴 / 祈り
  • 性格:穏やかで神秘的。少し天然で夢見がちな巫女。
  • 秘密:
    • 町に伝わる「空見様」の儀式を受け継ぐ家系。
    • 見えるはずのない“空の向こう側”を時々見てしまう。

■ ヒロインC:遥(はるか)

  • モチーフ:列車 / カメラ / 旅人
  • 性格:クールで現実主義だが、内に強い情熱を秘める転校生。
  • 秘密:
    • この町の“時間の歪み”を調査するために訪れている。
    • 主人公たちとは別の立場から、「輪廻のルール」を変えようとしている。

7. ゲームシステム・UI

■ システム

  • マルチルート型ビジュアルノベル
    • 選択肢によってヒロインルートへ分岐。
    • BAD / NORMAL / GOOD エンド+各TRUEエンドを想定。
  • 「空の記憶」システム
    • 物語中に散らばる“断片的な記憶”を収集。
    • メニュー画面で、集めた記憶のピースが「空のパネル」として並び、
      真相ルート解禁の鍵になる。
  • 日付・時間帯による演出
    • 朝・昼・夕方・夜で背景とBGMを変化させ、
      夏の一日がゆっくり終わっていく感覚を強調。

■ UI・ビジュアル

  • 画面構成
    • 16:9 フルHDを基本。
    • 下部に半透明のテキストウィンドウ、上部に広く空と背景が見えるレイアウト。
  • アートスタイル
    • 柔らかい線と、淡いパステル調の色彩。
    • 太陽光・逆光・空のグラデーションを重視した背景美術。
  • BGM・SE
    • ピアノ・アコースティックギター・ストリングスを中心にした切ないメロディ。
    • 波の音、蝉の声、風鈴など、夏の音を随所に入れて没入感を高める。

8. 開発体制・スケジュール(イメージ)

  • 開発規模
    • シナリオライター:1〜2名
    • 原画:1〜2名(キャラ / イベントCG)
    • 背景:1名 or 外注
    • BGM:1名
    • プログラマ / スクリプター:1〜2名
    • ディレクター / スクリプト管理:1名
  • スケジュール案(約18〜24ヶ月)
    1. 企画・プロット固め:3ヶ月
    2. シナリオ執筆・グラフィック発注:8〜10ヶ月
    3. 実装・デバッグ:4〜6ヶ月
    4. マスターアップ・宣伝準備:2〜3ヶ月

9. ビジネス・展開案

  • 販売形態
    • ダウンロード版 メイン
    • パッケージ版(限定版)でアートブック・サントラを同梱。
  • プロモーション
    • ティザーサイト公開 → キービジュアル・コンセプトムービー。
    • 主題歌MVを先行公開し、YouTube・SNSで話題づくり。
    • 体験版配布&配信者向けプレイ許諾で露出を拡大。

リアルワールド・リビルド ONLINE

① タイトル案

タイトル:リアルワールド・リビルド ONLINE
副題:「壊れた世界を“編集”するマルチワールドRPG」


② コンセプト

「プレイヤー全員がゲームマスター。世界のルールやマップを“編集”して遊ぶRPG」

  • ただのオープンワールドRPGではなく、
    プレイヤーがクエスト、街、ダンジョン、さらには“物理ルール”まで書き換えていく。
  • 他プレイヤーの作った世界に遠征し、評価・攻略・破壊・改造していく
    “マルチバース系オンラインRPG”。

③ ゲーム概要

  • ジャンル:オンラインアクションRPG / サンドボックス / クリエイト
  • 対応プラットフォーム:PC / コンソール(将来的にVR対応想定)
  • プレイ人数:ソロ~4人協力 / ワールド単位で最大数十人が同時接続

④ 世界観

  • かつて世界は「原初コード」と呼ばれる法則で完璧に保たれていた。
  • しかし何者かによって「デバッグ中のテスト世界」が流出。
    世界はテスト用の仮想ワールドと現実に似た本編ワールドが混ざり合った状態に。
  • プレイヤーは「リビルダー」と呼ばれる特異な存在。
    世界の“設定ファイル”に直接アクセスし、
    ・重力の向き
    ・時間の流れ
    ・魔法の属性
    ・モンスターの行動AI
    などを編集できる。

⑤ 物語のフック

  • チュートリアルの最後、
    「この世界はゲームではない。あなたが壊したら、本当に壊れる」
    という謎のメッセージ。
  • メインストーリーでは、プレイヤーが改造してきたログが
    すべて“物語”として記録され、
    ラスボスは「プレイヤーが作ってきた世界の矛盾」が具現化した存在になる。

⑥ コアゲームシステム

1. リビルド・エディットシステム

  • 各エリアには「世界エディタ」があり、以下を編集可能:
    • 地形(崖・島・浮遊大陸など)
    • 罠・ギミック(動く床、即死トラップ、謎解き装置)
    • 敵の配置・行動パターン
    • 天候・時間・重力方向
  • 編集には「世界ポイント(WP)」が必要。
    → クエストクリアや他プレイヤーからの高評価で入手。

2. 他プレイヤーワールドへの侵攻&評価

  • 他プレイヤーが作ったダンジョンに挑戦できる。
  • クリア後に5段階評価+コメントでフィードバック。
    • 面白かった:WPボーナス
    • 鬼畜すぎた:ペナルティ or 別枠ランキング(鬼畜ランキング)

3. 自分のワールドが「コンテンツ」になる

  • 自分のダンジョンや街が「ポータル一覧」に登録される。
  • 人気ワールドはハブエリアに巨大ポータルとして常設。
  • 定期的に「今週の人気ワールド」「今月の狂気ワールド」などランキング表示。

⑦ キャラクターと成長要素

プレイヤー

  • クラスは存在せず、“編集スタイル”でビルドが変わる:
    • ビルダー系:建築・罠・地形変化が得意
    • ハッカー系:敵AI・ギミックの論理を書き換えるのが得意
    • アバター系:外見や演出、演劇系イベント作りが得意
  • 戦闘スキルも、
    「自分が作った世界のルール」によって強化される
    (例:低重力世界で鍛えたプレイヤーはジャンプスキルが異常に強い)。

⑧ マルチプレイ要素

  • 共創ダンジョン制作
    • 2~4人で同時に1つのダンジョンを共同編集。
    • 役割分担:地形班、敵AI班、演出班など。
  • ワールドレイドバトル
    • コミュニティで巨大ボス戦イベント開催。
    • ボスの行動パターン自体もプレイヤーが編集し、「視聴型レイド」も可能。

⑨ 継続プレイの動機付け

  • 自分のワールドが遊ばれるほど、
    → ログが「世界の歴史」として本編ストーリーに反映される。
  • ワールドごとに
    • 閲覧数
    • クリア率
    • 平均死亡回数
    • 平均クリア時間
      などが可視化され、「ゲーム内アナリティクス」が見られる。

⑩ 企画のポイント(売り)

  1. 「遊ぶ」と「作る」がシームレス
    • マリオメーカー系の楽しさ + オープンワールドRPGの没入感。
  2. 毎回違う世界体験
    • 公式ストーリー+プレイヤー生成コンテンツで、寿命の長いタイトルを目指せる。
  3. “世界編集”というフック
    • 単なるステージエディタじゃなく、
      物理・ルール・AIまで触れることで、他と差別化。

光の歩み:パウロの航路

タイトル(仮)

「光の歩み:パウロの航路」
― 初期教会の旅路を体験し、希望・信頼・愛をゲームとして学ぶアドベンチャーRPG

1. 企画概要

  • ジャンル:物語主導アドベンチャーRPG+探索+対話パズル(非殺傷系)
  • 対象:中高生〜大人。信仰の有無を問わず、歴史物語や倫理的選択を楽しみたい人
  • プラットフォーム:PC/コンソール(Switch/PS/Xbox)+後発でモバイル簡易版
  • プレイ時間:本編10〜15時間+周回要素
  • レーティング想定:CERO B(暴力表現なし、差別・扇動なし)

2. 企画意図・学習目標

  • 初期キリスト教の歴史的背景(1世紀ローマ世界・ディアスポラ都市)を偏りなく紹介
  • 価値観(信仰=Faith/希望=Hope/愛=Charity)を、選択と結果で体験的に理解
  • 実在地・史料に基づく考証のもと、**布教=説得ではなく「対話と理解」**を主眼に

3. コア体験(Game Pillars)

  1. 対話と調停:噂・誤解・利害が交差する街で、中立的に聞き取り、誠実に橋渡し
  2. 旅と共同体:船旅で各都市へ。資源(時間・食糧・寄付)と仲間の士気を管理
  3. 徳の選択:状況に応じて「信仰/希望/愛」を強化する行動を選ぶ(暴力回避)
  4. 史的没入:当時の市場、会堂、家屋教会、ローマ法廷、港湾などを探索し資料収集

4. ゲームループ

  • 街に到着 → 情報収集(傾聴) → 対話パズル(調停/説得/証言の整合) → 共同体支援(施し/労働/手紙) → 船旅準備(資源管理) → 次の地へ
  • 章ごとに手紙(Epistle)が解禁され、読了で小さな洞察ブースト(対話オプション解放)

5. メカニクス

  • 徳メーター:Faith / Hope / Charity(数値でなく「状態」重視。偏らず三徳のバランスが良いと特殊イベント)
  • 祈り(クールダウン制):混乱時に視点を整える。NPCの本心“キーワード”が一瞬だけ可視化
  • 証言カード:聞き取った事実・比喩・譬えの断片。論理矛盾がない並べ方で対話パズルを解く
  • 共同体ボード:困窮、病、孤立、迫害の度合いを可視化。資源配分で街の状態が改善しクエストが変化
  • 非殺傷コンバット:逃走・隠密・法廷弁明・保証人立て等で危機回避(QTE最小)

6. 物語構成(例)

  • プロローグ:ダマスコ(出会いと転機)
  • 第1章:アンティオキア(多文化の街での誤解解消)
  • 第2章:ピシディアのアンティオキア〜リストラ(迫害と連帯)
  • 第3章:コリント(商人ギルドと信仰共同体の摩擦を調停)
  • 第4章:エフェソス(職人組合と偶像問題、平和的収束)
  • 最終章:ローマ(法と良心、希望の証言。エンディング分岐=三徳の在り方)

7. 美術・音響

  • アート:温かい筆致のセミリアル。衣装・建築は史料参照、象徴表現はやさしく
  • UI:巻物/羊皮紙モチーフ。徳メーターは三つの小さな灯火
  • 音楽:弦・笛・竪琴+現代的サウンドスケープ。祈り時は環境音がやわらぐ

8. アクセシビリティ

  • 朗読モード(本文読み上げ)、字幕・フォントサイズ調整、色弱配慮配色
  • 難易度:ストーリーフォーカス/スタンダード/考証チャレンジ(史料クイズ追加)

9. リサーチと表現ガイドライン

  • 宗派横断の監修委員会(神学・歴史・考古の3名以上)を設置
  • 固有名詞・儀礼の描写は史料脚注に準拠、論争点は断定せず複数説を匂わせる
  • 勧誘的・攻撃的表現は避ける。他宗教・文化への敬意を必須要件に

10. 進行・成長

  • 徳の熟達で新しい対話フレーズ、比喩(譬え話)カードが解禁
  • 街レベルが上がると共同体ボードの課題が高度化(教育、孤児支援、介護など)

11. マネタイズ

  • 基本買い切り(DLCで「ガリラヤの物語集」「詩編黙想パック」など追加コンテンツ)
  • 収益の一部を現実のチャリティに寄付する連動企画(透明性レポートをゲーム内掲示板で公開)

12. 競合・差別化

  • 既存の宗教題材ゲームは説話紹介が中心。
    → 本作は**“非対立のデザイン”**(調停パズル×徳システム)で能動的体験を提供。

13. 技術スタック

  • Unity(ユーザーの希望に合致):URP、Yamlローカライズ、Ink/Dialogue System、Timeline
  • セーブはJSON+暗号化、PCとSwitchを初期ターゲット
  • 字幕・スクリプトは外部CSVで管理し監修者が直接校正可能

14. 開発体制・期間(目安)

  • チーム:10〜14名(Pd/PM1、リードデザ1、レベルデザ2、プログラマ3、美術3、UI/UX1、サウンド1、QA1、歴史/神学監修2)
  • 期間:プリプロ3ヶ月/プロダクション10ヶ月/QA・ローカライズ3ヶ月(計16ヶ月)
  • 概算:8,000万〜1.4億円規模(外注とキャスト有無で変動)

15. KPI / 品質目標

  • ストーリー完走率60%以上、レビューで「尊重/配慮」に関する肯定的言及比率70%以上
  • 学習要素:章末クイズ正答率の上昇、資料室閲覧率40%以上

16. リスクと対応

  • 神学表現の誤解:監修フローと用語脚注で軽減
  • 暴力の回避が地味化:対話パズルに“緊張の演出”(時間制限・人だかり・法廷)を導入
  • 文化的感受性:外部レビュー(多宗教・無宗教含む)でプレイテスト

サンプルクエスト(第3章:コリント)

  • 状況:商人ギルドが安息日の取引巡りで共同体を批判。街の不満が高まる
  • 目的:両者の誤解を解き、市場規約の妥協案を提案
  • 手順:
    1. 市場で聞き取り→証言カード「規約草案」「祭礼日」「巡礼需要」を入手
    2. 祈りでキーワード「家族」「信用」を取得
    3. 対話パズルで並べ替え:信用>祭礼日>需要調整
    4. 結果:ギルドは早朝市を追加、共同体は夕刻会合に変更→街ボード好転

代替案(スピンオフ)

A. 「たとえの箱庭(Parables Builder)」

  • ジャンル:箱庭パズル+教育
  • イエスのたとえ話を抽象化オブジェクトで組み、他者に伝わるかを評価
  • マップ共有・評価でコミュニティ生成、学校向け教材モード有り

B. 「詩編の旋律」

  • ジャンル:没入型音×言葉アドベンチャー
  • 詩編のテキストを手掛かりに、風景・音景を“調律”して心情を可視化
  • メンタルヘルス配慮の瞑想モード、読み上げ+多言語字幕

必要なら、この企画をピッチ用1枚/詳細GDD/予算&スケジュール表に分解してドキュメント化します。どの案を推したい? あるいは「現代日本舞台」「子ども向け」などの方向性も出せます。

DNAのダウンロードとアップロード方法

ざっくり言うと「DNAのダウンロード=配列データを公式DBから取得」「アップロード=公式DBへ自分の配列やリードを登録」です。実物のDNAを扱う手順ではなく、デジタル配列データの話として安全に説明します。

1) ダウンロード(取得)

代表的な取り先は NCBI・Ensembl・ENA です。

  • NCBI Datasets(ゲノム/遺伝子)
    ブラウザ or CLI で目的の生物やアセンブリをまとめて落とせます(FASTA、GFF/GTF、注釈一式)。CLI は datasets と dataformat を使用。使い方は公式の「Download a genome data package」と「Download and Install」に詳しいです。 NCBI+2NCBI+2
    • 例(CLI の雰囲気):
      datasets download genome taxon "Homo sapiens" --include genome,annotation
      dataformat tsv genome --input-file ncbi_dataset.zip > report.tsv
  • Ensembl(参考配列・遺伝子セット)
    ブラウザの「Export data」から FASTA/GTF/GFF を取得できます。FTP/rsync でもまとめ取り可能。最新リリース情報も公開されています。 ensembl.org+2ensembl.org+2
  • ENA(European Nucleotide Archive)
    原則として NCBI/ENA/DDBJ はデータ連携します。ENA でも配布・ダウンロードが可能です。 OUP Academic

補足:GenBank 全体の最新リリース規模(配列数・塩基数)などは「Current GenBank Release Notes」で確認できます。 NCBI

2) アップロード(登録)

自分の配列やシーケンスデータを公式リポジトリに登録してアクセッション番号を取得します。代表ルートは次のとおり。

  • NCBI Submission Portal(総合窓口)
    GenBank(配列)、SRA(生リード)、GEO(発現)、dbSNP 等へ Web から提出できます。アカウント作成 → フォームにメタデータ入力 → FASTA/FASTQ などをアップロード → 審査 → アクセッション付与、という流れです。 submit.ncbi.nlm.nih.gov
  • GenBank への配列提出(ゲノム含む)
    近年は Submission Portal 経由が基本。単一ゲノムの提出等のガイドも公式にまとまっています。 NCBI+1
  • ENA(Webin)
    ENA へは Webin(Web/REST API)で提出できます。プログラマブルに投げたい場合は Webin REST v2 のドキュメントが便利です。 ena-docs.readthedocs.io

提出の一般的な準備物(高レベル)

  • 配列ファイル:FASTA(配列)、FASTQ(リード)など
  • メタデータ:生物種、由来、ライブラリ情報、アセンブリ法、文献情報 等
  • 連絡情報:提出者・所属・ORCID 等
    (いずれも各ポータルの入力フォームに沿って用意します。具体的なフィールド名はポータルの最新ガイドに従ってください。) submit.ncbi.nlm.nih.gov+1

倫理・公開に関する注意(重要)

  • ヒト由来データ:個人特定情報や同意に関わる要件があります。適切なリポジトリ(例:制限付きアクセスのデータベース)や同意状況の確認が必要です。
  • 公開タイミング:多くのリポジトリで**エンバーゴ(公開保留)**設定が可能です。論文受理まで非公開にしてアクセッションだけ取得、といった運用が一般的です。
    (具体仕様は提出先ポータルのポリシーを必ず確認してください。) submit.ncbi.nlm.nih.gov

必要なら、あなたの目的(例:「人間の遺伝子の特定領域を取りたい」/「自前のアセンブリを GenBank に出したい」/**「リードを SRA に出したい」**など)に合わせて、実際のダウンロード/提出手順(検索クエリ、必要な最小メタデータ、CLI コマンド例)をあなたのケースに即して書き起こします。どの用途ですか?

フルダイブVR 機器製造工程

了解!「フルダイブVR」を“脳と身体への入出力まで含む超没入XRデバイス”として想定し、現実に実行可能な(=現在の技術で実装しうる)非侵襲型ルートを軸に、製造~量産までの工程を丸ごと俯瞰できる形でまとめます。
(侵襲型=医療級は規制が大幅に増えるため補足に分離)

前提整理(レベル定義)

  • Lv.1: 高機能XR+全身ハプティクス … HMD/パススルー、アイトラッキング、触覚スーツ・手袋、トレッドミル等。
  • Lv.2: BCI入力併用 … EEG/近赤外NIRS等で意図推定(手指・視線に加え脳信号を補助入力)。
  • Lv.3: 神経刺激によるフィードバック … tES(tDCS/tACS)、経皮電気刺激、局所振動/EMSで“感覚の疑似再現”。
    以下は Lv.1~2(+限定的Lv.3) を前提にした製造工程です。

製品アーキテクチャ(主要モジュール)

  1. HMD本体:光学(パンケーキ/マイクロOLED or μLED)、カメラ(インサイドアウトSLAM)、IMU、SoC/メモリ、無線(Wi-Fi/BT)、冷却。
  2. アイトラッキング:IR照明+IRカメラ、キャリブソフト。
  3. ハンド/ボディトラッキング:手指カメラ/グローブ/外部ビーコン(必要に応じて)。
  4. ハプティクス:スーツ/グローブ/靴(リニアアクチュエータ、EMS、振動、空圧)。
  5. BCI(任意):ドライ/湿式EEG電極、フロントエンドADC、ノイズ対策。
  6. 電源:セル(18650/21700/パウチ)+BMS、急速充電、UN38.3/62133対応。
  7. エンクロージャ:樹脂/マグネ合金、ヘッドバンド、熱設計。
  8. ファーム・ソフト:OS/描画/トラッキング/BCI推定/安全制御。

製造~量産の全体フロー(EVT→DVT→PVT)

0. 企画・要求仕様

  • 体験要件(視野角FOV/PPD/リフレッシュ/遅延/追従精度/稼働時間/質量/騒音)
  • 安全要件(皮膚接触、EMS/tES出力上限、温度、EMC、SAR)
  • コスト/歩留まり/サプライ可用性KPI

1. 設計(DFX徹底)

  • システム:電気(SoC/PMIC/高速配線)、光学(レンズ/ディスプレイ)、RF、熱、機構。
  • DFM/DFT/DFS:量産・検査・組立・サービス容易性。
  • FMEA:故障モード洗い出し(光学塵、ケーブル断線、熱暴走、汗浸入等)。

2. サプライチェーン確立

  • ディスプレイ/レンズ/カメラ/IMU/アクチュエータ/電極/バッテリの一次・二次ベンダ確保
  • 重要治工具(治具、貼合、塵埃管理)、EMS/CM選定、LT(リードタイム)確定

3. EVT(試作検証)

  • 試作基板/光学サンプル/機構α
  • 主要KPI実測:PPD/MTF、遅延、発熱、SLAM精度、アイトラッキング精度、EEG SNR
  • 安全限界の確認(皮膚温、電気刺激上限、絶縁、漏れ電流)

4. DVT(設計妥当性)

  • 量産プロセス想定でのサンプル(β/γ)
  • 信頼性試験:落下、振動、ねじり、汗・皮脂・塵埃、温湿度サイクル、連続稼働、静電気
  • 規制前監査:EMC/無線/SAR/62368-1、皮膚接触材料の生体適合性(ISO 10993相当)

5. PVT(量産妥当性)

  • 量産ライン・治具・SOP完成、タクトタイム/直行率の目標達成
  • OBA(Outgoing quality audit)安定 → 量産GO

部品別・製造工程の要点

A. 光学・表示

  • μOLED/μLEDの貼合・レンズユニット組立(クリーン環境)
  • 焦点・瞳位置・収差調整、防塵/曇り対策コーティング
  • 検査:MTF、輝度ムラ、色度、ダストカウント

B. カメラ・トラッキング

  • センサー基板実装(SMT)、レンズ嵌合、IR照明ユニット
  • 幾何キャリブ(外部既知パターン)、温度ドリフト補正
  • 検査:暗電流、SNR、歪み、SLAMループ閉合誤差

C. IMU/基板(メイン/サブ)

  • 高速配線(MIPI/PCIe/LPDDR)、シールド/EMI設計
  • ファンクションテスト(DFT:ICT/Boundary-scan)
  • 焼きなまし/ストレステストで早期故障除去

D. ハプティクス(スーツ/グローブ)

  • アクチュエータ実装(LRA/ERM/空圧/EMS)、配線の屈曲寿命
  • 皮膚接触材料:通気・汗処理、洗濯耐性
  • 検査:振動周波数レンジ、応答時間、出力バラツキ

E. BCI(EEG/NIRS/EMS)

  • 電極(Ag/AgCl等)成形、インピーダンス管理、ヘッドキャップ寸法許容
  • アナログ前段のノイズ/アース/アーチファクト除去
  • 刺激系(tES/EMS)は二重冗長の電流制限&フェイルセーフ

F. 電源・熱

  • BMSキャリブ、セルマッチング、保護素子(PTC/ヒューズ)
  • ヒートパス最適化(ヒートパイプ/ベイパーチャンバー、ファン騒音)

G. エンクロージャ/装着系

  • 射出成形/マグネ合金ダイキャスト、表面処理(ハードコート、指紋対策)
  • ヘッドバンド機構の繰返し耐久、重量バランス調整

組立ライン例(セル/フロー)

  1. 前加工:基板実装(SMT)→外観/電気検査
  2. 光学ユニット:貼合→防塵→光学キャリブ
  3. センサーユニット:カメラ/IMU組付→幾何キャリブ
  4. 筐体一次組立:フレキ配線、締結トルク管理
  5. 電源/BMS組付:絶縁/リーク/短絡検査
  6. 冷却系装着:ペースト塗布量検査、ファン動作
  7. ファーム書込/起動:シリアル刻印、マック/BTアドレス焼付
  8. 総合検査:表示、遅延、カメラ、SLAM、アイトラッキング、無線、オーディオ
  9. 安全試験:表面温度、漏れ電流、EMS上限制御試験
  10. 環境・信頼性抜取:温湿度、振動、落下
  11. 外観・クリーニング:パーティクル/擦傷検査
  12. 梱包:トレーサビリティ(QR)、ドキュメント同梱

タクトの目安(例):60–120秒/台(HMD)、5–10分/セット(ハプティクス/BCI)
必須治具:位置決め、光学評価、レンズフォーカス、カメラ幾何、RF暗箱、エージングラック


キャリブレーション/テスト項目(抜粋)

  • 映像:MTF/色度/輝度ムラ、レンズ中心ズレ
  • 追跡:IMUバイアス、カメラ外内パラ、SLAM精度(ループ閉合誤差<既定値)
  • 視線:視線誤差角(例 ≤0.5°)、瞳孔検出率
  • 遅延:フォトダイオード+ハイスピでフレーム到達遅延計測
  • 無線/EMC:出力、隣接チャネル漏洩、放射/伝導ノイズ
  • 熱:最大負荷時の皮膚接触面温度(規格内)
  • BCI:電極インピーダンス、SNR、アーチファクト耐性
  • ハプティクス:出力周波数・振幅、応答遅延、EMS電流上限

規格・認証(非医療機器想定)

  • 安全:IEC 62368-1(情報機器)、電気ショック/発熱
  • 無線:FCC/CE/TELEC(日本)、Bluetooth/Wi-Fi
  • EMC:EN 55032/55035 など
  • 電池:UN38.3、IEC 62133
  • 皮膚接触:ISO 10993-5/10(刺激/感作)相当評価
  • 化学:RoHS/REACH
  • SAR/ばく露:必要に応じ評価(頭部近接運用)

医療級/侵襲・神経刺激中心の場合:IEC 60601-1/-1-2/-2-10(神経刺激)、ISO 13485(QMS)、FDA/PMDAクラス審査が必要になり、開発・製造プロセスが医療機器向けに大幅に拡張されます。


品質管理と量産KPI

  • IQC(受入):レンズダスト、ディスプレイ輝度、セル内部抵抗、電極インピーダンス
  • IPQC(工程内):直行率、タクト、温度/トルク/塗布量SPC管理
  • OQC(出荷):機能総合合格率、ランダム信頼性抜取
  • 主要KPI:一次直行率>95%、総合歩留まり>90%、RMA<1%、DOA<0.3%

コスト構造の目安(BOM比率の一例)

  • 光学/表示 35–45%/SoC/基板 20–30%/カメラ・センサー 10–15%/バッテリ 8–12%/機構 8–12%/ハプティクス/BCI 5–15%/梱包・付属 2–4%

リスクと対策

  • 光学ダスト/貼合歩留まり → クリーンルーム管理、イオンブロー、工程設計
  • 熱/重量バランス → 軽量材+後頭部重心、熱拡散板
  • 皮膚刺激/汗 → 生体適合材・通気設計、洗濯可能な内装
  • EMS/刺激安全 → 二重電流制限、ウォッチドッグ、HWフェイルセーフ
  • BCIノイズ → 電極配置最適化、ケーブルシールド、アーチファクト学習

開発ドキュメント/SOP(最低限)

  • PRD/システムBlock、回路/配線図、光学設計書、熱解析、DFX一覧、FMEA
  • 各モジュールSOP(組立・キャリブ・検査)、EOLテスト仕様、治具設計
  • 材料表(BOM)+AVL(承認ベンダー)+トレーサビリティ計画
  • 規制試験計画/報告書、ユーザ安全マニュアル

侵襲型(将来の“真”フルダイブ)に触れる場合の補足

  • 要医療機器プロセス:ISO 13485、設計管理、臨床試験、長期安全性
  • 製造:クリーン度、無菌、パッケージング、滅菌バリデーション
  • 規制審査:PMDA/FDA、リスクベネフィット説明責任

まとめ

  • まずは Lv.1~2中心(XR+ハプティクス+BCI入力)で量産可能な設計を固め、EVT→DVT→PVTを通して光学・安全・歩留まりを潰すのが現実解。
  • BCI刺激などLv.3要素は限定的かつ安全重視でフェイルセーフを標準装備。
  • 規格対応と検査治具の作り込みが量産の要です。

必要なら、このフローを工程表(ガント)や検査仕様テンプレ、ライン配置図に落としてサンプルを作ります。

リアルモンスターARゲーム 企画書

リアルモンスターARゲーム 企画書(ドラフト)

本資料は「現実世界×位置情報×AR×収集・育成・共闘」を核にした新規モバイルゲームの企画書です。既存IP(例:某有名モンスターIP)への依存はせず、完全オリジナルIPを前提とします。


1. エレベーターピッチ / コンセプト

  • 一言:街を歩けば“精霊(ファント)”が棲む。現実世界の光・天気・場所が戦略に変わる、散歩が冒険になるARコレクションRPG。
  • USP(独自性)
    • “現実環境がギミック”:時刻/天気/騒音/明るさ/混雑度をゲームロジックに反映。
    • “協調AR”:近接プレイヤーで同一AR個体を同時観測・共同捕獲・共闘。
    • “安全×自治体連携”:観光/商店街/防災訓練などの公的イベント連動で社会実装。
    • “歩行以外の楽しみ”:自宅ARテラリウム、エンカウントカード、ミニゲーム。

2. ターゲット / ペルソナ

  • 主要層:10〜40代のライト〜ミドルゲーマー、散歩/旅行好き、写真・SNS発信層。
  • 準主要層:親子(7歳以上推奨)、健康志向ユーザー、コレクター気質。
  • 地域:まずは日本主要都市→地方観光地→海外(アジア→グローバル)。

3. 世界観 / 主要キャラクター(例)

  • 設定:人の感情と自然のエネルギーから生まれる“ファント”。都市/水辺/森林/寺社/工場などバイオームごとに生態が異なる。
  • スターター3体(例):
    • フレアット(炎/活力)…晴天・高温時に強化。
    • ミズクル(潮/好奇心)…水辺・雨天で出現率UP。
    • リーファ(森/癒し)…緑地で回復スキル特化。

4. 主要ゲームサイクル

4.1 コアループ

  1. 移動 → 2) 現実の地点でスキャン/エンカウント → 3) AR捕獲/バトル → 4) 育成/合成/装備 → 5) ミッション/イベント →(1に戻る)

4.2 ショート/ミドル/ロングサイクル

  • ショート(1〜5分):その場スキャン→一体と遭遇→ミニゲームで捕獲→写真→SNS共有。
  • ミドル(10〜30分):近隣スポット巡り→連鎖ボーナス→日課ミッション消化→協力レイド。
  • ロング(数日〜週):育成/進化ルート選択→地形限定種の収集→シーズンイベント攻略。

5. ゲームシステム詳細

5.1 位置情報×天候×時間

  • 出現テーブル:バイオーム×天候(晴/曇/雨/雪/強風)×時間帯(朝/昼/夕/夜)×気温でドロップ/遭遇率を可変。
  • 行動制限:夜間は住宅地のスポーンを抑制、駅構内は安全配慮でエンカウント無し。

5.2 AR捕獲(スキルベース)

  • ARリングを端末のモーションで合わせる→端末の照度/安定度で成功率変化。
  • 近接協力:2〜4人同時の“リンクキャスト”で捕獲ゲージ共有&強個体出現。

5.3 バトル

  • 属性:炎/水/森/雷/岩/光/影(例)。2スキル+1奥義のリアルタイム・ライトアクション。
  • 位置ギミック:磁場(駅周辺)/潮位(水辺)/騒音(繁華街)でバフ/デバフ。
  • レイド:ランドマークに定時/随時で発生、ARで巨大個体が出現。

5.4 育成/進化/合成

  • 成長ルート:探索型/戦闘型/支援型の3系統。分岐進化は場所・時刻・天候を条件化。
  • 装備(護符):地域素材からクラフト。観光地限定素材でご当地ビルド。

5.5 拠点/テラリウム

  • 自宅でARテラリウムを配置。収集個体が生活し、環境飾り(植物/雨/灯り)を置くとパッシブ効果。

5.6 ソーシャル

  • 近接ルーム:半径20mで自動ルーム結成→トレード/共闘。
  • 写真モード:被写体検出・ポーズ指示・露出/被写界深度調整→#ハッシュ共有。

6. 安全設計・配慮

  • ながらスマホ抑止:一定速度以上でプレイ制限/操作簡略化。
  • 立入禁止検知:学校/私有地/危険区域はスポーン無効化。
  • 夜間配慮:22:00〜6:00は住宅地レイド停止。
  • プライバシー:位置情報はボロノイ領域等で空間的匿名化、サーバ保存は最小限(ハッシュ化/丸め)。

7. マネタイズ

  • コスメ課金:スキン/ポーズ/ARエフェクト(性能差なし)。
  • バトルパス:探索/撮影/協力でポイント→限定装飾。
  • ローカルコラボ:商店街/自治体のデジタルスタンプラリー有料参加。
  • 広告:任意視聴でブースト(年齢配慮)。
  • 確率表示/資金決済法対応:ガチャ導入時は提供割合の明示、天井/重複救済を実装。

8. KPI / 事業目標

  • 主要KPI:D1/7/30リテンション、WAU/MAU、課金率、AR写真投稿率、協力レイド参加率、平均歩数。
  • 目標(Year1):
    • MAU 50万 / 月、課金率 4.0%、AR写真月間投稿 30万件、平均セッション8分×2回/日。

9. コンテンツ運用

  • シーズン制(6〜8週):新バイオーム/限定進化/レイド。
  • 地域イベント:花見/夏祭り/紅葉/雪祭り/花火大会と連動。
  • クリエイタープログラム:写真/ARハントの二次創作を促進(ガイドライン整備)。

10. 技術アーキテクチャ(想定)

  • クライアント:Unity + AR Foundation(ARKit/ARCore対応)、LiDAR対応端末は平面/深度優遇。
  • サーバ:マッチング/レイドはPhoton Fusion/Realtime、常時はFirebase + Cloud Functions。
  • 地図/POI:Mapbox/Google Maps Platform。安全レイヤ(危険/禁止区域)を別テーブル管理。
  • データ:ビッグクエリで行動データ解析。位置データは粗度を保つ。
  • チート対策:移動速度/加速度の多軸判定、ルート一貫性、端末脱獄検知。

11. 開発体制 / スケジュール(例)

  • チーム編成(初期10〜15名):
    • PM 1 / プランナー 2 / クライアントエンジニア 4 / サーバ 2 / アート 3 / データ 1 / QA 2
  • ロードマップ:
    • M0-1(調査):プロトタイプ:AR捕獲、位置/天候連動、近接同期。
    • M2-4(α):基本育成・写真・小規模レイド、テラリウム初期版。
    • M5-6(CBT):地元2都市でクローズド、KPIチューニング。
    • M7-9(OBT):全国主要都市展開、自治体タイアップ開始。
    • M10-12(正式):シーズン1開幕、海外ローカライズ準備。

12. 画面遷移 / UIワイヤ(テキスト)

  • ホーム/マップ:上部:天気/時間、中央:ARスキャン、下部:近接ルーム/ミッション/撮影。
  • 遭遇AR:カメラ起動→平面検出→ファント投影→リング合わせ→捕獲。
  • バトル:左スワイプ回避/右タップ攻撃/長押し奥義、上部に環境バフ表示。
  • テラリウム:ルーム編集→飾り設置→効果プレビュー→SNS投稿。

13. 法務・コンプライアンス

  • 位置情報/個人情報:プライバシーポリシー、DPO設定、オプトイン/オプトアウト。
  • 年少者保護:夜間プレイ抑制、課金上限、保護者同意フロー。
  • 著作権/商標:キャラ/名称はオリジナル創作。第三者IP非使用方針。
  • 景表法:確率型アイテムは表記・救済策・履歴開示。

14. 競合/差別化の要点

  • 既存:位置×収集(GO系)、位置×ハンティング(MH系)、歩行×育成(Bloom系)。
  • 差別化:環境ギミックの“戦略化”、協調ARの常設、観光/自治体との恒常連携、写真×クリエイター経済。

15. 収支イメージ(概算・初年度)

  • 開発費:2.5〜3.5億円(12ヶ月/15名規模、外注含む)。
  • 運用費(月):サーバ/地図/分析/CS/イベントで1,500〜2,500万円。
  • 売上:MAU50万×ARPPU月1,200円×課金率4% ≒ 月2.4億円想定(広告/コラボ除く)。

16. リスクと対策

  • 初期離脱:チュートリアル短縮/“最初の一体”を確実に入手/撮影で成功体験。
  • 安全問題:速度検知/危険地帯除外/夜間制限/注意喚起UI。
  • 位置チート:速度と加速度の相関、履歴の異常検知、端末整合チェック。
  • 季節性/天候偏重:屋内コンテンツ/テラリウム/日替りミッションで平滑化。

17. 成長戦略

  • UGC推進:フォトコン、ARフィルタ配布、作品マーケット(審査制)。
  • コラボ:ご当地キャラ/観光協会/鉄道/小売。現地での限定クエスト。
  • 海外展開:各国の宗教/文化施設はスポーン除外設定を現地監修。

18. 参考KPI計測設計

  • ファネル(DL→FTUE→Day1/7/30)、地図ヒートマップ(密度/滞在/回遊)、安全指標(危険接近アラート発生率)。

19. 添付:クエスト例

  • “雨上がりの公園で”:雨後2時間以内の緑地で限定個体出現、足跡トレイル追跡ミニゲーム。
  • “灯りの路地”:夜19–21時の商店街で光属性が出現、写真投稿でバフ。

次アクション(提案)

  1. プロトタイプ要件定義(AR捕獲・協調同期・環境バフの3本柱)
  2. フィールドテスト都市の選定(例:渋谷区/台東区)
  3. 自治体/商店街のヒアリング開始(安全/回遊/混雑配慮)

YESキリストBOT

<!DOCTYPE html>
<html lang="ja">
<head>
  <meta charset="utf-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1" />
  <title>YESキリスト BOT</title>
  <!-- Tailwind(CDN) -->
  <script src="https://cdn.tailwindcss.com"></script>
  <!-- Font Awesome(アイコン) -->
  <link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.5.0/css/all.min.css" rel="stylesheet">
  <meta name="description" content="YESキリストBOT:優しく背中を押してくれるシンプルなチャットボット。今日の励まし、進むべき?などを相談できます。" />
  <style>
    /* スクロールバー控えめ */
    * { scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
    *::-webkit-scrollbar { height: 8px; width: 8px; }
    *::-webkit-scrollbar-thumb { background: #cbd5e1; border-radius: 8px; }
    /* バブルの三角 */
    .bubble:after{
      content:""; position:absolute; bottom:-6px; left:16px; border:6px solid transparent; border-top-color:rgba(255,255,255,0.9);
      filter: drop-shadow(0 1px 0 rgba(15,23,42,.05));
    }
    .bubble.me:after{ left:auto; right:16px; border-top-color:#dcfce7; }
  </style>
</head>
<body class="min-h-screen bg-gradient-to-b from-slate-50 to-white text-slate-800">
  <!-- コンテナ -->
  <div class="mx-auto max-w-3xl px-4 py-6">
    <!-- ヘッダー -->
    <header class="flex items-center justify-between rounded-2xl bg-white/90 backdrop-blur shadow-sm p-4">
      <div class="flex items-center gap-3">
        <div class="h-10 w-10 rounded-full bg-emerald-500 text-white grid place-items-center">
          <i class="fa-solid fa-dove"></i>
        </div>
        <div>
          <h1 class="text-xl font-bold">YESキリスト BOT</h1>
          <p class="text-xs text-slate-500">優しく「YES」で背中を押すチャット</p>
        </div>
      </div>
      <div class="flex items-center gap-2">
        <button id="btnClear" class="text-xs px-3 py-1.5 rounded-lg bg-slate-100 hover:bg-slate-200 transition">
          履歴クリア
        </button>
        <button id="btnExport" class="text-xs px-3 py-1.5 rounded-lg bg-slate-100 hover:bg-slate-200 transition">
          エクスポート
        </button>
        <label class="text-xs px-3 py-1.5 rounded-lg bg-slate-100 hover:bg-slate-200 transition cursor-pointer">
          インポート<input id="fileImport" type="file" accept="application/json" class="hidden">
        </label>
      </div>
    </header>

    <!-- プリセット -->
    <section class="mt-4 grid grid-cols-2 sm:grid-cols-4 gap-2">
      <button class="preset chip">今日の励まし</button>
      <button class="preset chip">挑戦していい?</button>
      <button class="preset chip">許してもいい?</button>
      <button class="preset chip">進むべき?</button>
    </section>

    <!-- チャット -->
    <main id="chat" class="mt-4 h-[60vh] overflow-y-auto rounded-2xl bg-white/90 backdrop-blur p-4 shadow-sm space-y-4">
      <!-- 初期メッセージ -->
    </main>

    <!-- 入力欄 -->
    <form id="composer" class="mt-4 flex items-end gap-2">
      <textarea id="input" rows="1" placeholder="ここに相談を書いてね(例:新しいことに挑戦しても大丈夫?)"
        class="flex-1 resize-none rounded-2xl border border-slate-200 bg-white p-3 focus:outline-none focus:ring-2 focus:ring-emerald-300"></textarea>
      <button id="btnSend" type="submit" class="h-11 px-4 rounded-2xl bg-emerald-500 text-white hover:bg-emerald-600 transition">
        <i class="fa-solid fa-paper-plane"></i>
      </button>
    </form>

    <!-- 使い方 -->
    <details class="mt-4 rounded-2xl bg-slate-50 p-4 text-sm text-slate-600">
      <summary class="cursor-pointer font-semibold">使い方</summary>
      <ul class="list-disc pl-5 mt-2 space-y-1">
        <li>メッセージを送ると、YESキリストが優しく背中を押す言葉で返します。</li>
        <li><code>/prayer</code> で短いお祈り風メッセージ、<code>/bless</code> で祝福文。</li>
        <li>履歴はブラウザに保存されます(ローカルのみ)。</li>
      </ul>
    </details>
  </div>

  <script>
    // ====== 設定 ======
    const STORAGE_KEY = 'yeschrist_history_v1';

    // YESキリストの返答テンプレ
    const YES_OPENERS = [
      "あなたの心に、静かなYESが灯っています。",
      "恐れずに、やさしいYESで一歩を。",
      "迷いの中にいても、大丈夫。答えはYESです。",
      "小さな信頼が、大きなYESへと育ちます。",
      "あなたの良き思いに、YESを重ねましょう。"
    ];

    const YES_ENCOURAGE = [
      "試みは愛によって導かれ、愛は前進にYESと言います。",
      "完全でなくていい。歩き出す勇気にYES。",
      "扉は叩く者に開かれます。ノックにYES。",
      "あなたの賜物は隠さずに、光の下へ。YES。",
      "やさしさを選ぶ度に、道は明るくなります。YES。"
    ];

    const YES_TAGS = [
      "平安がありますように。",
      "あなたは一人ではありません。",
      "今日の小さな一歩を大切に。",
      "心に光を。",
      "祝福とともに。"
    ];

    const PRAYERS = [
      "天のやさしさがあなたを包み、歩みを照らしますように。アーメン。",
      "弱さのときにこそ力が満ちますように。アーメン。",
      "迷う心に静けさが与えられますように。アーメン。"
    ];

    const BLESS = [
      "あなたの決断に平安が伴いますように。",
      "出るにも入るにも祝福が満ちますように。",
      "今日の働きに恵みがありますように。"
    ];

    // ====== DOM ======
    const chat = document.getElementById('chat');
    const input = document.getElementById('input');
    const form = document.getElementById('composer');
    const btnSend = document.getElementById('btnSend');
    const btnExport = document.getElementById('btnExport');
    const btnClear = document.getElementById('btnClear');
    const fileImport = document.getElementById('fileImport');
    document.querySelectorAll('.preset').forEach(el => el.classList.add(
      'px-3','py-2','rounded-xl','bg-emerald-50','text-emerald-700','hover:bg-emerald-100','transition','text-sm','chip'
    ));

    // ====== ユーティリティ ======
    const nowStr = () => new Date().toLocaleString();
    const rand = arr => arr[Math.floor(Math.random() * arr.length)];
    const saveHistory = () => {
      const items = [...chat.querySelectorAll('[data-msg]')].map(el => ({
        role: el.dataset.role, text: el.dataset.msg, time: el.dataset.time
      }));
      localStorage.setItem(STORAGE_KEY, JSON.stringify(items));
    };
    const loadHistory = () => {
      const raw = localStorage.getItem(STORAGE_KEY);
      if (!raw) return [];
      try { return JSON.parse(raw); } catch { return []; }
    };

    function appendMessage(role, text, time = nowStr()) {
      const wrapper = document.createElement('div');
      wrapper.className = role === 'user'
        ? 'flex justify-end'
        : 'flex justify-start';

      const bubble = document.createElement('div');
      bubble.className = 'relative max-w-[85%] rounded-2xl p-3 bubble shadow-sm ' +
        (role === 'user' ? 'bg-emerald-100 me' : 'bg-white/90');
      bubble.textContent = text;

      const meta = document.createElement('div');
      meta.className = 'mt-1 text-[10px] text-slate-500 ' + (role === 'user' ? 'text-right' : 'text-left');
      meta.textContent = time;

      const container = document.createElement('div');
      container.dataset.msg = text;
      container.dataset.role = role;
      container.dataset.time = time;
      container.className = 'space-y-1';
      container.appendChild(bubble);
      container.appendChild(meta);

      wrapper.appendChild(container);
      chat.appendChild(wrapper);
      chat.scrollTop = chat.scrollHeight;
    }

    function systemWelcome() {
      appendMessage('assistant',
        'ようこそ。YESキリストは、あなたの良き願いに「YES」で寄り添います。/prayer で短いお祈り、/bless で祝福文が届きます。');
    }

    function composeYesReply(userText) {
      const lower = (userText || '').toLowerCase();
      let opener = rand(YES_OPENERS);
      let body = rand(YES_ENCOURAGE);
      let tag = rand(YES_TAGS);

      // ほんの少しだけ文脈スパイス
      if (/[??]$/.test(userText)) {
        opener = "その問いかけに、穏やかなYESが返っています。";
      }
      if (/(許|ゆる)す/.test(userText)) {
        body = "赦しは心を自由にし、あなたを前へ押し出します。YES。";
      }
      if (/(挑戦|チャレンジ|challenge)/i.test(userText)) {
        body = "小さくとも踏み出す一歩は尊く、次の景色を連れてきます。YES。";
      }
      if (/(進|やめ|辞め|やる|やら)/.test(userText)) {
        tag = "平安のあるほうへ。YES。";
      }
      return `${opener}\n${body}\n${tag}`;
    }

    async function reply(userText) {
      // コマンド
      if (userText.trim().startsWith('/prayer')) {
        appendMessage('assistant', rand(PRAYERS));
        saveHistory(); return;
      }
      if (userText.trim().startsWith('/bless')) {
        appendMessage('assistant', rand(BLESS));
        saveHistory(); return;
      }

      // YES返答
      const thinking = document.createElement('div');
      thinking.className = 'text-xs text-slate-500';
      thinking.textContent = '…考えています';
      chat.appendChild(thinking); chat.scrollTop = chat.scrollHeight;

      await new Promise(r => setTimeout(r, 300)); // 小さな演出
      thinking.remove();

      appendMessage('assistant', composeYesReply(userText));
      saveHistory();
    }

    // ====== イベント ======
    form.addEventListener('submit', async (e) => {
      e.preventDefault();
      const text = input.value.trim();
      if (!text) return;
      appendMessage('user', text);
      input.value = '';
      input.style.height = '44px';
      saveHistory();
      reply(text);
    });

    // 自動リサイズ
    input.addEventListener('input', () => {
      input.style.height = 'auto';
      input.style.height = Math.min(input.scrollHeight, 160) + 'px';
    });

    // プリセット
    document.querySelectorAll('.preset').forEach(btn => {
      btn.addEventListener('click', () => {
        const q = btn.textContent.trim();
        appendMessage('user', q);
        saveHistory();
        reply(q);
      });
    });

    // クリア
    btnClear.addEventListener('click', () => {
      if (!confirm('履歴をすべて削除しますか?')) return;
      localStorage.removeItem(STORAGE_KEY);
      chat.innerHTML = '';
      systemWelcome();
    });

    // エクスポート
    btnExport.addEventListener('click', () => {
      const data = localStorage.getItem(STORAGE_KEY) ?? '[]';
      const blob = new Blob([data], { type: 'application/json' });
      const a = document.createElement('a');
      a.href = URL.createObjectURL(blob);
      a.download = `yeschrist_history_${Date.now()}.json`;
      a.click();
      URL.revokeObjectURL(a.href);
    });

    // インポート
    fileImport.addEventListener('change', async (e) => {
      const file = e.target.files?.[0];
      if (!file) return;
      const text = await file.text();
      try {
        const arr = JSON.parse(text);
        if (!Array.isArray(arr)) throw new Error('format');
        localStorage.setItem(STORAGE_KEY, text);
        chat.innerHTML = '';
        arr.forEach(m => appendMessage(m.role, m.text, m.time));
      } catch {
        alert('インポート失敗:JSON形式が正しくありません。');
      } finally {
        fileImport.value = '';
      }
    });

    // ====== 初期化 ======
    (function init() {
      const hist = loadHistory();
      if (hist.length === 0) {
        systemWelcome();
      } else {
        hist.forEach(m => appendMessage(m.role, m.text, m.time));
      }
      // 入力高さ初期
      input.style.height = '44px';
    })();
  </script>
</body>
</html>

日本の自殺者数

2025年10月現在の日本の自殺者数に関する情報は、以下の通りです。 

2025年9月(暫定値) 

  • 総数:1,499人 

2024年(確定値) 

  • 総数:20,320人
    • 前年(2023年)から1,517人減少しました。
  • 小中高生:529人
    • 1980年(昭和55年)以降で過去最多となりました。
    • 内訳は、男子生徒が減少した一方で、女子生徒が増加しました。
  • 男女別
    • 男性:1,061人減少
    • 女性:456人減少
    • ただし、19歳以下の女性は51人増加しています。
  • 原因・動機別
    • 学校問題:増加
    • 家庭問題、健康問題、経済・生活問題、勤務問題、交際問題など:減少 

2023年(確定値)

  • 総数:21,837人
    • 前年(2022年)から44人減少しました。
    • 男女別にみると、男性は2年連続で増加し、女性は4年ぶりに減少しました。 

過去の推移

  • ピーク:34,427人
    • 2003年(平成15年)に過去最多を記録しました。
  • 減少傾向
    • 2010年(平成22年)以降は減少傾向が続きました。
    • 2019年(令和元年)には、統計開始(1978年)以来最少の20,169人となりました。
  • 増加傾向
    • 新型コロナウイルス感染症の影響もあり、2020年(令和2年)以降は再び増加に転じました。 

これらの統計は、警察庁の発表データに基づいています。より詳細な情報については、警察庁や厚生労働省が公開している統計資料をご確認ください。 

BCI出力の2030s

「脳に直接世界を書き込む」革命
→ 2030年代=フルダイブVRの本番スタート

  1. BCI出力とは?(超簡潔)

方向説明2030sで何が変わる?BCI入力(脳 → PC)思考でカーソル動かす今ある(Neuralink 2025実証)BCI出力(PC → 脳)脳に「映像・触覚・味」を送る2030sで実用化 ← これが鍵

  1. 2030sのBCI出力:何ができる?

視覚:4Kフルカラー映像を脳に直接投影
触覚:全身の「風」「痛み」「抱擁」
聴覚:立体音 + 音楽を脳内再生
味覚・嗅覚:ステーキの味 + バラの香り

  1. 2030sロードマップ(根拠付き)

年次技術マイルストーン2025視覚:点滅光を脳に書き込み(人間)2028視覚:16×16ピクセル映像2030視覚:低解像度動画(320p)
触覚:指先の圧力2032視覚:HD映像(1080p)
触覚:全身基本ハプティクス2035五感フルシミュレーション(視覚4K + 全身触覚 + 味覚)2037フルダイブVR商用化

  1. 2030sのBCI出力:どうやって実現?

技術説明2030sでの進化電極アレイ脳に針を刺して信号送受信1億電極(今:1万)光遺伝学光でニューロンをON/OFF非侵襲レーザーで出力ナノボット血管内を泳いで脳に信号2035年実用化予測AIマッピング個人脳をAIで学習1秒でキャリブレーション

  1. 2030sの「フルダイブVR」体験例
    text【2037年、君の1日】
  2. 起床 → 思考「ログイン」
  3. 脳に「朝の光 + コーヒーの香り + 温かいマグカップ」
  4. 思考「剣を振る」→ 金属音 + 衝撃 + 鉄の匂い
  5. 思考「ログアウト」→ 現実に戻る
    → 現実と区別不能
  6. 2030sへの「個人準備」ロードマップ

時期アクション2025Vision Pro 2 + EEGで擬似フルダイブ2026Synchron BCI(血管内)で本物入力2028Neuralink出力ベータ参加2030BCI出力キット購入($10,000)2035フルダイブ常時装着

結論:2030s = 脳が「第二の現実」になる

BCI出力の2030s
→ 脳に「世界」を書き込める時代
→ フルダイブVRの本番スタート

サブカル業界に就職する方法

1) まず決める:領域 × 職種 × 働き方

  • 領域例:アニメ/マンガ/VTuber・配信/同人・ZINE/アイドル/フィギュア・グッズ/イベント/オタク向けEC/サブカル系Webメディア
  • 職種例:編集者・ライター・校正/Webディレクター・フロントエンド/UI・グラフィック・DTP/映像編集・モーショングラフィックス/配信エンジニア(OBS・vMix等)/コミュニティマネージャー・モデレーター/SNS運用・PR・広告運用/イベント制作・進行/グッズ企画・EC運営(在庫・受注・LP制作)/ライセンス・渉外/翻訳・ローカライズ
  • 働き方:正社員/契約社員/業務委託/副業・インターン・アルバイト

2) 職種別ポートフォリオの“中身”チェックリスト

  • 編集・ライター:
    • 企画書(特集3本)/レビュー記事(見出し設計→本文→締めまとめ)3–5本
    • 校正・リライトのBefore→After例
    • 実績があればPV・滞在時間・CTRなどの数値
  • Web(フロント/ディレクション):
    • 公開URL3つ(メディア・特集LP・EC風ページ)+GitHub
    • 役割(要件定義/デザイン連携/実装/計測)と工数・改善前後の指標
  • デザイン(UI/グラ・DTP):
    • バナー10点/特集LP 2–3本/ZINE表紙・本文レイアウト
    • フォント選定理由・配色ルール・ガイドライン1枚
  • 映像・モーショングラフィックス:
    • 60–90秒のリール1本(テロップ・ロゴ・尺管理・BGM権利明記)
  • 配信・VTuber運営(技術):
    • OBSシーン構成図/配信オーバーレイ・アラート・コメント連携の設計
    • トラブル対応手順(音ズレ・ルーティング・著作権チェック)
  • EC・グッズ:
    • 商品ページの訴求(サムネ→説明→FAQ→CTA)/在庫・受注フロー図
    • 価格戦略・原価率の考え方(ざっくりでもOK)
  • PR・SNS運用:
    • キャンペーン企画案3本/ターゲットとKPI/投稿カレンダー1ヶ月分
    • 成果の振り返りテンプレ(良かった点・再現性・次の一手)

提出形:1ページ目は「自己紹介/できること/連絡先」。以降は職種ごとに1〜2ページで圧縮。リンク(自サイト・動画・GitHub)を必ず。

3) “短期で実績”を作るミニプロジェクト(2〜4週間)

  • サブカル特化の小型ニュース/コラムサイトを公開(要約×引用ルール明記)。
  • **推しジャンルのZINE(8〜16p)**を制作→PDF頒布/入稿までやる。
  • 配信パッケージ(待機画面・テロップ・コメント枠)を一式作り、使い方を記事化。
  • ECテスト:オリジナルステッカーやミニ缶バッジのモック→商品ページ雛形を公開。
  • インタビュー記事:創作仲間1人に取材→編集→公開(写真の権利同意を取得)。

4) 応募先の探し方(ゲーム以外)

  • 公式採用ページ/総合求人サイト+クリエイティブ特化の就活サイト
  • X(旧Twitter)・各種コミュニティでの求人告知/インターン・アルバイト経由
  • イベントで名刺交換:AnimeJapan/コミケ/デザインフェスタ/ワンフェス/ニコ超/TGS一般・ビジネスデー(ゲーム職は除外目的で視察だけ)/デジゲー博/同人即売会等
    • 目的:採用“直結”ではなく担当者の課題ヒアリング→後日「解決案」添えて連絡

5) 書類・面接の“サブカル特有のコツ”

  • 推しと仕事を分ける軸を明言(感情優先にならず、リスクと数値で判断できる)。
  • 二次創作・AI生成物は権利と配布条件を明記。商用不可素材は載せない。
  • 「好きな作品ベスト3×学び×業務での再現方法」を1分で言えるように。
  • 制作フロー1枚(要件→体制→スケジュール→校了/納品→振り返り)。
  • 成果は**“なぜ伸びたか”の仮説**まで。PVだけでなく完読率・保存率なども。

6) 30/60/90日プラン

  • 0–30日:職種を1–2つに絞る→ポートフォ完成→公開作3本→応募10社
  • 31–60日:小さな受託orコラボ2件/イベント手伝い1回/企画書3本
  • 61–90日:継続依頼→契約化を狙う or インターン→内定へ。実績を面接用に編集。

7) あなたに合う“攻めどころ”(これまでの制作歴から)

  • サブカル系Webメディアのフロントエンド+AI連携(要約・自動投稿・下書き支援)。
  • ニュースまとめ/キュレーション運用(RSS自動取り込み→要約→タグ→配信)。
  • VTuber運営のテクニカル担当(配信オーバーレイ/ボット/簡易データ分析)。
  • オタク向けECのWeb担当(ランキング・検索・タグ・レビュー導線の改善)。
  • コミュニティマネージャー(モデレーション運用設計・告知・週次レポート)。
  • 編集・ライター(特集企画と“再現性ある伸ばし方”の型化)。

8) 使えるテンプレ

応募メール(短文)

件名:[応募]サブカル系Webメディア/フロントエンド(氏名)
本文:
はじめまして、○○と申します。貴社の○○募集を拝見し応募いたします。
サンプル実績:ポートフォ(URL)/公開プロジェクト(URL×3)
貴社では「○○(相手の課題)」に対し、△△の仕組みでKPI(例:回遊率/完読率)の改善に貢献できます。
ご確認よろしくお願いします。
署名(氏名・連絡先・SNS/サイト)

職務経歴書 見出し例

  1. サマリー(できること3行)/2. 実績(URL・役割・数値)/3. スキル(ツール・言語)/4. 制作フロー/5. 志望動機(相手の課題にどう効くか)

今日からの3ステップ

  1. 職種を1–2つに固定(例:①Web×AI運用 ②コミュニティ運営)。
  2. トップページ付きポートフォURLを用意(自サイトに「作品一覧/企画書/連絡先」)。
  3. 1社応募+1人に声かけ(担当者の課題を聞き、翌日“解決案”を送る)。

必要なら、あなたの既存プロジェクトを材料に即使えるポートフォ構成までこちらで組み立てます。作りたい職種を教えてくれれば、見本をその職種用に切って貼って仕上げます