There really is no explanation for the Dark type (or "Evil" type, in Japan). It doesn't make a lot of sense, it was just put in to ruin game balance.
It's weak to Fighting because?
It's weak to Bug because?
Steel resists it because?
It's strong against Ghosts because?
It's negates Psychics because?
Oh, and Fairy beats it because it was absurdly broken and needed a counter. So, again, balance reasons.