a:6:{i:0;s:8726:"				<div class="h1"><h1>Manas, Nameri & Kaziranga Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.sriganpatitoursandholidays.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.sriganpatitoursandholidays.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Manas, Nameri & Kaziranga 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_2/30889/168499.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/30889/168499.jpg"  width="150" height="150"    alt="Manas, Nameri & Kaziranga Tour" title="Manas, Nameri & Kaziranga Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Duration :</b> 
						6 Nights / 7 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Guwahati, Sonitpur, Golaghat</p>
												<p><b>Price (Starting From) :</b> <span class="dif">On Request</span></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: Manas National Park
									</p>
									<div class="data p10px">Upon arrival at Guwahati airport / Railway station meet with our representative. After welcome arrival we will leave for our first wildlife destination in the state Manas National Park. Manas National Park is situated within the foothills of Himalaya in the north bank of the Brahmaputra River.<br />
Upon arrival in Manas transfer to the wildlife resort. Enjoy the vicinity around the resort with the amount of time. Overnight stay in Manas.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Manas National Park
									</p>
									<div class="data p10px">This morning we will start our day little early and will move for our first Jungle ride to the Manas National Park. The wildlife safari is the best medium to explore a wildlife sanctuary and view the wildlife from a very close. This one hour safari will take us to the dense and narrow paths to increasing the chances of animal sighting.<br />
Later we will return to the resort for fresh-n-up and breakfast. After breakfast we will be ready for our first vehicle safari to the national park. The vehicle safari to the national park will be for two to two and half hrs. Here we will be moving on the wild path of Manas National Park to explore the most stunning pristine wildlife habitat.<br />
Return back to the resort for lunch. After lunch we will again move on our wildlife jungle safari to explore the Brahmaputra valley with its semi-evergreen forest. The forest is very rich in species of all Indian wildlife. Here you will have a chance to view the only known home for the rare and endangered Assam Roofed Turtle, Hispid Hare, Golden Langur and Pygmy Hog. Later in the evening return to the resort. Dinner and overnight stay at resort.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Manas National Park - Nameri National Park
									</p>
									<div class="data p10px">Today we will leave for our next nature's pride Nameri National Park, situated within the foothills of eastern Himalayas. Upon reaching transfer to the Nature camp. Evening free at leisure or make a visit to the nearby Pygmy Hog Foundation and learn about the species. The Pygmy Hogs are one of the world's most endangered mammals. These Pygmy Hogs are kept in captive breeding in Guwahati and now they are kept in semi-natural conditions of Nameri before being set free into the park.<br />
Overnight stay in camp.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Nameri National Park
									</p>
									<div class="data p10px">This morning we will go on a fascinating river rafting on Jia Bhoroli River. For the same we will drive 25 kms from the resort towards the river upstream, from where we will enjoy the downstream rafting on the inflatable raft. Here we will have a chance to see a lot of migratory waterfowl and if you are so lucky then one can even spot the Royal Bengal Tiger and the Elephant on the banks of the river from the boat. The 13 km stretch of rafting will takes around three hours.<br />
After the river rafting return to the camp site for lunch. After lunch we will go on a nature trail along the reserve. Here we will be accompanied with the knowledgeable forest guides and armed forest guards. The forest treks are the best way to explore the Nameri National Park as it allows you to get very close to the wildlife life. Here once can spot the rare species of white-winged wood ducks and the great hornbills.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 5: Nameri National Park - Kaziranga
									</p>
									<div class="data p10px">On the fifth day of our Assam adventure, we will leave for the UNESCO world Heritage site and Rhino's country - Kaziranga National Park. Upon reaching Kaziranga transfer to the wildlife resort.<br />
After fresh-n-up one can go on a guided tour through the forest near your accommodation along the river bank. Also visit the tea garden and rubber plantation. Later return to the resort for overnight stay.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 6: Kaziranga
									</p>
									<div class="data p10px">Today we will get up a little early and will get ready for first forest safari. Our representative will take you to the riding point by jeeps. Here we will be moving through the tall grass while the morning mists slowly lift is an experience that one won't forget easily. The wildlife safari is best mean for viewing wildlife as the wild animals are not afraid themselves and possibly we can observe them from the very close.<br />
We will return to the resort for breakfast. After breakfast we will go on our first Jeep safari to the national park for wildlife viewing in the central zone. Later return to the resort for fresh-n-up and spent the time till lunch. After lunch we will go on our second jeep safari of the day, this time we will visit the Western zone of the national park. One can also spent some time at the Donga view point, situated in western zone. Later return to the resort for overnight stay.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 7: Departure
									</p>
									<div class="data p10px">After breakfast check out from the resort and leave for Guwahati. Upon arrival in Guwahati city we will transit to airport / railway station for onward connection.<br />
<br />
Tour and Services ends</div>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
													<p class="b mb5px dif">Inclusions :</p>
							<ul>
														</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:69:"Book Manas, Nameri & Kaziranga Tour - 6 Nights / 7 Days Tour Packages";i:2;s:148:"book manas, nameri & kaziranga tour - 6 nights / 7 days tour packages, wildlife and nature tour packages, guwahati, sonitpur, golaghat tour packages";i:3;s:194:"Sri Ganapati Tours & Holidays offers Manas, Nameri & Kaziranga Tour - 6 Nights / 7 Days tour package, budget Wildlife and Nature tour packages for Guwahati, Sonitpur, Golaghat at exciting price.";i:4;s:430:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Guwahati, Sonitpur, Golaghat"        
		                 },
		      "description": "",
		      "name": "Manas, Nameri & Kaziranga Tour",
		      "telephone": "+91-8974893345"
		    }
		    </script>
			";i:5;N;}