A fire and explosion at a convenience store in northwestern Mexico have killed at least 23 people, including children, and injured 12 others.