A state-of-charge estimation method, wherein change over time of an open-circuit voltage of a secondary battery after completion of charge/discharge is approximated with a voltage characteristic formula having adjustment parameters, and the open-circuit voltage in a stable condition of the secondary battery is calculated from the voltage characteristic formula to estimate the state of charge of the secondary battery, the method obtains m, m is a natural number, measured values, hereinafter referred to as voltage measurement value, of the open-circuit voltage of the secondary battery in a given cycle during a given data acquisition period after completion of charge/discharge of the secondary battery; selects the voltage measurement value at given selection timing from the m measured values to use as a selected voltage measurement value; calculates the initial values of the adjustment parameters based on the selected voltage measurement value and the selection timing; calculates convergence values of the adjustment parameters by gradually correcting the adjustment parameters from the initial values so that the error variance of the voltage characteristic formula and the voltage measurement value is minimized; calculates the open-circuit voltage in the stable condition by using the convergence values of the adjustment parameters for the voltage characteristic formula; and estimates the state of charge of the secondary battery from the open-circuit voltage in the stable condition; and wherein the adjustment parameters are {Ai} (i =1 to n), {B i} (i = 1 to n), and Vc, the n is an integer equal to or greater than four, and the t is an elapsed time after completion of charge/discharge, the voltage characteristic formula is given as: V t = A 1 x exp B 1 x t) + A 2 x exp B 2 x t +... + A n x exp B n x t + Vc wherein {b i} (i = 1 to (n-1)) is an integer string that satisfies 1 < b 1 < b 2 <... < b n-1 and that is set in advance to correspond to the selection timing, the initial values {A0 i} (i = 1 to n), {B0 i} (i = 1 to n), and V0c of the adjustment parameters {Ai} (i = 1 to n), {B i} (i = 1 to n), and Vc, respectively, are calculated using the selected voltage measurement value at the selection timing determined from the integer string {b i} (i = 1 to (n - 1)) wherein the voltage measurement value is {VM j} (j = 1 to m), the cycle to obtain the voltage measurement value is Δt, and the C is a real number set in advance, the voltage measurement value VM1 obtained at the beginning of the data acquisition period, a voltage measurement value {VM k} (k = b i; i = 1 to (n-1)) with the integer string {b i} (i = 1 to (n-1)) as the selection timing, and the voltage measurement value VM m obtained at the end of the data acquisition period are selected as the selected voltage measurement values, and the initial values {A0 i} (i = 1 to n), {B0 i} (i = 1 to n), and V0c are calculated with: A 0 1 = VM 1 − VM k k = b 1 A 0 i = VM kk − VM k kk = b i − 1, k = b i; i = 2 to n − 1 A 0 n = VM k − VM m k = b n − 1 B 0 i = − 1 / b i − 1 x Δt x C i = 1 to n − 1 B 0 n = − 1 / m − 1 x Δ t x C V 0 c = VM m. wherein {b i} (i = 1 to (n-1)) is an integer string that satisfies 1 < b 1 < b 2 <... < b n-1 and that is set in advance to correspond to the selection timing, the initial values {A0 i} (i = 1 to n), {B0 i} (i = 1 to n), and V0c of the adjustment parameters {Ai} (i = 1 to n), {B i} (i = 1 to n), and Vc, respectively, are calculated using the selected voltage measurement value at the selection timing determined from the integer string {b i} (i = 1 to (n - 1)) wherein the voltage measurement value is {VM j} (j = 1 to m), the cycle to obtain the voltage measurement value is Δt, and the C is a real number set in advance, the voltage measurement value VM1 obtained at the beginning of the data acquisition period, a voltage measurement value {VM k} (k = b i; i = 1 to (n-1)) with the integer string {b i} (i = 1 to (n-1)) as the selection timing, and the voltage measurement value VM m obtained at the end of the data acquisition period are selected as the selected voltage measurement values, and the initial values {A0 i} (i = 1 to n), {B0 i} (i = 1 to n), and V0c are calculated with: A 0 1 = VM 1 − VM k k = b 1 A 0 i = VM kk − VM k kk = b i − 1, k = b i; i = 2 to n − 1 A 0 n = VM k − VM m k = b n − 1 B 0 i = − 1 / b i − 1 x Δt x C i = 1 to n − 1 B 0 n = − 1 / m − 1 x Δ t x C V 0 c = VM m.