The American Civil War most certainly was fought over slavery.
Indeed it was. Here are the official words of the southerners themselves, expressed at the time of secession:
From the Mississippi declaration of secession:Our position is thoroughly identified with the institution of slavery.
From the Texas declaration of the Causes of Secession: ... maintaining and protecting the institution known as negro slavery--the servitude of the African to the white race within her limits
From the South Carolina Declaration of Secession: ... an increasing hostility on the part of the non-slaveholding States to the institution of slavery
From the Georgia Declaration of Secession:The South with great unanimity declared her purpose to resist the principle of prohibition [of slavery] to the last extremity.
In every declaration of secession, slavery was given as the first and most prominent reason for secession. Secession was popular in flat states, where large plantations were viable. It was less popular in mountainous areas, where slaves were less common, including what is now West Virginia, and the mountain state of Tennessee which was the last to secede and the first to rejoin the union. There was a rebellion within the rebellion in the hilly areas of northern Alabama. By the end of the war, every state but South Carolina (the flattest state, most dependent on plantation agriculture) raised volunteer regiments to fight in the Union Army, mostly from mountain areas.