A three-dimensional map effectively uses a space of the sky or the background to display character strings. A transmitter/receiver obtains map data used to display each feature three-dimensionally and character data representing a character string to be displayed in the three-dimensional map from a map database. A feature image generator generates a feature image in which each feature is drawn three-dimensionally. A character display controller controls display of the character string on the feature image. The character display controller changes over at least one of a display direction and a number of display lines of the character string with respect to each of a plurality of areas in the feature image specified according to a distance from a viewpoint set for generating the feature image, such that a length of the character string in a vertical direction increases with a decrease in distance from the viewpoint.