Thanks for your fruitfull information.
Based on it, I tried to find the exact route of Hanzomon Line. Because it does not work well for a wide region, I decided to get a route between adjacent stations.
There are 14 stations on Hanzomon Line.
hanzomonStations = {{35.658517`, 139.701334`}, {35.665247`,
139.712314`}, {35.672765`, 139.724159`}, {35.678757`,
139.740258`}, {35.685703`, 139.741644`}, {35.695589`,
139.751948`}, {35.695492`, 139.75812`}, {35.684801`,
139.766086`}, {35.684888`, 139.773161`}, {35.682061`,
139.786035`}, {35.682105`, 139.798851`}, {35.689071`,
139.815651`}, {35.696437`, 139.813949`}, {35.710702`,
139.812935`}};
hanzomonStationsPair = Transpose /@ Partition[hanzomonStations, 2, 1];
At first, it works well between Shibuya station(1st) and Omote-sando station(2nd).
osm = ResourceFunction["OSMImport"][
GeoBoundsRegion[hanzomonStationsPair[[1]]]];
railway = Select[osm["Ways"], KeyExistsQ[#Tags, "railway"] &]; pos =
Select[railway, MemberQ[#[[2]], "Tokyo Metro Hanzomon Line"] &];
GeoGraphics[{Thick, Red,
Line@Values@osm[["Nodes", #Nodes, "Position"]] & /@ pos}]

However, it doesn't work well between Omote-sando station(2nd) and Aoyama-itchome station(3rd).
