If you have set maxValuesPerFacet to 10, each attribute will return at most 10 values in the response.
I.e, your level 1 attribute will return 10 items max, your level 2 will return 10 items max, etc.
If the filtering you are doing is such that it limits the subset to, for example, records that are in 2 level 1 categories, each section of the level 2 hierarchical menu will have some number of items in the first category and some number of items in the second category.
The fix is just to increase the number of maxValuesPerFacet and if you need it to be a specific limit, limit it on the front end.