35 watts at 48VDC is about 730 milliamperes into the load with 48 volts across it, so to specify the cable you need to know the tolerance allowable on the input voltage to the load.
Running it at a higher voltage will allow you to use smaller diameter cable, so just for the sake of this exercise let's say the spec on the 48 volts is +/- 10% and the device is linear, so with 43.2 volts across it it'll draw 657 milliamperes from the source.
With a 48 volt source servicing the load and only 43.8 volts getting to the load means that the cable between the source and the load must be dropping the 4.8 volt difference and, with 657 milliamperes running through it, represents a resistance of 7.3 ohms over the 4 kilometer (out and back) run.
That's about 1.83 ohms per kilometer so, perusing a copper wire table, we find that #7 AWG, at 1.634 ohms per kilometer will fill the bill, but the down side is that it'll be expensive to do it that way.

Another less expensive and, perhaps, more sensible way to do it - if AC mains aren't available at the remote location - would be to send mains power over much smaller diameter wire from the local to the remote location and convert it to 24 or 48 volts DC there; the caveat being, of course, that you're running a moderately high voltage over a fairly long route where lots of untoward things could happen.
Like, for example, a baby chewing through the cable.