Haz tratado con otra direccion diferente a una de hotmail? tal vez este llegando como correo basura y lo elimina.
 
O intenta agregando los siguientes encabezados: 
 Código PHP:
    ...
}else {
        if ($HTTP_POST_VARS["Enviar"]){
             $msg=$HTTP_POST_VARS["nombre"]." / ";
             $msg.=$HTTP_POST_VARS["apellido"]." / ";
             $msg.=$HTTP_POST_VARS["email"]." / ";
             $msg.=$HTTP_POST_VARS["telefono"]." / ";
             $msg.=$HTTP_POST_VARS["consulta"]." / ";
 
             $email="[email protected]"
             
             $mailheaders = "From: <$email>\r\n";
             $mailheaders .= "Reply-to: <$email>\r\n";
             $mailheaders .= "Return-path: <$email\r\n>";
             $mailheaders .= "X-Priority: 1\r\n";
             $mailheaders .= "X-MSMail-Priority: High\r\n";
             
             if( mail($email, "formulario Web", $msg, $mailheaders) ){
                 <br><br><br><br>
                 <div align="center">Su consulta ha sido enviada..<br>
                 <a class="link4" href="contacto.php">Click Aqui para enviar otra consulta</a><br></div><br><br>
            }
             else
                 echo "El correo no fue enviado";
        } 
       La funcion mail regresa TRUE si el correo fue aceptado satisfactoriamente para su envío, o FALSE de lo contrario, esa es la razon del ultimo if. 
Espero que te sirva, saludos