空欄の位置には名詞になれる単語しか入りません。noは単独で名詞になる使い方がないから、ここでは不適切です。
becauseが接続詞なので、becauseより後ろが単語や品詞の過不足がない文になります。つまり
( )of the nearby hotels had any vacancies
が文として完結するということです。
hadが動詞で、any vacanciesが目的語(名詞のまとまり)ですよね。
そうするとhadより前の部分までに主語(名詞のまとまり)があるはずです。
of the nearby hotelsという前置詞のまとまりはこれだけでは主語にはなれませんから、of the nearby hotelsの前に名詞があって、of the nearby hotelsがそれを後ろから修飾していると考えないとおかしくなります
つまり
<( )[of the nearby hotels]>
( )は名詞、[ ]がそれを後ろから修飾していて
< >の全体で主語になっているということです
なるほど、ありがとうございます。!
名詞しか入れない理由って教えていただけますか?