A decoding method for decoding an image from a bitstream, the decoding method comprising: deriving, for each of two prediction directions, these two prediction directions being before and after the image in the display time order, one or more candidates for a motion vector predictor used to decode a current block in the image; selecting the motion vector predictor out of the plurality of candidates derived for the two prediction directions using an index included in the bitstream; and decoding the current block using the selected motion vector predictor; wherein the deriving includes: generating a first candidate for the motion vector predictor from a first motion vector belonging to one of one or more first adjacent blocks, the first adjacent blocks being spatially adjacent to the current block in a leftward direction; and generating a second candidate for the motion vector predictor from a second motion vector belonging to one of one or more second adjacent blocks, the second adjacent blocks being spatially adjacent to the current block in an upward direction; characterized in that the generating of the second candidate includes: determining whether or not at least one of the first adjacent blocks is inter-predicted; and when it is determined that none of the first adjacent blocks is inter-predicted, searching for the second motion vector to be made available by scaling processing from among one or more motion vectors belonging to the one or more second adjacent blocks, and when the second motion vector is obtained in the search, scaling the second motion vector to generate the second candidate, the scaling being performed using a scaling ratio. deriving, for each of two prediction directions, these two prediction directions being before and after the image in the display time order, one or more candidates for a motion vector predictor used to decode a current block in the image; selecting the motion vector predictor out of the plurality of candidates derived for the two prediction directions using an index included in the bitstream; and decoding the current block using the selected motion vector predictor; wherein the deriving includes: generating a first candidate for the motion vector predictor from a first motion vector belonging to one of one or more first adjacent blocks, the first adjacent blocks being spatially adjacent to the current block in a leftward direction; and generating a second candidate for the motion vector predictor from a second motion vector belonging to one of one or more second adjacent blocks, the second adjacent blocks being spatially adjacent to the current block in an upward direction; characterized in that the generating of the second candidate includes: determining whether or not at least one of the first adjacent blocks is inter-predicted; and when it is determined that none of the first adjacent blocks is inter-predicted, searching for the second motion vector to be made available by scaling processing from among one or more motion vectors belonging to the one or more second adjacent blocks, and when the second motion vector is obtained in the search, scaling the second motion vector to generate the second candidate, the scaling being performed using a scaling ratio. generating a first candidate for the motion vector predictor from a first motion vector belonging to one of one or more first adjacent blocks, the first adjacent blocks being spatially adjacent to the current block in a leftward direction; and generating a second candidate for the motion vector predictor from a second motion vector belonging to one of one or more second adjacent blocks, the second adjacent blocks being spatially adjacent to the current block in an upward direction; characterized in that the generating of the second candidate includes: determining whether or not at least one of the first adjacent blocks is inter-predicted; and when it is determined that none of the first adjacent blocks is inter-predicted, searching for the second motion vector to be made available by scaling processing from among one or more motion vectors belonging to the one or more second adjacent blocks, and when the second motion vector is obtained in the search, scaling the second motion vector to generate the second candidate, the scaling being performed using a scaling ratio. determining whether or not at least one of the first adjacent blocks is inter-predicted; and when it is determined that none of the first adjacent blocks is inter-predicted, searching for the second motion vector to be made available by scaling processing from among one or more motion vectors belonging to the one or more second adjacent blocks, and when the second motion vector is obtained in the search, scaling the second motion vector to generate the second candidate, the scaling being performed using a scaling ratio.