One option is to expose your SQL Server instance on the Internet - but don't do that. That is an awfully bad idea.
Else you will need to get the laptop on the same network segment as the VM, that is on the same VPN. I am not sure that is doable, but a start is to open a command-line window on both laptop and VM and run ipconfig to see if you have any networks in common.
If you have, you should be able to connect with n.n.n.n\SQLEXPRESS, but you will need to open ports in your firewall. And you will need to make sure that your instance accepts remote connections. By default, communication over TCP/IP is disabled for SQL Express. You also need to change the Browser service to run with auto-start
But, again, if you don't have any common network between laptop and VM, this is pointless.
I think that it would be better that the laptop goes and speaks with the VM. Not the least if the VM is up all the time, while your laptop may not.