Dein Problem besteht in dem ersten div-Element nach body und außerdem auch beim Opera.
Für dieses div-Element bestimmst du nämlich keine Breite, weswegen eine Breite von 100% angenommen wird, die dann natürlich rechts aus dem Bildschirm geht.
Für eine solche Analyse empfehle ich auch, das Stylesheet border.
Da kannst du z.B. in deiner style.css
div { border:red solid 1px; }
angeben.
So erkennt man sofort, welches div-Element zu breit ist und den Scrollbalken verursacht.