A route planning device comprising: a tentative route calculation module configured to calculate a tentative route passing through a plurality of tour points (40, 40A, 40B) disposed in a virtual space assumed to include no obstacle for a space including an obstacle; and a via point addition module comprising: a precision calculation module (20B1) configured to calculate a precision based on at least one selected from a collision severity indicating a severity when a mobile body moving along the route collides with the obstacle and an obstacle avoidance performance of the mobile body, wherein the precision is lower as the collision severity is lower and the precision is lower as the obstacle avoidance performance is higher; and a via point search module (20B4) configured to search a search space that is the space with a search accuracy corresponding to the precision, and add one or more via points around an interference point at which the obstacle included in the space and the tentative route intersect, wherein the search accuracy is lower as the precision is lower; wherein the via point addition module is configured to derive a route passing through the tour points (40, 40a, 40B) and the one or more via points (48, 48A, 48B, 48C). a tentative route calculation module configured to calculate a tentative route passing through a plurality of tour points (40, 40A, 40B) disposed in a virtual space assumed to include no obstacle for a space including an obstacle; and a via point addition module comprising: a precision calculation module (20B1) configured to calculate a precision based on at least one selected from a collision severity indicating a severity when a mobile body moving along the route collides with the obstacle and an obstacle avoidance performance of the mobile body, wherein the precision is lower as the collision severity is lower and the precision is lower as the obstacle avoidance performance is higher; and a via point search module (20B4) configured to search a search space that is the space with a search accuracy corresponding to the precision, and add one or more via points around an interference point at which the obstacle included in the space and the tentative route intersect, wherein the search accuracy is lower as the precision is lower; wherein the via point addition module is configured to derive a route passing through the tour points (40, 40a, 40B) and the one or more via points (48, 48A, 48B, 48C). a precision calculation module (20B1) configured to calculate a precision based on at least one selected from a collision severity indicating a severity when a mobile body moving along the route collides with the obstacle and an obstacle avoidance performance of the mobile body, wherein the precision is lower as the collision severity is lower and the precision is lower as the obstacle avoidance performance is higher; and a via point search module (20B4) configured to search a search space that is the space with a search accuracy corresponding to the precision, and add one or more via points around an interference point at which the obstacle included in the space and the tentative route intersect, wherein the search accuracy is lower as the precision is lower; wherein the via point addition module is configured to derive a route passing through the tour points (40, 40a, 40B) and the one or more via points (48, 48A, 48B, 48C).