Updated December 2014 - simplified
Voted on and now OCJ policy.
If there are enough people in the car then the driver does not pay. If car sharing the cost should be the same, or cheaper than the one way cost by local train or highway bus (16yen/km).
So if the return passenger cost is the same or less than the oneway local train cost then the driver does not pay. If more than the oneway local train cost then the driver starts to pay something.
Hire care fees and parking are not included in calculations - they are shared by the driver and passengers equally.
Basic Passenger Cost= total distance x 8 (16yen/km divided by 2 = local train oneway cost)
If the total gas and highway tolls divided between passenger is less than the Basic Passenger Cost then the driver goes free and passengers pay.
If it is more than the Basic Passenger Cost then the driver pays the left over. When the leftover cost becomes more, then of course everyone in the car pays the same.
Trip to Hakuba and say its 600km return trip. So Passenger cost = 600 x 8= 4,800en (oneway train is 5,200en/bus about 4,800en). You can choose higher cost of 5,200en.
Car cost (gas and tolls only)= 16,000yen.
If 4 passengers (and driver) then the passengers would pay only 4,000en (cheaper than oneway train cost) and driver goes free.
If 3 passengers (and driver) then the passengers would pay 5,300en. In this case the passenger pay 5,200en and the driver pays 400en.
If 2 passengers (and driver) and they pay 5,200en each the driver pays too much, so everyone pays the same - about 5,300en.
If 1 passenger (and driver) then they both share equally - 8,000en each.
Drivers should keep paper receipt for toll cost, or everyone checks the electronic toll cost display sign passing through the gate (for toll card holders - not estimates).
Gas should be the same - check the tank level before leaving and fill to same level on return. Start full tank - finish full tank best. Calculate from the pick up point - remember everyone pays to travel there.