"N(이)기 때문에" and "N 때문에"?
Think of it as NC(이)기 때문에 and N 때문에, where NC means a noun clause. (이)기 is basically a noun clause form of a clause ending in -(이)다 or other verbs. When it is a simple noun or noun phrase, you don't need it.
e.g.
오늘은 공휴일*이다. 그래서 거리가.한산하다.
-> 오늘은 공휴일*이기 때문에 거리가 한산하다.
(BECAUSE it is a holiday today ...)
몸이 아프*다. 그래서 회사를 쉬려고 한다.
-> 몸이 아프*기 때문에 회사를 쉬려고 한다. (BECAUSE I feel sick, ...)
코로나바이러스 때문에 가게들이 문을 닫았다.
(BECAUSE OF the corona virus, ...).