a:6:{i:0;s:43165:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Darjeeling Gangtok Pelling Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.paryatanpartners.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.paryatanpartners.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Darjeeling Gangtok Pelling Tour</p>
						</div>
						</div>
						</section>
										<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					
											<p class="mb5px"><b>Duration :</b> 
						6 Nights / 7 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Gangtok, Darjeeling, Pelling</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.paryatanpartners.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Darjeeling Gangtok Pelling Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="118963"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_12/357122/192842.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/357122/192842.jpg"  width="150" height="150"    alt="Darjeeling Gangtok Pelling Tour" title="Darjeeling Gangtok Pelling Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="headHr">
					            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
					            </div>
					            
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 1:</b> Arrival in Darjeeling
										</p>
										<p class="aj">The remarkable vacation starts shortly after you reach at New Jalpaiguri Station (NJP), Bagdogra airport (IXB) and Tenzing Norgay Bus Stand (Junction) in West Bengal. From here, you need to travel to Darjeeling, which rests on the northern extreme of the state. Once you arrive, our tour executive will escort you to the hill-town of Darjeeling via road. The serene hill station of Darjeeling is elevated at an altitude of 7100 ft in West Bengal, and 68 km from NJP Railway Station, 69 km from Bagdogra airport and 65 km From the Tenzing Norgay Bus stand.

Engulfed in the snow-clad peaks of Kanchenjunga, Darjeeling is amongst the celebrated tourist attractions in this corner of India. The charm of the hill-town can be defined by its verdant green tea plantations, which are known to be the supreme in the world, its rolling hills and alpine forests. Apart from the acres of tea estates, Darjeeling is also famous for its monasteries and an assortment of town attractions. Other than natural attractions, Darjeeling is also famous for its rustic colonial charm, like the ancient world heritage Darjeeling Himalayan Railway system.

As you reach Darjeeling, check in to our pre-reserved hotel. Spend your evenings at leisure in the guesthouse and if you wish to move out, feel free to lurk around local shopping centers.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 2:</b> Darjeeling Local Sightseeing
										</p>
										<p class="aj">As soon as dawn cracks, you begin the day by 3:45 AM, by heading towards Tiger Hill, which is around 11 km from the main town of Darjeeling. Tiger Hill is one of the major places of interest in Darjeeling and can be reached on foot easily, all along the splendid tea plantations. The top of the hill overlooks the colossal peak in Sikkim, Mt. Kanchenjunga, and if the weather is clear, Mt. Everest also. Its claim to fame has been its tranquilizing view of the sunrise. When rays of the morning sun fall on Mt. Kanchenjunga it illuminates beautifully with a golden orange reflection, and thus offering a breathtaking sight.

While returning, pay a casual visit to the some of the most popular attractions in Darjeeling. Begin from Ghoom monastery, then War Memorial and finally, Batasia Loop.

Just 8 km short of Darjeeling, you will come across Ghoom Monastery, which is resting at an elevation of around 7400 feet. Ghoom Monastery was constructed in the year 1850 by Lama Sherab Gyatso. The well-famed monastery belongs to the Yellow Hat Sect, known as Gelupka. Once inside the monastery, you will witness a 15 foot model of Lord Buddha, which is also referred as Maitreya Buddha. In Buddhism, Maiteya Buddha means Buddha of the upcoming era or the coming Buddha. A compelling fact about the figurine of Maitreya Buddha is that it is all created up of clay, all imported from Tibet. Besides the sculpture of Buddha, the monastery is also noted for housing a vast collection of Buddhist manuscripts.

After departing from the monastery, hop on to the vintage Toy train as it makes its path through the striking landscapes in Darjeeling. The toy train also whistles away through the splendid Batasia Loop, which makes its curve at the Hill Cart road. The loop has a vibrant garden of exotic flowers built in the inner circle of the loop. From the Batasia Loop, you can have a spectacular view of the alluring Darjeeling valley along with the snow-clad peaks of Kanchenjunga.

Right in the heart of the Batasia Loop, stands the War Memorial. As obvious from its name, the structure was erected as a tribute to numerous Gorkha soldiers, who were martyred in military operations since India’s independence. Undoubtedly, an amazing attraction, the War Memorial is amongst the high-flying ones in Darjeeling.

After these jaunts, return back to your inn for savoring the supper. Nearly half an hour later, you would be embarking on seeing the sights in the main town of Darjeeling. This includes visits to Himalayan Montaineering Institute, Tensing Gumpo Rock, Padmaju Naidu Zoological Park, Tibetan Refugee Self Help Cente and Natural History Museum.

Conclude your day on a serene note by visiting the heritage of world peace, Japanese Peace Pagoda, which is located within the complex of other attractions. The Peace Pagoda exhibits four manifestations or forms of Lord Buddha and throws the light on uniting people of all races for global harmony. Pay your visits there and return back to your suite for a snuggy overnight stay. Sundown is meant to walk around the local milieu or shopping in the nearby markets, although you can even prefer staying indoors and stretch limbs.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 3:</b> Transfer to Pelling
										</p>
										<p class="aj">Shortly after finishing breakfast, you would be transferred to Pelling, which is situated in the western division of Sikkim. Highly lauded for its natural vistas and quietude, Pelling in Sikkim is a high-flying hill-town in the northeast India. Elevated at an altitude of around 6800 ft, the hill-town offers a panoramic sight of the highest peak in Sikkim, Mt. Kanchenjunga. Not just Kanchenjuga, the place provides a kaleidoscope of mountain peaks, like Kanchenjunga, Rathong, Koktang, Pandim, Sinlolchu and Kumbhakaran. Apart from these the lofty mountain peaks, prettiness of this hill-town lies in its verdant green alpine and Rhododendron forests that are flawless for nature trails. The area is also a dwelling for some of the rarest genus of Himalayan animals. Kanchendzonga National Park in this part of Sikkim provides a natural habitation to them. Amidst all the greenery, lies some beautifully cascading waterfalls, which are counted amongst the wonderful natural spots to re-energize with family and friends.

The drive from Darjeeling to Pelling is likely to take around 1 hour and 55 mins. Shortly after reach the hill-town, make a check-in to a reserved hotel for a cozy overnight stay. The remaining hours would be at leisure. You can choose to unwind yourself in your suites or head out for a shopping in the nearby market places.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 4:</b> Pelling local sightseeing
										</p>
										<p class="aj">Fourth day of our elite tour is dedicated to seeing the sights in and around Pelling. What else can be better than remembering the Lord to kickstart the day. Owing to this, you will be heading to Pemayangtse monastery at the first place.

About 2km from the main town of Pelling, lies the prime monastery of Ngingma sect, Pemayangtse Monastery. This Buddhist sacred center is believed to be erected in the year 1705, by Gyalwa Lhatsun Namkha Jigme. The celebrated monastery is like the sanctum of all the other Nyingma monasteries and assumed to uphold the order of this sect. Being struck by earthquakes twice, the architecture of Pemayangtse monastery underwent several reconstructions.

Presently, the floors of the monastery are adorned with paintings, figurines and ancient scriptures. Besides the paintings and sculptures, you will witness eight manifestations of Padmasambhava, in the form of statuette, which appears highly striking. The center of attraction remains the prime figure of Padmasambhava, which represents Tantric form of Buddhism. As you would be done with the monastery, hop on for a nature trip to spots like Kecheoplari lake, Rimbi waterfalls, Rimbi rock garden and Kanchenjunga falls.

Located 27 km from the town of Pelling, Khecheoplari lake is amongst the most pristine lakes of Sikkim. Journey to the sacred lake would take you right across a thick forest cover. The lake is beautiful, placid and clean to explore.

Just a km ahead, at a sharp curve on the road side, lies the beguiling Kanchenjunga falls. Owing to its charm and magnificence, the waterfalls are amongst the key attractions in Darjeeling. The waterfall is perennial and it gets its spring from colossal glaciers high up in the mountains. There are also several shops and stalls located in the vicinity of the falls. You can sip a nice cup of coffee amidst the intriguing milieu of the Kanchenjunga falls.

Rimbi Rock Garden or Sewaro Rock Garden is a lure of gardens, pools and zigzag foot paths. Located around 12 km from the main town of Pelling, the rock garden is a flawless place to relish a picnic. As you move 5 km from here, you will come face to face with Rimbi waterfalls, which is awe-inspiring to every eyeball.

Soon after completing the jaunt, return to your hotel for a slackening stay. Feel free to explore the local markets of Pelling after sundown.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 5:</b> Transfer from Pelling and Gangtok Local Sightseeing
										</p>
										<p class="aj">Munch your breakfast, embark on an expedition to the capital of Sikkim, Gangtok. The capital is around 116 km from Pelling, so you will have to depart in the early hours.

Gangtok being one of the celebrated places in Sikkim, is a chief tourist destination that is flaked with multiple beautiful monasteries, and rests under the shroud of lofty Himalayan peaks. Most intriguing fact about Sikkim is that due to its proximity to Himalayan ranges, the destination offers a panoramic view of the colossal Kanchenjunga mountain, which is the highest in Sikkim. Apart from the captivating Himalayan beauty, Gangtok is enriched with cultural biodiversity flowing deep inside its city life.

Drive to Gangtok for nearly 2 hr and 30 mins. Soon after you reach your destination, you would be escorted to your guesthouse. After unwinding for a while in the guesthouse, you will be heading for a tourism trip of Gangtok. Prime tourist attractions that you would be visiting include Enchey monastery, Do Drul Chorten, Directorate of handicrafts and handlooms, Research institute of Tibetology and White Hall.

Located 3 km from the main town of Gangtok, Enchey Monastery is regarded as the principal sacred site in the city. Construction of this legendary monastery dates back to 200 years. Another chief paradigm of the Nyingma sect of Buddhism, Enchey monastery is supposed to be sanctified by Lama Druptab Karpo. In its early days, Enchey was basically a small hut. Later on, the present day architecture started taking place in the form of a Chinese Pagoda. The prime attractions of this lone monastery are the figurines of Lord Buddha, Loki Sharia and Guru Padmasambhava. Besides the sculpture of them, the monastery also houses primitive images of Gods and Goddesses.

Noticeable by a golden top dome, Do Drul Chorten stupa stands on a hillock. The construction of this spectacular structure has an interesting tale to narrate. It is said that once the spot of this very stupa, used to be haunted by ghouls, and caused human casualties. In order to mitigate the region of these malevolent spirits, a noted lama of Tibet, Trulshig Rinpoche arrived to this place and erected a religious stupa in the year 1946. This stupa later on was known as Do Drul Chorten. Structured along the principles of Nyingma order of Buddhism, the stupa holds great connotation. It houses 108 prayer wheels that have Buddhist hymns emblazoned over them.

After praying at these sacred sites, head towards the Research Institue of Tibetology, which is located very close to Do Drul Chorten stupa. The institute is well-known for its huge assortment of books on the traditions of Sikkim and Tibetan work. Post this, embark to Directorate of Handlooms and Handicrafts and White Hall. Then call it a day, and proceed back to your inn and retire for the night. In the evening, visit any good shopping market or a club nearby.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 6:</b> Excursion to Tsomgo Lake and Baba Mandir
										</p>
										<p class="aj">Munch a finger-licking breakfast, leave for Tsomgo Lake and Baba Mandir on the alluring heights of Sikkim. First in the outing is Tsomgo Lake which is around 39 km from Gangtok. Drive to the lake is likely to take around an hour.

Perching at an altitude of around 12,400 ft, Tsomgo Lake or Changu Lake is one of the most serene spots in the whole of Sikkim. The glacial lake is a dwelling to a number of Brahmini ducks and migratory birds. Besides its natural charm, Tsomgo lake is also a revered lake that is highly thronged by Buddhist and Hindu pilgrims. On the banks of the Tsomgo Lake lies a shrine of Lord Shiva as well. The lake also has shops selling yak cheese and trinkets, situated on its banks. After having a gala time in this natural magnificence, move towards an outstanding shrine, known as Baba Mandir.

Baba Harbhajan Singh Memorial temple or simply Baba Mandir is a holy place that stands close to the Jelep La and Nathu La in the eastern part of Sikkim. The drive is around 16 km from Tsomgo Lake, which is likely to take close to 21 mins to reach. The famous shrine of Baba Harbhajan Singh has an intriguing story to narrate. The story goes like this, there was a sepoy in the 23rd Punjab Regiment who was martyred during the Indo-China war of 1962. One of his fellow soldiers saw him in his dream, asking to commemorate a memorial in his honor. This resulted in the erection of a cenotaph by the great Indian army. This later on turned into a religious shrine. Owing to this, the shrine welcomes hundreds of devotees on a daily basis. As you will enter the temple of Baba Harbhajan Singh Memorial Temple, you will come across an assortment of possessions of the late soldier and an idol of him. This temple is highly revered by army personnels posted in the region.

By sundown, you would return to your hotel in Gangtok for an overnight stay. Make the best use of final hours of your shopping in the urban at this time.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 7:</b> Departure from Gangtok
										</p>
										<p class="aj">Shortly after eating morning breakfast, you would be transferred to New Jalpaiguri Railway Station (119 km) / Bagdogra Airport (126 km) / Tenzing Norgay Bus Stand (113 km) from your hotel in Gangtok. This marks the farewell of our remarkable northeast holiday.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Sightseeing</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
												
						<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</div>
												<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.paryatanpartners.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Darjeeling Gangtok Pelling Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="118963"/>
						</form>
						</div>
						
										</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by City</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-gangtok.htm" title="Packages in Gangtok">Gangtok</a> <b class="alpha50 bn small">(44)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</a> <b class="alpha50 bn small">(34)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-pelling.htm" title="Packages in Pelling">Pelling</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-kalimpong.htm" title="Packages in Kalimpong">Kalimpong</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-guwahati.htm" title="Packages in Guwahati">Guwahati</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-shillong.htm" title="Packages in Shillong">Shillong</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-lachung.htm" title="Packages in Lachung">Lachung</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-kolkata.htm" title="Packages in Kolkata">Kolkata</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-cherrapunji.htm" title="Packages in Cherrapunji">Cherrapunji</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/packages-in-thimphu.htm" title="Packages in Thimphu">Thimphu</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-paro.htm" title="Packages in Paro">Paro</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-tawang.htm" title="Packages in Tawang">Tawang</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-kaziranga.htm" title="Packages in Kaziranga">Kaziranga</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-tezpur.htm" title="Packages in Tezpur">Tezpur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-bomdila.htm" title="Packages in Bomdila">Bomdila</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-south24-parganas.htm" title="Packages in South 24 Parganas">South 24 Parganas</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-golaghat.htm" title="Packages in Golaghat">Golaghat</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-sonitpur.htm" title="Packages in Sonitpur">Sonitpur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-punakha.htm" title="Packages in Punakha">Punakha</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-jalpaiguri.htm" title="Packages in Jalpaiguri">Jalpaiguri</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-phuntsholing.htm" title="Packages in Phuntsholing">Phuntsholing</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-ravangla.htm" title="Packages in Ravangla">Ravangla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-bagdogra.htm" title="Packages in Bagdogra">Bagdogra</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-lachen.htm" title="Packages in Lachen">Lachen</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-murshidabad.htm" title="Packages in Murshidabad">Murshidabad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-trongsa.htm" title="Packages in Trongsa">Trongsa</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-yumthang.htm" title="Packages in Yumthang">Yumthang</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-kameng.htm" title="Packages in Kameng">Kameng</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-wangdue-phodrang.htm" title="Packages in Wangdue Phodrang">Wangdue Phodrang</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.paryatanpartners.com/packages-in-hooghly.htm" title="Packages in Hooghly">Hooghly</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(53)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.paryatanpartners.com/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Gangtok, Darjeeling, Pelling</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paryatanpartners.com/tour-packages/incredible-india-trips-events-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/357122/112339.jpg"  alt="Incredible India Trips & Events Tour" title="Incredible India Trips & Events Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paryatanpartners.com/tour-packages/incredible-india-trips-events-tour.htm" title="Incredible India Trips & Events Tour"><h3>Incredible India Trips & Events Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling</p>
															<div class="mt10px small">
							<form name="pkg_59619" id="pkg_59619" method="post" action="http://www.paryatanpartners.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paryatanpartners.com/tour-packages/incredible-india-trips-events-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Incredible India Trips & Events Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="59619"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paryatanpartners.com/tour-packages/delightful-north-east-with-pelling-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/357122/158567.jpg"  alt="Delightful North East with Pelling Tour" title="Delightful North East with Pelling Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paryatanpartners.com/tour-packages/delightful-north-east-with-pelling-tour.htm" title="Delightful North East with Pelling Tour"><h3>Delightful North East With Pelling Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling</p>
															<div class="mt10px small">
							<form name="pkg_92295" id="pkg_92295" method="post" action="http://www.paryatanpartners.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paryatanpartners.com/tour-packages/delightful-north-east-with-pelling-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Delightful North East with Pelling Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="92295"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paryatanpartners.com/tour-packages/darjeeling-with-gangtok-lachung-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://static.tourtravelworld.com/images/tour-package-no-image.gif"  alt="Darjeeling with Gangtok & Lachung Tour" title="Darjeeling with Gangtok & Lachung Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paryatanpartners.com/tour-packages/darjeeling-with-gangtok-lachung-tour.htm" title="Darjeeling with Gangtok & Lachung Tour"><h3>Darjeeling With Gangtok & Lachung Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 9150</b> <b class="xsmall alpha50"></b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								7 Nights / 8 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling, Lachung</p>
															<div class="mt10px small">
							<form name="pkg_102784" id="pkg_102784" method="post" action="http://www.paryatanpartners.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paryatanpartners.com/tour-packages/darjeeling-with-gangtok-lachung-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Darjeeling with Gangtok & Lachung Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="102784"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paryatanpartners.com/tour-packages/the-gangtok-darjeeling-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/357122/171974.jpg"  alt="Bagdogra Airport / NJP Railway Station – Gangtok" title="Bagdogra Airport / NJP Railway Station – Gangtok"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paryatanpartners.com/tour-packages/the-gangtok-darjeeling-tour.htm" title="The Gangtok Darjeeling Tour"><h3>The Gangtok Darjeeling Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 5800</b> <b class="xsmall alpha50"></b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling</p>
															<div class="mt10px small">
							<form name="pkg_102757" id="pkg_102757" method="post" action="http://www.paryatanpartners.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paryatanpartners.com/tour-packages/the-gangtok-darjeeling-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="The Gangtok Darjeeling Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="102757"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paryatanpartners.com/tour-packages/bagdogra-airport-njp-railway-station-darjeeling-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/357122/171958.jpg"  alt="Bagdogra Airport / NJP Railway Station – Darjeeling (Approx - 80 kms 3 hrs)" title="Bagdogra Airport / NJP Railway Station – Darjeeling (Approx - 80 kms 3 hrs)"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paryatanpartners.com/tour-packages/bagdogra-airport-njp-railway-station-darjeeling-tour.htm" title="Bagdogra Airport / NJP Railway Station – Darjeeling Tour"><h3>Bagdogra Airport / Njp Railway Station –..</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 6200</b> <b class="xsmall alpha50"></b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling, Kalimpong</p>
															<div class="mt10px small">
							<form name="pkg_102750" id="pkg_102750" method="post" action="http://www.paryatanpartners.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paryatanpartners.com/tour-packages/bagdogra-airport-njp-railway-station-darjeeling-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Bagdogra Airport / NJP Railway Station – Darjeeling Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="102750"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.paryatanpartners.com/tour-packages/nearest-khangchendzonga-tour1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_12/357122/76773.jpg"  alt="Nearest Khangchendzonga Tour" title="Nearest Khangchendzonga Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.paryatanpartners.com/tour-packages/nearest-khangchendzonga-tour1.htm" title="Nearest Khangchendzonga Tour"><h3>Nearest Khangchendzonga Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 7000</b> <b class="xsmall alpha50"></b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Gangtok, Darjeeling, Pelling</p>
															<div class="mt10px small">
							<form name="pkg_37851" id="pkg_37851" method="post" action="http://www.paryatanpartners.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.paryatanpartners.com/tour-packages/nearest-khangchendzonga-tour1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Nearest Khangchendzonga Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="37851"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:70:"Book Darjeeling Gangtok Pelling Tour - 6 Nights / 7 Days Tour Packages";i:2;s:136:"book darjeeling gangtok pelling tour - 6 nights / 7 days tour packages, valley tour packages, gangtok, darjeeling, pelling tour packages";i:3;s:184:"Incredible India Trips & Events offers Darjeeling Gangtok Pelling Tour - 6 Nights / 7 Days tour package, budget Valley tour packages for Gangtok, Darjeeling, Pelling at exciting price.";i:4;s:431:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Gangtok, Darjeeling, Pelling"        
		                 },
		      "description": "",
		      "name": "Darjeeling Gangtok Pelling Tour",
		      "telephone": "+91-8927444404"
		    }
		    </script>
			";i:5;N;}