Agree with the above.
Seven nights in Tokyo is probably a bit much - unless you plan a few day trips using Tokyo as a base. Day trips to Kamakura, Nikko and perhaps up into the hill regions near the city would fill a few days and let you stay at a great hotel in Tokyo. All are easy days using your rail pass.
Also agree that stays in Kyoto, Nara AND Osaka are a bit unnecessary as they are all within a 45 minute train ride of each other. Unless you have a particular ryokan you want to experience in more than one of them, just basing in either Kyoto (my choice) or Osaka and day tripping to the others would cut down on hotel changes and the associated waste of time.
Takayama and Kanazawa are only a couple of hours apart by a very scenic train ride but worlds apart in atmosphere. Takayama is up in the hills and rather rustic. Kanazawa is on the coast and a busy large city with some world-class sites to visit.
When planning several nights in ryokans, keep in mind that meals are set affairs - both time and menu. That was one of my concerns. A night in a deluxe ryokan can be wonderful. Several nights at the same property could get repetitive and a bit boring.
I don't think you have planned enough of Kyushu. Nagasaki is great but there is much else to explore. Check a good guide book for other ideas. You could spend a week moving around Kyushu alone. I'd also drop Yamaguchi and Hokkaido (Sapporo) but add some days on Shikoku Island. It is accessible by deluxe train and has a bit more laid back vibe with some wonderful scenery. A night or two in Matsuyama, Kochi and perhaps Takamatsu or Tokushima would be a nice addition. The train ride through the mountain gorge down to Kochi on the Pacific is spectacular. The gateway city of Okayama on the mainland is also worth a visit, with a famous Japanese garden and very accessible medieval castle right across the river.