Why browsers ignores /etc/hosts behind a SOCKS proxy?
Your browser is asking the SOCKS proxy for the sites, it is not connecting directly. Therefore putting the IP address in the exceptions list doesn't work, as your computer is not performing the look up of air.company.com to 127.0.0.1. The SOCKS proxy is.

To avoid this, place the full domain name of what you are accessing locally in the exceptions list in System Preferences > Network > Proxies.

So for air.company.com you'd see an exception list (from your example above) of:

  *.local, 169.254/16, 127.0.0.1, air.company.com


Your computer will now connect to air.company.com directly, and therefore make use of /etc/hosts.