A cam mechanism includes a cam ring, and a linearly movable frame movable supporting
an optical element. The cam grooves are located at different positions in the optical
axis direction and which trace a same reference cam diagram. All cam grooves are
partial cam grooves each having at least one end opening at at least one of opposite
ends of the cam ring, so as not to include an entire portion of the reference cam
diagram. Cam followers are located at different positions at least in the optical
axis direction and are respectively engageable in the cam grooves. At least one
of the cam followers remains engaged in a corresponding cam groove while at least
one of the other of the cam followers comes out of the end opening and is disengaged
therefrom when the linearly movable frame moves to movement limit in the optical-axis direction.