A parking assistance device comprising: a parking region detection unit that detects a parking region at which a vehicle on which the parking assistance device is mounted is capable of being parked; a parking direction specification unit that specifies a parking direction in a case where the vehicle is parked at the parking region; an obstacle detection unit that detects an obstacle present around the vehicle; a detection range setting unit that sets a region which includes the parking region and a region which neighbors the parking region, as a detection range for detecting a bearing of the obstacle; a division unit that divides the detection range in a direction which is associated with the parking direction specified by the parking direction specification unit and generates plural divided ranges (361 to 368, 371 to 378, and 381 to 388); a bearing calculation unit that calculates a bearing of the obstacle detected by the obstacle detection unit, which is a bearing of a side surface of the obstacle which extends in the parking direction, for each of the divided ranges and calculates an average value of the bearings of the obstacle which are respectively calculated for the divided ranges; and a parking position setting unit that sets a parking position in a case where the vehicle is parked at the parking region, based on the average value of the bearings which is calculated by the bearing calculation unit characterized in that the detection range includes a first detection range that includes the parking region and a second detection range and a third detection range that neighbor the first detection range, the size of the first detection range in a width direction of the vehicle is set wider than the parking region in order to detect the obstacle, the division unit divides each of the first detection range, the second detection range, and the third detection range into plural portions and generates the divided ranges, the bearing calculation unit calculates an average value of bearings of the obstacle for each of the detection ranges, which are the first detection range, the second detection range, and the third detection range, and outputs the average value of the bearings of the obstacle in the first detection range in a case where the bearings of the obstacle are calculated in the divided ranges resulting from division of the first detection range. a parking region detection unit that detects a parking region at which a vehicle on which the parking assistance device is mounted is capable of being parked; a parking direction specification unit that specifies a parking direction in a case where the vehicle is parked at the parking region; an obstacle detection unit that detects an obstacle present around the vehicle; a detection range setting unit that sets a region which includes the parking region and a region which neighbors the parking region, as a detection range for detecting a bearing of the obstacle; a division unit that divides the detection range in a direction which is associated with the parking direction specified by the parking direction specification unit and generates plural divided ranges (361 to 368, 371 to 378, and 381 to 388); a bearing calculation unit that calculates a bearing of the obstacle detected by the obstacle detection unit, which is a bearing of a side surface of the obstacle which extends in the parking direction, for each of the divided ranges and calculates an average value of the bearings of the obstacle which are respectively calculated for the divided ranges; and a parking position setting unit that sets a parking position in a case where the vehicle is parked at the parking region, based on the average value of the bearings which is calculated by the bearing calculation unit characterized in that the detection range includes a first detection range that includes the parking region and a second detection range and a third detection range that neighbor the first detection range, the size of the first detection range in a width direction of the vehicle is set wider than the parking region in order to detect the obstacle, the division unit divides each of the first detection range, the second detection range, and the third detection range into plural portions and generates the divided ranges, the bearing calculation unit calculates an average value of bearings of the obstacle for each of the detection ranges, which are the first detection range, the second detection range, and the third detection range, and outputs the average value of the bearings of the obstacle in the first detection range in a case where the bearings of the obstacle are calculated in the divided ranges resulting from division of the first detection range.