a:6:{i:0;s:10503:"				<div class="h1"><h1>Jodhpur - Jaisalmer - Bikaner - Jaipur Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.skytriptraveleasy.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.skytriptraveleasy.com/packages.htm" title="Packages">Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Jodhpur - Jaisalmer - Bikaner - Jaipur 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">
						6 Nights / 7 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Bikaner, Jaipur, Jaisalmer, Jodhpur</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.skytriptraveleasy.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Jodhpur - Jaisalmer - Bikaner - Jaipur 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="21168"/>
						</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_9/264226/38890.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/264226/38890.jpg"  width="150" height="150"    alt="Jodhpur - Jaisalmer - Bikaner - Jaipur Tour" title="Jodhpur - Jaisalmer - Bikaner - Jaipur Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Air/Rail Fares<br />
Lunch & Dinner At All Places<br />
Entrance Fee, Camel Ride, Guide, Tips & Any Other Item Not Listed In Cost Includes Section.<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 at Jodhpur
								</p>
								<p class="aj">Arrive at Jodhpur Railway station / Airport, and transfer to the hotel. Rest of the day free at lesuire. Night stay at the 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 2:</b> Jodhpur
								</p>
								<p class="aj">After breakfast Enjoy Jodhpur city tour. Visit Ummaid Bhavan Palace museum, Mehrangarh Fort which includes Moti Mahal, Phool Mahal, Sheesh Mahal, Silah Khana, Daulat Khana and Rang Mahal. Later visit Jaswant Thada. Overnight at 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 3:</b> Jodhpur - Jaisalmer (Approx. 300 Kms/ 06 Hrs)
								</p>
								<p class="aj">After breakfast proceed to Jaisalmer. On arrival transfer to the hotel. Evening free at leisure. Overnight stay at 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 4:</b> Jaisalmer
								</p>
								<p class="aj">After breakfast proceed for the sightseeing, visiting Patwon Ki Haveli, Salim Singhji Ki Haveli, Jaisalmer Fort, Gadisar Lake and Bada Baugh. Evening visit the Sam Sand Dunes for Sunset & Camel ride. Also enjoy the gala dinner at Sam Sand Dunes. Overnight stay at Jaisalmer.</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> Jaisalmer - Bikaner (Approx. 330 Kms/ 06 Hrs)
								</p>
								<p class="aj">After breakfast proceed to Bikaner. On arrival transfer to the hotel. Visiting Junagarh Fort, Lalgarh Palace, Gajner Palace and Deshnok Temple, Evening free to visit the Camel Breeding farms. Overnight stay at 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 6:</b> Bikaner - Jaipur (Approx. 300 Kms/ 06 Hrs)
								</p>
								<p class="aj">After breakfast Proceed to Jaipur. On arrival in Jaipur transfer to Hotel. Later city sightseeing. Day free for shopping. Overnight at 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 7:</b> Depart from Jaipur
								</p>
								<p class="aj">After Morning breakfast transfer to Jaipur Railway Station / Airport to Depart to your Home Town.</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>
																		<li>Sightseeing</li>
																		<li>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Air/Rail Fares</li><li>
Lunch & Dinner At All Places</li><li>
Entrance Fee, Camel Ride, Guide, Tips & Any Other Item Not Listed In Cost Includes Section.</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. ~^#^~						
    	<p class="h dif xlarge b mb5px">Package Cost :</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="data p5px"> Occupancy</td>
				<td class="data p5px">Standard</td>
				<td class="data p5px">Deluxe</td>
			</tr>
			<tr>
				<td class="data p5px">Twin Sharing (Per Person)</td>
				<td class="data p5px">N.A.</td>
				<td class="data p5px">N.A.</td>
			</tr>
			<tr>
				<td class="data p5px">Extra Person (Above 11yrs)</td>
				<td class="data p5px">N.A.</td>
				<td class="data p5px">N.A.</td>
			</tr>
			<tr>
				<td class="data p5px">Child (Between 6-11yrs)</td>
				<td class="data p5px">N.A.</td>
				<td class="data p5px">N.A.</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">Hotels to be used :</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="data p5px">Place</td>
				<td class="data p5px">Standard</td>
				<td class="data p5px">Deluxe</td>
			</tr>
			<tr>
				<td class="data p5px">Jodhpur</td>
				<td class="data p5px">Royal Plaza or Similar</td>
				<td class="data p5px">Ranbanka or Similar</td>
			</tr>
			<tr>
				<td class="data p5px">Jaisalmer</td>
				<td class="data p5px">Sidhhi Vinayak or Similar</td>
				<td class="data p5px">Jaisal Castle or Similar</td>
			</tr>
			<tr>
				<td class="data p5px">Bikaner</td>
				<td class="data p5px">Rajvilas or Similar</td>
				<td class="data p5px">Vesta Bikaner or Similar</td>
			</tr>
			<tr>
				<td class="data p5px">Jaipur</td>
				<td class="data p5px">Shalimar or Similar</td>
				<td class="data p5px">Vesta Inn or Similar</td>
			</tr>
		</table></div><br>						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.skytriptraveleasy.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Jodhpur - Jaisalmer - Bikaner - Jaipur 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="21168"/>
						</form>
						</div>
						
						";i:1;s:82:"Book Jodhpur - Jaisalmer - Bikaner - Jaipur Tour - 6 Nights / 7 Days Tour Packages";i:2;s:157:"book jodhpur - jaisalmer - bikaner - jaipur tour - 6 nights / 7 days tour packages, heritage tour packages, bikaner, jaipur, jaisalmer, jodhpur tour packages";i:3;s:193:"Skytrip Travel Easy offers Jodhpur - Jaisalmer - Bikaner - Jaipur Tour - 6 Nights / 7 Days tour package, budget Heritage tour packages for Bikaner, Jaipur, Jaisalmer, Jodhpur at exciting price.";i:4;s:587:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bikaner, Jaipur, Jaisalmer, Jodhpur"        
		                 },
		      "description": "Air/Rail Fares
Lunch & Dinner At All Places
Entrance Fee, Camel Ride, Guide, Tips & Any Other Item Not Listed In Cost Includes Section.",
		      "name": "Jodhpur - Jaisalmer - Bikaner - Jaipur Tour",
		      "telephone": "+91-9555999290"
		    }
		    </script>
			";i:5;N;}