Is this NP-hard? I cannot prove it.
Yes this problem is definitely NP hard. I am posting this answer since you require proof.

If you follow this link http://en.wikipedia.org/wiki/Set_cover_problem, it says that the optimization version of minimal set cover problem is NP-Hard.

The problem in the link:  


  Given a set of elements {1,2,...,m} (called the universe) and a set
  S of n sets whose union equals the universe, the set cover problem is
  to identify the smallest subset of S whose union equals the universe.
  For example, consider the universe U = {1, 2, 3, 4, 5} and the set
  of sets S = {{1, 2, 3}, {2, 4}, {3, 4}, {4, 5}}. Clearly the
  union of S is U. However, we can cover all of the elements with the
  following, smaller number of sets: {{1, 2, 3}, {4, 5}}


You can relate this to your problem as follows:  

S is the set of nodes that cover at least one node in your input set. This can be found by conducting a DFS on the nodes of input set with the direction of edges reversed.

Now the problem described in the link is a special case of your problem, where the cost of each node is equal and you just want to minimize the number of nodes (sets).

Hence your problem is even more difficult to solve in the general case and hence it is NP Hard.