a:6:{i:0;s:16727:"				<div class="h1"><h1>Stop Over South India 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>Stop Over South India 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, Trichy, 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="Stop Over South India 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="106420"/>
						</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/176596.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/7828/176596.jpg"  width="150" height="150"    alt="Stop Over South India Tour" title="Stop Over South India 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 />
he Nehru Trophy Boat Race, the most colourful water sport in Kerala, is conducted at PUNNAMADA LAKE in Alleppey on the second saturday 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="Stop Over South India 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="106420"/>
						</form>
						</div>
						
						";i:1;s:70:"Book Stop Over South India Tour - 19 Nights / 20 Days Tour Packages";i:2;s:223:"book stop over south india tour - 19 nights / 20 days tour packages, hill station tour packages, idukki, kochi, thiruvananthapuram, alleppey, chennai, madurai, thanjavur, trichy, mumbai, pondicherry, munnar tour packages";i:3;s:252:"Journey Asia offers Stop Over South India Tour - 19 Nights / 20 Days tour package, budget Hill Station tour packages for Idukki, Kochi, Thiruvananthapuram, Alleppey, Chennai, Madurai, Thanjavur, Trichy, Mumbai, Pondicherry, Munnar at exciting price.";i:4;s:510:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Idukki, Kochi, Thiruvananthapuram, Alleppey, Chennai, Madurai, Thanjavur, Trichy, Mumbai, Pondicherry, Munnar"        
		                 },
		      "description": "",
		      "name": "Stop Over South India Tour",
		      "telephone": "+91-9910078863"
		    }
		    </script>
			";i:5;N;}