a:6:{i:0;s:15013:"				<div class="h1"><h1>8N/9D Kerala Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.saisaharatravels.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.saisaharatravels.com/packages.htm" title="Packages">Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>8N/9D Kerala 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">
						8 Nights / 9 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Kochi, Kovalam, Thekkady, Thiruvananthapuram, Alleppey, Ramanathapuram, Munnar</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.saisaharatravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="8N/9D Kerala 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="103399"/>
						</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_10/270877/172882.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/270877/172882.jpg"  width="150" height="150"    alt="8N/9D Kerala Tour" title="8N/9D Kerala Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					1 Night stay in Hotel in Cochin<br />
2 Night stay in Hotel in Munnar<br />
1 Night stay in Hotel in Thekkady<br />
1 Night stay in Hotel in Alleppey<br />
1 Night stay in Hotel in Kovalam<br />
1 Night stay in Hotel in Kanyakumari<br />
1 Night stay in Hotel in Rameshwaram<br />
Breakfast in Cochin, Munnar, Thekkady, Alleppey, Kovalam, Kanyakumari & Rameshwaram<br />
All transfers and sightseeing as per itinerary in an Private AC Sedan<br />
All toll taxes, parking fees and driver’s allowances<br />
All applicable hotel taxes<br />
All Government service taxes @ 5% on Land Package onlyAll personal expenses, optional tours and extra meals<br />
Vehicle service on leisure days for sightseeing not included in the itinerary<br />
Medical and travel insurance<br />
Anything not mentioned under ‘Inclusions’<br />
All personal expenses, optional tours and extra meals <br />
Vehicle service will be strictly as per itinerary<br />
Medical and travel insurance <br />
Items of personal nature like tips, laundry, telephone, beverages etc<br />
Entrance fee / Local Guide / at any place during the tour<br />
Meals not mentioned in the “Inclusions” section.<br />
Anything not mentioned in the package includes section.<br />
Additional sightseeing or usages of vehicle not mentioned in the itinerary<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> Arrival in Cochin (15/Oct/2017)
								</p>
								<p class="aj">On arrival will pick you up from Ernakulam Railway Station/Cochin Airport and drop you at hotel.On reaching check into the hotel and later visit for sightseeing of Marine Drive, Jewish Synagogue, Mettancherry Palace , St. Francis Church, Santa Cruz Basilica & in evening have chance to see Chinese Fishing Nets.Overnight stay in Cochin.</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> Cochin to Munnar (16/Oct/2017)
								</p>
								<p class="aj">Drive from Cochin and reach Munnar by afternoon. On the way visit Cheyyara waterfalls, Valara waterfalls, Attukadu waterfalls, Spice plantations etc.At reaching Check into the hotel and overnight stay at hotel in Munnar.</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 3:</b> Munnar Local Sightseeing (17/Oct/2017)
								</p>
								<p class="aj">Sightseeing tour of Nyamakadu Waterfalls, Mattupetty Dam, Rose Garden,Blossom Hydel Park, Anaimudy View (South India’s highest peak) and Eravikulam National Park (Rajmala), where one can see rare species of fauna such as the Mountain Goat.Overnight stay in Munnar</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 4:</b> Munnar - Thekkady(90 Km/2-3 Hrs) (18/Oct/2017)
								</p>
								<p class="aj">Drive from Munnar to Thekkady. Sightseeing destinations include Periyar wild life sanctuary where you can see wild elephant, bear, deer, the great Indian tiger and more, mullaperiyar dam (you can watch all these only while doing boating in the Lake)You can watch martial arts, kathakali, elephant ride, elephant bath, tribal dance, musical fountain and can go for ayurveda massages (all are optional activities with separate entrance fees). Overnight stay in Hotel in Thekkady.</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 5:</b> Drive from Munnar to Thekkady. Sightseeing destinations include Periyar wild life sanctuary where yo
								</p>
								<p class="aj">Drive from Thekkady to Alleppey. Alappuzha, also known as Alleppey is the sixth largest city in Kerala. Alappuzha is considered to be the oldest planned city in this region and the lighthouse built on the coast of the city is the first of its kind. A city with picturesque canals, backwaters, beaches, and lagoons, it was described as the one of the places known as the "Venice of the East" by Lord Curzon. Hence, it is best known as the "Venetian Capital" of Kerala for the Vast backwaters present here. The Backwaters of Alappuzha are the most popular tourist attraction in Kerala. A houseboat cruise in these backwaters is a delightful . Later have sightseeing tour of Ambalapuzzha Shree Krishna Temple , Krishnapuram Palace  and Alleppey Beach. Overnight stay in Hotel in Alleppey.</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 6:</b> Alleppey - Trivandrum - Kovalam(165 Km/4-5 Hrs) (20/Oct/2017)
								</p>
								<p class="aj">After breakfast check out of the houseboat and proceed to Kovalam.Enroute visit  Padmanabhaswamy Temple of Trivandrum.At reaching check into the hotel . Evening visit to Samudra beach,Light House Beach & Kovalam Beach..After sightseeing return back to hotel and overnight stay in hotel in Kovalam.</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 7:</b> Kovalam - Kanyakumari (90KM/2 Hrs) (21/Oct/2017)
								</p>
								<p class="aj">After breakfast check out of the hotel and proceed to Kanyakumari. At reaching check into the hotel and than have sightseeing of the beautiful city of Kanyakumari covering the Swami Vivekanand Memorial Rock, Vattakottai Fort,Thiruvalluvar Statue ,Padmanabhapuram Palace & Gandhi Mandapam . After sightseeing return back to hotel and overnight stay at hotel in Kanyakumari.</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 8:</b> :Kanyakumari- Rameshwaram(325 KM/5-6 Hrs) (22/Oct/2017
								</p>
								<p class="aj">After breakfast check out from the hotel and proceed to Rameshwaram.At reaching check into the hotel and later have sightseeing of Rameshwaram including Ramanathaswamy Temple, Agni Theertam, Satchi Hanuman Temple, Floating Stone, and Pamban Bridge.After sightseeing return back to hotel and overnight stay in hotel in Rameshwaram.</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 9:</b> Rameshwaram - Madurai(170 Km/3-4 Hrs) (23/Oct/2017)
								</p>
								<p class="aj">After breakfast check out from the hotel and proceed to Madurai and drop at Madurai Railway station.</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>
																		<li>Sightseeing</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>All personal expenses, optional tours and extra meals</li><li>
Vehicle service on leisure days for sightseeing not included in the itinerary</li><li>
Medical and travel insurance</li><li>
Anything not mentioned under ‘Inclusions’</li><li>
All personal expenses, optional tours and extra meals </li><li>
Vehicle service will be strictly as per itinerary</li><li>
Medical and travel insurance </li><li>
Items of personal nature like tips, laundry, telephone, beverages etc</li><li>
Entrance fee / Local Guide / at any place during the tour</li><li>
Meals not mentioned in the “Inclusions” section.</li><li>
Anything not mentioned in the package includes section.</li><li>
Additional sightseeing or usages of vehicle not mentioned in the itinerary</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<p><strong>Please Note :</strong>

<ul>
	<li>Early check in would be subject to availability and at sole discretion of hotel</li>
	<li>All booking vouchers and tickets will be provided 3 days before departure</li>
</ul>						
    	<p class="h dif xlarge b mb5px">Hotels in this package:</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Destination</td>
				<td class="headHr p5px b">No. of Nights</td>
				<td class="headHr p5px b">Option 01:</td>
				<td class="headHr p5px b">Option 02:</td>
			</tr>
			<tr>
				<td class="data p5px">COCHIN</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Diwans court/Similar</td>
				<td class="data p5px">Diwans court/Similar</td>
			</tr>
			<tr>
				<td class="data p5px">MUNNAR</td>
				<td class="data p5px">2</td>
				<td class="data p5px">Bella vista resort/Similar</td>
				<td class="data p5px">Bella vista resort/Similar</td>
			</tr>
			<tr>
				<td class="data p5px">THEKKADY</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Sesone thekkadey /Similar</td>
				<td class="data p5px">Sesone thekkadey /Similar</td>
			</tr>
			<tr>
				<td class="data p5px">ALLEPPEY</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Deluxe AC House Boat</td>
				<td class="data p5px">Shanthitheeram Lakeside Resort /Similar</td>
			</tr>
			<tr>
				<td class="data p5px">KOVALAM</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Hawah Beach Resort/Similar</td>
				<td class="data p5px">Hawah Beach Resort/Similar</td>
			</tr>
			<tr>
				<td class="data p5px">KANYAKUMARI</td>
				<td class="data p5px">1</td>
				<td class="data p5px">The Gopinivas Grand/Similar</td>
				<td class="data p5px">The Gopinivas Grand/Similar</td>
			</tr>
			<tr>
				<td class="data p5px">RAMESHWARAM</td>
				<td class="data p5px">1</td>
				<td class="data p5px">Hotel SS Grand/Similar</td>
				<td class="data p5px">Hotel SS Grand/Similar</td>
			</tr>
		</table></div><br>						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.saisaharatravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="8N/9D Kerala 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="103399"/>
						</form>
						</div>
						
						";i:1;s:56:"Book 8N/9D Kerala Tour - 8 Nights / 9 Days Tour Packages";i:2;s:178:"book 8n/9d kerala tour - 8 nights / 9 days tour packages, hill station tour packages, kochi, kovalam, thekkady, thiruvananthapuram, alleppey, ramanathapuram, munnar tour packages";i:3;s:236:"Book 8N/9D Kerala Tour - 8 Nights / 9 Days tour packages from Sai Sahara Tours & Travels - Get attractive 8 Nights / 9 Days Hill Station  tour packages for  Kochi, Kovalam, Thekkady, Thiruvananthapuram, Alleppey, Ramanathapuram, Munnar.";i:4;s:1671:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kochi, Kovalam, Thekkady, Thiruvananthapuram, Alleppey, Ramanathapuram, Munnar"        
		                 },
		      "description": "1 Night stay in Hotel in Cochin
2 Night stay in Hotel in Munnar
1 Night stay in Hotel in Thekkady
1 Night stay in Hotel in Alleppey
1 Night stay in Hotel in Kovalam
1 Night stay in Hotel in Kanyakumari
1 Night stay in Hotel in Rameshwaram
Breakfast in Cochin, Munnar, Thekkady, Alleppey, Kovalam, Kanyakumari & Rameshwaram
All transfers and sightseeing as per itinerary in an Private AC Sedan
All toll taxes, parking fees and driver’s allowances
All applicable hotel taxes
All Government service taxes @ 5% on Land Package onlyAll personal expenses, optional tours and extra meals
Vehicle service on leisure days for sightseeing not included in the itinerary
Medical and travel insurance
Anything not mentioned under ‘Inclusions’
All personal expenses, optional tours and extra meals 
Vehicle service will be strictly as per itinerary
Medical and travel insurance 
Items of personal nature like tips, laundry, telephone, beverages etc
Entrance fee / Local Guide / at any place during the tour
Meals not mentioned in the “Inclusions” section.
Anything not mentioned in the package includes section.
Additional sightseeing or usages of vehicle not mentioned in the itinerary",
		      "name": "8N/9D Kerala Tour",
		      "telephone": "+91-9623788906"
		    }
		    </script>
			";i:5;N;}