Idlib has come under mounting bombardment in recent weeks, displacing tens of thousands of people in the northwestern province, despite a truce brokered by Turkey and Russia.
Intense fighting between regime forces and rebel fighters in Syria's Idlib province killed at least 39 fighters overnight, a war monitor said on Thursday.
The violence, which saw air strikes, shelling and ground combat, further violated a ceasefire announced by Russia on Sunday in Idlib, the last major rebel and opposition bastion in the country.
The regime and allied forces took two villages in their advance towards the key town of Maarat al Numan, the Syrian Observatory for Human Rights said.
According to the Britain-based war monitor, the fighting flared late on Wednesday in areas south of Maarat al Numan, the key target of the Syrian regime's latest military offensive.
At least 22 rebel fighters were killed, most of them members of Hayat Tahrir al Sham, a group that includes fighters from the former Al Qaeda affiliate in Syria.
At least 17 regime troops and allied militia were also killed in the fighting, said Rami Abdel Rahman, the head of the observatory.
He added that regime forces were now just seven kilometres from Maaret al Numan, a town that was one of the bastions of the uprising against the regime leader Bashar al Assad's rule.
Nearly nine years into the conflict, protests against the regime are still held in some of the province's towns.
In the city of Idlib itself, 18 civilians were killed in air strikes on Wednesday, violating the truce brokered by Moscow and rebel backer Ankara.
The fighting has prompted hundreds of thousands of civilians to flee their homes in recent weeks, exposing them to a harsh winter.