Two of the Conservative MPs who provoked controversy with their views on gay rights have kept their seats.

Shadow home secretary Chris Grayling, who was secretly filmed telling a meeting last month that he agreed B&B owners should be allowed to bar gay couples, held his Epsom and Ewell seat.

He won 56.4 per cent of the vote with nearest rival Liberal Democrat Jonathan Lees coming in at 26.9 per cent.

After his remarks were published, Mr Grayling apologised and said he had voted for and believed in laws to prevent discrimination against gay people.

Julian Lewis, the shadow defence secretary, also caused anger this month for saying he thought being gay was more dangerous than being in the Army.

Dr Lewis argued that the age of consent should have have been equalised because of the risk of HIV transmission.

He increased his majority in New Forest East by more than 3,600 votes, trouncing his closet Liberal Democrat rival.

Meanwhile, the Tory candidate who was suspended from the party for saying gay people are “not normal”, came third in his constituency.

Philip Lardner, the candidate for North Ayrshire and Arran, was suspended when PinkNews.co.uk revealed he had made the remarks on his official campaign website.

But he was able to continue standing as an independent because it was too late to remove his name from ballots.

Mr Lardner, who was also suspended from his job as a primary school teacher, gained 15.6 per cent of the vote. Labour’s Katy Clarke won with 47.4 per cent.

Conservative candidate Philippa Stroud, who allegedly believed gay people were possessed by demons, lost her bid to become an MP.

A newspaper claimed last weekend that Mrs Stroud and her husband had founded a church for gay people who believed they were possessed by demons and could be “cured”. She has refused to deny these claims, instead saying she does not believe homosexuality is an illness.

Mrs Stroud, seen as a rising Tory star, was standing in Sutton and Cheam, a seat the party hoped to win.

But she came a close second to the Liberal Democrat candidate Paul Burstow. Mrs Stroud gained 42.2 per cent of the vote, compared to Mr Burstow’s 45.7 per cent.