A double-salvo from Bosnian striker Sergej Barbarez in the 41st and 44th minutes gave the visitors a comfortable lead before Bernd Schneider made it 3-0 seven minutes after the break.
Zidan was on target for the ninth time since joining Mainz in January, but his 75th minute strike proved to be a late consolation for the hosts.
Mainz remained in 13th place with 30 points, just one above the relegation zone as their recent revival suffered a setback.
Elsewhere, title holders Bayern Munich grabbed a 2-0 victory over league leaders Schalke 04 at the Allianz Arena.
Roy Makaay broke the deadlock as early as the third minute when he slotted home Mark Van Bommel's pass.
Bosnian winger Hasan Salihamidzic secured the win in the 78th minute when he smashed in from close-range after being set-up by Brazilian defender Lucio.
Bayern are fourth with 47 points, trailing third-placed Stuttgart by two points while Schalke are on top on 53 points.
Werder Bremen missed a golden opportunity to equal Schalke at the summit after they were held to a goalless draw at Energie Cottbus.
Stuttgart comfortably beat Alemania Aachen 3-1 courtesy of Marco Streller, Benjamin Lauth and Cacau goals while Zambian defender Moses Sichone scored the visitors' only goal.
Bottom of the table Borussia M'gladbach grabbed a last-gasp equalizer from Argentine midfielder Federico Insua to draw with Eintracht Frankfurt 1-1 after the latter took the lead through Sotirios Kyrgiakos, who was sent off later.
Nurnberg edged past Hertha Berlin 2-1, thanks to goals from Tomas Galasek and Marco Engelhardt before Christian Giminez pulled one back for Hertha.
On Friday, Jonas Kamper gave Arminia Bielefeld a priceless 1-0 victory over Borussia Dortmund to level on points with Thomas Doll's team who are now third from bottom.