A coding method for coding a current block in a current picture to be coded, wherein the current block is motion-compensated by using two reference pictures comprising one forward reference picture and one backward reference picture, and two motion vectors corresponding to the two reference pictures, said coding method comprising: specifying, as a backward reference picture for the current block, a reference picture which is located immediately after the current picture in display order; specifying, as a co-located block, a motion-compensated block included in the specified backward reference picture and located identically to the current block; deriving one motion vector of the co-located block; specifying, as a forward reference picture for the current block, a reference picture corresponding to the derived one motion vector of the co-located block; generating a forward motion vector and a backward motion vector for the current block by scaling the derived one motion vector of the co-located block based on a difference between display order information of the forward reference picture, display order information of the backward reference picture and display order information of the current picture; and performing motion compensation on the current block by referring to the forward reference picture and the backward reference picture, wherein the forward reference picture corresponds to the generated forward motion vector and the backward reference picture corresponds to the generated backward motion vector, characterized in that (a) in a case where the picture including the co-located block is a B-picture and the co-located block is motion-compensated by using only one forward motion vector, deriving, as the one motion vector of the co-located block, the only one forward motion vector, (b) in a case where the picture including the co-located block is a B-picture and the co-located block is motion-compensated by using two motion vectors comprising one forward motion vector and one backward motion vector, deriving, as the one motion vector of the co-located block, the one forward motion vector of the two motion vectors, and (c) in a case where the picture including the co-located block is a B-picture and the co-located block is motion-compensated in direct mode by using two motion vectors which are generated by using a motion vector of an already-coded picture other than the picture including the co-located block, deriving, as the one motion vector of the co-located block, the one forward motion vector of the two motion vectors used in motion compensation of the co-located block. specifying, as a backward reference picture for the current block, a reference picture which is located immediately after the current picture in display order; specifying, as a co-located block, a motion-compensated block included in the specified backward reference picture and located identically to the current block; deriving one motion vector of the co-located block; specifying, as a forward reference picture for the current block, a reference picture corresponding to the derived one motion vector of the co-located block; generating a forward motion vector and a backward motion vector for the current block by scaling the derived one motion vector of the co-located block based on a difference between display order information of the forward reference picture, display order information of the backward reference picture and display order information of the current picture; and performing motion compensation on the current block by referring to the forward reference picture and the backward reference picture, wherein the forward reference picture corresponds to the generated forward motion vector and the backward reference picture corresponds to the generated backward motion vector, (a) in a case where the picture including the co-located block is a B-picture and the co-located block is motion-compensated by using only one forward motion vector, deriving, as the one motion vector of the co-located block, the only one forward motion vector, (b) in a case where the picture including the co-located block is a B-picture and the co-located block is motion-compensated by using two motion vectors comprising one forward motion vector and one backward motion vector, deriving, as the one motion vector of the co-located block, the one forward motion vector of the two motion vectors, and (c) in a case where the picture including the co-located block is a B-picture and the co-located block is motion-compensated in direct mode by using two motion vectors which are generated by using a motion vector of an already-coded picture other than the picture including the co-located block, deriving, as the one motion vector of the co-located block, the one forward motion vector of the two motion vectors used in motion compensation of the co-located block.