a:6:{i:0;s:8126:"				<div class="h1"><h1>Patna-Bodh Gaya Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.yadavtravels.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.yadavtravels.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Patna-Bodh Gaya 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">
						1 Nights / 2 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Gaya, Nalanda, Patna, Rajgir</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.yadavtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Patna-Bodh Gaya 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="95928"/>
						</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_15/444380/162897.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/444380/162897.jpg"  width="150" height="150"    alt="Patna-Bodh Gaya Tour" title="Patna-Bodh Gaya Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Patna is the capital of Bihar. Patna has ancient elements written all over it. It is the largest town in Bihar and its history dates back to 3000 years. During ancient times, the city was famously known as Patliputra and it served capital of Magadha kingdom. <br />
Rajgir is a place of historic importance situated in the state of Bihar. It is in the district of Nalanda. Besides being a historical location, Rajgir stands as a religious place for both Buddhism and Jainism, as this region is said to be related to both Gautama Buddha and Mahavir. Rajgir was known for its royal importance during the earlier times. So, most of the sites attracting the tourists are either religious or historical places.<br />
Nalanda is mainly known for its university, though not in existence as of now. The Nalanda University was a flourishing center of higher learning. Other than the university which is in ruins, Nalanda has other tourist attractions that include Nalanda Museum, Buddhist Monasteries, and Nalanda Mahavihar.<br />
The Bodhi tree under which the Budha was enlightened about 2600 years back became a magnetic location as Bodhgaya. A niche of Gaya city became place of convergence for the Buddhists especially on the full moon night known as Buddha Purnima that falls in the month of Vaishakh(April-May).<br />
The history of Bodh Gaya is documented by many inscriptions and pilgrimage accounts. Foremost among these are the accounts of the Chinese pilgrims Fa Hien in the 5th century and Xuanzang in the 7th century. The area was at the heart of a Buddhist civilization for centuries, until it was conquered by Turk armies in the 13th century. <br />
<br />
3 Meal<br />
Transfer in the city by Cab/Bus<br />
One Mineral Water/Day<br />
Parking and Toll taxMeals & drinks other than specified in inclusions.<br />
Expenses of personal nature such as portages, tips, telephone calls, laundry expenses etc.<br />
All entrances, guide charges & camera fees.<br />
Insurance Cover.<br />
Any air/train fare.<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> Patna – Barabar – Kauva Dol – Bodhgaya
								</p>
								<p class="aj">After breakfast check out from hotel and drive to Patna. En-route visit Vishnupad Temple and Museum in Gaya Town. Afternoon reach Patna, on arrival drop off you at Airport or Railway Station for you are onwards journey to home.</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> Bodhgaya – Gaya – Patna (departure)
								</p>
								<p class="aj">After breakfast check out from hotel and drive to Patna. En-route visit Vishnupad Temple and Museum in Gaya Town. Afternoon reach Patna, on arrival drop off you at Airport or Railway Station for you are onwards journey to home.</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>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Meals & drinks other than specified in inclusions.</li><li>
Expenses of personal nature such as portages, tips, telephone calls, laundry expenses etc.</li><li>
All entrances, guide charges & camera fees.</li><li>
Insurance Cover.</li><li>
Any air/train fare.</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.yadavtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Patna-Bodh Gaya 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="95928"/>
						</form>
						</div>
						
						";i:1;s:59:"Book Patna-Bodh Gaya Tour - 1 Nights / 2 Days Tour Packages";i:2;s:127:"book patna-bodh gaya tour - 1 nights / 2 days tour packages, heritage tour packages, gaya, nalanda, patna, rajgir tour packages";i:3;s:202:"Book Patna-Bodh Gaya Tour - 1 Nights / 2 Days tour packages from Yadav Travels (A Unit of Yadavlink Pvt Ltd) - Get attractive 1 Nights / 2 Days Heritage  tour packages for  Gaya, Nalanda, Patna, Rajgir.";i:4;s:2363:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Gaya, Nalanda, Patna, Rajgir"        
		                 },
		      "description": "Patna is the capital of Bihar. Patna has ancient elements written all over it. It is the largest town in Bihar and its history dates back to 3000 years. During ancient times, the city was famously known as Patliputra and it served capital of Magadha kingdom. 
Rajgir is a place of historic importance situated in the state of Bihar. It is in the district of Nalanda. Besides being a historical location, Rajgir stands as a religious place for both Buddhism and Jainism, as this region is said to be related to both Gautama Buddha and Mahavir. Rajgir was known for its royal importance during the earlier times. So, most of the sites attracting the tourists are either religious or historical places.
Nalanda is mainly known for its university, though not in existence as of now. The Nalanda University was a flourishing center of higher learning. Other than the university which is in ruins, Nalanda has other tourist attractions that include Nalanda Museum, Buddhist Monasteries, and Nalanda Mahavihar.
The Bodhi tree under which the Budha was enlightened about 2600 years back became a magnetic location as Bodhgaya. A niche of Gaya city became place of convergence for the Buddhists especially on the full moon night known as Buddha Purnima that falls in the month of Vaishakh(April-May).
The history of Bodh Gaya is documented by many inscriptions and pilgrimage accounts. Foremost among these are the accounts of the Chinese pilgrims Fa Hien in the 5th century and Xuanzang in the 7th century. The area was at the heart of a Buddhist civilization for centuries, until it was conquered by Turk armies in the 13th century. 

3 Meal
Transfer in the city by Cab/Bus
One Mineral Water/Day
Parking and Toll taxMeals & drinks other than specified in inclusions.
Expenses of personal nature such as portages, tips, telephone calls, laundry expenses etc.
All entrances, guide charges & camera fees.
Insurance Cover.
Any air/train fare.",
		      "name": "Patna-Bodh Gaya Tour",
		      "telephone": "91-8292393528"
		    }
		    </script>
			";i:5;N;}