
武蔵野個別指導塾の特徴
【高2英文法】仮定法を図解で総まとめ—仮定法過去・過去完了・未来と I wish・as if・倒置|武蔵野個別指導塾

現在と過去の事実に反する条件を図で整理し、空所補充・並べ替え・和文英訳で混合型や倒置まで確かめます。願望や未来の条件も、動詞の形と意味を結びつけて読み進められます。
よくあるのは、保健室の前の長椅子で授業のプリントを読み返し、「今もっと元気なら」という日本語なのに、英文では were が使われていて手が止まるという場面です。過去形は過去の出来事を表すはずなのに、どうして「今」の話に出てくるのでしょうか。ここで時間だけを頼りに読むと、仮定法の意味を取り違えてしまいます。
英語の過去形には、時間を過去に置く働きのほかに、現実から距離を置いて考える働きがあります。「実際はそうではないけれど、もしそうなら」と条件を変えて話すときに使うのが、仮定法の大切な役割です。まず現実の状況を押さえ、その状況を変えた条件と、そこから考えられる結果を分けると、動詞の形に理由が見えてきます。
仮定法が使えると、今の願望だけでなく、過去への後悔や、過去の選択が今に与える影響も表せます。形の名前を先に暗記するのではなく、英文がどの時点を指し、現実をどう捉えているのかを確かめながら進みましょう。
この単元で身につけること
- 仮定法過去と仮定法過去完了を区別します。形に含まれる「過去」という名前と、実際に話題にしている時間を分けて読みます。
- 条件と結果の時間を別々に判断します。過去の条件から現在の結果につながる混合型でも、片方につられて動詞を変えないようにします。
- 未来の条件で使う should と were to を使い分けます。通常の未来の条件と比べ、話し手がどのような構えで条件を出しているかを捉えます。
- I wish、as if、It is time の後ろの形を確かめます。if が見えなくても、願望・様子・今するべきことを文全体から読み取ります。
- without や but for に隠れた条件と、if を省いた倒置を読みます。長い英文の中でも、条件に当たる部分を見つけられるようにします。
前の比較の単元で学んだ「形の違いが意味の違いを生む」という見方を、今回は動詞の形と、話し手が現実から置く距離との関係に広げます。仮定法でも、最終的には誰が何をするのかを見失わないことが必要です。条件を表す部分と結果を表す部分を、それぞれ小さな文として読む習慣をつけましょう。
基本の考え方
現在の事実と違う条件には仮定法過去
仮定法とは、事実として述べるのではなく、現実とは違う条件などを考えて述べるための動詞の使い方です。一方、出来事を事実として述べたり、起こり得る条件をそのまま出したりする使い方を直説法といいます。if は「もし」を表す接続詞ですが、if がある文すべてが仮定法になるわけではありません。
If I have time tomorrow, I will help you. 「明日時間があれば、あなたを手伝います。」
これは時間がある可能性を普通に考えている直説法の条件文です。未来のことでも、条件を表す if の後ろでは現在形 have を使います。これに対して、次の文では、今は時間がないという状況を踏まえて、別の条件を考えています。
If I had time now, I would help you. 「今時間があれば、あなたを手伝うのですが。」
if に続く、主語と動詞を含むまとまりを if 節、結果を述べる中心の部分を主節と呼びます。上の文では If I had time now が if 節、I would help you が主節です。仮定法過去の基本の形は「If + 主語 + 動詞の過去形, 主語 + would / could / might + 動詞の原形」です。had は形こそ過去形ですが、now が示すとおり、ここで考えている条件は現在のものです。
図1のように、現実では時間がない線と、条件を変えて時間があると考える線を並べると、had が過去の出来事を表していないことを確認できます。下の線にある「手伝う」は実際に起きた結果ではなく、条件が変わった場合に考えられる結果です。

If I were free now, I could help you. 「今手が空いていれば、あなたを手伝えるのですが。」
be 動詞では、仮定法過去を明確に示す形として、主語が I や he でも were を使えます。日常的な表現では I was や he was も見られますが、学校の文法問題で仮定法の形を問われたら、特に指定がない限り were を基準にすると整理しやすくなります。主節の would は「そうするだろう」、could は「そうすることができる」、might は「そうするかもしれない」という違いがあります。
If I knew the answer, I would tell you. 「答えを知っていれば、あなたに教えるのですが。」
If I had more time, I might read another book. 「もっと時間があれば、もう1冊本を読むかもしれません。」
主節にどの助動詞を置くかは、日本語の意味と場面で決めます。仮定法だから機械的に would にするのではありません。また、過去形を見ただけで仮定法と決めず、今の事実とは違う条件なのか、単に過去の習慣や出来事を述べているのかを文脈で確かめます。
過去の事実を変えて考える仮定法過去完了と混合型
仮定法過去完了は、すでに起きた過去の事実と違う条件を置いて考える表現です。基本の形は「If + 主語 + had + 過去分詞, 主語 + would / could / might + have + 過去分詞」です。過去分詞とは、完了形や受動態などに使う動詞の形で、leave なら left、take なら taken に当たります。
If I had left home earlier, I would have caught the bus. 「もっと早く家を出ていたら、そのバスに間に合っていたでしょう。」
この文は、実際には早く家を出ず、バスに間に合わなかったという状況で使えます。条件も結果も過去なので、if 節を had left、主節を would have caught にします。主節の have は would の後ろにあるため原形で、has や had にはしません。
If Yuki had brought her camera, she could have taken pictures. 「ユキがカメラを持ってきていたら、写真を撮れたのですが。」
こちらは過去に実現しなかった可能な行動に注目しているため、could have taken を使います。would have と could have の違いを日本語でも言い分けると、答えの助動詞を選ぶ根拠がはっきりします。
条件と結果の時点が異なる組み合わせを混合型と呼びます。特によく使うのは、過去の条件が今の結果に関係する形です。
If I had gone to bed earlier last night, I would not be sleepy now. 「昨夜もっと早く寝ていたら、今眠くないでしょう。」
寝たのは昨夜なので had gone、眠いのは今なので would not be です。仮定法の文では前後を同じ時制にそろえる、という覚え方はできません。条件の時と結果の時を別々に選ぶことで、出来事のつながりを正確に表せます。
未来の条件と、願望などを表す形
未来はまだ起きていないため、未来の仮定法をすべて「過去の事実と反対」と説明することはできません。should は「万一そういうことがあれば」と偶然の事態を取り上げ、were to は「仮にそういうことになるとしたら」と条件を一歩離して考えるのに使います。可能性を何パーセントと決める形ではありません。
If it should rain tomorrow, we will stay home. 「万一明日雨が降ったら、私たちは家にいます。」
If it were to rain tomorrow, we would stay home. 「仮に明日雨が降るとしたら、私たちは家にいるでしょう。」
should の条件を受ける主節には、ここでの will のほか、would や命令文なども使えます。were to の条件では、主節に would などを置くのが基本です。should はこの使い方では「雨が降るべきだ」という義務の意味ではなく、were to も必ず実現不可能だと決めつける形ではありません。
I wish は、現実が願うとおりではないという気持ちを表せます。現在については後ろを過去形にし、過去については had + 過去分詞にします。
I wish I were taller. 「もっと背が高ければいいのにと思います。」
I wish I had checked the timetable. 「時刻表を確認しておけばよかったと思います。」
I wish I could swim. 「泳げればいいのにと思います。」
3つ目は能力についての願望なので could を使っています。I wish の後ろに主語と動詞がそろえば、そのまとまりが願いの内容になります。if 節と主節の組を無理に作る必要はありません。
as if は「まるで〜であるかのように」という意味です。事実と違う様子を述べるとき、その様子が主節と同じ時点なら過去形、主節より前の出来事なら過去完了形を使います。
He talks as if he knew everything. 「彼はまるで何でも知っているかのように話します。」
He talks as if he had seen the painting before. 「彼はまるで以前その絵を見たことがあるかのように話します。」
最初は話している現在と「知っている」時点が重なり、次は「見た」ことが話している現在より前です。as if の後ろは必ず事実に反するとは限らず、話し手が本当かもしれないと見ていれば直説法も使います。
It looks as if it is going to rain. 「雨が降りそうです。」
この文は実際に雨の気配があるときの言い方です。as if だけで形を固定せず、話し手がその内容を現実の可能性として述べているかを確かめます。
It is time we went home. 「もう私たちが帰ってもよい時間です。」
It is time + 主語 + 過去形 は、そろそろ実行するべきことを表します。went でも過去に帰った話ではなく、今帰る時期だと述べています。まだ実行していないことへの促しが含まれ、文脈によっては「もう帰る時間なのに」という感じにもなります。
例題で使い方を確かめる
例題1 現在の条件を空所補充で表す
現在、私は答えを知りません。次の文の空所に、know、tell をそれぞれ適切な形にし、必要な語を補って入れましょう。
If I ( ) the answer, I ( ) you. 「答えを知っていれば、あなたに教えるのですが。」
- 条件の時間を決めます。「現在、知らない」という状況なので、過去に知っていたかどうかを述べる問題ではありません。
- 現在の事実に反する条件を作ります。know の過去形 knew を if 節に入れると、今とは違う条件を示せます。
- 結果の意味を決めます。「教えるだろう」という結果なので would tell を選び、tell は助動詞の後ろの原形にします。
could tell にすると「教えることができる」という能力・可能性に焦点が移ります。助動詞が指定されていない問題では文脈上の別解が成り立つこともありますが、ここでは提示された訳に合わせて would を使います。条件の knew と結果の tell をセットで読み、どちらも今について考えていることを確かめましょう。
答え: If I knew the answer, I would tell you.「答えを知っていれば、あなたに教えるのですが。」
例題2 過去の条件と結果を並べ替える
次の語句をすべて1回ずつ使い、文頭を大文字にして英文を作りましょう。
語句: if / I / had / left / home / earlier / I / would / have / caught / the / bus
「もっと早く家を出ていたら、そのバスに間に合っていたでしょう。」
- 条件と結果に分けます。「早く家を出ていたら」が条件、「バスに間に合っていた」が結果で、両方とも終わった出来事です。
- if 節を組み立てます。主語 I の後ろに had left を置き、場所を表す home と「もっと早く」の earlier を続けます。
- 主節を組み立てます。もう1つの I の後ろを would have caught にし、その後ろに目的語 the bus を置きます。
- 境目を確認します。先に置いた if 節の終わりにコンマを入れ、最後にピリオドを付けます。
並べ替えでは I が2つあることにも意味があります。条件と結果にそれぞれ主語が必要だからです。また、had と have は取り替えられません。if 節の had は過去完了形を作り、主節の have は would の後ろで原形を保っています。
答え: If I had left home earlier, I would have caught the bus.「もっと早く家を出ていたら、そのバスに間に合っていたでしょう。」
例題3 混合型を和文英訳する
次の日本語を、If で始まる1文にしましょう。
「昨夜もっと早く寝ていたら、今眠くないでしょう。」
- 時を示す語に注目します。「昨夜」は条件の時、「今」は結果の時を示すため、両方を過去の出来事として扱わないようにします。
- 過去の条件を作ります。「寝る」を go to bed とし、昨夜への反実の条件を had gone to bed で表します。
- 現在の結果を作ります。「眠くない」は be sleepy の否定で、今の状態を考えているため would not be sleepy にします。
- 時の語を添えます。if 節に last night、主節に now を置くと、時間の違いが読み手にも明確になります。
図2のように、条件は「昨夜」の位置にあり、結果は「今」の位置にあります。矢印が過去から現在へ伸びていても、現在の結果まで過去完了の形にそろえる必要はありません。図の上の段は実際の経過、下の段は条件を変えた場合のつながりです。

would not have been sleepy とすると、眠くなかっただろうという結果まで過去に置くことになります。「昨夜の条件だから主節も過去」と決めず、訳の「今」を残せているかを最後に読み返しましょう。
答え: If I had gone to bed earlier last night, I would not be sleepy now.「昨夜もっと早く寝ていたら、今眠くないでしょう。」
例題4 if を省く形に書き換える
次の文を、if を使わずに同じ意味の英文にしましょう。
If I had known about the event, I would have joined you. 「その行事のことを知っていたら、あなたたちと一緒に参加していたでしょう。」
- if 節の最初の動詞を確認します。had known なので、過去完了形を作る had を主語の前に移す形が使えます。
- if を取り除きます。代わりに Had I known として、通常の主語と助動詞の順序を入れ替えます。この語順の入れ替えを倒置と呼びます。
- 残りの語順を保ちます。known about the event と主節はそのままでよく、意味も過去の事実に反する条件のままです。
文頭が Had でも、末尾を疑問符にはしません。相手に「知っていましたか」と尋ねる疑問文ではなく、後ろの主節に条件を添えるまとまりだからです。書き換えた後に If I had known へ戻せるかを試すと、主語を落とす間違いも防げます。
答え: Had I known about the event, I would have joined you.「その行事のことを知っていたら、あなたたちと一緒に参加していたでしょう。」
つまずきやすいところと直し方
誤り1 過去の願望に現在についての形を使う
× I wish I checked the timetable yesterday. 「昨日、時刻表を確認しておけばよかったのに、という意図の文です。」
→ 昨日の行動を後悔しているので、wish の後ろは単なる過去形ではなく過去完了形にします。
○ I wish I had checked the timetable yesterday. 「昨日、時刻表を確認しておけばよかったと思います。」
checked だけを見て「過去の話だからよい」と判断するのが、この誤りの原因です。I wish の後ろでは、現在の事実から離れると過去形、過去の事実から離れると過去完了形になります。まず「今そうであってほしい」のか「そのときそうしておきたかった」のかを言い分けると、形が決まります。
誤り2 主節の have の後ろを原形にする
× If I had left home earlier, I would have catch the bus. 「もっと早く家を出ていたら、そのバスに間に合っていただろう、という意図の文です。」
→ would の直後の have は原形ですが、have に続く catch は完了の形を作る過去分詞 caught にします。
○ If I had left home earlier, I would have caught the bus. 「もっと早く家を出ていたら、そのバスに間に合っていたでしょう。」
「助動詞の後ろは原形」という規則が直接当てはまるのは have の位置です。その先まで全部を原形にするわけではありません。would、have、caught の3語を、それぞれ結果の捉え方、完了の形を作る語、動作を表す過去分詞として確認すると、語形を混同しにくくなります。
誤り3 if を消すだけで倒置したつもりになる
× I had known about the event, I would have joined you. 「その行事を知っていたら一緒に参加していただろう、という意図の文です。」
→ if を省いて条件を表すには、had を主語 I の前へ移す必要があります。
○ Had I known about the event, I would have joined you. 「その行事のことを知っていたら、あなたたちと一緒に参加していたでしょう。」
図3のように、if を外す操作と had を前へ移す操作を一組にします。主語 I と過去分詞 known の役割は変わらず、条件の始まりを語順で知らせる形になります。

この倒置を高校文法で整理するときは、had、were、should が目印です。どんな一般動詞でも前へ出せるという規則ではなく、特に had はここでのように過去完了形を作る働きに注目します。
Were I you, I would take a break. 「もし私があなたなら、少し休憩するでしょう。」
Should you need help, please call me. 「万一助けが必要なら、私に電話してください。」
Were it to rain tomorrow, we would stay home. 「仮に明日雨が降るとしたら、私たちは家にいるでしょう。」
順に If I were you、If you should need help、If it were to rain tomorrow に戻せます。それぞれ「もし私があなたなら」「万一助けが必要なら」「仮に明日雨が降るとしたら」という条件です。条件節が否定の場合は、否定語を主語の後ろに残す形を使います。
Had I not checked the timetable, I would have missed the bus. 「時刻表を確認していなかったら、そのバスに乗り遅れていたでしょう。」
if が見えない条件を読み取る
誤りを直した後は、条件そのものが if 節で表されていない文にも目を向けましょう。without と but for は「〜がなければ」「〜がなかったら」という条件を名詞で短く表せます。後ろに名詞を置く点は共通し、but for はこの用法では「〜がなければ」という意味のまとまりとして読みます。
Without your help, I would be in trouble now. 「あなたの助けがなければ、私は今困っているでしょう。」
But for your help, I would have missed the deadline. 「あなたの助けがなかったら、私は締め切りに間に合わなかったでしょう。」
1文目は現在の状態なので would be、2文目は過去の結果なので would have missed です。without 自体に過去の印はありません。後ろの主節や時を表す語から、どの時間の条件かを補って読みます。また、without が出れば必ず仮定法というわけではなく、実際に「〜なしで」行ったことにも使えます。
I finished the work without your help. 「私はあなたの助けなしでその作業を終えました。」
この文は実際に作業を終えた報告です。前の2文と比べると、条件として述べているか、事実の様子を添えているかという違いが見えます。特定の語だけで決めず、主節まで読むことが必要です。
練習問題
答えを見る前に、条件や願望の内容が「現在」「過去」「未来」のどれに当たるかを余白に書きましょう。条件と結果の2つがある文では、それぞれに時を割り当てます。倒置の文は、いったん if を補ってから形を確かめると読みやすくなります。
練習1 現在の事実に反する条件
今は手が空いていない場面です。be を適切な形にして空所に入れましょう。仮定法を明確に示す were の形を使います。
If I ( ) free now, I could help you. 「今手が空いていれば、あなたを手伝えるのですが。」
練習2 過去についての願望
check を適切な形にし、必要な語を補って空所に入れましょう。
I wish I ( ) the timetable yesterday. 「昨日、時刻表を確認しておけばよかったと思います。」
練習3 現在の行動を促す表現
go を適切な形にして空所に入れましょう。
It is time we ( ) home. 「もう私たちが帰ってもよい時間です。」
練習4 未来の条件を倒置にする
次の文を、if を使わずに同じ意味の文に書き換えましょう。
If you should need help, please call me. 「万一助けが必要なら、私に電話してください。」
答えと解説
練習1: If I were free now, I could help you. 「今手が空いていれば、あなたを手伝えるのですが。」
答えは were です。条件の時間は now が示す現在で、今の事実とは違う条件を考えています。could help は現在についての「手伝える」という結果であり、過去の能力を報告しているわけではありません。
練習2: I wish I had checked the timetable yesterday. 「昨日、時刻表を確認しておけばよかったと思います。」
答えは had checked です。yesterday に行わなかったことへの願望なので、wish の後ろを過去完了形にします。現在の願望を表す過去形と、過去を振り返る過去完了形を区別できたか確かめましょう。
練習3: It is time we went home. 「もう私たちが帰ってもよい時間です。」
答えは went です。It is time + 主語 + 過去形 の形で、今そろそろ帰るべきだという促しを表します。過去に帰った時刻を説明する文ではないので、日本語訳まで一緒に確かめます。
練習4: Should you need help, please call me. 「万一助けが必要なら、私に電話してください。」
if を取り除き、should を主語 you の前へ置きます。need は原形のままで、後ろの命令文も変えません。未来の should の条件では主節が必ず would になるわけではないことも、ここで確認できます。
次の単元へのつながりと家庭での確かめ方
次の接続詞と副詞節の単元では、if 以外にも、時・条件・譲歩などを添えるまとまりを学びます。今回分けた「条件を置く部分」と「中心の結果を述べる部分」という見方が、そのまま文を区切る手がかりになります。ただし、if の後ろの過去形をすべて仮定法と決めつけず、文全体の時と意味を確かめる姿勢を残しましょう。
家庭では5分を2つの確認に使えます。前半は例題1と例題2の英文を声に出し、訳を隠して「今のこと」「過去のこと」と言い添えます。後半は例題3の主節を見て、now を this morning に入れ替えるとどこを変える必要があるか考えます。過去の眠気を結果にするなら would not have been sleepy this morning とし、「今朝眠くなかっただろう」と読みます。時の語だけを入れ替えて文法の形を残さないことが確認点です。
個別指導で誤りを確かめるときは、まず条件と結果の時間を言葉にできるところまで戻ります。その判断ができていて形だけが崩れるなら、動詞の過去形・過去分詞や、助動詞の後ろの原形を一つずつ確認します。保護者の方がお子さまの説明を聞く場合も、用語を暗唱できるかより、「いつの何を変えて考えている文か」を尋ねると理解の位置が見えます。
まとめ
仮定法の英文を読んで迷ったら、先に日本語で「実際にはどうなのか」を短く置いてみましょう。そこから条件を変えたときの結果へ進むと、動詞の形を選ぶ根拠ができます。過去の出来事を振り返る文でも、結果は今に届くことがありますし、未来の条件なら事実との反対ではなく話し手の構えが問題になります。
自分で書いた文は、動詞だけでなく、now や last night と意味が合っているかまで読み返します。仮定法の過去形は、過ぎた時間だけでなく、現実からの距離を表す形です。
本気になった日が、入塾の日。
お子様の教育、迷ったら「丸投げ」してください。必ず、期待以上の結果で返します。武蔵野で育む、武蔵境で学ぶ。
電話は年中無休。365日、24時間、お電話可能。



