French MPs have voted to back a new law that would set the age of consent at 15 and prohibit sex with relatives aged under 18.
It is expected to pass in the Senate and will give France an age of consent for sexual relations for the first time.
It comes after a series of sexual abuse scandals that shook the country.
Supporters say it will make it easier to prosecute both historical and recent cases of sexual abuse.
The bill was passed unanimously by politicians in the National Assembly on Monday night. President Emmanuel Macron's government has said that after final approval in the spring, it wants the bill to come into force quickly.
"No adult will be able to take advantage of the consent of a minor," Justice Minister Eric Dupond-Moretti said on Monday. "We do not touch children," he added.
Currently French law means consent can be accepted as legally meaningful for sexual relations at any age, including in cases of children having sex with adults, or between blood relations.
Sex between adults and the under-15s is banned, but allegations of child rape are notoriously difficult to prove in court partly because the law says under-15s can consent.
A rape charge is only possible if there is proof of "force, threat, violence or surprise" - otherwise it is tried as the lesser offence of sexual assault. That applies to children as well.
The new law would make it impossible for those under 15 to consent to sex. The sentence for rape would be up to 20 years in prison.
But a so-called "Romeo and Juliet" clause will mean it is still possible for teenagers to consent to sex with each other, allowing for sex between a teen and a young adult up to five years older.
Some MPs criticised the gap as too large. It was defended by the justice minister who said he did not want "to put a youngster aged 18 on trial because he had consensual sex with a girl aged fourteen-and-a-half."
The bill also changes laws on incest that were the subject of a recent scandal in which thousands of testimonies emerged from women who said they had been abused by relatives.
The term incest in France is used to mean sexual abuse by relatives, including those not related by blood.
The scandal began in January when prominent academic Olivier Duhamel was accused by his stepdaughter Camille Kouchner of abusing her twin brother as a child.
Mr Duhamel resigned from the prestigious Sciences Po university in Paris, and other institutions are facing pressure to improve protections against sexual violence.
It led to a wave of public testimony using the hashtag #MeTooIncest, while the association Face à l'inceste (Facing Incest) said the number of calls it received in February shot up from 30 to almost 200.
The proposed law would make it illegal for an adult to have sex with a relative aged under 18.
It is currently legal in France for adults to have sex with other adults who are close relatives, and the new law does not change this.
The latest movement comes three years after the global #MeToo scandal in which many countries faced a reckoning with allegations of widespread sexual assault including at society's highest levels.