I think 正午 means 12:00 (military time) and only 12:00.
I found this site about 正午.
http://www.nao.ac.jp/faq/a0401.html
正午 can be said 午後0時 or 午前12時, because 12:00 (m.t.) is 1 hr past from 午前11時(11:00 m.t.) and 1 hr before 午後1時(13:00 m.t.)
When you take a look at the document made in 5th year of Meiji, it is written (= determined) that 正午 means 午前12時 (and 午前12時 only,) and that "Midnight" means 午前0時 AND 午後12時. Why they excluded 午後0時 for 正午 is a mystery.
Here's what I thought. 午前12時 might cause confusion because some tend to think that 午前12時30分 as 0:30 m.t. (and I am one of them.)* So I think it's safer to say 午後0時 as 12:00 m.t.. 昼12時 is even more safer.
* This is true because digital clock in Japan usually shows "12:xx AM" for 0:xx m.t. in am-pm mode. Maybe because the top of an analog clock is "12!"
btw, is there a word that means exactly 12:00-am (midnight)?
Yes, there are. One of them is "正子{しょうし}."