a:6:{i:0;s:38956:"				<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-->				
									<div class="h1"><h1>Munnar Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.ksquaretours.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.ksquaretours.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Munnar Tour</p> 
									
						<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> 
						2 Nights / 3 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Munnar</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.ksquaretours.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Munnar Tour - 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="28685"/>
						</form>
						
												</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_10/287617/56741.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_10/287617/56741.jpg"  width="150" height="150"    alt="Munnar Tour" title="Munnar Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Airfares or Train fares to and from your city.<br />
Any meals other than those included.<br />
Any expenses of personal nature such as Laundry, water,tips, phone calls etc.<br />
Entrance fees and Guide.<br />
Any increase in fuel charges or surcharge in transport or land arrangements that may come into effect prior to the departure.<br />
Any thing not specified in inclusions.<br />
GST 3.09%								</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> Cochin
										</p>
										<p class="aj">Morning Pick up from Cochin proceeds to Munnar – It is a land of Misty mountains and spectacular tea plantation. Munnar--Tucked away in sunny, tropical Kerala is a cool green paradise. Away from heat and dust State’s finest Tea plantations. The best Hill station of Kerala, Watch the spectacular beauty of Tea gardens. Enjoy the nature, where the cloud turns into mist, which may touch you with a romantic feeling. It is located 1600 meter from sea level. This hill station was once the summer resort of the erstwhile British Government in South India. Sprawling tea plantations, picture book towns, winding lanes and holiday facilities make this a popular and most wanted tourist place of Kerala. Among the exotic flora found in the forests and grasslands here is the Neelakurinji. Munnar is an idyllic hill station with its velvet lawns, exotic flora and fauna. Breathing of fresh, cool mountain air is a rare experience. The cab will stop in many of the places on the way to enjoy Cheeyappara and Vallara waterfalls. Over night stay in the Hotel/ Resort<br />
</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> Munnar
										</p>
										<p class="aj">Following the breakfast proceeds to Munnar Sightseeing towards Mattupetty Side: Photo point, Mattupetty Dam, Echo point (The natural Echo phenomenon is always happening here), Shooting point, Kundale Lake..<br />
Rajamala<br />
Anaimudy view (South India Highest peak – 8841 feet from sea level = 2695 meters), Eravikulam National Park - Where you can see the rare species - Mountain Goat and coming back to the 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> Cochin
										</p>
										<p class="aj">Enjoy breakfast at the Hotel, Later check out and transfer to Cochin Airport/ Railway Station where your memorable tour comes to an end. Do spare a few minutes to fill in the feedback form. Your valued suggestions will be most appreciated. Arrive home with pleasant memories.<br />
</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Transfers</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Airfares or Train fares to and from your city.</li><li>
Any meals other than those included.</li><li>
Any expenses of personal nature such as Laundry, water,tips, phone calls etc.</li><li>
Entrance fees and Guide.</li><li>
Any increase in fuel charges or surcharge in transport or land arrangements that may come into effect prior to the departure.</li><li>
Any thing not specified in inclusions.</li><li>
GST 3.09%</li></ul>
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<ul>
	<li>Base categories rooms are allotted for the stay at all destinations. The above hotels/resorts are subject to availability.</li>
	<li>In case of non- availability of accommodation at the above hotels, equivalent accommodation would be provided, wherever possible. Munnar And Thekkady Rooms are non A/c being a hill station. Houseboat timings are as per the policies of the operators which will be made available to you for reference. Check in/Checkout time should be as per the hotel rules.</li>
	<li>All pick up from airport / railway station is only after 6am. All the sightseeing will be provided from 09:00 Am till 05:00 Pm. If your arrival/departure time doesnt match with sightseeing time, (from 09:00 Am till 05:00 Pm), we are helpless. N.B: As per the direction from the Police authorities please carry your valid Photo ID to be produced, if required at the time of check in.</li>
	<li>Policy Regarding CANCELLATION / NO SHOW / EARLY DEPARTURE In the event of cancellation of travel arrangements due to any reasons - we must be informed / notified of the same in writing. Cancellation charges will be effective from the time/date we receive your intimation in writing. Cancellation charges would be as follows: 120 days prior to arrival - 5% of the Tour 120 - 61 days prior to your arrival - 10% of the Tour 60 - 31 days prior to your arrival - 25% of the Tour 30 - 16 days prior to your arrival - 40% of the Tour + Actual service cost 15 - 07 days prior to your arrival - 60% of the tour 06 days - 72 hours prior to your arrival - 75% of the tour Less than 72hours or No Show - No Refund Please note - Irrespective of above mentioned cancellations slabs - incase of cancellation of tour services after the booking is made with us - a minimum 10% service charges would be applicable.</li>
	<li>In case of high peak season bookings (during Diwali Holidays and from 20th Dec to 15th Jan) a separate cancellation policy is applicable (which would be advised as and when required). Also there is a seperate cancellation policy for some major chain / * Category hotels like Oberoi Group Hotels,Trident hotels , Taj Hotels, Casino Group of Hotels, Hilton Hotel, Hotel Imperial New Delhi &amp; Other major Hotels as these hotels are charging for 1 night retention charges if cancelled or amended 45 days in advance &amp; retention for entire stay if cancelled or amended any day within 45 days of arrival date .</li>
	<li>There are few hotels, who ask for non- refundable deposit at the time of booking for in Peak Season or at Major Holidays &amp; Festivals. Therefore you are requested to please check with us regarding the refund policy for festive &amp; Holiday Periods in India. In case you cancel the trip after commencement refund would be restricted to a limited amount that too would depend on the amount that we would be able to recover from the hoteliers we patronize. For unused hotel accommodation, chartered transportation and missed meals etc. we do not bear any responsibility to refund. In case of Special Trains Journeys and/or peak season hotel bookings, a separate cancellation policy is applicable which we shall advise you as and when Applicable.</li>
	<li>In case you cancel the trip after commencement, refund would be restricted to a limited amount, which too would depend on the amount that we would be able to recover from our suppliers of services i.e hotels/transporters etc. For unused hotel accommodation, chartered transportation &amp; missed meals, guide services etc. there will be no refund.</li>
	<li>Refund : In regard to refund of unused / unutilized services (which are paid for and cancelled in advance) the refund amount would be worked out on the basis of cancellation policy as described above and the money would be accordingly refunded to the person who has made the payment to us. Please note that the refund process may take 2 - 4 weeks due to banking procedures.</li>
	<li>If the refund is made to the credit card account OR to Bank account, the bank charges would be debited from the refund amount. Travel Insurance: You are required to ensure that you are adequately insured for the full duration of the tour in respect of illness, injury, death, loss of baggage and personal items, cancellation and curtailment. The choice of insurer is the sole discretion of the client. Arrival and Departure Policy - Check-In - 1200 Hours - Early arrival is subject to availability. For guaranteed early check-in, reservation needs to be made starting from the previous night. - Check - Out - 1200 Hours - Late check-outs are available on request and subject to availability / Payment Payments For the services contracted, Advance payment should be made to hold the booking for Hotels - Flight Tickets - Train Tickets on confirmed basis &amp; the balance amount can be paid either before your arrival or upon arrival in INDIA - but definitely before the commencement of the services. We hold the right to decide on the amount to be paid as advance payment, based on the nature of service &amp; the time left for the commencement of the service. Besides above, in certain cases like Train Journeys, hotels or resorts bookings during the peak season (Christmas/ New Year) or during fairs/festivals / Long Weekends, full payment may be required in order to hold space on CONFIRMED BASIS.</li>
	<li>Please note that such payments are NON REFUNDABLE. Mode of Payment Advance payment can be made through Transfer to our bank.. We accept Master and Visa Credit cards. Upon arrival in INDIA visting at our OFFICE, the payment can be made in cash. In case of payment through credit card, a small amount of bank processing fee would be applicable on the amount being paid by credit cards. Our liabilities &amp; limitations All efforts will be made sincerely to maintain the contract made by our organization with its customers but there are always possibilities of certain Items like airfares, entrance fee at the monuments or drastic increase in fuel costs etc. getting more expensive without any notice from the Govt. authorities. In such FORCE MAJURO, the difference in the cost would be borne by the customers.</li>
	<li>We can act only in the capacity of agent for the hotels, airlines, transporters, railways &amp; contractors providing other services &amp; all exchange orders, receipts, contracts &amp; tickets issued by us are issued subject to terms &amp; conditions under which these services are provided by actual suppliers. All itineraries are sample itineraries, intended to give you a general idea of the likely trip schedule. Numerous factors such as weather, road conditions, the physical ability of the participants etc. may dictate itinerary changes either before the tour or even after the commencement of the tour. We reserve the right to change any schedule in the interest of the trip participants safety, comfort &amp; general well being. Our rates are based on the prevailing rates as negotiated by us with the hotels, airlines etc. Hotels and Airlines retain the right to modify the rates without notice. In case of such changes the rates quoted before the modification, can be changed by us according to the modifications by hotels or airlines.</li>
	<li>All hotel bookings are based on usual check in and check out time of the hotels until unless indicated in the itinerary. We shall not be responsible for any delays &amp; alterations in the programme or expenses incurred - directly or indirectly - due to natural hazards, flight cancellations, accident, breakdown of transport, weather, sickness, landslides, closures/blocades due to political unrest or any such incidents.</li>
	<li>We shall not be responsible for any loss, injury or damage to person, property, or otherwise in connection with any accommodation, transportation or other services, resulting - directly or indirectly - from any act of GOD, dangers, fire, accident, breakdown in machinery or equipment, breakdown of transport, wars, civil disturbances, strikes, riots, thefts, pilferages, epidemics, medical or defaults, or any other causes beyond our control.</li>
	<li>We do not have any insurance policy covering the expenses for accident, sickness, loss due to theft, or any other reasons. Visitors are advised to seek such insurance arrangements in their home country. All baggages &amp; personal property/s at all times are at the client&rsquo;s risk. Our transport is certainly Insured as per Indian Motor Vehicles Act and claims, if any, will be made as per the rules of the Insurance Companies in Indian Rupees.</li>
</ul>								</div>
												
						<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.ksquaretours.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Munnar 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="28685"/>
						</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.ksquaretours.in/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(28)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(28)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(20)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(19)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-kumarakom.htm" title="Packages in Kumarakom">Kumarakom</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-kolkata.htm" title="Packages in Kolkata">Kolkata</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-trivandrum.htm" title="Packages in Trivandrum">Trivandrum</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-chennai.htm" title="Packages in Chennai">Chennai</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/packages-in-kanyakumari.htm" title="Packages in Kanyakumari">Kanyakumari</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-kovalam.htm" title="Packages in Kovalam">Kovalam</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-madurai.htm" title="Packages in Madurai">Madurai</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-periyar.htm" title="Packages in Periyar">Periyar</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-trichy.htm" title="Packages in Trichy">Trichy</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-thiruvananthapuram.htm" title="Packages in Thiruvananthapuram">Thiruvananthapuram</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-rameswaram.htm" title="Packages in Rameswaram">Rameswaram</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-tirupathi.htm" title="Packages in Tirupati">Tirupati</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-kuala-lumpur.htm" title="Packages in Kuala Lumpur">Kuala Lumpur</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-ooty.htm" title="Packages in Ooty">Ooty</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-thanjavur.htm" title="Packages in Thanjavur">Thanjavur</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-kodaikanal.htm" title="Packages in Kodaikanal">Kodaikanal</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.ksquaretours.in/packages-in-manado.htm" title="Packages in Manado">Manado</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.ksquaretours.in/packages-in-chidambaram.htm" title="Packages in Chidambaram">Chidambaram</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.ksquaretours.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</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.ksquaretours.in/packages-in-tiruvannamalai.htm" title="Packages in Tiruvannamalai">Tiruvannamalai</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.ksquaretours.in/packages-in-bangalore.htm" title="Packages in Bangalore">Bangalore</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.ksquaretours.in/packages-in-kanchipuram.htm" title="Packages in Kanchipuram">Kanchipuram</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.ksquaretours.in/packages-in-palani.htm" title="Packages in Palani">Palani</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.ksquaretours.in/packages-in-colombo.htm" title="Packages in Colombo">Colombo</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.ksquaretours.in/packages-in-male.htm" title="Packages in Male">Male</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 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.ksquaretours.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(32)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(23)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(24)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/bird-watching-holidays-catid.htm" title="Birdwatching Packages">Birdwatching</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/safari-holidays-catid.htm" title="Safari Packages">Safari</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.ksquaretours.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</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>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Munnar</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.ksquaretours.in/tour-packages/hills-backwater-tour1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/287617/52665.jpg"  alt="Hills & Backwater Tour" title="Hills & Backwater Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.ksquaretours.in/tour-packages/hills-backwater-tour1.htm" title="Hills & Backwater Tour"><h3>Hills & Backwater Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								3 Nights / 4 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Kochi, Alleppey, Munnar</p>
															<div class="mt10px small">
							<form name="pkg_26854" id="pkg_26854" method="post" action="http://www.ksquaretours.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.ksquaretours.in/tour-packages/hills-backwater-tour1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Hills & Backwater Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="26854"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.ksquaretours.in/tour-packages/uniqueof-kerala-tour1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/287617/49399.jpg"  alt="Unique of Kerala Tour" title="Unique of Kerala Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.ksquaretours.in/tour-packages/uniqueof-kerala-tour1.htm" title="Unique of Kerala Tour"><h3>Unique Of Kerala Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Kochi, Thekkady, Alleppey, Munnar</p>
															<div class="mt10px small">
							<form name="pkg_25215" id="pkg_25215" method="post" action="http://www.ksquaretours.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.ksquaretours.in/tour-packages/uniqueof-kerala-tour1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Unique of Kerala Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="25215"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.ksquaretours.in/tour-packages/delightsof-kerala-tour1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/287617/56744.jpg"  alt="Delights of Kerala Tour" title="Delights of Kerala Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.ksquaretours.in/tour-packages/delightsof-kerala-tour1.htm" title="Delights of Kerala Tour"><h3>Delights Of Kerala Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Kumarakom, Kochi, Kovalam, Thekkady, All..</p>
															<div class="mt10px small">
							<form name="pkg_28688" id="pkg_28688" method="post" action="http://www.ksquaretours.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.ksquaretours.in/tour-packages/delightsof-kerala-tour1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Delights of Kerala Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="28688"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.ksquaretours.in/tour-packages/south-india-wildlife-tour1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/287617/52688.jpg"  alt="South India Wildlife Tour" title="South India Wildlife Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.ksquaretours.in/tour-packages/south-india-wildlife-tour1.htm" title="South India Wildlife Tour"><h3>South India Wildlife Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								15 Nights / 16 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Bangalore, Kumarakom, Kochi, ..</p>
															<div class="mt10px small">
							<form name="pkg_26879" id="pkg_26879" method="post" action="http://www.ksquaretours.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.ksquaretours.in/tour-packages/south-india-wildlife-tour1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="South India Wildlife Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="26879"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.ksquaretours.in/tour-packages/kerala-tour-package1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/287617/56753.jpg"  alt="Kerala Tour Package" title="Kerala Tour Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.ksquaretours.in/tour-packages/kerala-tour-package1.htm" title="Kerala Tour Package"><h3>Kerala Tour Package</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Munnar, Athirampilly, Athirappilly</p>
															<div class="mt10px small">
							<form name="pkg_28692" id="pkg_28692" method="post" action="http://www.ksquaretours.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.ksquaretours.in/tour-packages/kerala-tour-package1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Kerala Tour Package - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="28692"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.ksquaretours.in/tour-packages/kerala-hill-station-package1.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/287617/49403.jpg"  alt="Kerala Hill station Package" title="Kerala Hill station Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.ksquaretours.in/tour-packages/kerala-hill-station-package1.htm" title="Kerala Hill station Package"><h3>Kerala Hill Station Package</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								3 Nights / 4 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Kochi, Thekkady, Munnar</p>
															<div class="mt10px small">
							<form name="pkg_25218" id="pkg_25218" method="post" action="http://www.ksquaretours.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.ksquaretours.in/tour-packages/kerala-hill-station-package1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Kerala Hill station Package - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="25218"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</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:50:"Book Munnar Tour - 2 Nights / 3 Days Tour Packages";i:2;s:94:"book munnar tour - 2 nights / 3 days tour packages, valley tour packages, munnar tour packages";i:3;s:135:"K Square Tours & Travels offers Munnar Tour - 2 Nights / 3 Days tour package, budget Valley tour packages for Munnar at exciting price.";i:4;s:756:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Munnar"        
		                 },
		      "description": "Airfares or Train fares to and from your city.
Any meals other than those included.
Any expenses of personal nature such as Laundry, water,tips, phone calls etc.
Entrance fees and Guide.
Any increase in fuel charges or surcharge in transport or land arrangements that may come into effect prior to the departure.
Any thing not specified in inclusions.
GST 3.09%",
		      "name": "Munnar Tour",
		      "telephone": "+91-9791697977"
		    }
		    </script>
			";i:5;N;}