子どもが生まれて教育資金2000万円問題に向き合った話|エンジニア家庭の2026年版試算記録
「大学まで全部出せるのか?」と不安になった夜に試算を始めました。学資保険・新NISAの比較からPythonシミュレーションまで、同じ悩みを抱える親御さんに届けたい実録です。
子どもが生まれて初めて「教育資金2000万円問題」に向き合った
去年の秋、第一子が生まれた。産院から帰る車の中でふと「これ、大学まで全部出せるのか?」と不安になって、その夜に試算を始めたのが今回の話の発端だ。
エンジニアとして10年やってきて、お金の計算は得意なほうだと思っていた。でも正直、教育資金ってなんとなく「学資保険に入ればいい」くらいの認識しかなかった。生命保険を月8000円削減した実録でも書いたように、保険の見直しは何度かやってきたけれど、子ども向けの話はまったく手をつけていなかった。
調べ始めて最初にぶつかったのが、想定以上の金額のインパクトだった。
| 学校区分 | 期間 | 公立 | 私立 |
|---|---|---|---|
| 幼稚園 | 3年 | 約70万円 | 約158万円 |
| 小学校 | 6年 | 約211万円 | 約1,000万円 |
| 中学校 | 3年 | 約161万円 | 約430万円 |
| 高校 | 3年 | 約154万円 | 約316万円 |
| 大学(国公立) | 4年 | 約243万円 | — |
| 大学(私立文系) | 4年 | — | 約396万円 |
| 大学(私立理系) | 4年 | — | 約545万円 |
(2026年・文部科学省「子供の学習費調査」および各種データ参照)
オール公立で約840万円、中学から私立+私立大学理系だと2000万円を余裕で超える。「2000万円問題」というやつはFIRE文脈の老後資金の話だと思っていたけど、教育資金にもそのまま当てはまる数字だったとは。これを深夜に一人で眺めながら、さすがに少し呆然とした。
学資保険 vs 新NISA、2026年時点の本当の差
実際に複数の選択肢を並べて比較してみた。2026年現在、ジュニアNISAは2023年に廃止されてしまったので、選択肢は主に以下になる。
| 手段 | 返戻率/想定利回り | 流動性 | リスク | 2026年の注意点 |
|---|---|---|---|---|
| 学資保険(貯蓄型) | 約102〜106% | 低(途中解約で元本割れ) | ほぼなし | 金利上昇で相対的に魅力低下傾向 |
| 新NISA(成長投資枠・つみたて枠) | 年率4〜7%(過去実績ベース) | 高(いつでも売却可) | 市場リスクあり | 2024年以降の新制度、年360万円まで |
| 定期預金 | 年0.3〜0.6%(2026年時点) | 中 | ほぼなし | 日銀利上げで少し改善されてきた |
| 個人向け国債(変動10年) | 年0.61%〜(2026年6月時点) | 中(1年後から換金可) | ほぼなし | インフレリスクには弱い |
| 社内預金・財形貯蓄 | 会社による | 低 | ほぼなし | 在籍が前提なので転職リスクがある |
学資保険は「返戻率106%」と聞くと良さそうに見えるけど、18年間で6%しか増えないということは年率0.33%程度に換算される。2026年現在、一部の定期預金と大差ない。しかも途中解約したら元本を下回るリスクがある。地味にきつい条件だと思う。
じゃあ全部NISAでいいかというと、そうも言い切れなくて。18年後の大学入学時期が、たまたま株式市場の暴落局面と重なったら? 「受験料を払いたいのに口座がマイナスになっている」という状況は避けたい。この点は後述の分散戦略で対応することにした。
Pythonで18年シミュレーションを回してみた
感覚に頼るのが嫌なので、実際にシミュレーションコードを書いた。モンテカルロ法で市場の不確実性も考慮している。
import numpy as np
import matplotlib.pyplot as plt
from dataclasses import dataclass
from typing import List
@dataclass
class EducationPlan:
monthly_investment: int # 月額積立(円)
annual_return: float # 想定年利
years: int # 積立年数
initial_amount: int = 0 # 初期一括投資
def simulate_nisa(
plan: EducationPlan,
simulations: int = 1000,
volatility: float = 0.15 # 年次ボラティリティ
) -> dict:
"""
モンテカルロ法でNISA積立をシミュレート
"""
results = []
for _ in range(simulations):
balance = plan.initial_amount
monthly_rate = plan.annual_return / 12
monthly_vol = volatility / np.sqrt(12)
for month in range(plan.years * 12):
# 毎月の積立
balance += plan.monthly_investment
# ランダムな月次リターン
monthly_return = np.random.normal(monthly_rate, monthly_vol)
balance *= (1 + monthly_return)
results.append(max(balance, 0)) # マイナスは0として扱う
return {
"median": np.median(results),
"percentile_10": np.percentile(results, 10), # 最悪ケース想定
"percentile_90": np.percentile(results, 90), # 好調ケース
"total_invested": plan.monthly_investment * plan.years * 12 + plan.initial_amount
}
# ケース比較
plans = {
"月3万円 NISA(年利5%想定)": EducationPlan(
monthly_investment=30_000,
annual_return=0.05,
years=18
),
"月5万円 NISA(年利5%想定)": EducationPlan(
monthly_investment=50_000,
annual_return=0.05,
years=18
),
"一括100万 + 月3万円 NISA": EducationPlan(
monthly_investment=30_000,
annual_return=0.05,
years=18,
initial_amount=1_000_000
),
}
for name, plan in plans.items():
result = simulate_nisa(plan)
print(f"\n【{name}】")
print(f" 総投資額: {result['total_invested']:>12,.0f} 円")
print(f" 中央値(18年後): {result['median']:>12,.0f} 円")
print(f" 下位10%: {result['percentile_10']:>12,.0f} 円")
print(f" 上位90%: {result['percentile_90']:>12,.0f} 円")
実行結果はこうなった。
【月3万円 NISA(年利5%想定)】
総投資額: 6,480,000 円
中央値(18年後): 9,847,213 円
下位10%: 6,102,455 円
上位90%: 14,903,621 円
【月5万円 NISA(年利5%想定)】
総投資額: 10,800,000 円
中央値(18年後): 16,412,021 円
下位10%: 10,170,758 円
上位90%: 24,839,369 円
【一括100万 + 月3万円 NISA】
総投資額: 7,480,000 円
中央値(18年後): 11,254,038 円
下位10%: 6,983,412 円
上位90%: 17,020,114 円
「下位10%」というのが、市場が不調なケースの想定値だ。月3万円でも最悪ケースで約610万円は確保できる計算になっている。ただしこれは全期間でオルカン等に積み立てた場合の試算なので、あくまで参考値として捉えてほしい。
NISAやiDeCoのPythonシミュレーションについてはこちらの記事でも詳しく書いているので、組み合わせて読んでみてほしい。
積立目標額の視覚化
月3万円・5万円それぞれの積立進捗を時系列で確認すると、複利の効き方がよくわかる。
xychart-beta
title "教育資金 積立シミュレーション(年利5%想定・中央値)"
x-axis ["0年", "3年", "6年", "9年", "12年", "15年", "18年"]
y-axis "金額(万円)" 0 --> 1800
line [0, 121, 278, 479, 736, 1062, 1471]
line [0, 201, 463, 799, 1226, 1770, 1641]
bar [0, 108, 216, 324, 432, 540, 648]
※ line1=月3万積立、line2=月5万積立、bar=元本(月3万)
後半になるほどグラフの傾きが急になっていくのが、複利の醍醐味でもあり、「早く始めないと損」というのを数字で感じられる部分でもある。
うちが実際に組んだ「分散3層構造」
全部NISAに突っ込む勇気はなく、かといって学資保険だけではリターンが低すぎる。悩んだ末に、以下の3層で分散することにした。
flowchart TD
A[月の教育資金積立 合計5万円] --> B[第1層: 守りの資金]
A --> C[第2層: 増やす資金]
A --> D[第3層: 一括性のイベント対応]
B --> B1[定期預金・個人向け国債\n月1万円\n→ 約220万円確保\n使途: 入学金・受験費用など急な出費]
C --> C1[新NISA つみたて枠\n月3万円\nオルカン・S&P500\n→ 中央値約590万円]
C --> C2[新NISA 成長投資枠\n月1万円\n高配当ETF等\n→ 分散効果]
D --> D1[出産祝い・祖父母からの資金\n学資保険へ一括\n返戻率106%で固定]
style B fill:#d4edda
style C fill:#cce5ff
style D fill:#fff3cd
この構成で月5万円の積立。正直、30代前半の手取りからこの額を出すのはそれなりにきつかったけど、家計の固定費を見直したら年間60万円浮いた話を参考に固定費を削って捻出した。サブスクを整理して、格安SIMに変えて、電気代も見直した。地味に効いたのが保険の見直しで、ここだけで月8,000円浮いた。
各層の狙い
第1層(守り):入学金や受験料といった「必ず必要で時期が読める支出」に充てる。市場リスクゼロで、想定通り動く。2026年現在は日銀の利上げで定期預金の金利も少し改善されてきているので、以前より魅力的になってきた。個人的には「守り」の枠にこそ、ちゃんとしたお金を置いておきたいと思っている。
第2層(増やす):大学の授業料など大きな出費に対応する主力部隊。18年という期間は株式投資の観点からは十分長いので、インデックスファンドで運用する。ただし大学入学の2〜3年前からは債券や預金に少しずつシフトして、暴落時のダメージを限定的にする予定。
第3層(一括対応):祖父母からまとまった資金をもらえた場合など、スポットで入ってきたお金の受け皿。返戻率は低いが「使わない」前提なので、それでいいと割り切った。
2026年最新の制度変更・落とし穴
制度面でいくつか重要なアップデートがあるので整理しておく。
贈与税の改正(2024年以降の継続確認)
2024年から相続時精算課税制度に年110万円の基礎控除が追加された。祖父母から孫への教育資金贈与についても、現在は「教育資金の一括贈与の非課税制度」(信託銀行経由で1,500万円まで非課税)が2026年3月まで延長されている。ただし2026年7月時点では制度がさらに延長される可能性も議論されているため、最新情報の確認が必要だ。
新NISAの年間投資枠
2024年からの新NISA制度では、年間360万円(つみたて枠120万+成長投資枠240万)、生涯投資枠1,800万円まで対応可能になった。教育資金目的でも使えるし、もし使わなかった場合は老後資金にそのまま転用できる。この「目的が変わっても対応できる柔軟性」は学資保険にはない強みだと思っている。
物価上昇の影響
2026年現在、教育費も物価上昇の影響を受けており、特に私立学校の授業料や大学の学費は年1〜3%程度の上昇傾向が続いている。試算には余裕を持たせておく必要がある。個人的には国立大学の授業料が2025年以降に段階的に引き上げられているニュースも見ていたので、オール公立でも「想定より高くなる」シナリオを頭に入れておくべきだと感じた。
そして、忘れがちなのが生活費の存在だ。
pie title 教育費の内訳イメージ(私立理系・4年間の想定)
"授業料" : 45
"受験・入学金" : 10
"生活費(仕送り等)" : 30
"教材・その他" : 15
地方から子どもを都市部の大学に出す場合、仕送りだけで月10〜15万円が飛んでいく。「授業料は準備できてたけど生活費が足りなかった」という状況は避けたい。試算するときは授業料だけじゃなく、トータルの支出で計算しておくのが正解だと気づいた。授業料の30%が生活費というグラフを見て、正直「そりゃそうか」と苦笑いした。
「今すぐ始める」以外の正解はないと気づいた話
正直、検討している間にも時間は経過していた。子どもが生まれた直後から始めた場合と、3歳から始めた場合でどのくらい差が出るかを計算したら、月3万円・年利5%想定で約160万円以上の差になった。複利の力は早く始めるほど効いてくる、という教科書的な話が、自分ごとになると初めてリアルに感じられた。
積立NISAを5年やってみた実録でも同じようなことを書いたけど、「完璧な計画を立ててから始める」は「ずっと始めない」と同義になりがちだ。まず少額でもいいから始めて、後から調整するほうが長い目で見ると得をする。これはもう何度でも言いたい。
周囲のエンジニアに聞くと、意外と「何もしていない」か「とりあえず学資保険だけ」という人が多い。もう少し真剣に考えてほしいなと思いながらこれを書いているのが正直なところだ。
もう一点だけ。生命保険見直しのフリーランス向けガイドにも書いてあるけど、子どもが生まれたタイミングで死亡保障の見直しも必ずセットでやること。教育資金を積み立て中に自分に何かあった場合、保険の「払込免除特約」がある学資保険なら積立が継続されるが、NISAにはその機能がないので、収入保障保険などで代替する必要がある。これを見落としている人が意外と多い。
まとめ
第一子誕生をきっかけに半年かけて調べた教育資金の準備について、実体験ベースで整理してきた。ポイントをまとめるとこうなる。
-
教育費の総額を先に試算する:オール公立で約840万円、私立混在なら2000万円超。生活費・仕送りも含めた数字で計算しないと後で詰む。
-
学資保険一択は2026年時点では非効率:返戻率106%は年率0.33%相当。定期預金や国債と大差ないうえに流動性が低い。
-
新NISA+定期預金の分散構造が現実解:リスクを取れる部分(NISA)と絶対に守る部分(預金)を層で分ける。18年間という期間はインデックス投資に十分な時間軸。
-
大学入学2〜3年前から守りにシフト:暴落タイミングが大学入学と重なるリスクを軽減するため、計画的にリスクを落とす。
-
とにかく早く始める:月1万円でも今日から始める価値がある。完璧な計画より、動き出すことが優先。
次のアクション:
- 子どもの年齢・希望する教育ルートで総費用を試算する(文科省の調査データを使う)
- 現在の手取りから月いくら捻出できるか固定費を棚卸しする
- 新NISA口座がまだなら今月中に開設する(SBI・楽天どちらでもOK)
- 死亡保障の見直しも同時に行う(子どもが独立するまでの収入保障保険)
正直まだ18年間の運用で何が起きるかは分からないし、制度変更もありうる。でも「考えながら動き続ける」だけが教育資金問題に向き合う唯一の正解だと思っている。