a:6:{i:0;s:32040:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Munnar Thekkady Alleppey Package</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.jmgroupofservices.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.jmgroupofservices.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Munnar Thekkady Alleppey Package</p>
						</div>
						</div>
						</section>
										<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
								
						<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">
					
											<p class="mb5px"><b>Duration :</b> 
						3 Nights / 4 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Thekkady, Alleppey, Munnar</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 13499 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.jmgroupofservices.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Munnar Thekkady Alleppey Package - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="198830"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px 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 w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319368.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319368.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319414.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319414.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319415.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319415.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319416.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319416.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319417.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319417.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319418.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319418.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319419.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319419.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div><br />
														<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								01 Couple<br />
SightSeeing<br />
Waterfalls<br />
HouseBoat<br />
All Inclusive Honeymoon Package<br />
Explore Eravikulam National Park<br />
Visit Echo Point, Photo Point, etc<br />
Visit Periyar Wildlife Sanctuary<br />
Visit Tiger Reserve<br />
Complete Package By Pvt Sedan Car								</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> Munnar Arrival and Sightseeing
										</p>
										<p class="aj">•         Arrive in Kochi with your partner, where an agent’s representative will receive you at the airport and transfer you to the quaint hill station - Munnar. Complete the check-in formalities and relax in your room. <br />
•         Proceed for local sightseeing in the evening, and kickstart your honeymoon in style. Visit the Spice Plantations, which are among the most sought after tourist destinations in Asia.<br />
•         You will also be taken to the Cheeyappara Waterfalls, the Valara Waterfalls, Attukad Waterfalls.<br />
•         Let love bloom as you visit these majestic waterfalls and revel in the beauty of nature. Come back to the hotel and snuggle the night away.<br />
•         Meal Plan: Dinner.</p>
										</td>
											<td class="p10px vat imgWidth200 w200px lh0">
											<div class="demo-wrap">
											<ul class="lsn m0px p0px" >
														<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319416.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319416.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></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> Thekkaddy Transfers and Jungle Safari
										</p>
										<p class="aj">•         Travel from Munnar to Thekkady with your better half on Day 2<br />
•         Relish a hearty breakfast, chrckout from the hotel, and prepare for your transfer to Thekkady, the haven of thick forests and wild vegetation.<br />
•         Complete the check-in formalities after reaching the hotel and proceed for an adventurous jungle safari in Thekkady at Periyar Tiger Reserve. <br />
•         You can also visit Kumily village and buy gifts for your friends and family. Come back to the hotel for a warm stay.<br />
•         Meal Plan: Breakfast + Dinner.</p>
										</td>
											<td class="p10px vat imgWidth200 w200px lh0">
											<div class="demo-wrap">
											<ul class="lsn m0px p0px" >
														<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319417.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319417.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></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> Alleppey: Set out for a houseboat stay
										</p>
										<p class="aj">•         Get transferred to the backwaters<br />
•         Savor a delicious breakfast, checkout from the hotel, and proceed for your transfer to Alleppey, the hub of Kerala’s backwaters. Here, an enticing experience awaits to manifold your honeymooning delight - the houseboat. Complete the check-in formalities and relish a delicious lunch. Now enjoy cruising along the refreshing and scenic backwaters on your penultimate day in Kerala.<br />
•         Cruising along the scenic backwaters allows newlyweds to cherish their closeness amidst nature blessed serenity. At night, dig on a hearty dinner on the houseboat, followed by a peaceful sleep.                                                                                                       <br />
•          Meal Plan: Breakfast + Dinner.</p>
										</td>
											<td class="p10px vat imgWidth200 w200px lh0">
											<div class="demo-wrap">
											<ul class="lsn m0px p0px" >
														<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319418.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319418.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></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> Alleppey: Departure back home
										</p>
										<p class="aj">•                    Bid adieu to Kerala as your 3 nights 4 days Munnar Thekkady Alleppey package comes to an end<br />
•                    Post a delicious breakfast, check-out from the houseboat and proceed to Kochi. Get transferred to the airport/Ernakulam railway station and board your flight/train back home.<br />
•                    Meal Plan: Breakfast</p>
										</td>
											<td class="p10px vat imgWidth200 w200px lh0">
											<div class="demo-wrap">
											<ul class="lsn m0px p0px" >
														<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_28/829818/319419.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/829818/319419.jpg"  height="150"  width="150"    alt="Munnar Thekkady Alleppey Package" title="Munnar Thekkady Alleppey Package" /></a></p></div></li>
											</ul>
											</div>
											</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>3 Star Hotel</li>
																				<li>Transport on Pvt Car.       </li><li>
Breakfast and dinner all days</li><li>
Sight seeing by Pvt Car.   </li><li>
All presently applicable hotel taxes.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Air fares / train fares</li><li>
Personal Expenses.</li><li>
Cost arising due to natural calamities.</li><li>
Camera fees & unspecified Meals.</li><li>
GST</li><li>
Vehicle used for any extra excursions.</li><li>
Insurance.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* 30% Advance Percentage of total booking amount</li><li>
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p5px15px formTable">
			            	<tr class="headVr b">
			                	<td class="p5px10px">No of pax</td>
			                    <td class="p5px10px">Age Limit</td>
			                    <td class="p5px10px">Price per pax (Rs)</td>
			                </tr>

															<tr>
				            	<td class="p5px10px">Adult</td>
				                <td class="p5px10px">Above 12 years</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>13499</b> <small>/
			
			                		Adult			
			                				
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 								<div class="data mt20px p15px">            
							<div class="mb7px"> 
							<p class="b xlarge mb10px dib">Terms</p>
							</div>
									
							<ul><li>Terms and Conditions</li><li>
Check In & Check out Time is as per Hotel Policies (Early check in is Subject to Availability and might extract Extra Cost as per hotel policy)</li><li>
Meals Timings must be followed as per the instructed time of the hotels and meals served as per the hotel menu whether it is Buffet or Al-Carte. For any un-availed meals we shall not be responsible.</li><li>
In few tourist destinations, the facilities of Hotel, Services, and Aids etc. cannot be matched to developed destinations. Hotels in such places are categorized on the basis of location, Services and costing and not as per Star Categorization i.e.; 1*, 2*, 3* and so on.</li><li>
Guests can avail only those services that are mentioned in confirmation voucher. Any Add-ons, Changes/Upgrades in arrangements, Pick up/Drop other than the stated location will be based on additional expenses. </li><li>
Transfers must be followed as per the instructed time of the transporters. In case, customers miss their respective transportation services, alternatives arrangements will attract extra cost. </li><li>
JM Tours & Travels and our Travel / Ground partners will not be reliable for any changes made by Third Party Providers i.e. Transportation, Hoteliers etc.</li><li>
JM Tours & Travels and our Travel / Ground partners  shall not be responsible for any delays due to technical faults, Heavy Traffic Jam or unforeseen situations. In "Unforeseen" scenarios extra cost may also be levied over the customers.</li><li>
Kindly carry confirmation Voucher, ID Proof,  Volvo Tickets , Flight Tickets etc (if included in Package)</li><li>
The customers are recommended to read the Confirmation Voucher carefully and approve it within 24 hours of issuance. Any errors shall not be entertained during the tour. </li><li>
The Company deserves the right to change the package cost depending on the economical status of the market as per the Government policy.</li><li>
No refund will be made for any unused accommodation, missed meals, transportation segments, sightseeing tours or any other service. Such unused items are neither refundable nor exchangeable. </li><li>
Room allocation is done by the hotel depending upon availability at the time of check-in in the category of room as specified on your confirmation voucher. </li><li>
No refund shall be claimed, if the services & amenities of hotel were not up to your expectations, it will be considered on case to case basis.</li><li>
Service Tax of 9.0% on total package cost inclusive of Swachh Bharat Cess & Krishi Kalyan Cess applicable as on date, for the Tour cost of the Package, service tax rate are subject to change. </li><li>
The GST is under consideration by the Government of India and as and when the same is enacted the same shall be applicable to you without any intimation. </li><li>
The above Package Cost together with the Service Tax is subject to change w.e.f. the date of implementation of GST (Goods & Services Tax) as and when notified by the Government.</li></ul>			
							</div>
														<div class="data mt20px p15px">            
							<div class="mb7px"> 
							<p class="b xlarge mb10px dib">Hotel</p>
							</div>
									
							<ul><li>•                    Alleppy :  AC Deluxe Houseboat</li><li>
•                    Munnar : Bella Vista Resort</li><li>
•                    Thekkaddy : Hotel Grand Thekkady</li></ul>			
							</div>
													<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>1.      10% Cancellation Of The Package Cost If Booking Is Cancelled Between 60 To 30 Days Of The Travel Date.</li><li>
 </li><li>
2.      25% Cancellation Of The Package Cost If Booking Is Cancelled Between 15 To 7 Days Of The Travel Date.</li><li>
3.      50% Cancellation Of The Package Cost If Booking Is Cancelled Between 7 To 3 Days Of The Travel Date.</li><li>
4.       100% Cancellations Of The Package If Booking Is Cancelled Between 3 To 1 Days Of The Travel Date.</li><li>
5.   In Case Passenger Is No Show At The Time Of Departure, 100% Of Tour Cost Shall Be Detected.</li><li>
6.     If Booking Is Cancelled 15 Days Before Of The Travel Date Then 1500/- (Per Person) Cancellations Charges Applicable As Communication Service Fees.</li><li>
7.    If Booking Is Postpone And Prepone 7 Days Before Of The Travel Date. Then Rs. 1500 (Per Person) Service Charges Applicable On The Same.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.jmgroupofservices.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Munnar Thekkady Alleppey 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="198830"/>
						</form>
						</div>
						
										</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by City</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/kullu-tour-packages.htm" title="Kullu Tour Packages">Kullu</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/manikaran-tour-packages.htm" title="Manikaran Tour Packages">Manikaran</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/srinagar-tour-packages.htm" title="Srinagar Tour Packages">Srinagar</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/pahalgam-tour-packages.htm" title="Pahalgam Tour Packages">Pahalgam</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/mathura-tour-packages.htm" title="Mathura Tour Packages">Mathura</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/vrindavan-tour-packages.htm" title="Vrindavan Tour Packages">Vrindavan</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/agra-tour-packages.htm" title="Agra Tour Packages">Agra</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/alleppey-tour-packages.htm" title="Alleppey Tour Packages">Alleppey</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/delaware-tour-packages.htm" title="Delaware Tour Packages">Delaware</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/port-blair-tour-packages.htm" title="Port Blair Tour Packages">Port Blair</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/north-goa-tour-packages.htm" title="North Goa Tour Packages">North Goa</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/mandi-tour-packages.htm" title="Mandi Tour Packages">Mandi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/joshimath-tour-packages.htm" title="Joshimath Tour Packages">Joshimath</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/barkot-tour-packages.htm" title="Barkot Tour Packages">Barkot</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/badrinath-tour-packages.htm" title="Badrinath Tour Packages">Badrinath</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/kashmir-tour-packages.htm" title="Kashmir Tour Packages">Kashmir</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/munnar-tour-packages.htm" title="Munnar Tour Packages">Munnar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/dalhousie-tour-packages.htm" title="Dalhousie Tour Packages">Dalhousie</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/gwalior-tour-packages.htm" title="Gwalior Tour Packages">Gwalior</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/havelock-tour-packages.htm" title="Havelock Tour Packages">Havelock</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/dharamshala-tour-packages.htm" title="Dharamshala Tour Packages">Dharamshala</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/chandigarh-city-tour-packages.htm" title="Chandigarh City Tour Packages">Chandigarh City</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/thekkady-tour-packages.htm" title="Thekkady Tour Packages">Thekkady</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/kansas-tour-packages.htm" title="Kansas Tour Packages">Kansas</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/rishikesh-tour-packages.htm" title="Rishikesh Tour Packages">Rishikesh</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.jmgroupofservices.com/haridwar-tour-packages.htm" title="Haridwar Tour Packages">Haridwar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(14)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/house-boat-holidays-catid.htm" title="House Boat Packages">House Boat</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/wildlife-safari-holidays-catid.htm" title="Wildlife Safari Packages">Wildlife Safari</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.jmgroupofservices.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:71:"Book Munnar Thekkady Alleppey Package - 3 Nights / 4 Days Tour Packages";i:2;s:141:"book munnar thekkady alleppey package - 3 nights / 4 days tour packages, hill station tour packages, thekkady, alleppey, munnar tour packages";i:3;s:193:"Book Munnar Thekkady Alleppey Package - 3 Nights / 4 Days tour packages from JM Tours and Travels - Get attractive 3 Nights / 4 Days Hill Station  tour packages for  Thekkady, Alleppey, Munnar.";i:4;s:668:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Thekkady, Alleppey, Munnar"        
		                 },
		      "description": "01 Couple
SightSeeing
Waterfalls
HouseBoat
All Inclusive Honeymoon Package
Explore Eravikulam National Park
Visit Echo Point, Photo Point, etc
Visit Periyar Wildlife Sanctuary
Visit Tiger Reserve
Complete Package By Pvt Sedan Car",
		      "name": "Munnar Thekkady Alleppey Package",
		      "telephone": "+91-7987782662"
		    }
		    </script>
			";i:5;N;}