Not only IE7 throws the menu right, but in IE8 the list items in the menus are inline.
A quick look at your style sheet appears to use a .menu class that is positioned absolute. If this is the container for your menu, and all link lists are positioned absolute, this is not correct. The container needs to be positioned:relative in order for the menus to be positioned absolute.
That also applies to the phonetitle class.
In general, this type of construction you are using, doesn't really needs positioning. You could simply use the .phonetitle without the need of a float:left and positioning. Same applies to the .menu container.
Keep it simple, no need to complicate the style sheet and run into the sort of issues you are having.
You also use some CC's for IE that could interfere with the actual style sheet.