A coding method for coding a target B-picture of plural pictures constituting a moving image to generate a bit stream corresponding to the target B-picture, including: a coding step of, when coding a target B-picture to be coded, coding each block in the target B-picture in one coding mode among I mode coding, in which a block in the target B-picture is coded without referring to other pictures, P mode coding, in which a block in the target B-picture is predictively coded with reference to one already-coded picture, and B mode coding in which a block in the target B-picture is predictively coded with reference to two already-coded pictures, to generate first coded data, characterized by a candidate picture information coding step of coding information, which indicates whether or not the target B-picture is a candidate for a reference picture at coding a picture that follows the target B-picture, to generate second coded data, a reference picture information coding step of, in the P mode coding in which a block in the target B-picture is predictively coded, determining, as a reference picture, one picture among already-coded pictures, each of which is indicated to be a candidate for a reference picture, and coding the information indicating that the one determined picture is the reference picture in the P mode coding to generate third coded data, and in the B mode coding in which a block in the target B-picture is predictively coded, determining, as a reference picture, two pictures among already-coded pictures, each of which is indicated to be a candidate for a reference picture, and coding the information indicating that the two determined pictures are the reference pictures in the B mode coding to generate third coded data, and a multiplexing step of multiplexing the first coded data, the second coded data, and the third coded data to generate the bit stream. a coding step of, when coding a target B-picture to be coded, coding each block in the target B-picture in one coding mode among I mode coding, in which a block in the target B-picture is coded without referring to other pictures, P mode coding, in which a block in the target B-picture is predictively coded with reference to one already-coded picture, and B mode coding in which a block in the target B-picture is predictively coded with reference to two already-coded pictures, to generate first coded data, characterized by a candidate picture information coding step of coding information, which indicates whether or not the target B-picture is a candidate for a reference picture at coding a picture that follows the target B-picture, to generate second coded data, a reference picture information coding step of, in the P mode coding in which a block in the target B-picture is predictively coded, determining, as a reference picture, one picture among already-coded pictures, each of which is indicated to be a candidate for a reference picture, and coding the information indicating that the one determined picture is the reference picture in the P mode coding to generate third coded data, and in the B mode coding in which a block in the target B-picture is predictively coded, determining, as a reference picture, two pictures among already-coded pictures, each of which is indicated to be a candidate for a reference picture, and coding the information indicating that the two determined pictures are the reference pictures in the B mode coding to generate third coded data, and a multiplexing step of multiplexing the first coded data, the second coded data, and the third coded data to generate the bit stream.