IE7 is an old browser eat up with Microsoft-peculiar behavior. I'd like to recommend that you validate the html and make it shine, THEN we can look at the css if a problem still exists. For example, <nav> is not supported in IE8 or earlier, so you should use a <div> instead. Something this simple could be the culprit. In the footer, there is an unmatched (stray) </ul> tag. That, too, might be the bad actor. Gotta start somewhere, and clean HTML is a good foundation.
Another thing, too. IE7 does not support an XHTML strict doctype, so you would be much better off using an HTML401 doctype. That's a biggie.