An opening detector detects a state of a platen whether the platen is
"opened" at a level equal to or above a set opening degree or "closed" at
a level less than the set opening degree. A reading controller starts
lighting of an illumination lamp in response to a change of the state of
the platen from the "opened" to the "closed". A rising detector detects a
rising of light intensity of the illumination lamp. A size detector reads
an image signal of an imaging element after the rising detector detects a
rising of the light intensity, determines presence of a document in a
main scanning direction, and decides a document size in the main scanning
direction.