There's quite a few reasons
1) The US was no longer using B-17 and other strategic bombers. The B-29 was a significant leap forward in bomber technology with a vastly superior range and speed.
2) Japanese fighter defenses were soft, with many of the aircraft like Ki-44 and -84 rather weak against B-29's with insufficient firepower. Some resorted to ramming as one method to take them down, which obviously was a poor use of the remaining Japanese resources
3) Japanese air defenses were poor. Many antiaircraft guns didn't have the range to hit the altitudes the B-29's were flying at.
4) Given the bombing campaigns and the strategic/symbolic importance of Tokyo, much of the remaining air defenses and fighters were localized near that region and away from western Japan (Hiroshima and Nagasaki).
5) Japanese early detection systems were poor, and often they weren't able to successfully predict what city the bombers were actually targeting
6) The Japanese were reserving pilots and planes for the actual invasion. Some bomber missions went without an interception.