えいたんごクイズ

for と since の違い — 現在完了形の「期間」と「起点」

forsince は、どちらも日本語にすると「〜の間」「〜から」と訳されるため混同しやすい前置詞です。1文で言うと、for = 期間の長さ (〜の間)since = 起点 (〜から / 〜以来)。たとえば「2年間ずっと住んでいる」は for two years、「2020年から住んでいる」は since 2020。どちらも 現在完了形 (have + 過去分詞) の継続用法でとくに頻出します。この記事では、中学〜高校初級・英検3〜準2級レベルを想定して、例文・対応表・since 節の使い方・よくある間違い・試験出題パターンまで整理します。

この記事のポイント

  • for = 期間の長さ。後ろに 数値 + 単位 (two years / five minutes など)
  • since = 起点。後ろに 時点 (2020 / last week) または (I was a child)
  • どちらも 現在完了形 の継続用法で「ずっと〜している」と訳すことが多い
  • for は過去形・現在形でも使えるが、since はほぼ 現在完了形と一緒
  • 英検3〜準2級で How long 〜? — For 〜 / Since 〜 の答え方が頻出

結論:1文で言うと

for「どれくらいの長さ」 を表す。two yearsfive minutes のように、数値 + 単位 が後ろに来る。

since「いつから」 を表す。2020last week のような 時点、または I was a child のような 過去形の節 が後ろに来る。

迷ったら、後ろに来るものが「長さ」なら for「時点・節」なら since と覚えるのが最短ルートです。

for の意味と使い方

for期間の長さ を表す前置詞。後ろには 数値 + 単位 (year / week / day / hour / minute など) が来ます。「a long time」「a while」のような長さ表現もOK。現在完了形だけでなく、過去形や現在形でも使える のが since との違いです。

I have lived in Tokyo for two years. — 私は東京に2年間住んでいる。[現在完了・継続]

She has studied English for a long time. — 彼女は長い間英語を勉強している。[現在完了・継続]

We have been friends for ten years. — 私たちは10年来の友達だ。

I waited for five minutes. — 5分間待った。[過去形でもOK]

He sleeps for eight hours every night. — 彼は毎晩8時間眠る。[現在形でもOK]

How long have you known him? — For about three years. — 彼を知ってどれくらい? — 3年ほど。

💡 後ろに 「数 + 単位」「a long time」 のような 長さの表現 が来たら for。会話でも「How long 〜?」と聞かれたら、For 〜. と短く答える形が頻出します。

since の意味と使い方

since起点 (〜から / 〜以来) を表す前置詞 (および接続詞)。後ろには 時点 (2020 / last week / yesterday / high school など) や、過去形の節 (I was a child) が来ます。意味の中心は「その時点からずっと」で、この記事で扱う「〜以来」の since は 主に現在完了形と一緒に使う のが大きな特徴です (※過去完了・未来完了や、理由を表す接続詞 since もあります)。

I have lived in Tokyo since 2020. — 私は2020年から東京に住んでいる。[起点=時点]

She has been sick since last week. — 彼女は先週からずっと体調が悪い。

We have known each other since high school. — 私たちは高校以来の知り合いだ。

He has worked here since 2018. — 彼は2018年からここで働いている。

I have not seen her since Monday. — 月曜日から彼女に会っていない。

How long have you studied Japanese? — Since I was twelve. — 日本語を勉強してどれくらい? — 12歳のころから。

💡 後ろに 「2020」「last week」「Monday」 のような 時点、または 過去形の節 が来たら since。文の動詞は基本 have / has + 過去分詞(現在完了)になります。

使い分けの判断基準

判断に迷ったら、次の表で 後ろに来るもの表しているもの をチェックしてみてください。

観点 for since
表すもの 期間の長さ (〜の間) 起点 (〜から / 〜以来)
後ろに来るもの 数値 + 単位 / a long time 時点 (2020 / last week) / 過去形の節
典型的な時制 現在完了 / 過去 / 現在 すべてOK 主に現在完了 (現在完了進行形も)
代表例 for two years / for a long time since 2020 / since I was a child
How long 〜? への答え方 For about three years. Since 2022.

迷ったときは、「2年間」なら長さ→ for「2020年から」なら時点→ since と、まず後ろの語を見るのが鉄則です。

since + 過去形の節

since は前置詞だけでなく 接続詞 としても使えます。つまり後ろに 「主語 + 動詞」の節 を取ることができ、ここでは 動詞は過去形 が基本。「〜したときから」「〜してからずっと」という意味になります。主節は現在完了、since 節は過去形、という時制のセットを押さえましょう。

I have known him since I was a child. — 私は子供のころから彼を知っている。

She has lived here since she came to Japan. — 彼女は日本に来てからずっとここに住んでいる。

We have been busy since the new school year started. — 新学期が始まってからずっと忙しい。

I haven't seen her since she moved to Osaka. — 彼女が大阪に引っ越して以来、会っていない。

💡 since 節の中は 現在形ではなく過去形since I am a child は誤りで、since I was a child が正解。「過去のある時点を指す」イメージで覚えましょう。

期間関連の補足: for / during / in

「期間」を表す前置詞は for だけではありません。混同しがちな duringin も簡単に整理しておきましょう。

for + 期間の長さ: I stayed there for three days. (3日間 = 長さ)

during + 特定の期間: I stayed there during the summer. (夏の間 = 特定の期間の中)

in + 時間: I'll finish it in an hour. (1時間後 / 1時間ほどで)「1時間以内に」なら within an hour が明確。

覚え方は for=期間の長さ (three days / a long time)during=特定された期間・イベント名 (the summer / the meeting)in=ある時間が経って。よくある間違いとして during three days ではなく for three days を使う点にも注意。for と since の対比に慣れたら、ここまでセットで押さえると盤石です。

よくある間違い

= 自然 / = 文法的には正しいが文脈次第で不自然 / = 文法的に誤り

❌ I have lived here since two years.

⭕ I have lived here for two years. — 「2年間」は 期間の長さ なので for。since の後ろに 数値 + 単位 は置けません。日本語の「2年から」につられないよう注意。

❌ I have been busy for last week.

⭕ I have been busy since last week. — last week は「先週」という 時点。長さではないので for ではなく since を使います。

❌ I have known him since I am a child.

⭕ I have known him since I was a child. — since 節の中の動詞は 過去形。「子供だった」過去の時点を指すので was が正解です。

△ How many years have you lived here?

⭕ より自然: How long have you lived here? — 文法的に誤りではありませんが、期間をたずねる一般的・自然な質問は How long 〜? が定番。答えは For 〜. または Since 〜. で返します。教科書・試験では How long が標準です。

△ She has lived in Tokyo since two years ago.

⭕ She has lived in Tokyo for two years. — since two years ago も口語では使われることがありますが、試験・教科書英語では for + 期間 が安全。「〜年前から」の感覚で since two years ago と言いたくなりますが、試験では避けるのが無難です。

❌ I waited her for an hour. (wait for と for の混同)

⭕ I waited for her for an hour. — wait for + 人 の for と、期間の for は別物。両方必要なので省略しないこと。

練習問題

問1. 次の空所に最も自然なものを選びなさい。

I have studied at this university ( ) three years.

① since ② for ③ in ④ during

答えと解説を見る

答え: three years は「数値 + 単位」=期間の長さなので for。since は「時点」と組むのでここでは不自然です。

問2. 次の空所に最も自然なものを選びなさい。

She has been my best friend ( ) we were in elementary school.

① for ② since ③ when ④ while

答えと解説を見る

答え: 。後ろに we were 〜(過去形の節)が来ているので since。「小学校のときから今までずっと友達」という意味で、主節は現在完了 has been とセットになります。

問3. 次の対話の空所に最も自然なものを選びなさい。

A: How long have you known Mr. Tanaka?
B: ( ) five years.

① Since ② For ③ In ④ During

答えと解説を見る

答え: five years は期間の長さなので For。もし答えが「2020年から」なら Since 2020. のように 時点 が後ろに来ます。How long 〜? → For 〜. / Since 〜. がペアで頻出です。

手応えを試したい人は 語彙力診断 で自分のレベル帯をチェックしてみてください。

英検・試験での出題パターン

  • 英検3級: 現在完了形 (have / has + 過去分詞) の継続用法と一緒に、for / since の選択 が空所補充で頻出。
    例: I have lived in this city ( ) 2020. ① for ② since ③ in → 答え: ② (時点なので since)
  • 英検3級: How long 〜? の答え方。会話文の応答で For 〜. / Since 〜. のどちらが自然かを選ぶ問題。
    例: A: How long have you studied Japanese? B: ( ) three years. → 答え: For (長さなので)
  • 英検準2級: since 節 (since + 過去形) が読解・並べ替えで登場。since I was a child / since I came to Japan のように 主節は現在完了・since 節は過去形 という時制セットが問われます。えいたんごクイズの語彙力診断では、for/since と現在完了が同時に出てくるのは 3級〜準2級 のレベル帯。
  • 高校初級・英検準2級相当: 現在完了進行形 (have been 〜ing) と for / since の組み合わせが増えます。I have been waiting for an hour. / It has been raining since this morning. といった形は語彙ごとセットで覚えると効率的です。

すきま時間に えいたんごクイズの学習モード で、for / since と相性のよい名詞 (year / week / day / hour / child / school など) を例文の中で文法ごと覚えておくと、英検の語彙・並べ替え問題で効きます。

例文の中で、文法ごと身につけよう

えいたんごクイズなら、英検級・レベル別に for / since と相性のよい名詞・動詞を例文付きで練習できます。

関連ページ