a:6:{i:0;s:27426:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Kerala Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.travelrightpackages.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelrightpackages.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Kerala Tour</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> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Mysore, Coonoor, Ooty</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.travelrightpackages.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Kerala 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="190747"/>
						</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_21/626469/300350.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_21/626469/300350.jpg"  width="150" height="112"    alt="Kerala Tour" title="Kerala Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<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> Mysore Chamundi Hill Temple
										</p>
										<p class="aj">Historical & Heritage | Pilgrimage Duration of visit: 2 Hours<br />
Timings: 7:30 AM - 2 PM, 3.30 - 6 PM & 7:30 - 9 PM<br />
<br />
Entry Fee: FREE<br />
<br />
At a distance of 13.5 Kms from Mysore Railway Station & 8.5 Kms from Mysore Zoo, Chamundi Hill is very famous for Chamundeswari temple dedicated to Goddess Chamundeswari, an incarnation of Goddess Parvathi who took this form to destroy Mahishasura. Also known as Krouncha Pitham, Chamundi Temple is one among the 18 Maha Shakti Peethas representing the hair of Sati Devi and among the prime place to visit on a Mysore trip. This is one of the major pilgrimage sites in Karnataka and one of the top places to visit in Mysore.<br />
<br />
At an altitude of 1065 meters, the temple on Chamundi Hill was built in 11th century. For centuries, the Wodeyars of Mysore revered the deity and made extensive contributions to this shrine. The idol of goddess Chamundi inside the central sanctum was made with pure gold.<br />
The temple is a fine example of Dravidian temple architecture. The temple .....<br />
<br />
<br />
<br />
Mysore Palace<br />
<br />
Historical & Heritage  Duration of visit: 1-2 Hours Timings: 10 AM - 5:30 PM<br />
Entry Fee: Rs. 40 for adults, Children below ten years are free<br />
<br />
At a distance of 2.5 km from Mysore Railway Station & 2 km from KSRTC Bus Station, the Mysore Palace was the official residence of the former royal family of Mysore, and also housed the durbar. Designed by British architect Henry Irwin and built in 1912 after a fire burnt down the old wooden palace, it is one of the largest palaces in India and one of the best tourist places to visit in Mysore. Mysore Palace is the venue for famous Mysore Dasara and it is often used to promote Mysore Tourism. It is one of the top attractions you must include in Mysore Packages<br />
<br />
Jagan Mohan Palace / Jayachamarajendra Art Gallery<br />
Historical & Heritage |  Museum & Gallery<br />
Duration of visit: 1 Hour<br />
<br />
Timings: 10.30 AM to 5 PM, Closed on Wednesdays Entry Fee: Rs. 30 for Adults, Rs.15 for Children<br />
At a distance of 2 km from Mysore Railway Station & 2 km from KSRTC Bus Station, the Jagan Mohan Palace which houses the Jayachamarajendra Art Gallery is located near City Bus Stand. It is one of the best preserved art gallery in Karnataka and also one of the popular Mysore tourist places.<br />
<br />
The Jagan Mohan Palace was constructed in 1861 by Krishnaraja Wodeyar III as an alternate retreat for the royal family. The Mysore Palace, which was the original home of the royal family, was burnt down in a fire and the construction of a new palace in its place was started in 1897. Till the new palace was completed in 1912, the Jagan Mohan Palace was used by the royals as their home.<br />
<br />
The Palace is a three-storied structure constructed in traditional Hindu style of architecture. The original palace was extended in 1900 and an external facade with a hall .....<br />
<br />
St. Philomena's Cathedral<br />
<br />
Pilgrimage<br />
<br />
Duration of visit: 30 Mins - 1 Hr Timings: 5 AM to 6 PM<br />
Entry Fee: FREE<br />
<br />
At a distance of 2.5 km from Mysore Railway Station & 1 km from KSRTC Bus Station, St. Philomena's Church is a Catholic Church built in honor of St. Philomena in the Diocese of Mysore,<br />
India. This is one of the top places to visit in Mysore. Designed by the Reverend Rene Feuge, it was constructed in 1956 in a Neo Gothic style and its architecture was inspired by the Cologne Cathedral in Germany.<br />
<br />
The church is dedicated to 3rd century saint Philomena who was the daughter of the monarch of a small state in Greece. Her parents were childless for several years. They prayed Jesus to bless them with a child and the next year Philomena was born to them. Even in her childhood Philomena showed signs of piety. When Philomena was 13 years old her father took her to Rome to obtain the favour of Emperor Diocletian. The Emperor was enthralled by her beauty and wanted to marry her. But she refused and vowed to give herself .....</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> Mysore Zoo / Jayachamarajendra Zoological Gardens
										</p>
										<p class="aj">Wildlife<br />
<br />
Duration of visit: 2-3 Hours<br />
<br />
Timings: 8 AM - 5.30 PM. Closed on Tuesdays.<br />
Entry Fee: Rs. 50 for adults, Rs. 20 for Children (5-20 years), Rs. 20 for Camera.<br />
<br />
At a distance of 3 Kms from Mysore Railway Station & 1.5 Kms from KSRTC Bus Station, the Mysore Zoo was established in 1892 by Sri Chamarajendra Wodeyar and designed by German Landscaper and Horticulturist Mr. G.H. Krumbeigal. Also known as Sri Chamarajendra Zoological Gardens, it is one of the oldest and one of the best zoo parks in South India. It is also one of the best among Mysore places to visit and often used to promote Mysore Tourism along with Mysore Palace and it is another popular attraction not to miss in a Mysore tour package.<br />
<br />
The zoo was originally 10 acres and has expanded to over 250 acres currently. Mysore Zoo provides shelter to large number of animal species. The Zoo is famous for breeding some Tuesday closed</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> Bundipur
										</p>
										<p class="aj">Bandipur National Park, an 874-sq.-km forested reserve in the southern Indian state of Karnataka, is known for its small population of tigers. Once the private hunting ground of the Maharajas of Mysore, the park also harbors Indian elephants, spotted deer, gaurs (bison), antelopes and numerous other native species. The 14th-century Himavad Gopalaswamy Temple offers views from the park's highest peak.<br />
The bus safari timings are 6:30 to 9 AM & 3:30 to 5:30 PM and it is of 45 min duration.<br />
The elephant ride at Bandipur is 20 mins. & takes tourists around the park on an elephant. The Forest Department also organizes elephant rides of about an hour (or more) each on request, which goes deeper into the forest tickets can by at ticket counter according to your timings</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> Ooty Lake - Botanical Gardens - Doddabetta
										</p>
										<p class="aj">Lake & Backwaters<br />
Duration of visit: 1-2 Hours<br />
Timings: 8 AM to 5.30 PM<br />
Entry Fee: Rs. 10 for Person, Rs. 560 for Foreigners, Rs. 30 for Camera, and Rs. 125 for Video, Boating charges vary<br />
<br />
<br />
At a distance of 1 km from Ooty Bus Station & Railway Station, Ooty Lake is an artificial lake situated in the beautiful hill station of Ooty. It is one of the most visited tourist places in Ooty and also one of the popular places to represent Ooty Tourism. It is also one of the top attractions you must include in<br />
<br />
Ooty Lake was built by John Sullivan in 1824 AD, the then Collector of Coimbatore. Covers an area of 65 acres with an average depth of 40 feet, the lake is fed by the mountain streams in the Ooty valley. The lake was originally intended to be used for fishing with ferries being used to travel across the lake. It gradually shrunk from its original size giving place to the current bus stand race course, and the lake park.<br />
<br />
The lake is surrounded by groves of Eucalyptus trees with a railway line running along one shore. Situated amidst beautiful valleys, Ooty .....<br />
<br />
Botanical Gardens<br />
<br />
Park<br />
Duration of visit: 1-2 Hours<br />
Timings: 8 AM to 6.30 PM<br />
Entry Fee: Rs.30 for Adults, Rs. 15 for Children, Rs. 50 for Camera & Rs. 100 for Video<br />
<br />
At a distance of 3 km from Ooty Bus Station & Railway Station and 4 km from Ooty Lake, Ooty Botanical Gardens is a beautiful garden situated on the foothills of Dodabetta Peak in Ooty. Maintained by Tamil Nadu Horticulture Department, Ooty Botanical Gardens is one of the top places to visit in Ooty and also one of the best botanical gardens in India.<br />
 <br />
<br />
Dodabetta Peak<br />
<br />
<br />
 Nature & Scenic<br />
<br />
<br />
At a distance of 9 km from Ooty, Doddabetta is a mountain peak situated on the Ooty - Kotagiri Road in the Nilgiris district of Tamilnadu. Literally means Big Mountain, Doddabetta is the highest point in Nilgiri Mountains and also one of the popular places to visit in Ooty. It is among prime place to visit on a Ooty trip</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> Ketti - Wenlock Downs - Pykara Kamaraj Sagar / Sandynalla Reservoir & Pine Forest
										</p>
										<p class="aj">Nature & Scenic<br />
Duration of visit: 30 Mins<br />
Timings: 6 AM to 6 PM<br />
Entry Fee: Telescope: Rs. 10 for Per Person<br />
<br />
<br />
At a distance of 4 km from Ooty and 12.5 km from Coonoor, Ketti Valley View Point is a popular vantage point situated on Ooty - Coonoor Road in Nilgiris district of Tamilnadu. It is<br />
one the most beautiful sightseeing places in Ooty and also one of the top  places  to  experince Ooty Tourism.<br />
<br />
<br />
<br />
 Lake & Backwaters |   Nature & Scenic Duration of visit: 30 Mins - 1 Hr<br />
Timings: 9 AM - 6 PM<br />
Entry Fee: FREE<br />
<br />
At a distance of 9 km from Ooty Bus Station, Kamraj Sagar Dam, also known as the Sandynalla Reservoir, is a very quiet and scenic dam situated on the slopes of the Wenlock Downs in Ooty. It is one of the top Ooty tourist places and also a must include in every Ooty Tour Package.<br />
<br />
<br />
Wenlock Downs<br />
<br />
   Nature & Scenic<br />
Duration of visit: 1 Hour Timings: 9 AM - 6. 30 PM Entry Fee: FREE<br />
<br />
At a distance of 16 km from Ooty, Wenlock Downs is a vast expanse of grassy meadow located on the way to Pykara in Ooty, Tamilnadu. It is one of the most scenic places in Ooty and also one of the best Ooty tourist places. Along with Ooty Lake, this place is most commonly represented for Ooty Tourism.<br />
 <br />
<br />
Pykara Dam & Reservoir<br />
<br />
 Waterfall<br />
Duration of visit: 1 Hour Timings: 8. 30 AM to 5. 30 PM Entry Fee: Rs. 5 for Person<br />
<br />
<br />
At a distance of 2 km from Pykara Lake and 23 km from Ooty Bus Stand, Pykara Falls is a majestic waterfalls situated on Ooty - Mysore road in Ooty, Tamil Nadu. This is one of the best waterfalls near Bangalore and also one of the most popular Ooty tourist places. It is another popular attraction not to miss in a Ooty tour package.</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> Coonoor
										</p>
										<p class="aj">1. Catherine Falls<br />
<br />
<br />
Image Source<br />
<br />
Suggested Read: 50 Places To Visit In India Before You Turn 30<br />
<br />
If you are thinking that Coonoor is a hill station just for nature lovers, then you are wrong. Offering some of the best adventure activities, the Catherine falls is one of the best Coonoor attractions that every tourist should visit. It offers amazing trails for trekking and one can hike down the pathway with steep slopes that lead to the waterfalls. The cascading waters gushing down the hill is quite a treat to watch and one must not miss it during their visit to Coonoor.<br />
<br />
2. Sim’s Park<br />
<br />
Image Source<br />
<br />
Being one of the most visited Coonoor tourist places, Sim’s park is a famous botanical garden that features beautiful flower terraces laid in an extension of about 12 acres. The park also features a Rose Garden that has some of the finest variety of Roses in the country along with which there is a lake inside the park that provides boating facility as well.<br />
<br />
<br />
<br />
3. Droog Fort<br />
<br />
Suggested Read: 15 Mesmerizing Hill Stations in South India That Have Their Own Charm<br />
<br />
If you are under an impression that Coonoor does not have a rich and cultural history, you may have to re-think once you visit the Droog Fort. The Droog Fort is one of the best places to visit in Coonoor for those who love architecture and history. Situated around 13 kilometers away from the city centre, this old fort was originally used as an outpost by Tipu Sultan. Holding a great historical significance, the path that leads to the fort is a splendid one which is much loved by trekkers.<br />
<br />
4. Heritage Train<br />
<br />
<br />
Image Source<br />
<br />
Even those haven’t visited Coonoor or Ooty, are aware of the famous heritage Nilgiri Mountain Railway at Coonoor. Been a part of famous series and movies, a ride on this heritage train from Ooty to Coonoor is the most talked about attraction and experience when it comes to what to see in Coonoor. The train takes you through the mesmerizing hills and coffee plantation, allowing you to enjoy every bit of the ride.<br />
<br />
5. St. George’s Church<br />
<br />
 Image Courtesy: Keetu’s Diary<br />
<br />
Suggested Read: 50 Best Hill Stations In India For A Soothing Mountain Escape<br />
<br />
There is no dearth of attractions in Coonoor when it comes to religious sites. Constructed way back in the 18th century, the St. George’s Church is a beautiful remnant of the British era.<br />
The main attraction is its splendid architecture, and serene surroundings. A visit to this church is very appealing to the eyes and offers complete peace of mind. Booking one of the best Coonoor sightseeing packages will definitely take you to this popular tourist attraction.</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>EP (No Meal)</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>Some 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">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>Upon cancellation, refund will be made after deducting the Retention Amount.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelrightpackages.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Kerala 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="190747"/>
						</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.travelrightpackages.com/jaipur-tour-packages.htm" title="Jaipur Tour Packages">Jaipur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/mysore-tour-packages.htm" title="Mysore Tour Packages">Mysore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/singapore-city-tour-packages.htm" title="Singapore Tour Packages">Singapore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/agra-tour-packages.htm" title="Agra Tour Packages">Agra</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/cherrapunji-tour-packages.htm" title="Cherrapunji Tour Packages">Cherrapunji</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/jodhpur-tour-packages.htm" title="Jodhpur Tour Packages">Jodhpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/guwahati-tour-packages.htm" title="Guwahati Tour Packages">Guwahati</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/coonoor-tour-packages.htm" title="Coonoor Tour Packages">Coonoor</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</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.travelrightpackages.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.travelrightpackages.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.travelrightpackages.com/leh-ladakh-tour-packages.htm" title="Leh Ladakh Tour Packages">Leh Ladakh</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.travelrightpackages.com/udaipur-tour-packages.htm" title="Udaipur Tour Packages">Udaipur</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.travelrightpackages.com/shillong-tour-packages.htm" title="Shillong Tour Packages">Shillong</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.travelrightpackages.com/ooty-tour-packages.htm" title="Ooty Tour Packages">Ooty</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.travelrightpackages.com/manali-tour-packages.htm" title="Manali Tour Packages">Manali</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.travelrightpackages.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelrightpackages.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(1)</b></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:50:"Book Kerala Tour - 5 Nights / 6 Days Tour Packages";i:2;s:115:"book kerala tour - 5 nights / 6 days tour packages, hill station tour packages, mysore, coonoor, ooty tour packages";i:3;s:144:"Travel Right offers Kerala Tour - 5 Nights / 6 Days tour package, budget Hill Station tour packages for Mysore, Coonoor, Ooty at exciting price.";i:4;s:404:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Mysore, Coonoor, Ooty"        
		                 },
		      "description": "",
		      "name": "Kerala Tour",
		      "telephone": "+91-9620563189"
		    }
		    </script>
			";i:5;N;}