mxup,
1. Имхо делать картинку карты с фиксированной шириной-высотой, отслеживать window.onresize по ширине.
2. Ко всей карте, вместе с area, обработчиком onresize применять css правило
transform: scale(width/widthResize ); //
http://htmlbook.ru/css/transform
Где width; widthResize текущий и размер окна браузера, с которого начинается ужатие
Если width>widthResize - операцию пропускаем