There is no reason not to use the option AxesStyle -> 40. AxesStyle1 affects the axes labels and in a style specification an integer is taken as a point size specification. But if you give the point size specification in AxesStyle, you don't need to repeat it in AxesLabel`.
So you can use simple form.
Block[{x, p}, rho[n_][x_, p_] = With[{h = 1, H = (1/2)*(p^2 + x^2)}, (1/Pi) (-1)^n Exp[-2 H/h] LaguerreL[n, 4 H/h]]]; ImageCrop[ Plot3D[rho[0][x, p], {x, -5, 5}, {p, -5, 5}, PlotPoints -> 100, PlotRange -> All, ImageSize -> 800, AxesLabel -> {x, p, None}, AxesStyle -> 40, Boxed -> False, TicksStyle -> 20, PlotTheme -> "Classic"]] This image was made in V11.0.1.
