Almost all (if not all) American states are "Employment-at-will" States. That means you can fire employees for a good reason, bad reason (except illegal reasons, such as firings based on race) or no reason at all. It is perfectly legal to fire somebody for engaging in what you consider to be immoral reasons, even if the conduct occurred outside of the workplace. Whether it's a smart employment practice is another question, of course.
However, these folks are all government employees and their employment is probably governed by a collective bargaining agreement that lays out under what circumstances they can be fired. I would be surprised if there was a generic morals clause in their contract.
"and their employment is probably governed by a collective bargaining agreement that lays out under what circumstances they can be fired."
You are probably right. I was thinking of actors who used to sign morality clauses demanded by the studios. They were unionized as well which is probably why they needed a morality clause.
I do know that if you fire an employee for moral reasons you will probably lose at an unemployment compensation hearing, which will make your premiums go up.
I fired a guy once because he just had a bad attitude and no one liked working with him. At least I thought I had. Turns out I laid him off. I guess a bad attitude isn't sufficient reason to fire someone. He got unemployment compensation.
I can only imagine the howls of protest I would have gotten if I had fired him for going to a strip club on his own time.