a:6:{i:0;s:9853:"				<div class="h1"><h1>Sikkim Tour Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.kunzongtourandtravel.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.kunzongtourandtravel.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Sikkim Tour Package</p>
				<br />
				
								
						<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">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Gangtok, Pelling</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.kunzongtourandtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Sikkim Tour Package - 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="75848"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_16/451899/134882.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/451899/134882.jpg"  width="150" height="150"    alt="Sikkim Tour Package" title="Sikkim Tour Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
											<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
								</p>
								<p class="aj">Our representative will warmly welcome you on arrival and assist you to the vehicle for the further journey. He will provide you all the relevant documents (Hotel vouchers and Itinerary). There after you will depart towards your dream destinations. Throughout your journey, you can enjoy the versatility in climate. Pleasant weather will win your heart completely. On the way, you will pass through Mahananda Wild life Sanctuary and more this journey offers magnificent views of the mountains, valleys and village life, the forest, waterfalls and hills covered with tea gardens. After reaching at Gangtok, we assist you to check in at hotel and take rest. We suggest you to sleep early for next day tour. Overnight stay at Gangtok.</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> Tsomgo Lake
								</p>
								<p class="aj">You need to get up early, get fresh and have heavy breakfast till 7.30am. We drive you to Tsomgo Lake (Alt 12000ft/3600M), a high altitude alpine lake close to Indo-China Border. The 1 km long and 15m deep lake is considered sacred to the local people. The pure clear water remains frozen during winter. Enjoy playing in snow and Yak Ride. Proceed further to Legendary Baba Harbhajan Singh Mandir (“Hero of Nathula” An Indian soldiers who was awarded the Maha Vir Chakra medal for his bravery and known for doing his duty still after death). Back to Hotel for late Lunch.<br />
Optional tour to Nathula Pass (Alt 14000Ft / 4200M) on China Border can also be arranged (Except Mon, Tue) for Indian Nationals only with 30 Days Advance Request at an additional cost.<br />
Take some rest. Or you may visit the famous M G Marg. It is now more like a long stretch of open mall or avenue square where locals and tourists take leisure stroll or just sit and relax on one of the many benches laid along the middle and both sides of the road to enjoy the ambience. The entire area is free of litter, smoke and vehicle. Overnight stay at Gangtok.</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> Gangtok
								</p>
								<p class="aj">After breakfast, you visit top ten tourist points of Gangtok which includes Tashi view point, Ganesh Tok & Hanuman Tok, Ranka Monastery, Banjakhri Falls, Cottage Industry, Do-drul Chorten, Institute of Tibetology, Flower show and Handicraft Centre (maximum 6 hours). Overnight stay at Gangtok.</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> Gangtok
								</p>
								<p class="aj">Check out from Hotel and depart for Pelling (Alt 7175Ft / 2150M).<br />
OR Optional via Namchi<br />
In Namchi, The 135 feet high statue of Guru Padmasambhava is present at Samdruptse. Temi Tea Estate: The sole tea estate in Sikkim, it produces top quality teas for the international market. The Chard ham covers about 7 acres of land. It consists of a huge idol of Lord Shiva which is about 87ft tall. After reaching at Pelling, we assist you to check in at hotel and take rest. We suggest you to sleep early for next day tour. Overnight stay at Pelling hotel.</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> Gangtok
								</p>
								<p class="aj">Pelling is famous for its breathtaking view of the snow-capped mountains of Kanchenjunga and its ranges. It has a rich history, nature environment and local culture. Weather & scenic beauty both combined make it a Good Naturothereopist. Its pollution free environment makes you feel stress free and energetic.<br />
Local tour in Pelling starts with visit 8 popular tourist points – Darap Village and Valley, Rimbi Waterfalls, Rock Garden, Kanchendzonga Water Falls and Khecheopalri Holy Lake. After lunch visit Pemayangtse Monastery, Helipad View Point, Rabdentse Palace Ruins and Bird Sanctuary. Overnight stay at Pelling.</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> Departure
								</p>
								<p class="aj">Departure</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
															</ul>
						<br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.~^#^~* 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. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.kunzongtourandtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Sikkim Tour Package - 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="75848"/>
						</form>
						</div>
						
						";i:1;s:58:"Book Sikkim Tour Package - 5 Nights / 6 Days Tour Packages";i:2;s:112:"book sikkim tour package - 5 nights / 6 days tour packages, valley tour packages, gangtok, pelling tour packages";i:3;s:168:"Book Sikkim Tour Package - 5 Nights / 6 Days tour packages from Kunzong Tours and Travel - Get attractive 5 Nights / 6 Days Valley  tour packages for  Gangtok, Pelling.";i:4;s:407:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Gangtok, Pelling"        
		                 },
		      "description": "",
		      "name": "Sikkim Tour Package",
		      "telephone": "+91-9593716601"
		    }
		    </script>
			";i:5;N;}