a:6:{i:0;s:13872:"				<div class="h1"><h1>Spa Ayurveda Tours</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>Spa Ayurveda Tours</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">
						11 Nights / 12 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Kochi, Periyar, Mumbai</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="Spa Ayurveda Tours - 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="107863"/>
						</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/178760.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/7828/178760.jpg"  width="150" height="150"    alt="Spa Ayurveda Tours" title="Spa Ayurveda Tours" /></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> Departure from Home
								</p>
								<p class="aj">Departure from home country.</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> Mumbai
								</p>
								<p class="aj">Arrive Mumbai. Transfer to 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> Mumbai - Cochin - Periyar
								</p>
								<p class="aj">Transfer to airport to board flight for Cochin. Arrive Cochin and drive directly to Periyar which lies in the shade of Cardamom Hills and is a beautiful area of tranquil winding roads, tea gardens, rubber estates and spice plantations. Check-in at the hotel. If you are up to it, you can visit the resident Vaidya ( Ayurveda Doctor ) for consultation. You can also do it the following day.</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> Periyar
								</p>
								<p class="aj">Ayurveda Therapy at Periyar. Seven days have now been set aside for the Ayurveda Therapy. The resident Doctor after consultation, plans your programme and will also suggest your diet and the therapy commences in right earnest. Please remember that during this period you should not exert yourself and for best result no alcohol, no tobacco and strict vegetarian diet. The therapy involves various herbal massages, steam baths and yoga. If you follow all the directions of the Vaidya, we can assure that you will come out totally relaxed and a great feeling of wellness. Remember to bring some of your favourite books to catch up on all the reading you may have missed.</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> Periyar
								</p>
								<p class="aj">Ayurveda Therapy at Periyar. Seven days have now been set aside for the Ayurveda Therapy. The resident Doctor after consultation, plans your programme and will also suggest your diet and the therapy commences in right earnest. Please remember that during this period you should not exert yourself and for best result no alcohol, no tobacco and strict vegetarian diet. The therapy involves various herbal massages, steam baths and yoga. If you follow all the directions of the Vaidya, we can assure that you will come out totally relaxed and a great feeling of wellness. Remember to bring some of your favourite books to catch up on all the reading you may have missed.</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> Periyar
								</p>
								<p class="aj">Ayurveda Therapy at Periyar. Seven days have now been set aside for the Ayurveda Therapy. The resident Doctor after consultation, plans your programme and will also suggest your diet and the therapy commences in right earnest. Please remember that during this period you should not exert yourself and for best result no alcohol, no tobacco and strict vegetarian diet. The therapy involves various herbal massages, steam baths and yoga. If you follow all the directions of the Vaidya, we can assure that you will come out totally relaxed and a great feeling of wellness. Remember to bring some of your favourite books to catch up on all the reading you may have missed.</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> Periyar
								</p>
								<p class="aj">Ayurveda Therapy at Periyar. Seven days have now been set aside for the Ayurveda Therapy. The resident Doctor after consultation, plans your programme and will also suggest your diet and the therapy commences in right earnest. Please remember that during this period you should not exert yourself and for best result no alcohol, no tobacco and strict vegetarian diet. The therapy involves various herbal massages, steam baths and yoga. If you follow all the directions of the Vaidya, we can assure that you will come out totally relaxed and a great feeling of wellness. Remember to bring some of your favourite books to catch up on all the reading you may have missed.</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> Periyar
								</p>
								<p class="aj">Ayurveda Therapy at Periyar. Seven days have now been set aside for the Ayurveda Therapy. The resident Doctor after consultation, plans your programme and will also suggest your diet and the therapy commences in right earnest. Please remember that during this period you should not exert yourself and for best result no alcohol, no tobacco and strict vegetarian diet. The therapy involves various herbal massages, steam baths and yoga. If you follow all the directions of the Vaidya, we can assure that you will come out totally relaxed and a great feeling of wellness. Remember to bring some of your favourite books to catch up on all the reading you may have missed.</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
								</p>
								<p class="aj">Ayurveda Therapy at Periyar. Seven days have now been set aside for the Ayurveda Therapy. The resident Doctor after consultation, plans your programme and will also suggest your diet and the therapy commences in right earnest. Please remember that during this period you should not exert yourself and for best result no alcohol, no tobacco and strict vegetarian diet. The therapy involves various herbal massages, steam baths and yoga. If you follow all the directions of the Vaidya, we can assure that you will come out totally relaxed and a great feeling of wellness. Remember to bring some of your favourite books to catch up on all the reading you may have missed.</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> Periyar
								</p>
								<p class="aj">The Rejuvenation Therapy is over, but it is best to relax and allow your body to re-adjust after one week of message.</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> Periyar - Cochin
									</p>
									<p class="aj">Your last day at Periyar, perhaps you could do a boat safari in lake Periyar and try to catch a wild elephant. After lunch drive to cochin. Check-in 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> Cochin
									</p>
									<p class="aj">Morning short tour of Cochin. Cochin is the natural harbour created by the famed underwater Malabar mud-banks whose quality ensures that the rougher the seas are outside the calmer the waters are within the Harbour. Vasco-de-Gama placed it on the world map. It has a Jewish Synagogue, Portuguese churches, mosques & Hindu temples. Watch the Chinese Fishing Nets. Later drive to airport to board flight for onward journey.<br />
Afer breakfast transfer to Cochin airport in time to connect flight for onward destination.</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>
															</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="Spa Ayurveda Tours - 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="107863"/>
						</form>
						</div>
						
						";i:1;s:61:"Book Spa Ayurveda Tours - 11 Nights / 12 Days Tour Packages";i:2;s:134:"book spa ayurveda tours - 11 nights / 12 days tour packages, wildlife and nature tour packages, kochi, periyar, mumbai tour packages";i:3;s:163:"Journey Asia offers Spa Ayurveda Tours - 11 Nights / 12 Days tour package, budget Wildlife and Nature tour packages for Kochi, Periyar, Mumbai at exciting price.";i:4;s:414:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kochi, Periyar, Mumbai"        
		                 },
		      "description": "",
		      "name": "Spa Ayurveda Tours",
		      "telephone": "+91-9910078863"
		    }
		    </script>
			";i:5;N;}