A schedule-controlling unit selects a file whose remaining time for playback is the shortest among files to be restored and compares the remaining time for playback of the selected file with a reference time set in advance. When the remaining time for playback is longer than the reference time, the schedule-controlling unit again selects a file in which a distance parameter of a partition of unrestored data to be subsequently restored is the lowest among files to be restored. A restoring unit restores unrestored data of one partition of the file selected by the schedule-controlling unit.