✨ ベストアンサー ✨
「昨晩の夕食は、何を食べましたか?」という日本語に対して、英語で「What did you eat for dinner yesterday?」と訳す場合、「yesterday」を使っているのは自然な英語の表現だからです。
では、「last night」ではダメなのか?というと、間違いではありませんが、少しニュアンスが変わります。
「yesterday」は「昨日全体」を意味し、「last night」は「昨夜」、つまり夜の時間帯(だいたい18時〜24時ごろ)を指します。
夕食は「昨日の一日の中の出来事」として考えられるため、英語では “What did you eat for dinner yesterday?” の方が一般的で自然な表現です。
“last night” を使うことも文法的には正しいですが、夜に特に焦点を当てた言い方になります。そのため、学校の問題では「yesterday」が模範解答になります。
ありがとうございました