a:6:{i:0;s:10925:"				<div class="h1"><h1>Delightful Dubai Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.ashishtravel.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.ashishtravel.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Delightful Dubai 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">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Dubai, Abu Dhabi</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.ashishtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Delightful Dubai 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="113992"/>
						</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/250126/186338.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/250126/186338.jpg"  width="150" height="150"    alt="Delightful Dubai Tour" title="Delightful Dubai Tour" /></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">Delightful Dubai Tour starts with your arrival at the Dubai International Airport. Meet the tour representative, who'll welcome and assist with transfer to your hotel. Check in to your room and enjoy the comforts.<br />
<br />
In the evening, proceed for Dhow Cruise, riding down the Dubai stream. Ride the wooden liners laden with luxuries sightseeing along the famous Dubai Creek. Enjoy the lively music and finger-licking delights from a variety of Arabic cuisine. Do not miss the dancing lights on the skyscrapers of Dubai.<br />
<br />
Overnight stay in Dubai.</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> Dubai
								</p>
								<p class="aj">Start the day with hearty breakfast. Later, you will be picked up from your hotel and taken on a half day city tour with an English speaking guide. The charming Dubai City has a pretty number of historic sites, man-made wonders and some awe-inspiring creations.<br />
<br />
Start the tour with a photo-stop at Burj Al Arab, the sail-ship style landmark of Dubai. Next, proceed to Jumeirah, the beautiful palace area of Dubai, also home to the famous Jumeirah Mosque. Move on to the Sheikh Saeed House, the former residence of the royal family. Continue with the tour to Al Bastakiya, the old part of Dubai. Here visit the museum located in Al Fahidi Fort. Later, proceed for an unforgettable experience, the souks of Dubai. Here it's not just fruits and vegetables sold in huge numbers, there is gold, diamonds and pretty much every luxury you could imagine.<br />
<br />
After a while of rest at your hotel room, you will be picked up from your hotel. You will go for desert safari with a BBQ dinner & Belly Dance program. Enjoy the golden spread of sands with photo-stops capturing exciting dunes and visit to a camel farm. Watch the beautiful sunset at the desert. Arrive at the campsite, where you will have the options of camel riding, sand boarding and get henna designs. The highlight of the evening is the delicious barbecue dinner accompanied with a shisha, the famous Arabic water pipe. Ending the evening with much delight, there are amazing belly dancers performing extraordinary around the campfire by starlight.<br />
<br />
Overnight stay in Dubai 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> Dubai – Burj Khalifa
								</p>
								<p class="aj">Day 3 of Delightful Dubai Tour starts with a sumptuous breakfast in the hotel. Later, proceed to the very top of the Burj Khalifa. The tallest tower in the world is a rare feat and a view of Dubai from the observation deck is amazing.<br />
<br />
Proceed to explore the largest suspended aquarium in the world. 51 meters in length, 20 meters width and 11 meters' height, the 10-million litre Dubai aquarium tank is located on the ground level of the Dubai Mall. Thousands of aquatic animals, comprising over 140 species call it home. Over 300 sharks and rays live in this tank, including the largest collection of the sand tiger sharks in the world. Spend time exploring the marvelous underwater zoo.<br />
<br />
Return back to the hotel for overnight stay.<br />
<br />
Stay overnight.</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> Dubai – Day Free for Leisure
								</p>
								<p class="aj">Day 4 is for your leisure. Have a relaxed breakfast in the hotel, after which you are free to explore the city on your own. Spend the day shopping, as it's the best past time in the city. Shop till you drop as well as nourish your taste buds.<br />
<br />
Overnight stay in 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 5:</b> Dubai – Abu Dhabi City Tour + Ferrari World
								</p>
								<p class="aj">Begin your day with a healthy breakfast in the hotel. Later you will be transferred to Abu Dhabi. The capital city of UAE is exhilarating and you can have a lot of fun with city tour. Cover the tourist attractions of Abu Dhabi, which include visit to the Grand Mosque. The Sheikh Zayed Grand Mosque is a spectacular site considered to be the most sacred in the country.<br />
<br />
Next part of the tour takes you to the Ferrari World. Known as the world's largest Indoor theme park, Ferrari World is located on the Yas Island of Abu Dhabi. There are more than 20 thrilling speed rides, stimulating rides to family friendly attractions. There are facilities for tourists of all ages and tastes. Spend time going on the rides or exploring the variety of Italian restaurants, international retail shops and entertainment joints.<br />
<br />
Return to Dubai hotel for overnight stay.</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> Depart Dubai
								</p>
								<p class="aj">Today is the last day of Delightful Dubai tour. Enjoy a healthy platter of breakfast. Check out of the hotel in the afternoon for shopping or nay other activity of your leisure. In the evening, transfer to the airport to board your homebound flight.</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>
															</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.ashishtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Delightful Dubai 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="113992"/>
						</form>
						</div>
						
						";i:1;s:60:"Book Delightful Dubai Tour - 5 Nights / 6 Days Tour Packages";i:2;s:125:"book delightful dubai tour - 5 nights / 6 days tour packages, forts and palaces tour packages, dubai, abu dhabi tour packages";i:3;s:164:"Ashish Tours & Travels offers Delightful Dubai Tour - 5 Nights / 6 Days tour package, budget Forts and Palaces tour packages for Dubai, Abu Dhabi at exciting price.";i:4;s:409:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Dubai, Abu Dhabi"        
		                 },
		      "description": "",
		      "name": "Delightful Dubai Tour",
		      "telephone": "+91-9893370774"
		    }
		    </script>
			";i:5;N;}