CSS does not handle relations/interactions between an element and its parent. This might require Javascript. Here's a jQuery example :
$(document).ready(function(){
    $(".button").hover(function(){
        $("body").css("background-color", "newcolor");
    }
}
Another try without jQuery :
function onButtonHover(){
    document.body.style.background = color;
}
You would need to bind this function to the onMouseHover event on every .button element though (or see JoshC's fiddle : http://jsfiddle.net/5a9TS/) :
<button class="button" onMouseOver="onButtonHover()">MyButton</button>
More about this event : http://www.w3schools.com/tags/ev_onmouseover.asp. Note that the opposite interaction could be done is CSS though (parent-to-child relation) :
body:hover .button{
    background-color: newColor;
}