In the case of bidirectional prediction, the inter-predictor 124 selects a first reference picture and a second reference picture from reference picture list 0 and reference picture list 1, respectively, and searches for a block similar to the current block in each of the reference pictures to generate a first reference block and a second reference block. Then, the inter-predictor 124 generates a prediction block for the current block by averaging or weighted-averaging the first reference block and the second reference block. Then, the inter-predictor transmits, to the encoder 150, motion information including information about the two reference pictures and information about two motion vectors used to predict the current block. Here, the two motion vectors represent a first motion vector corresponding to the displacement between the position of the current block in the current picture and the position of the first reference block in the first reference picture (i.e., a motion vector referring to the first reference picture), and a second motion vector corresponding to the displacement between the position of the current block in the current picture and the position of the second reference block in the second reference picture (i.e., a motion vector referring to the second reference picture).