WordPress is preventing two identical slugs to 2 different content.
How can he know where to send you if the URL may potentially be equal ?
I think you need to design your development differently. Having 1 term not hierarchical and then work on URL rewriting.
You could have only one “sale” and add it to a post with “california” or “apartment”.