a:6:{i:0;s:10963:"				<div class="h1"><h1>Gujarat - Diu Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="https://www.dwarikatourtravel.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="https://www.dwarikatourtravel.com/vacation-packages.htm" title="Packages">Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Gujarat - Diu 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">Ahmedabad, Jamnagar, Junagadh, Dwarka, Somnath, Diu</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="https://www.dwarikatourtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Gujarat - Diu 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="127120"/>
						</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/506177/204068.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/506177/204068.jpg"  width="150" height="150"    alt="Gujarat - Diu Tour" title="Gujarat - Diu Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Positioned at the western shoreline of India, Gujarat is an astounding tourist place, having impeccable cultural diversity and vivacity with spiritual as well as historic sites offering a unique taste of tourism to the explorers. It is a 6 Nights and 7 Days Gujarat tour that takes the traveller to visit some of the most intriguing places in Gujarat. The destinations covered in this tour package are Ahmedabad, Jamnagar, Dwarka, Somnath, Gir and Diu.<br />
The prominent attractions that come en route in the itinerary are Gandhi Ashram, Akshardham Temple, Nageshwar Jyotirlinga Temple, Somnath Temple and Bhalka Tirth Temple, Jungle safari and lion sightseeing at Sasan Gir along with the road trip to Daman & Diu. The expedition takes the traveller to some breathtaking places such as Mahatma Gandhi's Ashram, Lord Krishna's Dwarka, and the Gir National Park to explore the prosperous ancient and contemporary heritage of the region.<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">On arrival in Ahmedabad, meet our representative, we will transfer you to your already booked hotel and assist you with the check in process. After check into the hotel, freshen up and get ready to leave for the sightseeing tour of Ahmedabad. We will visit the Gandhi Ashram next to the banks of the River Sabarmati. It is the place where Mahatma Gandhi set out on his Dandi March and has now been converted into a museum. You can witness the intricate carvings at the Hate Singh Jain Temple and marvel at the grand architecture of the Akshardham Temple here. Later return back to the hotel for an 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 2:</b> Ahmedabad- Jamnagar
								</p>
								<p class="aj">Today post morning breakfast, check out from the hotel and leave for Jamnagar by road. En-route, visit the ancient and delightfully carved steep well. On reaching Jamnagar, check into the hotel. In the evening, you can visit the Bala Hanuman Temple. It is listed in the Guinness Book of World Records for the continuous chanting of 'Shri Ram, Jai Ram, Jai Jai Ram' by its devotees since 1964. Enjoy an overnight stay in the hotel in Jamnagar.</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> Jamnagar to Dwarka
								</p>
								<p class="aj">In the morning post breakfast, check out from the hotel and leave by road for Dwarka. On reaching Dwarka, check into the hotel. Post lunch, we will visit the Beyt Dwarka, believed to be the original abode of Lord Krishna and the famous 'Nageshwar Jyotirlinga Temple', which is home to one of the 12 Swayambhu Jyotirlingas in the world. Later, we will visit the Gopi Talav, the lake where Gopis are said to have reunited with Lord Krishna. Thereafter, we will visit the Rukmini Devi Temple, dedicated to the wife of Lord Krishna. Later, return back to the hotel to take pleasure of an in Dwarka.</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> Dwarka to Somnath
								</p>
								<p class="aj">After breakfast in the morning, we will proceed to visit Somnath. En-route, we will visit the famous Kirti Mandir in Porbandar, the Haveli in which Mahatma Gandhi was born. Now it has been converted into a museum. Also, we will visit the Sudama Temple, which is built to honour the friendship between Krishna and Sudama. On reaching Somnath, go to the Somnath Temple and Bhalka Tirth Temple, where Lord Krishna is said to have been accidentally shot in the foot. Enjoy an overnight stay in Somnath.</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> Somnath to Gir National Park
								</p>
								<p class="aj">Post breakfast in the morning, check out from the hotel and drive towards Gir. Sasan Gir is the famed place for Lion sightseeing and is well acknowledged as the only forest reserve in Asia for housing wild Lions,. Other animal species include the Sambhar, Spotted Deer, Nilgai and the Chausingha (the world's only four-horned antelope) can also be spotted in the forest. Even crocodiles can be seen in the reservoir and rivers flowing through the sanctuary. In the afternoon, we will go for a jungle safari in the National Park. Enjoy a night stay in Gir.</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> Gir to Diu
								</p>
								<p class="aj">In the morning after breakfast, we will leave for Daman & Diu by road. On reaching Daman & Diu, check into the hotel. The rest of the day is free for leisure or to spend at the beaches of Daman & Diu. An overnight 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 7:</b> Departure
								</p>
								<p class="aj">Today, we will leave for Ahmedabad by road post breakfast. Later, we will continue the journey towards the airport to catch the flight for onward destination.<br />
Tour & services Ends.</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>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="https://www.dwarikatourtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Gujarat - Diu 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="127120"/>
						</form>
						</div>
						
						";i:1;s:57:"Book Gujarat - Diu Tour - 6 Nights / 7 Days Tour Packages";i:2;s:148:"book gujarat - diu tour - 6 nights / 7 days tour packages, heritage tour packages, ahmedabad, jamnagar, junagadh, dwarka, somnath, diu tour packages";i:3;s:199:"Book Gujarat - Diu Tour - 6 Nights / 7 Days tour packages from Dwarika Tour Travel - Get attractive 6 Nights / 7 Days Heritage  tour packages for  Ahmedabad, Jamnagar, Junagadh, Dwarka, Somnath, Diu.";i:4;s:1373:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Ahmedabad, Jamnagar, Junagadh, Dwarka, Somnath, Diu"        
		                 },
		      "description": "Positioned at the western shoreline of India, Gujarat is an astounding tourist place, having impeccable cultural diversity and vivacity with spiritual as well as historic sites offering a unique taste of tourism to the explorers. It is a 6 Nights and 7 Days Gujarat tour that takes the traveller to visit some of the most intriguing places in Gujarat. The destinations covered in this tour package are Ahmedabad, Jamnagar, Dwarka, Somnath, Gir and Diu.
The prominent attractions that come en route in the itinerary are Gandhi Ashram, Akshardham Temple, Nageshwar Jyotirlinga Temple, Somnath Temple and Bhalka Tirth Temple, Jungle safari and lion sightseeing at Sasan Gir along with the road trip to Daman & Diu. The expedition takes the traveller to some breathtaking places such as Mahatma Gandhi's Ashram, Lord Krishna's Dwarka, and the Gir National Park to explore the prosperous ancient and contemporary heritage of the region.",
		      "name": "Gujarat - Diu Tour",
		      "telephone": "+91-8306222122"
		    }
		    </script>
			";i:5;N;}