The simple solution here is to use a volumetric shader of your choice in a smoke generator with dissolve on and slow, then use multiply on the density input into that shader to change how much fog you will get. I quick whipped together an example which isn't of very good quality (using CPU compute on an old CPU to render volumetric effects is super slow) but should get the point across. You can totally change the final look and feel as well by altering the volumetric shader and using something more complex that what I used.
Change exactly how long the "Time" setting is depending on where exactly you put the flow of the fog. In my case I put it below the ocean model, so I set it to 2. Keep in mind though that the shorter the number you put in the time, the smaller the gradation will be between the lowest and highest parts of the fog.
And finally if you've never done much for the smoke simulator before, just remember to use Alt+A to simulate so that your smoke will actually start to rise, and make sure your timeline has an end time around 50 frames out at least to ensure there is enough time for the smoke to react properly.