a:6:{i:0;s:14547:"				<div class="h1"><h1>Golden Triangle Tour with Khajuraho</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>Golden Triangle Tour with Khajuraho</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/3934.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/17434/3934.jpg"  width="150" height="150"    alt="Golden Triangle Tour with Khajuraho" title="Golden Triangle Tour with Khajuraho" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Tour Code :</b> GIJ-07-12/13</p>
												<p class="mb5px"><b>Duration :</b> 
						12 Nights / 13 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Jaipur, Agra, Jhansi, Varanasi, Khajuraho, Orchha, Fatehpur Sikri</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="Golden Triangle Tour with Khajuraho - 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="7053"/>
						</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 Greet at the Airport and transfer to Hotel. Overnight stay in Delhi.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Delhi Sight Seeing
									</p>
									<div class="data p10px">Morning after breakfast take full day sight seeing tour of New & Old Delhi including Qutab Minar, India Gate, Humayun Tomb and the Grand President's House, Red fort, Jama Mashjid, Mahatama Gandhi Memorial. Also visit Laxmi Narayan Temple popularly known as Birla Temple. Later drive back to Hotel after fresh up evening enjoy complimentary Dinner at Indian Family Restaurant and after dinner also enjoys Light & Sound show at Red Fort. Overnight stay in Delhi.</div>					
										<p><b>Meals : </b> Breakfast, Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Delhi - Jaipur (250Kms/05Hrs)
									</p>
									<div class="data p10px">Morning after breakfast drive to Jaipur. On arrival check in to Hotel. Evening optional visit of Chokhi Dhani Village for Dinner. Drive back to Hotel. Overnight stay in Jaipur.</div>					
										<p><b>Meals : </b> Breakfast, Dinner</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Jaipur Sight Seeing
									</p>
									<div class="data p10px">Morning tour of the impressive Amber Fort with Elephant Ride 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 honored 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. Night stay in Jaipur.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 5: Jaipur - Agra (250kms/05Hrs)
									</p>
									<div class="data p10px">Morning after breakfast drive to Agra enroute 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 Agra. Arrive Jaipur and transfer to Hotel. Evening at leisure. Night stay in Agra.</div>					
										<p><b>Meals : </b> Breakfast</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 6: Agra Sight Seeing
									</p>
									<div class="data p10px">Morning after breakfast 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. At the Diwan-I-Am (hall of public audience), a colonnaded hall of red-sandstone with a throne alcove of inlaid marble at the back, the Emperor heard public petitions. At the Diwan-I-Khas (hall of private audience) where marble pavilions with floral inlays lend an ethereal ambience, the Emperor sat on his gem-studded Peacock Throne and met foreign ambassadors and rulers of friendly kingdoms. Also visit the Tomb of Itmad-ud-Daullah built by Empress Noorjehan in memory of her father. Overnight stay in Agra.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 7: Agra - Jhansi - Orchha ( By Train )
									</p>
									<div class="data p10px">After an early breakfast in hotel & transfer to railway station to board the train to Jhansi, Arrive Jhansi, Meeting and assistance upon arrival and proceed to Orchha (18 kms) and check-in at Hotel. Afternoon sightseeing tour of Orchha, overlooked by the Modern era, this beautiful medieval town, was once the capital of Bundela Kings. Built along the banks of the river Betwa, flowing through a rugged country side, it still retains the captivating air of a bygone era. Amongst the various imposing edifices, of particular interest are the Jehangiri Mahal, built by Raja Bir Singh Deo to commemorate the visit of Moghul Emperor Jehangir, the Raj Mahal and the Laxmi Narayan Temple, both noted for their fine Frescoes and Mural paintings. Overnight at Hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 8: Orchha - Khajuraho (150Kms/3.5Hrs)
									</p>
									<div class="data p10px">Morning after breakfast drive to Khajuraho and upon arrival check-in at Hotel. Later Half day visit to Eastern Group of Temples. Include the Ghantai Temple, Vamana Temple dedicated to the "Vamana" or dwarf incarnation of Lord Vishnu and the Javari Temple. There are also three Jain Temples with beautiful carvings and non-erotic sculptures. Although these are Jain Temples, they also contain numerous Vaishnav deities. Overnight stay in Khajuraho.</div>					
										<p><b>Meals : </b> Breakfast</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 9: Khajuraho - Varanasi (By Flight)
									</p>
									<div class="data p10px">Morning after breakfast check out from the Hotel and take half day visit to Western Group of Temples built between 950 & 1050 AD by the mighty warrior kings of the Chandela dynasty, in a truly inspired burst of creativity. Temples are famous for the magnificent carvings depicting numerous sexual postures of the famous 'Kamasutra' ancient Indian work on sex. Only 22 temples survive of the 85 originally built. In fact, worship is still done today in the Matangeshwara Temple, continuing an unbroken 1000 year tradition. Afternoon drive to Khajuraho Airport to Catch the flight for Varanasi. Arrival Varanasi by our representative and Check in Hotel. Overnight stay in Varanasi.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 10: Varanasi
									</p>
									<div class="data p10px">Morning after breakfast take full day sight seeing tour of Varanasi including the Kashi Vishwanath Temple, Gyanvapi Mosque, Benaras Hindu University and other important monuments. In the evening witness aarti at the Ghat. Stay overnight at Varanasi.<br />
<br />
(Varanasi is the world's most ancient living city. Sunrise on the riverfront, as seen from a boat, can be spiritually uplifting sight. Crowded with temples, and its labyrinth of streets, the city attracts the maximum number of tourists. The religious capital of Hinduism, Varanasi is the carpet manufacturing place of India. It was previously known as Kashi - the city that illuminates. The present name is derived from the fact that the city is at the confluence of the rivers varuna and ASI).</div>					
										<p><b>Meals : </b> Breakfast</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 11: Varanasi - Delhi ( Overnight Train )
									</p>
									<div class="data p10px">Very early morning drive to Daswamedh Ghat and take a Boat Ride on the sacred river Ganges to see the cremation Ghats and witness the living traditions of one of the world's oldest and most important religions. (To start at 0500 hrs. for the best lifetime experience) For you to appreciate this remarkable city, we'll transfer you to the banks of the River Ganges before the sun rises. Board a boat with your guide and proceed to the middle of the river, where at sunrise the sight unfolds before you. Thousands of faithful come daily to the banks to bathe and pray while in the background, temples and palaces rise in tiers from the water's edge. Return for a walk through the cobblestone streets along the banks of "Ganga". As shops are opening, the place now becomes a beehive of activity as the faithful are coming and going. Return to hotel for a sumptuous breakfast and rest of the day free. Later in the day visit Sarnath - 5 miles out of Varanasi for a day excursion: One of the holiest Buddhist sites in the world, where Buddha preached his first Sermon in 590 BC. Witness the ruins of a once flourishing Buddhist monastery and then visit a fine Museum which houses an excellent collection of Buddhist art and sculptures found at the site. Evening transfer to Varanasi Railway station to catch the Train for Delhi. (Overnight at Train).</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 12: Arrival Delhi
									</p>
									<div class="data p10px">Morning Pickup from the Railway Station and transfer to Hotel. Day Free, Overnight stay in Delhi.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 13: Delhi Departure
									</p>
									<div class="data p10px">Morning after breakfast transfer 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 />
						Any Air / Train fare<br />
Meals other than specified<br />
Monuments Entrance fees / Camera fees<br />
Soft drinks / hard drinks / starters<br />
Medical and insurance of any kind<br />
Any expenses arising out of unforeseen circumstances like flight delay/cancellation/hike in fare, strike or any other natural calamities<br />
Expenses of personal nature like laundry bills / telephone bills etc<br />
Any Tips31-1001-11							<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Hotel</li>
																				<li>Transport</li>
																				<li>Transfers</li>
																	</ul>
							<br />
														<p class="b mb5px dif">Exclusions :</p> <ul><li>Any Air / Train fare</li><li>
Meals other than specified</li><li>
Monuments Entrance fees / Camera fees</li><li>
Soft drinks / hard drinks / starters</li><li>
Medical and insurance of any kind</li><li>
Any expenses arising out of unforeseen circumstances like flight delay/cancellation/hike in fare, strike or any other natural calamities</li><li>
Expenses of personal nature like laundry bills / telephone bills etc</li><li>
Any Tips</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:76:"Book Golden Triangle Tour with Khajuraho - 12 Nights / 13 Days Tour Packages";i:2;s:192:"book golden triangle tour with khajuraho - 12 nights / 13 days tour packages, heritage tour packages, new delhi, jaipur, agra, jhansi, varanasi, khajuraho, orchha, fatehpur sikri tour packages";i:3;s:247:"Book Golden Triangle Tour with Khajuraho - 12 Nights / 13 Days tour packages from Go My Journey Pvt Ltd - Get attractive 12 Nights / 13 Days Heritage  tour packages for  New Delhi, Jaipur, Agra, Jhansi, Varanasi, Khajuraho, Orchha, Fatehpur Sikri.";i:4;s:871:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Jaipur, Agra, Jhansi, Varanasi, Khajuraho, Orchha, Fatehpur Sikri"        
		                 },
		      "description": "Any Air / Train fare
Meals other than specified
Monuments Entrance fees / Camera fees
Soft drinks / hard drinks / starters
Medical and insurance of any kind
Any expenses arising out of unforeseen circumstances like flight delay/cancellation/hike in fare, strike or any other natural calamities
Expenses of personal nature like laundry bills / telephone bills etc
Any Tips31-1001-11",
		      "name": "Golden Triangle Tour with Khajuraho",
		      "telephone": "+91-9711877344"
		    }
		    </script>
			";i:5;N;}