TOEIC Part5 タグ別演習
TOEIC 仮定法と条件文|if の時制ルールと無料練習問題
当サイトの文法問題546問のうち53問が仮定法・条件文タグを持つ。このページでは解き方の手順とそのうち12問を掲載している。全問に日本語解説つき・登録不要。
要点
- if を見たらまず「現実にありうる条件」か「現実に反する仮定」かを判定する——ここで時制の型が決まる
- 仮定法過去は if + 過去形 / would + 原形、仮定法過去完了は if + had 過去分詞 / would have 過去分詞
- request / suggest / recommend / insist の that節は主語の人称に関係なく動詞が原形(仮定法現在)
仮定法・条件文はこう出る
条件文の問題は、if節と主節のどちらかが空欄になり、もう一方の時制から答えを決める形で出る。つまり**空欄ではないほうの節を先に読む**のが正しい手順で、空欄の周りだけを見ていると解けない。
型は3つしかない。現実にありうる条件(if + 現在形 / will + 原形)、現在の事実に反する仮定(if + 過去形 / would + 原形)、過去の事実に反する仮定(if + had 過去分詞 / would have 過去分詞)。TOEIC ではこの3型に加えて、要求・提案の that節で動詞が原形になる仮定法現在が独立したタイプとして頻出する。
解き方の手順
STEP 1: 空欄でないほうの節の時制を読む
主節に would / could / might があれば仮定法、will があれば現実の条件。逆に if節が過去形なら主節は would + 原形、had 過去分詞なら would have 過去分詞と決まる。
STEP 2: 3つの型のどれかに当てはめる
現実の条件は「現在形 / will」、現在に反する仮定は時制を1つ過去にずらして「過去形 / would」、過去に反する仮定はもう1つずらして「had 過去分詞 / would have 過去分詞」。ずらす回数で考えると型を取り違えにくい。
STEP 3: if 以外の合図も拾う
動詞が request / suggest / recommend / insist / demand、形容詞が essential / necessary / important なら、that節の動詞は原形。were it not for / had it been for のように if が消えて倒置になる形もある。
頻出パターン
| 形 | 意味・働き | 例 |
|---|---|---|
| if + 現在形, will + 原形 | 現実にありうる条件 | If it rains, we will cancel the tour. |
| if + 過去形, would + 原形 | 現在の事実に反する仮定 | If I had more time, I would revise it. |
| if + had 過去分詞, would have 過去分詞 | 過去の事実に反する仮定 | If we had ordered earlier, it would have arrived. |
| suggest / request that + 主語 + 原形 | 仮定法現在(三単現の s を付けない) | We suggest that he attend the session. |
| It is essential that + 主語 + 原形 | 必要・重要を表す形容詞の後ろ | It is essential that the form be signed. |
| unless + 現在形 | 〜でない限り(if not) | Unless you register, you cannot enter. |
| should + 主語 + 原形(倒置) | 万一〜なら(if の省略) | Should you have questions, contact us. |
仮定法現在(suggest that he attend)は三単現の s が付かないのが正解の目印で、attends を選ぶと不正解になる。同じ suggest でも「〜だと示唆する」の意味では普通の時制になるため、that節が要求・提案の内容かどうかで切り分ける。
落ちやすい罠
- if節の中で will を使ってしまう — 条件を表す if節では未来のことでも現在形を使う。If it will rain は不可
- unless に not を重ねる — unless 自体が「〜でなければ」を含むので、Unless you do not register は二重否定になる
- would と will の取り違え — 主節に would があれば if節は必ず過去形か had 過去分詞。時制が1つずれていない選択肢は機械的に切れる
仮定法・条件文の練習問題(12問)
正解を選んでから「正解と解説を見る」を開く。誤答の選択肢がなぜ違うかまで 確認すると定着が速い。
Q1.
______ you have any questions, please do not hesitate to contact us.
- (A) Would
- (B) Could
- (C) Should
- (D) Might
正解と解説を見る
正解: (C)
英語では if を省略し助動詞を文頭に出す「仮定法の倒置」という構文があります。「Should you have any questions」は「If you should have any questions」の倒置形で、「もしご質問があれば」という丁寧な条件節を作ります。この構文はビジネスメールや公式文書で非常によく見られます。Would / Could / Might を文頭に置く同様の倒置も存在しますが、この文脈では「質問があるかもしれない」という可能性を表す should が最適です。Would you / Could you / Might you はそれぞれ依頼・可能性の疑問文に近い構造となり、ここでは成立しません。
- (A) Would you ... は「〜していただけますか」という依頼の疑問文になり、条件節としては機能しません。
- (B) Could you ... は「〜できますか」という依頼・能力の疑問文になり、条件節の役割を果たしません。
- (C) 正解。Should you ... は「If you should ...」の倒置形。ビジネス文書の条件節として非常に丁寧な表現です。
- (D) Might you ... は文法的に存在しますが、条件節の倒置としてはほぼ使われません。また文意が「もしかするとご質問があるかもしれない」と曖昧になります。
ポイント: 仮定法の倒置パターン3つをまとめて覚えましょう。①Should S V(もし〜なら)②Were S to V(もし〜するなら)③Had S p.p.(もし〜していたら)。これらは TOEIC 難問に頻出で、文頭の Should / Were / Had が見えたら倒置の仮定法と判断してください。
Q2.
Had the shipment arrived on time, we ______ met the deadline.
- (A) had
- (B) have
- (C) will have
- (D) would have
正解と解説を見る
正解: (D)
「Had the shipment arrived on time, ...」は「If the shipment had arrived on time, ...」という仮定法過去完了を if 省略・倒置した形です。過去の事実に反する仮定を表し、帰結節は「would have + 過去分詞」という形になります。will have は未来完了形で仮定法には使えません。had だけでは過去完了の助動詞として機能しますが、「would have + p.p.」の帰結節を作れません。have は現在完了の助動詞ですが、仮定法過去完了の帰結節には不適切です。
- (A) had を置くと「we had met the deadline」という過去完了になりますが、帰結節としては意味の繋がりが不自然で仮定法を成立させません。
- (B) have だけを置くと「we have met the deadline」という現在完了になり、仮定法過去完了の帰結節にはなりません。
- (C) will have は未来完了で「〜しているだろう」を意味します。仮定法の帰結節には could / would / might have + p.p. を使い、will は使えません。
- (D) 正解。would have + p.p. は仮定法過去完了の帰結節の定形。「〜しただろう(しかし実際はしなかった)」を表します。
ポイント: 仮定法過去完了の公式「Had S p.p., S would have p.p.」を丸ごと覚えましょう。「もし〜していたら、〜だったろう」という過去の事実に反する仮定です。倒置形(Had を文頭に出す形)は TOEIC 高得点問題で頻出です。
Q3.
______ the budget is approved by Friday, the project will have to be postponed.
- (A) Unless
- (B) If
- (C) Whether
- (D) Although
正解と解説を見る
正解: (A)
Unless は「〜しない限り/〜でなければ」という否定的な条件を表す接続詞で、if ... not とほぼ同義です。本文では「予算が承認されない場合に延期になる」という論理関係であり、Unless が承認されない条件を示しています。If を使うと「予算が承認された場合、延期しなければならない」という逆の意味になってしまいます。Whether は「〜かどうか」という選択・疑問を表し、条件の意味にはなりません。Although は「〜にもかかわらず」という逆接を表し、この文の論理構造とは合いません。
- (A) 正解。Unless「〜しない限り」。Unless the budget is approved by Friday = If the budget is not approved by Friday と同義で、承認されない場合に延期という正しい論理を作ります。
- (B) If「もし〜ならば」。If the budget is approved だと「承認されたなら延期しなければならない」という文意になり、文脈と逆になります。
- (C) Whether「〜かどうか」。Whether ... or not という選択を表し、条件(〜しない限り)の意味にはなりません。名詞節を導く接続詞として使うのが主な用法です。
- (D) Although「〜にもかかわらず」。逆接を表す接続詞で、予算承認と延期を対立させる文意になり、この文の論理関係とは合いません。
ポイント: 「Unless = if ... not」で「〜しない限り」という否定条件を作ります。Unless の後に not を使うのは二重否定になるため禁止(× Unless ... not)。主節が否定的な結果を示すときに unless を使うと自然な英文になります。
Q4.
The board recommended that the company ______ its cybersecurity measures immediately.
- (A) strengthened
- (B) strengthen
- (C) strengthening
- (D) strengthens
正解と解説を見る
正解: (B)
「提案・要求・命令・必要性」を表す動詞(recommend / suggest / insist / request / demand / require / propose など)の後に続く that 節では、動詞は主語の人称・数や時制に関わらず原形を使います。これを仮定法現在(subjunctive mood)といいます。本文では recommended that the company strengthen と原形になるのが正しい形です。三単現の strengthens は誤り(主語が the company だと単数扱いになるため混同しやすいです)。strengthened(過去形)や strengthening(現在分詞)も仮定法現在には合いません。TOEIC 上級者が苦手とする難問パターンです。
- (A) 過去形 strengthened。主節が recommended(過去形)でも、that 節内の仮定法現在は時制の一致を受けません。原形のままです。
- (B) 正解。原形 strengthen。仮定法現在のルールにより、recommend that + S + 動詞の原形となります。主語や時制に関わらず原形が固定されます。
- (C) 現在分詞 strengthening。動名詞・進行形として使う形で、that 節の動詞位置には入れられません。
- (D) 三単現 strengthens。仮定法現在では主語の人称・数に関係なく原形を使います。the company が三人称単数でも strengthens ではなく strengthen が正解です。
ポイント: 仮定法現在のシグナル動詞を覚えましょう。recommend / suggest / insist / request / demand / require / propose / urge / ask + that + S + 動詞の原形(三単現の -s も過去形も付けない)。「that の後の動詞が原形のまま」というのが唯一の見分け方です。
Q5.
Should the supplier ______ to deliver on time, we will activate our backup plan.
- (A) failed
- (B) fails
- (C) failing
- (D) fail
正解と解説を見る
正解: (D)
Should を文頭に置く構文は、「If + 主語 + should + 原形」という仮定法の条件節を倒置した形です。if を省略し should を先頭に出すことで、よりフォーマルな表現になります。Should the supplier fail = If the supplier should fail(〜の場合)という意味です。倒置構文においても、動詞は should の後に来る原形であることは変わりません。したがって三単現の fails や過去形 failed、現在分詞 failing はすべて誤りです。ビジネス契約書や公式文書によく登場する上級表現です。
- (A) 過去形 failed。Should の後に過去形は来ません。倒置条件文の動詞は原形に固定されます。
- (B) 三単現 fails。Should + S + 原形の構文では主語の人称・数に関わらず原形を使います。the supplier が三人称単数でも fails にはなりません。
- (C) 現在分詞 failing。should の後に -ing 形は来ません。failing の後に to deliver も続かないため構造上も誤りです。
- (D) 正解。原形 fail。Should the supplier fail to deliver = If the supplier should fail to deliver という仮定の意味を作ります。倒置条件文では動詞は原形が原則です。
ポイント: 「Should + S + 原形, ...」は仮定法の倒置形です。「Were + S + to不定詞, ...」(= If + S + were to)や「Had + S + 過去分詞, ...」(= If + S + had + 過去分詞)とともに、3種類の仮定法倒置をセットで覚えると Part5 上級問題に確実に対応できます。
Q6.
______ that all safety protocols are followed, the factory operates without incident.
- (A) Supposed
- (B) Providing
- (C) Provided
- (D) Unless
正解と解説を見る
正解: (C)
Provided (that) は「〜という条件で/〜さえすれば」という条件を表す接続詞句です。if と同義ですが、よりフォーマルで契約書や規定文書によく使われます。Supposed that(× supposed that という慣用句は存在しない)は誤り。Providing that も「〜という条件で」と同義の表現ですが、空欄の後には that が続いており、Providing that that ... という二重の that になるため自然ではありません。通常は Provided that か Providing that として使い、空欄の後に that が来る場合は Provided が適切です。Unless は「〜しない限り」という否定条件を表し、文意(安全手順が守られればという肯定条件)とは合いません。
- (A) Supposed。「Supposed that」という慣用接続詞句は標準英語では確立されていません。「Supposing (that)」なら使えますが、Supposed という形は不可です。
- (B) Providing。Providing that も条件を表す接続詞として使えますが、空欄の直後に that がある場合、Providing that that と二重になるため Provided の方が自然です。
- (C) 正解。Provided (that)「〜という条件で」。ビジネス・法律文書での定番表現で、肯定的な条件(安全手順が守られれば)を述べるのに適しています。
- (D) Unless「〜しない限り」。否定条件を表すため、「安全手順が守られている限り」という肯定条件の文意とは逆になります。
ポイント: 「条件」を表す接続詞を整理しましょう。If(〜ならば)/ Provided that(〜という条件で)/ As long as(〜さえすれば)/ Unless(〜しない限り)。Provided と As long as は肯定条件、Unless は否定条件です。フォーマルな文書では Provided that が選ばれやすいです。
Q7.
The CEO insisted that every department ______ a detailed cost reduction plan.
- (A) submits
- (B) submit
- (C) submitted
- (D) will submit
正解と解説を見る
正解: (B)
insist / suggest / recommend / demand / request / require などの「要求・提案・命令」を意味する動詞の後の that 節では、動詞は主語の人称・数にかかわらず原形(仮定法現在)を使います。これはアメリカ英語で特に重要な文法規則です。submits(三人称単数現在形)は通常の直説法であり、仮定法の原則に反します。submitted は過去形、will submit は未来形であり、どちらも that 節内での仮定法現在の規則に従っていません。
- (A) 不正解。submits は三人称単数現在形で、通常の直説法の形です。仮定法現在では主語が何であっても原形を使うため、-s を付けてはいけません。
- (B) 正解。submit は動詞の原形で、仮定法現在の形です。insist that 節では主語(every department)が三人称単数であっても原形を用います。
- (C) 不正解。submitted は過去形です。仮定法現在は時制を変えず、常に原形を使います。仮定法過去(were / did)とは区別が必要です。
- (D) 不正解。will submit は未来形です。仮定法現在の that 節では助動詞 will は使いません。
ポイント: 「要求・提案・命令」動詞(insist / suggest / demand / recommend など)の that 節では動詞を原形に固定します。主語が三人称単数でも -s を付けないことが判断のポイントです。
Q8.
If the company ______ more resources to R&D last year, the new product would be ready by now.
- (A) allocated
- (B) had allocated
- (C) allocates
- (D) would allocate
正解と解説を見る
正解: (B)
「昨年もっとリソースを配分していたなら、今頃は準備できているだろう」という文は、過去の事実に反する仮定(if節)と現在の結果(主節)を組み合わせた混合条件文です。if節が過去(last year)の反事実を表すため「had + 過去分詞」の仮定法過去完了を使います。主節が現在(by now)の結果を表すため「would + 原形」の仮定法過去を使います。allocates(現在形)・allocated(過去形)・would allocate はいずれも仮定法の形式として不適切です。
- (A) 不正解。allocated は過去形です。仮定法過去(現在の反事実)のif節では過去形を使いますが、last year という過去の時点を示す表現があるため、仮定法過去完了(had + p.p.)が必要です。
- (B) 正解。had allocated は仮定法過去完了の形です。if節で過去の反事実を表し、「昨年もし配分していたなら」という意味になります。
- (C) 不正解。allocates は現在形です。if節で現在形を使うのは直説法(実現可能な条件)の場合で、過去の反事実を表す仮定法には使えません。
- (D) 不正解。would allocate は主節で使う形です。if節の中に would を使う混乱した形であり、標準的な条件文の構造に反します。
ポイント: 混合仮定法のパターンを覚えましょう。If + had + p.p.(過去の反事実), would + 原形(現在の結果)。by now / now / today が主節にあれば混合仮定法のサインです。
Q9.
It is essential that the contract ______ reviewed by a lawyer before signing.
- (A) be
- (B) was
- (C) is
- (D) will be
正解と解説を見る
正解: (A)
「It is + 形容詞(essential / important / necessary / vital / crucial)+ that + S + 原形」は必要性・重要性を表す仮定法現在の構文です。that 節内の動詞は主語の人称・数にかかわらず原形(または should + 原形)を使います。本問では the contract が主語で「確認される」という受動の意味があるため、「be reviewed」の形が必要です。is / was / will be はいずれも直説法の形で仮定法現在の原則に反します。be が受動態の原形として機能することを押さえましょう。
- (A) 正解。be は動詞 be の原形で、ここでは受動態の原形(be reviewed)として機能します。仮定法現在の規則に従い、主語(the contract)が三単数でも be を使います。
- (B) 不正解。was は過去形です。仮定法現在は過去形ではなく原形を使います。仮定法過去(It were ...)とは区別が必要です。
- (C) 不正解。is は直説法現在形です。仮定法現在の that 節では be 動詞の原形 be を使います。
- (D) 不正解。will be は未来形です。仮定法現在の that 節では will は使いません。
ポイント: It is essential / important / necessary / vital / crucial that S + 原形(仮定法現在)のパターンを暗記しましょう。受動態が必要なら be + p.p. の形にします(be reviewed / be submitted)。TOEIC Part 5・6 で頻出です。
Q10.
Had the marketing team ______ the campaign earlier, the product launch would have been more successful.
- (A) began
- (B) beginning
- (C) begin
- (D) begun
正解と解説を見る
正解: (D)
「Had + S + 過去分詞, S + would have + 過去分詞」は仮定法過去完了の倒置形です。if を省略して had を文頭に置いた倒置構文であり、「If the marketing team had begun ...」と同義です。begin の活用は begin(原形)→ began(過去形)→ begun(過去分詞)であり、過去分詞 begun が正解です。begin(原形)は倒置形の仮定法過去完了では使えません。began(過去形)は過去完了の had との組み合わせには使えません。beginning(現在分詞)は had との組み合わせで過去分詞の位置には合いません。
- (A) 不正解。began は動詞の過去形です。had + 過去形 という形は英語の文法にありません。過去完了は had + 過去分詞 です。
- (B) 不正解。beginning は現在分詞・動名詞です。had beginning という組み合わせは文法的に誤りです。
- (C) 不正解。begin は動詞の原形です。had + 原形 という組み合わせは現在完了・過去完了の形として成立しません。
- (D) 正解。begun は begin の過去分詞です。Had the team begun ...(= If the team had begun ...)という仮定法過去完了の倒置形が成立します。
ポイント: if を省略した仮定法の倒置: Had + S + p.p.(仮定法過去完了)/ Were + S ...(仮定法過去)/ Should + S + 原形(仮定法未来)。不規則動詞の過去分詞(begin→begun / write→written / take→taken)を確実に覚えましょう。
Q11.
I wish the conference room ______ larger; we cannot fit all the attendees.
- (A) is
- (B) was
- (C) be
- (D) were
正解と解説を見る
正解: (D)
「I wish + 仮定法過去」は「現在の事実と反対の状況を望む」表現です。仮定法過去では動詞を過去形にしますが、be 動詞に限っては人称・数に関わらず were を使うのがフォーマルな書き言葉の規則です。本問では「会議室が今より大きければいいのに(実際は小さい)」という現在の事実に反した願望を表しているため、were が正解です。is は直説法(現在の事実を述べる)であり仮定法には使えません。was はカジュアルな口語表現では使われますが、TOEIC のような書き言葉・フォーマル英語の基準では不正解です。be は原形であり仮定法過去の形式には合いません。
- (A) 不正解。is は直説法現在形で、現在の事実を述べます。wish に続く節では仮定法過去が必要なため使えません。
- (B) 不正解。was は be 動詞の過去形ですが、フォーマル英語(TOEIC 基準)では wish の仮定法節の be 動詞は were に統一されます。口語では使われますが試験では不正解です。
- (C) 不正解。be は動詞の原形です。仮定法過去では過去形 were が必要であり、原形は適切ではありません。
- (D) 正解。were は仮定法過去の be 動詞として、人称・数に関係なく使います。「もし〜であればいいのに」という現在事実の逆を表す wish の節に用いる標準的な形式です。
ポイント: wish の仮定法3パターンを整理しましょう。wish + 過去形(were/did)=現在の事実と逆の願望。wish + 過去完了(had done)=過去の事実と逆の後悔。wish + would =相手の行動への要望。be 動詞は常に were がフォーマル正解です。
Q12.
If the company ______ invested in renewable energy five years ago, it would be saving millions now.
- (A) has
- (B) would have
- (C) having
- (D) had
正解と解説を見る
正解: (D)
混合仮定法(mixed conditional)は「過去の仮定」と「現在の帰結」を組み合わせた仮定法の応用形です。if 節には過去の仮定を表す仮定法過去完了(had + 過去分詞)を使い、主節には現在の帰結を表す仮定法過去(would + 動詞の原形または進行形)を使います。本文では「5年前に投資していたなら(過去の仮定)、今頃節約できているだろう(現在の帰結)」という構造です。has は現在完了を作りますが仮定法ではなく直説法です。would have は主節に使う形であり if 節には使えません(would have + 過去分詞は仮定法過去完了の主節形)。having は分詞構文を形成する現在分詞であり、if 節の述語動詞にはなれません。
- (A) 不正解。has は現在完了の助動詞ですが、直説法形です。仮定法では had を使う必要があります。has invested は事実を述べる文であり仮定の意味を持ちません。
- (B) 不正解。would have は主節(帰結節)で使う仮定法過去完了の形であり、if 節(条件節)では使えません。if 節に would は原則として使いません。
- (C) 不正解。having は現在分詞・動名詞形です。if 節の中で述語動詞として機能するためには適切な助動詞形が必要であり、having 単体では構造が成立しません。
- (D) 正解。had は仮定法過去完了(had + 過去分詞)の形成に必要な助動詞です。if the company had invested...「もし会社が投資していたなら(実際にはしなかった)」という過去の反事実仮定を正確に表します。
ポイント: 混合仮定法の構造を覚えましょう: If + had + 過去分詞(過去の仮定), would + 原形(現在の帰結)。通常の仮定法過去完了と違うのは主節が「would have + 過去分詞」ではなく「would + 原形(または進行形)」になる点です。now / today / currently などの現在を示す語が主節にあれば混合仮定法のサインです。
続きを解く
仮定法・条件文を含む文法問題は全部で546問ある。挑戦モードでは正誤が記録され、間違えた問題だけを復習できる。
よくある質問
仮定法と普通の条件文はどう見分けますか?
現実にありうる話か、現実に反する話かで見分けます。形の上では、主節に will があれば現実の条件、would / could / might があれば仮定法です。空欄が if節にある場合は主節の助動詞から逆算できます。
suggest that の後ろが原形になるのはなぜですか?
要求・提案・命令の内容を表す that節は仮定法現在という形を取り、主語の人称や時制に関係なく動詞が原形になるためです。request / recommend / insist / demand や、essential / necessary が続く It is ... that 構文も同じ扱いです。
TOEIC で仮定法はどのくらい出ますか?
Part5 で毎回必ず出るタイプではありませんが、出れば時制の型を知っているかどうかだけで決まるため、取りこぼすと痛い問題です。3つの型と仮定法現在を押さえておけば短時間で得点源にできます。