In a nutshell, April and September/October (bar Golden Week, October 1st-7th) are the best times to visit.