A rotation detection device comprising: a rotatable body made of a soft magnetic material and having a tooth tip and a tooth bottom on planes normal to a direction of a rotation axis, the tooth tip being provided in a range of a first rotation angle, the tooth bottom being provided in a range other than the range of the first rotation angle; a magnet configured to form a magnetic field toward tooth surfaces of the tooth tip and the tooth bottom of the rotatable body; a magnetic sensor including magnetic detection elements (100l1, 100l2, 100r1, 100r2) disposed at positions between the rotatable body and the magnet and other than on the rotation axis of the rotatable body, and configured to detect magnetic flux densities in the direction of the rotation axis of the rotatable body at at least two positions; and the magnetic sensor having a signal processor configured to calculate a rotation angle of the rotatable body in accordance with a difference between magnetic flux densities in the direction of the rotation axis of the rotatable body, detected at the at least two positions and a difference between magnetic flux densities in a same direction perpendicular to the direction of the rotation axis of the rotatable body, detected at the at least two positions by the magnetic detection elements (100l1, 100l2, 100r1, 100r2), characterized in that the signal processor of the magnetic sensor is configured to set a first correction value based on a signal output from the magnetic detection elements (100l1, 100l2, 100r1, 100r2) when a distance between the tooth surfaces of the rotatable body and the magnetic detection elements (100l1, 100l2, 100r1, 100r2) is infinite, to make correction of an output value of the magnetic detection elements (100l1, 100l2, 100r1, 100r2) by using the first correction value, to set a second correction value based on an amplitude of the output value when one or more revolutions of the rotatable body are made after the correction of the output value, to make correction of the difference between the magnetic flux densities in the direction of the rotation axis of the rotatable body, detected at the at least two positions by the magnetic detection elements (100l1, 100l2, 100r1, 100r2), by using the first correction value, to make correction of the difference between the magnetic flux densities in the same direction perpendicular to the direction of the rotation axis of the rotatable body, detected at the at least two positions, by using the second correction value, and to calculate the rotation angle of the rotatable body in accordance with a value obtained by the correction of the difference by using the first correction value and a value obtained by the correction of the difference by using the second correction value. a rotatable body made of a soft magnetic material and having a tooth tip and a tooth bottom on planes normal to a direction of a rotation axis, the tooth tip being provided in a range of a first rotation angle, the tooth bottom being provided in a range other than the range of the first rotation angle; a magnet configured to form a magnetic field toward tooth surfaces of the tooth tip and the tooth bottom of the rotatable body; a magnetic sensor including magnetic detection elements (100l1, 100l2, 100r1, 100r2) disposed at positions between the rotatable body and the magnet and other than on the rotation axis of the rotatable body, and configured to detect magnetic flux densities in the direction of the rotation axis of the rotatable body at at least two positions; and the magnetic sensor having a signal processor configured to calculate a rotation angle of the rotatable body in accordance with a difference between magnetic flux densities in the direction of the rotation axis of the rotatable body, detected at the at least two positions and a difference between magnetic flux densities in a same direction perpendicular to the direction of the rotation axis of the rotatable body, detected at the at least two positions by the magnetic detection elements (100l1, 100l2, 100r1, 100r2), characterized in that the signal processor of the magnetic sensor is configured to set a first correction value based on a signal output from the magnetic detection elements (100l1, 100l2, 100r1, 100r2) when a distance between the tooth surfaces of the rotatable body and the magnetic detection elements (100l1, 100l2, 100r1, 100r2) is infinite,