国道312号(こくどう312ごう)は、京都府宮津市から兵庫県姫路市に至る一般国道である。