a:6:{i:0;s:5830:"				<div class="h1"><h1>Trekking In Ladakh Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.outdoorhimalayan.in/" title="Home">Home</a> 
				
								
				<b class="ffv p2px">&rsaquo;</b>Trekking In Ladakh Tour</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">
						1 Day 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Leh Ladakh</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.outdoorhimalayan.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Trekking In Ladakh 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="120034"/>
						</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_17/500801/194511.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/500801/194511.jpg"  width="150" height="150"    alt="Trekking In Ladakh Tour" title="Trekking In Ladakh Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					The entire region of Ladakh has some of the most fascinating treks in the Indian Western Himalayas Our treks range from 2 to 22 days. Our well trained and experienced trekking guides, expert cooks who can rustle up a gourmet meal in the middle of nowhere and our always wanting to please and help camp staff take care of all your needs on your trek. Our sturdy camp equipment is well maintained and can stand up to any adverse weather conditions which are unlikely anyway during the trek season, while providing you the best possible comforts on your trek. Depending on the route you will be accompanied either by dependable porters or sturdy pack ponies who take care of all load carrying tasks. Choose from some of the treks mentioned here or if you have a particular region in mind that you would like to trek in we can design one specifically for you. Mail us for a more detailed list of all our planned treks.<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>
																		<li>2 Star Hotel</li>
																		<li>3 Star Hotel</li>
																		<li>4 Star Hotel</li>
																		<li>Meals</li>
																		<li>Sightseeing</li>
																		<li>Transport</li>
																		<li>Transfers</li>
																		<li>Airport Pickup-Drop</li>
																		<li>Private Guides</li>
																		<li>Entry Tickets</li>
																		<li>Stay Included</li>
																		<li>Non Veg Meals</li>
																		<li>Veg Meals</li>
																		<li>Veg & Non Veg Meals</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.outdoorhimalayan.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Trekking In Ladakh 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="120034"/>
						</form>
						</div>
						
						";i:1;s:51:"Book Trekking In Ladakh Tour - 1 Days Tour Packages";i:2;s:101:"book trekking in ladakh tour - 1 days tour packages, trekking tour packages, leh ladakh tour packages";i:3;s:163:"Outdoor Hamalyan Tour & Travel (leh Ladhakh) offers Trekking In Ladakh Tour - 1 Days tour package, budget Trekking tour packages for Leh Ladakh at exciting price.";i:4;s:1319:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Leh Ladakh"        
		                 },
		      "description": "The entire region of Ladakh has some of the most fascinating treks in the Indian Western Himalayas Our treks range from 2 to 22 days. Our well trained and experienced trekking guides, expert cooks who can rustle up a gourmet meal in the middle of nowhere and our always wanting to please and help camp staff take care of all your needs on your trek. Our sturdy camp equipment is well maintained and can stand up to any adverse weather conditions which are unlikely anyway during the trek season, while providing you the best possible comforts on your trek. Depending on the route you will be accompanied either by dependable porters or sturdy pack ponies who take care of all load carrying tasks. Choose from some of the treks mentioned here or if you have a particular region in mind that you would like to trek in we can design one specifically for you. Mail us for a more detailed list of all our planned treks.",
		      "name": "Trekking In Ladakh Tour",
		      "telephone": "+91-9469734212"
		    }
		    </script>
			";i:5;N;}