Elasticsearch does not know what a road is. So it can't do that OOTB.
I know that some companies are using elasticsearch to compute that but it requires a lot a preparation first and then may be more than one request.
May be you need to store something like paths and distances between major cities or something like this and then use that.
Or may be use in addition to elasticsearch something like Neo4J and store all the roads, paths between cities? And combine search for closest point in elasticsearch with resolve the shortest path in Neo4J?