First download the data, and look at the regular and ListLogLog plots,
data = Partition[
Transpose[
Rest@Import[
"https://www.dropbox.com/s/fxcwyb60hn878qy/sample_dataset.csv?dl=1", "CSV"]], 2] // Map@Thread;
plot1 = ListPlot[data, PlotRange -> {{0, All}, {0, All}}];
plot2 = ListLogLogPlot[data, Joined -> True];
{plot1, plot2}

Next we grab the Line from the plots using the usual method
lines = Cases[plot2, Line[a_] :> a, Infinity];
Here's how I went about inserting a y coordinate in the 3 lists,
lines = MapIndexed[Function[{list, t},
{#1, Sequence @@ t, #2} & @@@ list], lines];
So now we could have our 3D log-log plot, but it wouldn't have any tick marks. For that we'll use Charting`FindLogTicks, which seems to use a similar syntax to Charting`FindTicks - but here we aren't trying to do any linear rescaling before applying the log transformation, so we give the same argument twice. You grab the original, non-log plotrange
{oldXRange, oldYRange} = Charting`get2DPlotRange[plot1]
(* {{0, 0.422973}, {0, 703545.}} *)
And then use it when making your tick marks. I don't care for 3D Line objects so I'm using Tube here,
Graphics3D[
Thread[{ColorData[97] /@ {1, 2, 3}, Tube /@ lines}],
BoxRatios -> {1, 1, 1}, Axes -> True,
Ticks -> {
Charting`FindLogTicks[oldXRange, oldXRange],
Automatic,
Charting`FindLogTicks[oldYRange, oldYRange]}
]
