a:6:{i:0;s:13480:"				<div class="h1"><h1>Kumaoni Delight Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.india-travelguide.net/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.india-travelguide.net/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Kumaoni Delight Package</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">Tour Code </td>
						<td class="p5px pl0px vat">UK05-NKC-001</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Nainital, Bageshwar, Ranikhet, Corbett</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 class="b p5px dif w125px vat">Special Offer </td>
						<td class="p5px pl0px dif vat">Enjoy Season Discounts during winter season</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.india-travelguide.net/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Kumaoni Delight Package - 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="103187"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<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/8021/172601.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172601.jpg"  width="150" height="150"    alt="Boating - Nainital" title="Boating - Nainital" /></a></p></div></li>
																		<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/8021/172600.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172600.jpg"  width="150" height="150"    alt="Nainital at night" title="Nainital at night" /></a></p></div></li>
																		<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/8021/172602.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172602.jpg"  width="150" height="150"    alt="Bhowali Fruit Market" title="Bhowali Fruit Market" /></a></p></div></li>
																		<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/8021/172603.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172603.jpg"  width="150" height="150"    alt="Baijnath Temples - Kausani" title="Baijnath Temples - Kausani" /></a></p></div></li>
																		<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/8021/172604.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172604.jpg"  width="150" height="150"    alt="Jeep Safari - Corbett National Park" title="Jeep Safari - Corbett National Park" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Day 1: Delhi - Nainital<br />
Day 2: Nainital Sightseeing<br />
Day 3: Nainital - Kausani<br />
Day 4: Kausani - Ranikhet - Corbett<br />
Day 5: Corbett<br />
Day 6: Corbett - DelhiEnjoy Season Discounts during winter season<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> Delhi - Nainital
								</p>
								<p class="aj">Arrive Delhi. Assistance upon arrival. Board your waiting vehicle to drive to Nainital<br />
Upon arrival, check in at the hotel. Evening at leisure (Time permitting, enjoy an evening walk on the Mall Road along Naini Lake)<br />
Overnight at the hotel</p>					
									<p><b>Meals : </b> Dinner</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_1/8021/172600.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172600.jpg"  width="150" height="150"    alt="Nainital at night" title="Nainital at night" /></a></p></div></li>
									</ul>
									</div>
									</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> Nainital
								</p>
								<p class="aj">After breakfast, enjoy full day sightseeing of Nainital covering Naini Lake, Naini Temple, Tibetan Market, Trolley Ride, Zoo, Bara Patthar and Hanumangarhi<br />
Overnight at the hotel</p>					
									<p><b>Meals : </b> Breakfast & dinner</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_1/8021/172601.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172601.jpg"  width="150" height="150"    alt="Boating - Nainital" title="Boating - Nainital" /></a></p></div></li>
									</ul>
									</div>
									</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 3:</b> Nainital - Kausani
								</p>
								<p class="aj">After breakfast, drive to Kausani, enroute visiting Bhimtal, Sattal, Naukuchiatal, Bhowali Fruit Market and Kainchi Dham<br />
On arrival, check in at the hotel<br />
Evening at leisure<br />
Overnight at the hotel</p>					
									<p><b>Meals : </b> Breakfast & dinner</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_1/8021/172602.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172602.jpg"  width="150" height="150"    alt="Bhowali Fruit Market" title="Bhowali Fruit Market" /></a></p></div></li>
									</ul>
									</div>
									</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 4:</b> Kausani - Corbett
								</p>
								<p class="aj">Wake up early morning to witness the sunrise<br />
After breakfast, enjoy sightseeing of Kausani covering Anasakti Ashram, View Point, Tea Factory and Baijnath Temples<br />
By afternoon, drive to Corbett National Park, en route visiting Ranikhet<br />
On arrival in Corbett, check in at the hotel.<br />
Overnight at the hotel</p>					
									<p><b>Meals : </b> Breakfast & dinner</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_1/8021/172603.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172603.jpg"  width="150" height="150"    alt="Baijnath Temples - Kausani" title="Baijnath Temples - Kausani" /></a></p></div></li>
									</ul>
									</div>
									</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 5:</b> Corbett
								</p>
								<p class="aj">Early morning safari in the national park<br />
Return to the hotel for breakfast. Morning will be at leisure<br />
After lunch, enjoy local tour of Corbett covering Dhangarhi Museum, Girija Temple and Adventure Activities<br />
Return to the hotel by evening<br />
Overnight at the hotel</p>					
									<p><b>Meals : </b> Breakfast, lunch & dinner</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_1/8021/172604.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/8021/172604.jpg"  width="150" height="150"    alt="Jeep Safari - Corbett National Park" title="Jeep Safari - Corbett National Park" /></a></p></div></li>
									</ul>
									</div>
									</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 6:</b> Corbett - Delhi
								</p>
								<p class="aj">After breakfast, morning at leisure.<br />
After lunch, drive to Delhi to connect onward journey</p>					
									<p><b>Meals : </b> Breakfast & lunch</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>4 Star Hotel</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.india-travelguide.net/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Kumaoni Delight Package - 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="103187"/>
						</form>
						</div>
						
						";i:1;s:62:"Book Kumaoni Delight Package - 5 Nights / 6 Days Tour Packages";i:2;s:138:"book kumaoni delight package - 5 nights / 6 days tour packages, valley tour packages, nainital, bageshwar, ranikhet, corbett tour packages";i:3;s:198:"Book Kumaoni Delight Package - 5 Nights / 6 Days tour packages from Lawania Adventures Pvt. Ltd. - Get attractive 5 Nights / 6 Days Valley  tour packages for  Nainital, Bageshwar, Ranikhet, Corbett.";i:4;s:632:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Nainital, Bageshwar, Ranikhet, Corbett"        
		                 },
		      "description": "Day 1: Delhi - Nainital
Day 2: Nainital Sightseeing
Day 3: Nainital - Kausani
Day 4: Kausani - Ranikhet - Corbett
Day 5: Corbett
Day 6: Corbett - DelhiEnjoy Season Discounts during winter season",
		      "name": "Kumaoni Delight Package",
		      "telephone": "+91-9810039303"
		    }
		    </script>
			";i:5;N;}