a:6:{i:0;s:6767:"				<div class="h1"><h1>Day Tours Bharatpur</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>Day Tours Bharatpur</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/125055.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/17434/125055.jpg"  width="150" height="150"    alt="Day Tours Bharatpur" title="Day Tours Bharatpur" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Tour Code :</b> GMJ-107</p>
												<p class="mb5px"><b>Duration :</b> 
						1 Day 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Bharatpur, Pune</p>
												<p><b>Price (Starting From) :</b>						
						USD 155 Per Person						</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="Day Tours Bharatpur - 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="68724"/>
						</form>
						</p>
											</td>
					</tr>
					</table>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div>
											<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: Delhi - Bharatpur - Delhi
									</p>
									<div class="data p10px">Tour Timing : 0600 Hrs to 2000 Hrs<br />
<br />
Morning 6 Am pickup from your palace and drive to Bharatpur : <br />
Bharatpur Known as the Bird Paradise and the eastern gateway to Rajasthan, Bharatpur is situated 50 km west of Agra. It was the capital of the erstwhile princely state of Bharatpur. Since it falls within the Golden Triangle comprising Delhi, Jaipur and Agra, Bharatpur can be easily accessed by tourists. It shares its borders with the Gurgaon district of Haryana in the north and the Mathura and Agra districts of Uttar Pradesh in the east. Bharatpur is named after Bharat, the second brother of Lord Ram.<br />
<br />
Founded by Suraj Mal in 1733, Bharatpur was carved out of the region formerly known as Mewat and was the only kingdom ruled by a dynasty of non-Rajputs in Rajasthan. Raja Suraj Mal had used the enormous wealth that he acquired during his reign and built numerous forts and palaces across the kingdom. He constructed the impregnable Lohagarh fort in the early 18th century along with two towers within the ramparts, the Jawahar Burj and Fateh Burj.<br />
<br />
Another famous attraction of Bharatpur is the Deeg Palace. A strong and massive fortress, it was the summer resort of the rulers of Bharatpur and was built by Badan Singh. It is now known for its famous water palaces, gardens and fountains.<br />
<br />
However, tourists don’t flock here just for the historical buildings and its regal past. Bharatpur is home to the Keoladeo Ghana National Park, one of the most important avian sanctuaries in India. A former hunting ground for the royal family and the visiting British, the park is known for the flocks of Siberian Cranes that migrate here during the winter months.<br />
<br />
Early in the 18th century, farmers of Bharatpur rose in revolt against the terror of the Mughals. The Jats came under the leadership of Badan Singh along with his uncle Churaman and defeated the Mughals. After the victory, Badan Singh was recognized and conferred the title Raja in 1724. In 1733, Raja Badan Singh’s adopted son, Suraj Mal captured the fort of Bharatpur and laid the foundation of Bharatpur city. Maharaja Suraj Mal displayed immense bravery and made an army of fierce Jat peasants. Suraj Mal also erected many palaces and forts. He was later succeeded by his son Jawahar Singh.<br />
<br />
The British made peace with the Jats by signing an agreement with them in 1818. The state acceded unto the dominion of India in 1947. It was merged with three nearby princely states to form the ‘Matsya Union’, which in turn was merged with other adjoining territories to create the present-day state of Rajasthan.<br />
Evening drive back to Delhi and transfer to your onward destinations.<br />
<br />
Tour End:</div>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
						Monument Entrance Fees06-0931-03							<p class="b mb5px dif">Inclusions :</p>
							<ul>
														</ul>
							<br />
														<p class="b mb5px dif">Exclusions :</p> <ul><li>Monument Entrance Fees</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:47:"Book Day Tours Bharatpur - 1 Days Tour Packages";i:2;s:113:"book day tours bharatpur - 1 days tour packages, heritage tour packages, new delhi, bharatpur, pune tour packages";i:3;s:151:"Go My Journey Pvt Ltd offers Day Tours Bharatpur - 1 Days tour package, budget Heritage tour packages for New Delhi, Bharatpur, Pune at exciting price.";i:4;s:449:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Bharatpur, Pune"        
		                 },
		      "description": "Monument Entrance Fees06-0931-03",
		      "name": "Day Tours Bharatpur",
		      "telephone": "+91-9711877344"
		    }
		    </script>
			";i:5;N;}