If you don't need the hierarchical dict structure, you could try:
grouped = df.groupby(['Region', 'Country', 'AREA_CODE']) pd.concat([grouped.AREA_SUB_CODE_1.apply(list), grouped.AREA_SUB_CODE_2.apply(list)], axis=1)