a:6:{i:0;s:9655:"				<div class="h1"><h1>Rajasthan Heritage Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.gomyjourney.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.gomyjourney.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Rajasthan Heritage Tour</p>
				<br />
				
									<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>
					
					<table class="w100 formTable imgWidth">
					<tr>
					
											<td class="p10px vat imgWidth150 w150px">
						<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_1/17434/4118.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/17434/4118.jpg"  width="150" height="150"    alt="Rajasthan Heritage Tour" title="Rajasthan Heritage Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Tour Code :</b> GIJ-38/2012-13</p>
												<p class="mb5px"><b>Duration :</b> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Jaipur, Jodhpur, Udaipur, Agra</p>
												<p><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.gomyjourney.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Rajasthan Heritage Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="7123"/>
						</form>
						</p>
											</td>
					</tr>
					</table>
										<br />
					
					<div class="packageTabs myTabs horizontal mc"><!--MY TABS STARTS-->
					<ul class="fo lsn m0px p0px">
					
											<li id="tab2"><a href="#data2">Itinerary</a></li>
												<li id="tab4"><a href="#data4">Tour Detail</a></li>
												<li id="tab6"><a href="#data6">Terms &amp; Conditions</a></li>
											</ul>
					
					
											<div class="ic bdr" id="data2"><!--DATA2 START-->
						<br />
						<ul class="lsn m0px p0px">
									<li>
									<p class="b mb5px">Day 1: Arrival Delhi
									</p>
									<div class="data p10px">Meet and assist our representative upon arrival at Delhi Welcome in Indian tradition. After transfer to Hotel with assistance. Rest of the day free for leisure. Over night at Delhi.</div>					
										<p><b>Meals : </b> Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Delhi - Agra
									</p>
									<div class="data p10px">Morning after breakfast check our from the hotel and proceed to half day sight seeing tour of old Delhi visiting the majestic Red Fort, a marvel in red sandstone, Jama Masjid, the largest mosque in India, both built by emperor Shah Jahan of Taj Mahal fame, Rajghat - memorial of Mahatma Gandhi. Later drive to Agra check in to hotel. Overnight stay in Agra.</div>					
										<p><b>Meals : </b> Breakfast & Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Agra - Fatehpur Sikri - Jaipur
									</p>
									<div class="data p10px">Morning after early breakfast check out from the hotel and visit the magnificent Taj Mahal - one of the Seven Wonders of the World surely the most extravagant expression of love ever created. 20,000 men laboured for over 17 years to build this memorial to Shah Jahan's beloved wife. Also visit the Agra fort – the rusty and majestic red-sandstone fort of Agra stands on the banks of the river Yamuna and the construction was started by Emperor Akbar in 1566. Later drive to Jaipur en-route visit Fatehpur Sikri- the deserted, red sandstone city that was built by Emperor Akbar as his capital and palace in the 16th century. Also visit the Bulund Darwaza the largest gateway in the world. Thereafter continue drive to Jaipur. Arrive Jaipur and transfer to Hotel. Overnight stay in Jaipur.</div>					
										<p><b>Meals : </b> Breakfast & Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Jaipur
									</p>
									<div class="data p10px">Morning tour of the impressive Amber Fort situated on a ridge just outside Jaipur City. At the foot of the hill you will mount your caparisoned elephant for the slow but steady climb up to the main gate, making your entrance in the time honoured fashion. The Fort, completed in the early 18th century, took over 100 years to build and now, although deserted, offers a fascinating insight into the lifestyle of the Moghul ruling families. Afternoon tour of the City - "The Pink City" is spectacularly set within surrounding rugged hills, dotted with ancient ruined fortresses. Your tour will include the imposing City Palace, still home to the Maharaja although several of the rooms are now open to the public. Many antiques and artifacts belonging to the ruling family are housed here, including a collection of weaponry. You will also visit the Hawa Mahal "Palace of the Winds", and the open-air Jantar Mantar Observatory to see the vast astronomical, instruments .Also visit Albert hall, Enjoy a stroll through the colorful bazaar before returning to your hotel. Evening optional visit to Choki Dhani village for Dinner. overnight stay in Jaipur.</div>					
										<p><b>Meals : </b> Breakfast & Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 5: Jaipur - Jodhpur
									</p>
									<div class="data p10px">After breakfast drive to Jodhpur. On arrival check in the hotel. Later afternoon Visit the Mehrangarh Fort founded in 1459 AD by Rao Jodha (after whom the city is named). The Fort is intricately adorned with long carved panels and latticed windows of exquisite designs in red sandstone. Also visit Jaswant Thada- an imposing white marble cenotaph built to commemorate the acts of bravery and generosity of the rulers in 19th century. Overnight stay at Hotel.</div>					
										<p><b>Meals : </b> Breakfast & Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 6: Jodhpur - Ranakpur - Udaipur
									</p>
									<div class="data p10px">After Breakfast drive to Udaipur - "Lake City", the most romantic city in Rajasthan En-route visit Ranakpur. Visit the famous Jain Temple, dating back to the 15th century. Sprawling over 48,000 sq. feet, the temple is an astounding creation with 29 halls and 1,444 pillars-all distinctly carved Images of 24 tirthankaras are carved on the 'mandaps' or porticoes in a corridor around the shrine with each mandap having a 'shikhar' or spire adorned with little bells on the top. Proceed journey to Udaipur. On arrival in Udaipur Check in the hotel. Overnight stay in the hotel.</div>					
										<p><b>Meals : </b> Breakfast & Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 7: Udaipur
									</p>
									<div class="data p10px">Breakfast at hotel followed by half day city tour visiting City Palace, museums and 300 year old Jagdish Temple. Later in the evening proceed for Evening Motor boat ride on the placid waters of Lake Pichola. Overnight stay at hotel.</div>					
										<p><b>Meals : </b> Breakfast & Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 8: Udaipur - Delhi & Departure
									</p>
									<div class="data p10px">After after breakfast transfer to Udaipur airport to take flight for Delhi. On Arrival in Delhi and take half day sight seeing tour of New Delhi including India Gate, a memorial raised in honour of the Indian soldiers martyred during the Afghan war; the Laxmi Narayan Temple, built by the Birlas, one of India's leading industrial families; Humayun's Tomb, lotus shaped Bhai's Temple, Qutub Minar, built by Qutub-ud-din Aibek of the Slave Dynasty. Later drive to International Airport to board the flight for your onward destinations.</div>					
										<p><b>Meals : </b> Breakfast</p>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
													<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Hotel</li>
																	</ul>
							<br />
													<!--DATA4 EMD--></div>
												<div class="ic bdr" id="data6"><!--DATA6 START-->
						<br />
						* 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. ~^#^~						<!--DATA6 EMD--></div>
											
					<!--MY TABS END--></div>
					";i:1;s:62:"Book Rajasthan Heritage Tour - 7 Nights / 8 Days Tour Packages";i:2;s:152:"book rajasthan heritage tour - 7 nights / 8 days tour packages, forts and palaces tour packages, new delhi, jaipur, jodhpur, udaipur, agra tour packages";i:3;s:205:"Book Rajasthan Heritage Tour - 7 Nights / 8 Days tour packages from Go My Journey Pvt Ltd - Get attractive 7 Nights / 8 Days Forts and Palaces  tour packages for  New Delhi, Jaipur, Jodhpur, Udaipur, Agra.";i:4;s:436:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Jaipur, Jodhpur, Udaipur, Agra"        
		                 },
		      "description": "",
		      "name": "Rajasthan Heritage Tour",
		      "telephone": "+91-9711877344"
		    }
		    </script>
			";i:5;N;}