a:7:{i:0;s:59121:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>Mesmerizing Darjeeling Gangtok Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.aryantravel.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.aryantravel.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
																
					<b class="ffv p2px">&rsaquo;</b> Mesmerizing Darjeeling Gangtok Tour</p>
					</div>
					</div>
					</div>
					<script>jQuery('#breadcrumbA').append(jQuery('#append2PageTittle').html());jQuery('#append2PageTittle').remove()</script>
									<section id="middle" class="propDtls ttwBtmFtSpace">
				<div class="wrap thinFormat " id="bodyFormatNT">
								
				<div class="row1 dt columns23"><!--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>
				
					<div class="data mb15px mt15px p10px"> 
	 				<div class="fo dt w100"> 	 				
	 											<div class="dtc vat ttw-detail pr20px pr">
							<div class="headVr bdr0">
							<ul class="lsn gallery-slide" >
																	<li><div class="imgFrame m0a dib bdr"><div class="imgFrame picBg dtc ac vam lh0"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_10/286440/157104.jpg"><div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_10/286440/157104.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/286440/157104.jpg"  height="150"  width="150"    alt="Mesmerizing Darjeeling Gangtok Tour" title="Mesmerizing Darjeeling Gangtok Tour" ></div></a></div></div></li>
																	</ul>
														</div>
							</div>
												<div class="dtc pt7px ttwDtlsCont">
					<div class="adrsDtls">
											<div class="xxlarge fw6 mb7px lh13em">Mesmerizing Darjeeling Gangtok Tour</div>
											<div class="ShareDropdown">		
					<div class="copyLinkPopup">Link Copied</div>	  
					<span class="data"><i class="fa fa-share-alt xxlarge vam"></i></span>
					<ul class="shareList data bdr0">
					<li><a target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https://www.aryantravel.in/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm" class="facebook" title="Facebook"><i class="fa fa-facebook-official"></i></a></li> 
					<li><a target="_blank" href="https://www.instagram.com/?url=https://www.aryantravel.in/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm" class="instagram" title="Instagram"><i class="fa fa-instagram"></i></a></li>
					<li><a target="_blank" href="https://wa.me/?text=https://www.aryantravel.in/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm" class="whatsapp" title="Whatsapp"><i class="fa fa fa-whatsapp"></i></a></li>  
					<li><a target="_blank" href="https://twitter.com/intent/tweet?text=Mesmerizing Darjeeling Gangtok Tour&url=https://www.aryantravel.in/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm" class="twitter" title="Twitter"><img src="https://catalog.wlimg.com/mobile/social-networking-img/1002.svg" alt="Twitter" style="width:22px;height:22px;vertical-align:middle;margin-right:6px;"></a></li> 
					<li><a target="_blank" href="https://www.linkedin.com/shareArticle?mini=true&url=https://www.aryantravel.in/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm&title=Mesmerizing Darjeeling Gangtok Tour" class="linkedin" title="Linkedin"><i class="fa fa-linkedin-square"></i></a></li>
					<li><a target="_blank" href="https://pinterest.com/pin/create/button/?url=https://www.aryantravel.in/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm&description=Mesmerizing Darjeeling Gangtok Tour" class="pinterest" title="Pinterest"><i class="fa fa-pinterest-square"></i></a></li>
					<li><a href="javascript:;" title="Copy Link" class="copy" onclick="copyURL()"><i class="fa fa-clone"></i></a></li>
					</ul>
					</div>
					</div>
					<script>
					$(document).ready(function(){
					$('.ShareDropdown span').click(function(){
					 $('.ShareDropdown').toggleClass("active");
					}); 
					});
					</script>
					<script>
					  function copyURL() {
					    const url = window.location.href;
						const textarea = document.createElement("textarea");
						textarea.value = url;
						textarea.style.position = "fixed";
						document.body.appendChild(textarea);
						textarea.focus();
						textarea.select();
				
						try {
						  document.execCommand("copy");
						//  alert("URL copied (fallback)!");
						  $(".copyLinkPopup").show();		 
				          setTimeout(function(){$(".copyLinkPopup").hide();}, 2000);
					      $('.ShareDropdown').removeClass("active");
						  
						} catch (err) {
						  console.error("Fallback copy failed:", err);
						}
				
						document.body.removeChild(textarea);
					  }
					</script>
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Darjeeling, Gangtok, Enchey Monastery</p>
												<p class="mb5px"><b>Tour Activities :</b> Hill Stations & Valleys</p>
												<div class="fo mt20px mb20px ac large">
              			<p class="fw6 dif">Price on Request</span></p>
              			</div>
											<div class="ac">
					<form class="inquiry-form" name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.aryantravel.in/enquiry-form-10028.htm">
					<input type="hidden" name="subject" value="Mesmerizing Darjeeling Gangtok Tour - Tour Package"/>
					<input type="hidden" name="allocate_type" value="tour"/>							
					<input type="hidden" name="pkg_slno" value="91084"/>
					</form>
					<a href="javascript:;" class="submit-inquiry button p10px20px c5px ts0 xlarge dib fw6">Inquire Now for Best Deals</a>
					
										</div>
					<br />
										</div>
	   				</div>
					</div>
													<section id="s1" class="mt15px">
								<div class="data mb20px m_p25px">
		  						<div class="fw7 xxlarge">
		  										   					<h2 class="fw7">Darjeeling, Gangtok and Enchey Monastery Tour Itinerary</h2>
				   							  						</div>
					            <div class="tour-details-view mt22px">
					            
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 1</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px on"><a href="javascript:;" class="clickable db"><h3>Arrival and Transfer to Darjeeling</h3>
										<span class="fr pr10px"><i class="fa fa-angle-up"></i></span></a>
										</div>
										<div class="pro-detail mb15px ">On arrival at New Jalpaiguri Railway Station (70.3 km) / Bagdogra Airport (65.3 km) / Tenzing Norgay Bus Stand (61.9 km), meet our  representative who assists you while you take a transfer to Darjeeling.<br />
<br />
Set at an elevation of 2050 m, Darjeeling is a beautiful hill town in West Bengal, popular for its tea plantations. Home to Darjeeling Himalayan Railway, a UNESCO World Heritage Site, this tranquil town makes every visitor experience spectacular views of the Majestic Himalayas. The pleasing weather and soothing ambience of the place promises to leave every visitor mesmerized.<br />
<br />
On reaching, check-in to the hotel. Step out to explore the Mall or shopping area of Darjeeling in the evening. Later, come back to the hotel for overnight stay.
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 2</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Darjeeling Local Sightseeing</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">Wake up early this morning and start driving towards the famous Tiger Hill (11 km) to experience a sunrise like never before. As you pass through, thick forests of oak and magnolia, get ready to enjoy a sunrise over Kangchenjunga Peak (subject to clear weather). Tiger Hill is famous to offer a panoramic view of Mount Everest and Mount Kanchenjunga together. As the first rays of the sun hit the place, you get to see the twin peaks of Kanchenjunga painted in shades of pink and orange.<br />
<br />
After enjoying this breathtaking sunrise, head back to Darjeeling. En-route, visit Ghoom Monastery, War memorial and Batasia Loop. An age old monastery, Ghoom Monastery is known for its spiritual ambience, beautiful thangkas and alluring surroundings. The monastery holds much importance for Buddhists as it preserves some of the rare Buddhist manuscripts. Batasia Loop is the perfect host to Darjeeling Himalayan toy train, which passes through the place in a loop-like pattern. Near Batasia loop, there is a war memorial dedicated to the brave soldiers who lost their lives for the country during wars and operations after independence.<br />
<br />
On reaching the hotel, have your breakfast and go for your next round of sightseeing. Start with a visit to Padmaja Naidu Zoological Park, which is well-known for its exotic flora and fauna. Visit Peace Pagoda, another major tourist attraction of Darjeeling. The place is believed to be a symbol of peace and spirituality. There is a Buddhist temple and monastery located near Peace pagoda. Done up in traditional Japanese style, they offer a serene ambience to meditate.<br />
<br />
With that spirit of mountaineering, you really can’t miss visiting the famous Himalayan Mountaineering Institute (Closed on Thursday). Enjoy the beautiful views of the tea plantations and snow-capped peaks with a Cable Ride that takes you to the beautiful Rangit Valley from Darjeeling. Explore the true beauty of Darjeeling, which lies in its Tea Estates and pick the best tea for yourself. Also, visit attractions like Tensing Gumpo Rock, Tibetan Refugee Self Help Center (Closed on Sunday) and Natural History Museum (Sunday Closed).<br />
<br />
Head back to the hotel and enjoy a stroll around the mall in the evening. Stay overnight at the hotel.
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 3</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Transfer to Gangtok & Half Day Sight Seeing</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">Munch some healthy breakfast in the morning and then take a transfer to Gangtok, located at a distance of 96 km from Darjeeling.<br />
<br />
A well-known Buddhist pilgrimage site, Gangtok is nestled amid the high peaks of the Himalayas. Set at an elevation of 1600m, the place allures tourists from all over the world to explore its untouched beauty. Lakes, gardens, monasteries, Gangtok has something for every tourist. Gangtok experiences pleasant weather all throughout the year, this is why, people throng the place to enjoy some time amid natural beauty all through the year.<br />
<br />
On reaching, check-in to the hotel and go for sightseeing at major tourist attractions of Gangtok. Do Drul Chorten Stupa is one of the most important Stupas in Sikkim. The stupa features intricate architecture which leaves every visitor mesmerized.<br />
<br />
Set on a scenic hill above Gangtok, Enchey Monastery is one of the major attractions of Gangtok. It is believed that the monastery belongs to the Nyingma order of Vajrayana Buddhism. The location where the monastery is located is believed to be blessed by Lama Drupthob Karpo, who was an expert in tantric art of Buddhism. Enchey Monastery is beautifully decorated and features alluring images of the deities Buddha, Loki Sharia, and Guru Padmasambhava. One can find a number of masks in the monastery which are used during the annual religious dances. Do visit other attractions like Directorate of Handicrafts & Handloom, Research Institute of Tibetology, White Hall and Flower Show. Later, return back to the hotel. Enjoy the evening at leisure. Stay overnight at the hotel.
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 4</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Excursion to Tsomgo Lake & Baba Mandir</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">This morning, after having your breakfast, leave for your excursion to Tsomgo Lake (38.5 km) and Baba Mandir (54.6 km).<br />
<br />
A tranquil and scenic lake, Tsomgo Lake is one of the most popular attractions of Gangtok. Set at an elevation of 3780 m, this glacial lake is considered holy by Sikkimese people. There is a temple dedicated to Lord Shiva, located on the banks of the lake. The place is a paradise for bird watchers as get to spot a number of Brahmini ducks and migratory birds near the lake.<br />
<br />
Located at a distance of around 16 km from Tsomgo Lake is Baba Mandir. A popular pilgrim center, Baba Mandir is believed to possess wish fulfilling powers. The shrine is built in the memory of Baba Harbhajan Singh, who was an Indian Army soldier and lost his life near Nathula Pass. It is believed that he is still ‘on duty’ for the Indian Army and he guards the lives of soldiers posted on the India- China border.<br />
<br />
You have an option of visiting Nathula Pass, which is located 20 km from the shrine. Later, head back to Gangtok. In the evening, go for a stroll around the Mall road or any of the local shopping centers. Stay overnight at the hotel.
										</div> 
										</div>  
			 							</div>
										<div class="iti-box large">
		   								<div class="dayIni dif lh15em">Day 5</div>
		   								<div class="iti-dtls lh18em"> 
   										<div class="sub-title large fw6 db bdrB bdreee pb7px mb10px "><a href="javascript:;" class="clickable db"><h3>Departure - Gangtok to Siliguri</h3>
										<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a>
										</div>
										<div class="pro-detail mb15px dn">Have some delicious breakfast and then leave for Siliguri / New Jalpaiguri Railway Station (119 km) / Bagdogra Airport (126 km) / Tenzing Norgay Bus Stand (113 km). On reaching, carry on with your onward journey.
										</div> 
										</div>  
			 							</div>								</div>
								</div>
								<script>
								jQuery('.fancybox').fancybox();
								  jQuery(document).ready(function() {
								  jQuery('[data-fancybox]').fancybox({
								  thumbs : {
								  autoStart : true,
								  axis      : 'x'
								  }
								  });
								});
								</script>
								<script>
								jQuery(document).ready(function() {
								//jQuery('.pro-detail').css('display','none');
								jQuery(".sub-title").click(function(){
									var $this = jQuery(this);
									  jQuery('.w-title').addClass('h15px',400);
									  $this.find('.w-title').removeClass('h15px',400);
									  if($this.hasClass('on')){
										$this.removeClass('on');
										$this.next().slideUp();          	
									  } else {
										jQuery(".sub-title").removeClass('on');
										jQuery('.pro-detail').slideUp();
										$this.addClass('on');
										$this.next().slideDown(); 
									  }		  
									  if($this.find('i').hasClass('fa-angle-up')){
										$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
									  } else {
										$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
									  }
									});
								});
								</script>
								</section>
															<div class="xxlarge mt10px mb10px dib">
										   					<h2 class="fw7">More Details about Darjeeling, Gangtok and Enchey Monastery Tour</h2>
			   												</div>
															<section id="s2">
								<div class="data mb20px m_p25px large">
								<div class="mb7px"> 
								<p class="fw7 xxlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Sightseeing</li>
																			</ul>
								</div>
								</section> 
																<section id="s3">
								<div class="data mb20px m_p25px large">          
								<div class="mb7px"> 
								<p class="fw7 xxlarge 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>
								</section>
														<section id="s4">
						<div class="data mb20px m_p25px large">             
						<div class="mb7px"> 
						<p class="fw7 xxlarge 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>
						</section>
												<section id="s5">
						<div class="data mb20px m_p25px large">            
						<div class="mb7px"> 
						<p class="fw7 xxlarge mb10px dib">Packages by Theme</p>
						</div>
													<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.aryantravel.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Tour Packages">Forts and Palaces Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.aryantravel.in/beach-islands-holidays-catid.htm" title="Beaches and Islands Tour Packages">Beaches and Islands Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.aryantravel.in/heritage-holidays-catid.htm" title="Heritage Tour Packages">Heritage Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.aryantravel.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Tour Packages">Lakes & Rivers Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree mr7px mb7px "><a  href="https://www.aryantravel.in/hill-station-holidays-catid.htm" title="Hill Stations & Valleys Tour Packages">Hill Stations & Valleys Tours</a></span>
													</div>
						</section>
												
						<div class="ac mb10px">
						<form class="inquiry-form" name="frmpackagedetail" id="frmpackagedetail" method="post" action="https://www.aryantravel.in/enquiry-form-10028.htm">
						<input type="hidden" name="subject" value="Mesmerizing Darjeeling Gangtok Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>							
						<input type="hidden" name="pkg_slno" value="91084"/>
						</form>
						<a href="javascript:;" class="submit-inquiry button p10px20px w150px fw6 large dib ttu ts0">Book Your Tour</a>
						</div>
											<div id="myModal" class="modal fade dn pf" role="dialog" style="z-index:9999;left:0;top:0%;width:100%;height:100%;background-color:rgba(0,0,0,0.6);overflow-x: hidden; overflow-y: auto;">
					    <!-- Modal content-->
					    <div style="max-width:380px;margin-top: 50px;min-height:400px;" class="modal-content data m0a p10px pr">
					      <div class="modal-header">
					        <a style="right:25px;top:25px;" class="pa b xxxlarge" data-dismiss="modal"><span class="xlarge">&times;</span></a>	        
					      </div>
					      <div class="modal-body">
					        <p>Loading...</p>
					      </div>
					      <div class="modal-footer">
					        
					      </div>
					    </div>
					</div>
					<script type="text/javascript">
						jQuery(document).ready(function(){
							jQuery(document).on("click", ".submit-inquiry" , function(e){e.stopPropagation()
								var form = jQuery(this).parent().find(".inquiry-form");
								if(form.length){
									jQuery.ajax({
										url: form.attr("action"),
										type: form.attr("method"),
										data:form.serialize(),
										crossDomain:true,
										success:function(res){
											jQuery("#myModal .modal-body").html(res);
										}
									});
								}
							});
							jQuery(document).on("click", "[data-dismiss=modal]", function(){
								jQuery("#myModal .modal-body").html("<p>Loading...</p>");
								jQuery("#myModal").hide();
							});
							jQuery(document).on("submit", "form[name=static_form]", function(e){				
								e.preventDefault();
								var isValidForm =static_inq_form_validate(jQuery(this).attr("form-id"));
								if(isValidForm == undefined){
									var form = jQuery(this);
									if(form.length){
										jQuery.ajax({
											url: form.attr("action"),
											type: form.attr("method"),
											data:form.serialize(),
											crossDomain:true,
											beforeSend:function(){
												jQuery("#myModal .modal-footer").html("");
											},
											success:function(res){
												jQuery("#myModal .modal-body").html(res);
												setTimeout(function(){
													jQuery("#myModal", document).hide();
													jQuery("#myModal .modal-body").html("<p>Loading...</p>");
													},2000)
											}
										});
									}
								}
							});
							var modal = jQuery("#myModal", document);
				
							jQuery(document).on("click", ".submit-inquiry" , function(){
							    modal.show();
							});
				
							window.onclick = function(event) {
							    if (jQuery(event.target) == modal) {
							        modal.css("display","none");
							    }
							}
						});
					</script>
									</div>
									<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
					<div class="column_Box mc rghtFix">
					<div class="tcl bullet data divider enqForm stickyForm">
					<div class="h h2 ac xxlarge theme2 p10px" style="color:#fff;"><b class="plusMinus"></b>
					Fill Enquiry Form Below
					</div>
					<div class="showHide_rp mt7px p10px">
					<form name="package_form" method="post" action="//catalog.tourtravelworld.com/catalog-enquiry.php" onsubmit="return static_inq_form_validate(10029);">
					<div class="fo">
					<div class="mb15px">
					<input type="text" name="dynFrm_contact_person" id="dynFrm_contact_person_10029" placeholder="Your Full Name" />
					<span class="red small"></span>
					</div>
					<div class="fl w100 mb15px">
					<textarea name="dynFrm_details_2" id="dynFrm_details_2_10029">I am interested in Mesmerizing Darjeeling Gangtok Tour. Please get in contact with me.</textarea>
					<span class="fl red small"></span>
					</div>
					<div class="fl w100 mb15px df-dt">
					<div class="df-dtc w50 pr5px dateOpt pr"><input type="text" name="dynFrm_arrival_date" id="dynFrm_arrival_date_10029" class="dynFrm_arrival_date" style="padding-left:30px;" placeholder=" Departure Date" /><span class="fl red small"></span></div>
					<div class="df-dtc pl5px"><input type="text" name="dynFrm_duration" id="dynFrm_duration_10029" placeholder="Number of Days" /><span class="fl red small"></span></div>
					</div>  
					<div class="mb15px">
					<input type="text" name="dynFrm_email_id" id="dynFrm_email_id_10029" placeholder="Email" />
					<span class="red small"></span>
					</div> 
					<div class="mb20px fl w100">
					<div class="w60px pr fl ofh">
					<div id="isdpackCode" class="isdCode pr0px">+91</div>
					<select class="contSelect" name="dynFrm_country" id="dynFrm_country" onChange="document.getElementById('phone_package_isd').value=this.value.substr(3, 4); document.getElementById('isdpackCode').innerHTML=this.value.substr(3, 4);">
					
											
						<option value="AF^+93" >Afghanistan +93</option>
					
												
						<option value="CF^+236" >African Republic +236</option>
					
												
						<option value="AL^+355" >Albania +355</option>
					
												
						<option value="DZ^+213" >Algeria +213</option>
					
												
						<option value="AS^+0" >American Samoa +0</option>
					
												
						<option value="AD^+376" >Andorra +376</option>
					
												
						<option value="AO^+244" >Angola +244</option>
					
												
						<option value="AI^+264" >Anguilla +264</option>
					
												
						<option value="AG^+268" >Antigua and Barbuda +268</option>
					
												
						<option value="AR^+54" >Argentina +54</option>
					
												
						<option value="AM^+374" >Armenia +374</option>
					
												
						<option value="AW^+297" >Aruba +297</option>
					
												
						<option value="AU^+61" >Australia +61</option>
					
												
						<option value="AT^+43" >Austria +43</option>
					
												
						<option value="AZ^+994" >Azerbaijan +994</option>
					
												
						<option value="BS^+242" >Bahamas +242</option>
					
												
						<option value="BH^+973" >Bahrain +973</option>
					
												
						<option value="BD^+880" >Bangladesh +880</option>
					
												
						<option value="BB^+246" >Barbados +246</option>
					
												
						<option value="BY^+375" >Belarus +375</option>
					
												
						<option value="BE^+32" >Belgium +32</option>
					
												
						<option value="BZ^+501" >Belize +501</option>
					
												
						<option value="BJ^+229" >Benin +229</option>
					
												
						<option value="BM^+441" >Bermuda +441</option>
					
												
						<option value="BT^+975" >Bhutan +975</option>
					
												
						<option value="BO^+591" >Bolivia +591</option>
					
												
						<option value="BA^+387" >Bosnia and Herzegovina +387</option>
					
												
						<option value="BW^+267" >Botswana +267</option>
					
												
						<option value="BV^+47" >Bouvet +47</option>
					
												
						<option value="BR^+55" >Brazil +55</option>
					
												
						<option value="BN^+673" >Brunei +673</option>
					
												
						<option value="BG^+359" >Bulgaria +359</option>
					
												
						<option value="BF^+226" >Burkina +226</option>
					
												
						<option value="BF^+0" >Burkina Faso +0</option>
					
												
						<option value="BI^+257" >Burundi +257</option>
					
												
						<option value="KH^+855" >Cambodia +855</option>
					
												
						<option value="CM^+237" >Cameroon +237</option>
					
												
						<option value="CA^+1" >Canada +1</option>
					
												
						<option value="CV^+238" >Cape Verde +238</option>
					
												
						<option value="KY^+345" >Cayman Islands +345</option>
					
												
						<option value="236^+236" >Central African Republic +236</option>
					
												
						<option value="TD^+235" >Chad +235</option>
					
												
						<option value="IO^+246" >Chagos +246</option>
					
												
						<option value="CL^+56" >Chile +56</option>
					
												
						<option value="CN^+86" >China +86</option>
					
												
						<option value="CX^+61" >Christmas Island +61</option>
					
												
						<option value="CC^+61" >Cocos +61</option>
					
												
						<option value="CO^+57" >Colombia +57</option>
					
												
						<option value="KM^+269" >Comoros +269</option>
					
												
						<option value="CG^+242" >Congo +242</option>
					
												
						<option value="CK^+682" >Cook Islands +682</option>
					
												
						<option value="RCI^+506" >Costa Rica +506</option>
					
												
						<option value="HR^+385" >Croatia +385</option>
					
												
						<option value="CY^+357" >Cyprus +357</option>
					
												
						<option value="CZ^+420" >Czech Republic +420</option>
					
												
						<option value="DK^+45" >Denmark +45</option>
					
												
						<option value="DJ^+253" >Djibouti +253</option>
					
												
						<option value="DM^+767" >Dominica +767</option>
					
												
						<option value="DO^+809" >Dominican Republic +809</option>
					
												
						<option value="TP^+670" >East Timor +670</option>
					
												
						<option value="EC^+593" >Ecuador +593</option>
					
												
						<option value="EG^+20" >Egypt +20</option>
					
												
						<option value="SV^+503" >El Salvador +503</option>
					
												
						<option value="GQ^+0" >Equatorial Guinea +0</option>
					
												
						<option value="ER^+291" >Eritrea +291</option>
					
												
						<option value="EE^+372" >Estonia +372</option>
					
												
						<option value="ET^+251" >Ethiopia +251</option>
					
												
						<option value="FO^+298" >Faroe +298</option>
					
												
						<option value="FM^+691" >Federated States of Micronesia +691</option>
					
												
						<option value="FJ^+679" >Fiji +679</option>
					
												
						<option value="FI^+358" >Finland +358</option>
					
												
						<option value="FR^+33" >France +33</option>
					
												
						<option value="FX^+590" >France, Metropolitan +590</option>
					
												
						<option value="GF^+594" >French Guiana +594</option>
					
												
						<option value="FP^+689" >French Polynesia +689</option>
					
												
						<option value="TF^+590" >French Southern Territories +590</option>
					
												
						<option value="GA^+241" >Gabon +241</option>
					
												
						<option value="GM^+220" >Gambia +220</option>
					
												
						<option value="GE^+995" >Georgia +995</option>
					
												
						<option value="DE^+49" >Germany +49</option>
					
												
						<option value="GH^+233" >Ghana +233</option>
					
												
						<option value="GI^+350" >Gibraltar +350</option>
					
												
						<option value="GR^+30" >Greece +30</option>
					
												
						<option value="GL^+299" >Greenland +299</option>
					
												
						<option value="GD^+809" >Grenada +809</option>
					
												
						<option value="Gre^+473" >Grenada +473</option>
					
												
						<option value="GP^+590" >Guadeloupe +590</option>
					
												
						<option value="GU^+1" >Guam +1</option>
					
												
						<option value="GT^+502" >Guatemala +502</option>
					
												
						<option value="GN^+224" >Guinea +224</option>
					
												
						<option value="GW^+245" >Guinea-bissau +245</option>
					
												
						<option value="GY^+592" >Guyana +592</option>
					
												
						<option value="HT^+509" >Haiti +509</option>
					
												
						<option value="HM^+61" >Heard and Mc Donald Islands +61</option>
					
												
						<option value="HN^+504" >Honduras +504</option>
					
												
						<option value="HU^+36" >Hungary +36</option>
					
												
						<option value="IS^+354" >Iceland +354</option>
					
												
						<option value="IN^+91"  selected="selected" >India +91</option>
					
												
						<option value="ID^+62" >Indonesia +62</option>
					
												
						<option value="IQ^+964" >Iraq +964</option>
					
												
						<option value="IE^+353" >Ireland +353</option>
					
												
						<option value="Isi^Isiolo" >Isiolo Isiolo</option>
					
												
						<option value="IL^+972" >Israel +972</option>
					
												
						<option value="IT^+39" >Italy +39</option>
					
												
						<option value="CI^+225" >Ivory Coast +225</option>
					
												
						<option value="JM^+876" >Jamaica +876</option>
					
												
						<option value="JP^+81" >Japan +81</option>
					
												
						<option value="JO^+962" >Jordan +962</option>
					
												
						<option value="KZ^+7" >Kazakhstan +7</option>
					
												
						<option value="KE^+254" >Kenya +254</option>
					
												
						<option value="KI^+686" >Kiribati +686</option>
					
												
						<option value="KW^+965" >Kuwait +965</option>
					
												
						<option value="KG^+996" >Kyrgyzstan +996</option>
					
												
						<option value="LA^+856" >Lao People's Democratic Republic +856</option>
					
												
						<option value="LA^+856" >Laos +856</option>
					
												
						<option value="LV^+371" >Latvia +371</option>
					
												
						<option value="LB^+961" >Lebanon +961</option>
					
												
						<option value="LS^+266" >Lesotho +266</option>
					
												
						<option value="LR^+231" >Liberia +231</option>
					
												
						<option value="LY^+218" >Libya +218</option>
					
												
						<option value="LI^+423" >Liechtenstein +423</option>
					
												
						<option value="LT^+370" >Lithuania +370</option>
					
												
						<option value="LU^+352" >Luxembourg +352</option>
					
												
						<option value="MO^+853" >Macau +853</option>
					
												
						<option value="MK^+389" >Macedonia +389</option>
					
												
						<option value="MG^+261" >Madagascar +261</option>
					
												
						<option value="MW^+265" >Malawi +265</option>
					
												
						<option value="MY^+60" >Malaysia +60</option>
					
												
						<option value="MV^+960" >Maldives +960</option>
					
												
						<option value="ML^+223" >Mali +223</option>
					
												
						<option value="MT^+356" >Malta +356</option>
					
												
						<option value="FK^+500" >Malvinas +500</option>
					
												
						<option value="MH^+692" >Marshall Islands +692</option>
					
												
						<option value="MQ^+596" >Martinique +596</option>
					
												
						<option value="MR^+222" >Mauritania +222</option>
					
												
						<option value="MU^+230" >Mauritius +230</option>
					
												
						<option value="YT^+269" >Mayotte +269</option>
					
												
						<option value="MX^+52" >Mexico +52</option>
					
												
						<option value="MD^+0" >Moldova +0</option>
					
												
						<option value="MD^+373" >Moldova (Republic of Moldova) +373</option>
					
												
						<option value="MC^+377" >Monaco +377</option>
					
												
						<option value="MN^+976" >Mongolia +976</option>
					
												
						<option value="ME^+381" >Montenegro +381</option>
					
												
						<option value="MS^+664" >Montserrat +664</option>
					
												
						<option value="MA^+212" >Morocco +212</option>
					
												
						<option value="MZ^+258" >Mozambique +258</option>
					
												
						<option value="MM^+95" >Myanmar +95</option>
					
												
						<option value="NA^+264" >Namibia +264</option>
					
												
						<option value="NR^+674" >Nauru +674</option>
					
												
						<option value="NP^+977" >Nepal +977</option>
					
												
						<option value="NL^+31" >Netherlands +31</option>
					
												
						<option value="AN^+599" >Netherlands Antilles +599</option>
					
												
						<option value="NC^+687" >New Caledonia +687</option>
					
												
						<option value="PG^+675" >New Guinea +675</option>
					
												
						<option value="NZ^+64" >New Zealand +64</option>
					
												
						<option value="NI^+505" >Nicaragua +505</option>
					
												
						<option value="NE^+227" >Niger +227</option>
					
												
						<option value="NG^+234" >Nigeria +234</option>
					
												
						<option value="NU^+683" >Niue +683</option>
					
												
						<option value="NF^+672" >Norfolk Island +672</option>
					
												
						<option value="MP^+670" >Northern Mariana Islands +670</option>
					
												
						<option value="NO^+47" >Norway +47</option>
					
												
						<option value="OM^+968" >Oman +968</option>
					
												
						<option value="PK^+92" >Pakistan +92</option>
					
												
						<option value="PW^+680" >Palau +680</option>
					
												
						<option value="PA^+507" >Panama +507</option>
					
												
						<option value="PG^+0" >Papua New Guinea +0</option>
					
												
						<option value="PY^+595" >Paraguay +595</option>
					
												
						<option value="PE^+51" >Peru +51</option>
					
												
						<option value="PH^+63" >Philippines +63</option>
					
												
						<option value="PN^+872" >Pitcairn +872</option>
					
												
						<option value="PL^+48" >Poland +48</option>
					
												
						<option value="PF^+689" >Polynesia +689</option>
					
												
						<option value="PT^+351" >Portugal +351</option>
					
												
						<option value="PR^+1-787" >Puerto Rico +1-787</option>
					
												
						<option value="QA^+974" >Qatar +974</option>
					
												
						<option value="RE^+262" >Reunion +262</option>
					
												
						<option value="RO^+40" >Romania +40</option>
					
												
						<option value="RU^+7" >Russia +7</option>
					
												
						<option value="RW^+250" >Rwanda +250</option>
					
												
						<option value="KN^+869" >Saint Kitts and Nevis +869</option>
					
												
						<option value="LC^+758" >Saint Lucia +758</option>
					
												
						<option value="VC^+784" >Saint Vincent and the Grenadines +784</option>
					
												
						<option value="WS^+685" >Samoa +685</option>
					
												
						<option value="SM^+378" >San Marino +378</option>
					
												
						<option value="ST^+239" >Sao Tome And Principe +239</option>
					
												
						<option value="SA^+966" >Saudi Arabia +966</option>
					
												
						<option value="SN^+221" >Senegal +221</option>
					
												
						<option value="RS^+381" >Serbia +381</option>
					
												
						<option value="SC^+248" >Seychelles +248</option>
					
												
						<option value="SL^+232" >Sierra Leone +232</option>
					
												
						<option value="SG^+65" >Singapore +65</option>
					
												
						<option value="SK^+421" >Slovakia +421</option>
					
												
						<option value="SI^+386" >Slovenia +386</option>
					
												
						<option value="SB^+677" >Solomon Islands +677</option>
					
												
						<option value="SO^+252" >Somalia +252</option>
					
												
						<option value="ZA^+27" >South Africa +27</option>
					
												
						<option value="GS^+44" >South Georgia and the South Sandwich Islands +44</option>
					
												
						<option value="KR^+82" >South Korea +82</option>
					
												
						<option value="ES^+34" >Spain +34</option>
					
												
						<option value="LK^+94" >Sri Lanka +94</option>
					
												
						<option value="SH^+290" >St. Helena +290</option>
					
												
						<option value="PM^+508" >St. Pierre and Miquelon +508</option>
					
												
						<option value="SD^+249" >Sudan +249</option>
					
												
						<option value="SR^+597" >Suriname +597</option>
					
												
						<option value="SJ^+47" >Svalbard and Jan Mayen Islands +47</option>
					
												
						<option value="SZ^+268" >Swaziland +268</option>
					
												
						<option value="SE^+46" >Sweden +46</option>
					
												
						<option value="CH^+41" >Switzerland +41</option>
					
												
						<option value="TW^+886" >Taiwan +886</option>
					
												
						<option value="TJ^+7" >Tajikistan +7</option>
					
												
						<option value="TZ^+255" >Tanzania +255</option>
					
												
						<option value="TH^+66" >Thailand +66</option>
					
												
						<option value="TG^+228" >Togo +228</option>
					
												
						<option value="TK^+64" >Tokelau +64</option>
					
												
						<option value="TO^+676" >Tonga +676</option>
					
												
						<option value="TT^+868" >Trinidad and Tobago +868</option>
					
												
						<option value="TN^+216" >Tunisia +216</option>
					
												
						<option value="TR^+90" >Turkey +90</option>
					
												
						<option value="TM^+993" >Turkmenistan +993</option>
					
												
						<option value="TC^+649" >Turks and Caicos Islands +649</option>
					
												
						<option value="TV^+688" >Tuvalu +688</option>
					
												
						<option value="AE^+971" >UAE +971</option>
					
												
						<option value="UG^+256" >Uganda +256</option>
					
												
						<option value="UA^+380" >Ukraine +380</option>
					
												
						<option value="UK^+44" >United Kingdom +44</option>
					
												
						<option value="UM^+1" >United States Minor Outlying Islands +1</option>
					
												
						<option value="UY^+598" >Uruguay +598</option>
					
												
						<option value="US^+1" >USA +1</option>
					
												
						<option value="UZ^+998" >Uzbekistan +998</option>
					
												
						<option value="VU^+678" >Vanuatu +678</option>
					
												
						<option value="VA^+0" >Vatican City +0</option>
					
												
						<option value="VA^+39" >Vatican City State (Holy See) +39</option>
					
												
						<option value="VE^+58" >Venezuela +58</option>
					
												
						<option value="VN^+84" >Vietnam +84</option>
					
												
						<option value="VG^+1" >Virgin Islands (British) +1</option>
					
												
						<option value="VI^+1" >Virgin Islands (U.S.) +1</option>
					
												
						<option value="WF^+681" >Wallis and Futuna Islands +681</option>
					
												
						<option value="EH^+212" >Western Sahara +212</option>
					
												
						<option value="YE^+967" >Yemen +967</option>
					
												
						<option value="YU^+381" >Yugoslavia +381</option>
					
												
						<option value="ZR^+243" >Zaire +243</option>
					
												
						<option value="ZM^+260" >Zambia +260</option>
					
												
						<option value="ZW^+263" >Zimbabwe +263</option>
					
											</select>
					</div>									
					<input type="text" name="dynFrm_phone" id="dynFrm_phone_10029" class="fl" style="width:calc(100% - 62px);" placeholder="Mobile No" />
					<span class="fl red small"></span>
					</div>					
										
					<div class="mb5px ac">
					<input type="submit" name="submit" value="Send Enquiry" class="dib theme1 p12px bdr fw6">
					<input type="hidden" name="phone_isd" id="phone_package_isd" value="+91">
					<input type="hidden" name="subject" value="Mesmerizing Darjeeling Gangtok Tour - Tour Package"/>
					<input type="hidden" name="allocate_type" value="tour"/>
					<input type="hidden" name="pkg_slno" value="91084"/>
					<input type="hidden" name="current_url" value="https://www.aryantravel.in/tour-packages/mesmerizing-darjeeling-gangtok-tour.htm">
				  	<input type="hidden" name="web_address" value="https://www.aryantravel.in">
				  	<input type="hidden" name="inq_thanks_msg" value="Thank you for inquiry.<br /><br />We have received your request. Our Sales Team will soon get in touch with you.<br /><br /><br />">
					<input type="hidden" name="inq_thanks_title" value="Enquiry">
				  	<input type="hidden" name="redirected_url" value="https://www.aryantravel.in/thanks.htm">
					<input type="hidden" name="catalog_mi" value="286440">
				  	<input type="hidden" name="id" value="static_form">
				  	<input type="hidden" name="form_id" value="10029">
					</form>
					</div>
					</div>					
					</div>
					</div>
					<style>
					.ui-datepicker-trigger {
						vertical-align : middle;
					}
					</style>
					<script>
					jQuery('.dynFrm_arrival_date').datepicker({minDate: 0,
					buttonImage: '//catalog.wlimg.com/jquery-date-picker/calbtn.gif',
					buttonText: 'Click to view calendar',
				    buttonImageOnly: true,
				    showOn: 'button',
				    changeMonth: true,
				    changeYear: true,
				    onClose: function(dateText, inst) {
				        var endDateTextBox = jQuery('.dynFrm_departure_date');
				        if (endDateTextBox.val() != '') {
				            var testStartDate = new Date(dateText);
				            var testEndDate = new Date(endDateTextBox.val());
				            if (testStartDate > testEndDate)
				                endDateTextBox.val(dateText);
				        }
				    }, 
					    onSelect: function (selectedDateTime){
					        var start = jQuery(this).datepicker('getDate');
					        jQuery('.dynFrm_departure_date').datepicker('option', 'minDate', new Date(start.getTime()));
					        jQuery('#dynFrm_departure_date').datepicker('option', 'minDate', new Date(start.getTime()));
					    }    
					});
					jQuery('.dynFrm_departure_date').datepicker({
					minDate: 0,
					buttonImage: '//catalog.wlimg.com/jquery-date-picker/calbtn.gif',
					buttonText: 'Click to view calendar',
				    buttonImageOnly: true,
				    showOn: 'button',
				    changeMonth: true,
				    changeYear: true,
				    onClose: function(dateText, inst) {
				        var startDateTextBox = jQuery('.dynFrm_arrival_date');
				        if (startDateTextBox.val() != '') {
				            var testStartDate = new Date(startDateTextBox.val());
				            var testEndDate = new Date(dateText);
				            if (testStartDate > testEndDate)
				                startDateTextBox.val(dateText);
				        }
				    },
				    onSelect: function (selectedDateTime){
				        var end = jQuery(this).datepicker('getDate');
				        jQuery('.dynFrm_arrival_date').datepicker('option', 'maxDate', new Date(end.getTime()) );
				        jQuery('#dynFrm_arrival_date').datepicker('option', 'maxDate', new Date(end.getTime()) );
				    }
					});
					</script>
					<script>
					jQuery(document).ready(function(){
					var sticky = jQuery('.stickyForm').offset().top;
					jQuery(window).scroll(function(){      
					 if(jQuery(window).scrollTop() > sticky){
					  jQuery('.stickyForm').css('position','fixed');
					  jQuery('.stickyForm').css('top','75px'); 
					 }
					 else if (jQuery(window).scrollTop() <= sticky) {
					  jQuery('.stickyForm').css('position','');
					  jQuery('.stickyForm').css('top','');
					 }  
					if (jQuery('.stickyForm').offset().top + jQuery(".stickyForm").height() > jQuery(".rel-prop").offset().top) {
					  jQuery('.stickyForm').css('top',-(jQuery(".stickyForm").offset().top + jQuery(".stickyForm").height() - jQuery(".rel-prop").offset().top));
					}
					});
					});
					</script>
					<script>
					jQuery(document).ready(function(e){
					if (jQuery(window).width() < 992) {
					jQuery(".rghtFix .enqForm .h").on("click", function(){
					  jQuery(this).find('.plusMinus').toggleClass('act').parent().next('.showHide_rp').slideToggle('slow');
					});  
					jQuery(".rghtFix .enqForm .plusMinus").on("click", function(e){
					e.stopPropagation(); 
					});
					}
					});  
					</script>
					</div>
					</div>
									
				
				</div>
				
										<section class="pt30px pb10px relTour-pkg rel-prop">
						<div class="wrap">      
						<div class="fo">
						<div class="ac mb7px"><div><h2 class="hd_NT">Similar Tour Packages for Gangtok, Darjeeling</h2></div></div>
						<div class="ic" id="1102_3-1">
						<div class="slider">
						<ul class="bxslider987">
											
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.aryantravel.in/tour-packages/north-sikkim-tour.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/286440/157103.jpg"  height=""  width=""    alt="North Sikkim Tour" title="North Sikkim Tour"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.aryantravel.in/tour-packages/north-sikkim-tour.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								5 Nights / 6 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.aryantravel.in/tour-packages/north-sikkim-tour.htm" title="North Sikkim Tour"><h3>North Sikkim Tour</h3></a></div>
							</div>
							</div>						
							</li>
												
							<li>
							<div class="dib w200px">
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='https://www.aryantravel.in/tour-packages/short-escapeto-gangtok-tour.htm'">
															<div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/286440/157102.jpg"  height=""  width=""    alt="Short Escape to Gangtok Tour" title="Short Escape to Gangtok Tour"  class="bdr p1px" ></div></div>
								<div class="absViewBtn"><a href="https://www.aryantravel.in/tour-packages/short-escapeto-gangtok-tour.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								3 Nights / 4 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="https://www.aryantravel.in/tour-packages/short-escapeto-gangtok-tour.htm" title="Short Escape to Gangtok Tour"><h3>Short Escape To Gangtok Tour</h3></a></div>
							</div>
							</div>						
							</li>
															
						</ul>
						</div>
						</div> 
													<style>
							.relTour-pkg .slider ul li{max-width:214px;margin-bottom:20px;padding-left:5px;padding-right:6px;box-sizing:border-box;margin-right:12px;}
							</style>	
														  
						 </div>
					     </div>
					    </section>
										<section class="pt20px pb20px absTour-Title rel-prop">
				<div class="wrap">
				<div class="fo">     	
				<div class="ac mb7px"><div><h2 class="hd_NT">Explore Tour Packages by Destination</h2></div></div>     	
				<div class="ic" id="1102_3-1">
				<div class="slider">
				<ul class="bxslider988">								
				
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-new-delhi.htm" title="Packages in New Delhi" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10009-classified.jpg"  height=""  width=""    alt="New Delhi" title="New Delhi" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-jaipur.htm" title="Packages in Jaipur" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10096-classified.jpg"  height=""  width=""    alt="Jaipur" title="Jaipur" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-mumbai.htm" title="Packages in Mumbai" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10355-classified.jpg"  height=""  width=""    alt="Mumbai" title="Mumbai" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-mumbai.htm" title="Packages in Mumbai">Mumbai Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-shimla.htm" title="Packages in Shimla" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10070-classified.jpg"  height=""  width=""    alt="Shimla" title="Shimla" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-shimla.htm" title="Packages in Shimla">Shimla Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-ooty.htm" title="Packages in Ooty" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10263-classified.jpg"  height=""  width=""    alt="Ooty" title="Ooty" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-ooty.htm" title="Packages in Ooty">Ooty Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-udaipur.htm" title="Packages in Udaipur" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10117-classified.jpg"  height=""  width=""    alt="Udaipur" title="Udaipur" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-udaipur.htm" title="Packages in Udaipur">Udaipur Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-goa-city.htm" title="Packages in Goa City" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/11555-classified.jpg"  height=""  width=""    alt="Goa City" title="Goa City" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-goa-city.htm" title="Packages in Goa City">Goa City Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-manali.htm" title="Packages in Manali" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10061-classified.jpg"  height=""  width=""    alt="Manali" title="Manali" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-manali.htm" title="Packages in Manali">Manali Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-kufri.htm" title="Packages in Kufri" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10058-classified.jpg"  height=""  width=""    alt="Kufri" title="Kufri" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-kufri.htm" title="Packages in Kufri">Kufri Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-agra.htm" title="Packages in Agra" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10119-classified.jpg"  height=""  width=""    alt="Agra" title="Agra" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-agra.htm" title="Packages in Agra">Agra Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-mysore.htm" title="Packages in Mysore" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10195-classified.jpg"  height=""  width=""    alt="Mysore" title="Mysore" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-mysore.htm" title="Packages in Mysore">Mysore Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h200px"><div class="imgFrame picBg dtc ac vam lh0 w200px h200px">
					<a href="https://www.aryantravel.in/packages-in-jodhpur.htm" title="Packages in Jodhpur" >
					<img src="https://dynamic.tourtravelworld.com/zsc-header/10098-classified.jpg"  height=""  width=""    alt="Jodhpur" title="Jodhpur" ></a>
					</div></div>
					<div class="h xlarge fw6 lh15em"><a href="https://www.aryantravel.in/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur Tours</a></div>
					</div> 
					</li>
									</ul>
				</div>
				</div>
				 
						<script>
						$(document).ready(function(){			
						$('.bxslider988').bxSlider({
						mode:'horizontal',				
						slideWidth: 214,maxSlides: 10,slideMargin:12,auto: true, 
						autoDirection:'next',
						moveSlides: 1,
						pause:2000,
						pager:false,
						pagerType:'full',
						autoControls: false, 
						controls:true, 
						autoHover:true,				
						speed:1000
						});
						});
						</script>
										
				</div>
				</div>
				</section>
				
				</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:74:"Book Mesmerizing Darjeeling Gangtok Tour - 4 Nights / 5 Days Tour Packages";i:2;s:166:"book mesmerizing darjeeling gangtok tour - 4 nights / 5 days tour packages, hill stations & valleys tour packages, darjeeling, gangtok, enchey monastery tour packages";i:3;s:211:"Aryan Travel and Investments offers Mesmerizing Darjeeling Gangtok Tour - 4 Nights / 5 Days tour package, budget Hill Stations & Valleys tour packages for Darjeeling, Gangtok, Enchey Monastery at exciting price.";i:4;s:430:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Darjeeling, Gangtok, Enchey Monastery"        
		                 },
		      "description": "",
		      "name": "Mesmerizing Darjeeling Gangtok Tour",
		      "telephone": "+91-9625573159"
		    }
		    </script>
			";i:5;N;i:6;s:73:"https://ttw.wlimg.com/package-images/photo-small/dir_10/286440/157104.jpg";}