How can you go to Kanto in Pokemon HeartGold?

First you must defeat the Elite Four and the Champion, Lance. Then, go to New Bark Town, and talk to Professor Elm. He'll give you a pass that will allow you to board the S.S. [Anne]. Aboard the ship, you will have to find the energetic girl before the ship will land in Vermillion City, in the Kanto region. Finding the energetic girl is another story...