A ferry ran aground in southern Sweden on Sunday, spilling diesel over several kilometres, but the vessel's 75 passengers were taken to safety, officials said.

The Marco Polo TT-Line ferry got stuck south of Karlshamn early in the day, according to the coastguard.

The ferry "leaked diesel fuel for several kilometres before running aground", it said in a statement, adding that thick fog in area and made it difficult to work out the extent of the spill.

Investigators are looking into the cause of the accident and whether maritime law was breached, senior coastguard investigator Jonatan Orn told public radio P4.

The ferry was operating between the ports of Trelleborg and Karlshamn, but Orn said the ferry had strayed from its usual route when it ran aground.

The oil slick had reached land by late afternoon on a coastal strip in the municipality of Solvesborg, said local authorities.

The Swedish Civil Contingencies Agency has been called in to help and will begin decontaminating the site on Monday, they added.

The ship's hull had been holed in the bow and middle of its hull, but a senior official at the Swedish Transport Agency told the TT news agency there was no risk of it sinking.

Sign up to our free newsletters

Get the best updates straight to your inbox:
Please select at least one mailing list.

You can unsubscribe at any time by clicking the link in the footer of our emails. We use Mailchimp as our marketing platform. By subscribing, you acknowledge that your information will be transferred to Mailchimp for processing.