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

 概要 
兵庫県姫路市から京都府宮津市までを結ぶ道路であり、兵庫県の中播磨地区・但馬地区・京都府の丹後地区の幹線道路として機能しており、緊急輸送道路に指定されている。全体的に2車線である。

 路線データ 

一般国道の路線を指定する政令に基づく起終点および重要な経過地は次のとおり。
 起点：宮津市（新大手橋 = 国道176号起点）
 終点：姫路市（姫路東ランプ = 国道2号・姫路バイパス）
 重要な経過地：京都府与謝郡野田川町、京都府中郡峰山町、京都府熊野郡久美浜町、豊岡市、兵庫県城崎郡日高町、兵庫県養父郡八鹿町、兵庫県朝来郡和田山町、兵庫県朝来郡朝来町、兵庫県朝来郡生野町、兵庫県神崎郡神崎町
 総延長 : 243.1 km（京都府 71.1 km、兵庫県 172.0 km）重用延長を含む
 重用延長 : 39.7 km（京都府 27.5 km、兵庫県 12.2 km）
 未供用延長 : なし
 実延長 : 203.4 km（京都府 43.6 km、兵庫県 159.8 km）
 現道 : 161.1 km（京都府 43.3 km、兵庫県 117.7 km） 
 旧道 : なし 
 新道 : 42.3 km（京都府 0.3 km、兵庫県 42.0 km） 
 指定区間：国道9号と重複する区間（兵庫県養父市 - 朝来市）

 歴史 
 1970年（昭和45年）4月1日 - 一般国道312号（京都府宮津市 - 兵庫県姫路市）として指定。
 1982年（昭和57年）4月1日 - 国道178号の経路変更に伴い、旧道（宮津市 - 熊野郡久美浜町（現・京丹後市））が国道312号単独区間となる。
 2022年（令和4年）11月26日 - 野中バイパス（京丹後市久美浜町佐野 - 久美浜町野中、1.2 km）が開通する。

 路線状況 

 別名 
 円山川リバーサイドライン（朝来市生野地区 - 同市和田山町玉置間、および養父市八鹿町上小田 - 豊岡市中央町間）
 但馬街道
 姫豊バイパス（姫路市砥堀・砥堀IC交差点 - 同市市川橋通・姫路天神前交差点間の4車線区間）

 バイパス 
 播但連絡道路
 日高バイパス
 比治山バイパス
 大宮バイパス
 山陰近畿自動車道（大宮峰山道路＝事業中）（野田川大宮道路）（宮津与謝道路）

 道の駅 
 兵庫県
 あさご（朝来市）
 フレッシュあさご（朝来市）
 銀の馬車道・神河（神崎郡神河町）
 但馬楽座（養父市）

 地理 

 通過する自治体 
 京都府
 宮津市 - 与謝郡与謝野町 - 京丹後市
 兵庫県
 豊岡市 - 養父市 - 朝来市 - 神崎郡神河町 - 神崎郡市川町 - 神崎郡福崎町 - 姫路市

 交差する道路 
交差する道路都道府県名市町村名交差する場所国道176号 重複区間起点国道178号 重複区間起点京都府道・兵庫県道2号宮津養父線 重複区間起点京都府道802号田井大垣自転車道線京都府宮津市鶴賀起点京都府道9号綾部大江宮津線浜町京都府道802号田井大垣自転車道線 重複区間起点京都府道802号田井大垣自転車道線 重複区間終点漁師京都府道802号田井大垣自転車道線 重複区間起点漁師京都府道・兵庫県道2号宮津養父線 重複区間終点京都府道802号田井大垣自転車道線 重複区間終点杉末京都府道・兵庫県道2号宮津養父線 重複区間起点京都府道802号田井大垣自転車道線 重複区間起点須津京都府道614号岩滝口停車場線須津岩滝口駅前交差点国道178号 重複区間終点国道482号京都府道802号田井大垣自転車道線 重複区間終点須津消防署前交差点京都府道・兵庫県道2号宮津養父線 重複区間終点須津石田橋交差点 山陰近畿自動車道須津与謝天橋立IC京都府道613号下地与謝野停車場線与謝郡与謝野町石川下地交差点国道176号 重複区間終点石川石川交差点京都府道803号加悦岩滝自転車道線上山田京都府道・兵庫県道2号宮津養父線上山田交差点京都府道655号味土野大宮線京丹後市大宮町三重交差点京都府道76号野田川大宮線大宮町谷内谷内交差点京都府道656号間人大宮線 重複区間起点大宮町谷内谷内塚本交差点京都府道651号大宮岩滝線大宮町京丹後大宮IC口交差点京都府道656号間人大宮線 重複区間終点京都府道657号明田京丹後大宮停車場線大宮町周枳周枳交差点京都府道658号久住河辺線京都府道659号二箇河辺線大宮町交差点国道482号 重複区間起点峰山町長岡長岡大橋交差点京都府道17号網野峰山線峰山町長岡長岡交差点京都府道659号二箇河辺線峰山町二箇京都府道・兵庫県道704号鱒留但東線峰山町交差点国道482号 重複区間終点久美浜町佐野佐野たけだ橋交差点京都府道668号野中小天橋停車場線久美浜町野中野中交差点京都府道・兵庫県道703号永留豊岡線久美浜町京都府道669号芦原甲山線久美浜町橋爪橋爪交差点兵庫県道・京都府道706号町分久美浜線久美浜町友重交差点国道178号 重複区間起点久美浜町本願寺前交差点京都府道・兵庫県道122号久美浜気比線京都府道670号久美浜停車場線 重複久美浜町栄町栄町交差点国道178号 重複区間終点兵庫県豊岡市下宮地蔵東交差点兵庫県道160号奥野コウノトリの郷停車場線 重複区間起点兵庫県道239号下宮六地蔵線下宮兵庫県道160号奥野コウノトリの郷停車場線 重複区間終点鎌田鎌田交差点兵庫県道536号口小野庄境線庄境庄境交差点兵庫県道3号豊岡瀬戸線元町交差点国道426号円山大橋西詰交差点兵庫県道728号但馬空港インター線上佐野但馬空港入口交差点兵庫県道250号藤井上石線日高町国府駅前交差点兵庫県道249号府市場伏線日高町兵庫県道1号日高竹野線日高町土居土居西交差点国道482号 重複区間起点日高町祢布交差点国道482号 重複区間終点日高町岩中岩中交差点京都府道・兵庫県道2号宮津養父線 重複区間起点養父市八鹿町下小田下小田交差点京都府道・兵庫県道2号宮津養父線 重複区間終点八鹿町上小田上小田北交差点兵庫県道6号養父宍粟線 重複区間起点八鹿町宮越交差点京都府道・兵庫県道2号宮津養父線 重複区間起点兵庫県道104号物部藪崎線薮崎大屋橋交差点兵庫県道6号養父宍粟線 重複区間終点国道9号 重複区間起点京都府道・兵庫県道2号宮津養父線 重複区間終点上野上野南交差点兵庫県道271号朝倉養父停車場線 重複区間起点上野上野交差点兵庫県道271号朝倉養父停車場線 重複区間終点堀畑堀畑交差点兵庫県道527号畑宮田線朝来市和田山町法道寺法道寺交差点兵庫県道10号朝来出石線兵庫県道104号物部藪崎線 / 別線 重複区間起点和田山町宮田宮田交差点兵庫県道104号物部藪崎線 / 別線 重複区間終点和田山町土田宮田交差点国道9号 重複区間終点兵庫県道273号金浦和田山線和田山町玉置一本柳交差点 北近畿豊岡自動車道 播但連絡道路和田山町和田山インター前交差点17 和田山IC/JCT兵庫県道136号浅野山東線 重複区間起点和田山町加都加都北交差点兵庫県道136号浅野山東線 重複区間終点和田山町加都加都交差点兵庫県道277号溝黒竹田線和田山町竹田竹田城下町交差点兵庫県道70号十二所澤線澤澤（第一）交差点兵庫県道526号与布土桑市線 重複区間起点伊由市場伊由市場交差点兵庫県道526号与布土桑市線 重複区間終点石田石田交差点国道429号 重複区間起点山口朝来インター東交差点 播但連絡道路生野町15 生野北第二ランプ 播但連絡道路生野町円山14 生野北第一ランプ国道429号 重複区間終点生野町兵庫県道39号一宮生野線生野町口銀谷生野交差点 播但連絡道路神崎郡神河町大山神崎北ランプ交差点12 神崎北ランプ兵庫県道8号加美宍粟線 重複区間起点神崎総合病院前交差点兵庫県道8号加美宍粟線 重複区間終点福本福本東交差点 播但連絡道路市川町屋形市川北ランプ交差点10 市川北ランプ兵庫県道214号鶴居停車場線屋形兵庫県道215号甘地停車場線市川町役場前交差点兵庫県道34号西脇八千代市川線西田中落合橋東詰交差点兵庫県道405号甘地福崎線福崎町福崎新福崎新町交差点兵庫県道23号三木宍粟線福崎新福崎大橋西交差点兵庫県道410号中寺北条線 重複区間起点姫路市香寺町溝口溝口交差点兵庫県道410号中寺北条線 重複区間終点香寺町溝口溝口南交差点兵庫県道81号小野香寺線香寺町広瀬広瀬北交差点兵庫県道80号宍粟香寺線香寺町広瀬広瀬交差点兵庫県道373号大柳仁豊野線兵庫県道216号仁豊野停車場線仁豊野 播但連絡道路砥堀砥堀北交差点5 砥堀ランプ兵庫県道518号砥堀本町線砥堀砥堀交差点兵庫県道218号西田原姫路線 重複区間起点砥堀生野橋西交差点兵庫県道218号西田原姫路線 重複区間終点西中島西中島交差点兵庫県道516号姫路環状線 重複区間起点野里西中島南交差点兵庫県道218号西田原姫路線兵庫県道398号花田野里線野里大日交差点兵庫県道218号西田原姫路線野里大日町北交差点国道372号野里二本松交差点国道2号 重複区間起点兵庫県道516号姫路環状線 重複区間終点市川橋通姫路天神前交差点兵庫県道398号花田野里線兵庫県道517号妻鹿花田線花田町一本松一本松交差点兵庫県道397号花田御着停車場線 重複区間起点御国野町国分寺御着駅前交差点国道2号 重複区間終点兵庫県道397号花田御着停車場線 重複区間終点兵庫県道551号国分寺白浜線 重複区間起点御国野町国分寺御国野交差点国道2号 / 姫路バイパス兵庫県道551号国分寺白浜線 重複区間終点姫路東ランプ交差点 / 終点姫路東ランプ

 ギャラリー