lst1 = TakeList[Range @ 21, Range @ 6]
>    {{1}, {2, 3}, {4, 5, 6}, {7, 8, 9, 10}, {11, 12, 13, 14, 15}, {16, 17,
       18, 19, 20, 21}}

    lst2 = Table[#[[i]] & /@ lst1[[i ;;]], {i, 6}]
>    {{1, 2, 4, 7, 11, 16}, {3, 5, 8, 12, 17}, {6, 9, 13, 18}, {10, 14, 
      19}, {15, 20}, {21}}

    lst3 = Table[#[[-i]] & /@ lst1[[i ;;]], {i, 6}]
>    {{1, 3, 6, 10, 15, 21}, {2, 5, 9, 14, 20}, {4, 8, 13, 19}, {7, 12, 
      18}, {11, 17}, {16}}