a:6:{i:0;s:16750:"				<div class="h1"><h1>South India Boat Festival Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.journeyasia.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.journeyasia.co.in/packages.htm" title="Packages">Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>South India Boat Festival 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">
						19 Nights / 20 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Idukki, Kochi, Thiruvananthapuram, Alleppey, Chennai, Madurai, Thanjavur, Tiruchirappalli, Mumbai, Pondicherry, 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.journeyasia.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="South India Boat Festival 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="106419"/>
						</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_1/7828/176595.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/7828/176595.jpg"  width="150" height="150"    alt="South India Boat Festival Tour" title="South India Boat Festival Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<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> Abroad - Chennai
								</p>
								<p class="aj">Arrive Chennai International airport. On arrival, the guest will be met by our representative and check in to the hotel. Overnight at hotel.</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> Chennai 
								</p>
								<p class="aj">Madras - the sprawling and gracious city on the "Bay of Bengal" is the fourth largest city in India. Visit the Fort St. George once a stronghold of the British, San Thome Cathedral, Marina Beach and the beautiful Mylapore temple. Overnight at hotel</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> Chennai - Pondicherry
								</p>
								<p class="aj">After breakfast drive to Pondicherry (162 km), enroute visit Kancheepuram and Mahabalipuram.<br />
Continue drive to Pondicherry. Upon arrival in Pondicherry - check into the hotel. Overnight at hotel</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> Pondicherry 
								</p>
								<p class="aj">Afternoon tour of Pondicherry - visiting Botanical garden, Eglise De Sacre Coeur De Jesus and Sri Aurobindo Ashram. Later visit township of Auroville or the city of Dawn. Designed by a French architect Roger Arger, it is an entirely new concept in education and urban living.<br />
Overnight at hotel</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> Pondicherry - Tanjore
								</p>
								<p class="aj">After breakfast drive to Tanjore (177 kms). Upon arrival in Tanjore - check into the hotel. Overnight at hotel</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> Tanjore - Trichy - Madurai 
								</p>
								<p class="aj">After breakfast drive to Madurai (178 kms) enroute visit Trichy. Thereafter continue drive to Madurai. Upon arrival in Madurai - check into the hotel. Evening visit of the Meenakshi temple. Overnight at hotel</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> Madurai 
								</p>
								<p class="aj">Morning, visit the Meenakshi temple. Also visit the palace of Tirumala Nayak. Afternoon at leisure. Overnight at hotel</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>  Madurai - Periyar
								</p>
								<p class="aj">Morning drive to Periyar (177 kms). Upon arrival at Periyar - check into hotel.<br />
Afternoon boatcruise on the Lake of the famous Periyar wildlife sanctuary to see wild life. Overnight at hotel</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> Periyar - Varkala 
								</p>
								<p class="aj">Morning drive to Varkala (220 km). Upon arrival in Varkala - check into the hotel.<br />
Afternoon visit the Portugese church of Anjengo dated to the time of occupation, which maybe the Elanchoros of the geography of Ptomempee (2nd century A.D.). Also visit the English Fort constructed in 1695 A.D. by the English 'East India Company', which play an important role in the war of Mysore in 18th century. Overnight at hotel</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 10:</b> Varkala - Alappuzha 
								</p>
								<p class="aj">Morning drive to to be at Alappuzha in time to witness the famous boat race. Upon arrival to Alappuzha - check into the hotel<br />
The Snake Boat Races of Kerala is a magnificent fiestas that brings alive the tranquil backwaters. Snake boat races are held in connection with Onam, the harvest festival in August/September. Scores of long snake boats and other smaller crafts participate in these events. It is the largest team sport in the world, a sport that signifies the excellent team spirit, integration and amity of the people of this backwater country.<br />
The snake boat races are preceded by colourful water parades. Overnight at hotel</p>
								</td>
								</tr>
								</table>					
								</div><div id="show_more_content" style="display:none;">
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 11:</b> Alappuzha 
									</p>
									<p class="aj">Full day at The Snake Boat Race festival "Payippad Boat Race Payippad near Harippad Alappuzha District ".<br />
The Nehru Trophy Boat Race, the most colourful water sport in Kerala, is conducted at PUNNAMADA LAKE in Alleppey on the second aturday of every August/September each year.<br />
This trophy was named as NEHRU TROPHY was awarded to the winners of the boat race which is a unique feature of community life and is gift to the people of Alleppey. Overnight at hotel.</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 12:</b> Alappuzha 
									</p>
									<p class="aj">Full day sightseeing tour around Alappuzha area. Overnight at hotel.</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 13:</b> Alappuzha 
									</p>
									<p class="aj">Aranmula Boat Race Aranmula, Pathanamthitta. Overnight at hotel</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 14:</b> Alappuzha - Munnar 
									</p>
									<p class="aj">Morning drive to Munnar (180 km). Upon arrival in Munnar- check in to the hotel. Overnight at hotel</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 15:</b> : Munnar 
									</p>
									<p class="aj">Morning, visit Ervikulam National Park (16 kms) - it is the home of the endangered Nigiri Tahr (a type of mountain goat) that roams on a stretch of grassland or is seen climbing the pinnacles of the undulating hills.<br />
Rest of the day at leisure. Overnight at hotel</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 16:</b> Munnar - Cochin 
									</p>
									<p class="aj">Morning drive to Cochin (160 km). Upon arrival in Cochin - check into hotel<br />
Evening witness the Kathakali dance performance - Kathakali is a unique dance which has a 2000 year old history with more than 100 different 'mudras' or gesture depicting deities, demons, heroes, heroines and kings - each based on episodes from the Mahabharata and Ramayana, the two epic Indian myths. Overnight at hotel</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 17:</b> Cochin 
									</p>
									<p class="aj">Morning tour of Cochin or "Kochi"- the palm green, commercial captial of Kerala is known as the "Queen of the Arabian Sea". Visit the Dutch Palace, the Jewish Synagogue, the Church of St. Francis, the Bolghatty Palace & the famous Chinese fishing nets. Afternoon free for a stroll in Jew town. Overnight at hotel</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 18:</b>  Cochin - Mumbai 
									</p>
									<p class="aj">Late morning transfer from hotel to the railway station for train to Mumbai.<br />
On arrival in Mumbai, the guests will be met by our representative and transferred to the hotel Rest of the day at leisure. Overnight at hotel</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 19:</b> Mumbai 
									</p>
									<p class="aj">Morning, one hour boat ride across Mumbai Harbour brings you to the lush green Elephanta Island. Here, visit some of the huge and intricately carved Elephanta Caves that date back to the 8th century.<br />
Afternoon, City tour of Mumbai - the great port city with its Victorian Gothic buildings from the British Raj Era mingling with the modern. The tour includes Gateway of India overlooking the Harbour, the Towers of Silence, Marine Drive and the Dhobi Ghat, the unique and colourful outdoor 'laundry'. Also visit Mani Bhawan, a small museum dedicated to the life and works of Mahatma Gandhi, and the bustling Crawford Market.<br />
Later in late evening transfer to the International airport for your flight back 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 20:</b> Abroad - Mumbai 
									</p>
									<p class="aj">Depart : Mumbai</p>
									</td>	
									</tr>
									</table>				
									</div>					
							</div>							<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
													<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">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.journeyasia.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="South India Boat Festival 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="106419"/>
						</form>
						</div>
						
						";i:1;s:73:"Book South India Boat Festival Tour - 19 Nights / 20 Days Tour Packages";i:2;s:235:"book south india boat festival tour - 19 nights / 20 days tour packages, hill station tour packages, idukki, kochi, thiruvananthapuram, alleppey, chennai, madurai, thanjavur, tiruchirappalli, mumbai, pondicherry, munnar tour packages";i:3;s:264:"Journey Asia offers South India Boat Festival Tour - 19 Nights / 20 Days tour package, budget Hill Station tour packages for Idukki, Kochi, Thiruvananthapuram, Alleppey, Chennai, Madurai, Thanjavur, Tiruchirappalli, Mumbai, Pondicherry, Munnar at exciting price.";i:4;s:522:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Idukki, Kochi, Thiruvananthapuram, Alleppey, Chennai, Madurai, Thanjavur, Tiruchirappalli, Mumbai, Pondicherry, Munnar"        
		                 },
		      "description": "",
		      "name": "South India Boat Festival Tour",
		      "telephone": "+91-9910303694"
		    }
		    </script>
			";i:5;N;}