I really couldn't bring myself to write them down, but there is an extensive reasoning list for 4th gen types here
As for Fairies:
Super effective against Dragon: Main reason was balancing the game, but in fairytales dragons are usually defeated by the protagonist.
Super effective against Dark: Well, the Jananese name for Dark is evil, and good always overcomes evil in fairytales.
Super effective against Fighting: Brute force often doesn't get the job done in fairytales, and so magic has to be brought in. Harry Potter > A wrestler.
Not very effective against Fire: Fairies are shown to be helpless against things such as forest fires in many stories.
Not very effective against Poison: Fairies are often natural beings, and pollution weakens or kills them.
Not very effective against Steel: In many tales, fairies have an aversion to metal particularly Iron.
Hope this is what you were after c;