Police said 42 people were injured, most of them mildly, though one was in serious condition. They were rushed to nearby hospitals for treatment.
The cause of the explosion, which occurred at a two-story restaurant in Sapporo's Toyohira district, is under investigation, police said, adding that they had no further details.
TV footage from Japanese public broadcaster NHK showed the restaurant in flames, with debris scattered on the ground.
The footage later showed gray smoke billowing from the restaurant as dozens of firefighters poured water onto the building, which was charred and nearly collapsing. Windows on an apartment building next door were broken, and cars parked outside were partially covered with debris that had fallen on them.
A witness told NHK that he smelled gas after the sound of an explosion. The broadcaster said the district office was to set up a shelter for neighbors of the restaurant to stay overnight so they could escape the smoke.
Get the latest local and international news straight to your mobile phone for free: