a:6:{i:0;s:48330:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Bangalore, Mysore & Ooty Tour Package 4 Nights / 5 Days</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.azuretouradvisor.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.azuretouradvisor.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Bangalore, Mysore & Ooty Tour Package 4 Nights / 5 Days</p>
						</div>
						</div>
						</section>
										<section id="middle" class="propDtls">
				<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">
					<div class="h1"><h1>Bangalore, Mysore & Ooty Tour Package 4 Nights / 5 Days</h1></div>
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Bangalore, Mysore, Coonoor, Ooty</p>
												<p class="mb5px"><b>Starting From :</b> 
						INR 10750 Per Person						</p>
											
					<br />
					<p>
					<form class="inquiry-form" name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.azuretouradvisor.com/enquiry-form-10028.htm">
					<input type="hidden" name="subject" value="Bangalore, Mysore & Ooty Tour Package 4 Nights / 5 Days - Tour Package"/>
					<input type="hidden" name="allocate_type" value="tour"/>							
					<input type="hidden" name="pkg_slno" value="200575"/>
					</form>
					<a href="javascript:void(0);" class="submit-inquiry buttonBig p10px20px c5px b large dib">Book Your Tour</a>
					
										</p>
										</td>
										</tr>
					</table>
					</div>
											<div class="mt7px dif small">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div>
														<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<div class="b xlarge mb10px dib"><h2>Bangalore, Mysore and Coonoor Tour Overview</h2></div>
								</div>
													
								Bengaluru (also called Bangalore) is the capital of India's southern Karnataka state. The center of India's high-tech industry, the city is also known for its parks and nightlife. By Cubbon Park, Vidhana Soudha is a Neo-Dravidian legislative building. Former royal residences include 19th-century Bangalore Palace, modeled after England’s Windsor Castle, and Tipu Sultan’s Summer Palace, an 18th-century teak structure.<br />
<br />
Mysore (or Mysuru), a city in India's southwestern Karnataka state, was the capital of the Kingdom of Mysore from 1399 to 1947. In its center is opulent Mysore Palace, seat of the former ruling Wodeyar dynasty. The palace blends Hindu, Islamic, Gothic and Rajput styles. Mysore is also home to the centuries-old Devaraja Market, filled with spices, silk and sandalwood.<br />
<br />
Ooty (short for Udhagamandalam) is a resort town in the Western Ghats mountains, in southern India's Tamil Nadu state. Founded as a British Raj summer resort, it retains a working steam railway line. Other reminders of its colonial past include Stone House, a 19th-century residence, and the circa-1829 St. Stephen’s Church. Its 55-acre Government Botanical Garden lies on the slopes of Doddabetta Peak.<br />
<br />
Coonoor is a hill station in the southern Indian state of Tamil Nadu. It’s known for its tea estates in the surrounding Nilgiri hills. Sim’s Park is a sprawling public garden with plants like rhododendrons, roses and eucalyptus trees. The steam Nilgiri Mountain Railway travels between the towns of Mettupalayam and Ooty via Coonoor. Dolphin’s Nose is a vantage point with views of the cascading Catherine Falls.								</div>
																<div class="headHr mt20px">
					            <div class="p7px b pl10px xlarge"><h2>Bangalore, Mysore and Coonoor Tour Itinerary</h2></div>
					            </div>
					            
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<div class="b large mb5px"><b class="dif">Day 1:</b> <h3>Pick up from Bangalore – Mysore</h3>
										</div>
										<p class="aj">Today morning upon your arrival you will be welcome by Azure Tour Advisor  executive and after introduction to our chauffer you can start drive to Mysore - a city in India's southwestern Karnataka state, was the capital of the Kingdom of Mysore from 1399 to 1947. Enroute you can visit Sri Rangapatna - The town takes its name from the celebrated Renganathaswamy temple which dominates the town, making Srirangapatna one of the most important Vaishnavite centers of pilgrimage in South India. Later you can start drive to Mysore on reaching check in to the hotel and after small refreshment in the evening you can visit Brindavan garden. Later return back to hotel and overnight stay at Mysore.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<div class="b large mb5px"><b class="dif">Day 2:</b> <h3>Mysore – Ooty</h3>
										</div>
										<p class="aj">Today Morning after breakfast you can visit Mysore Palace - is a historical palace and a royal residence at Mysore in the Indian State of Karnataka. It is the official residence of the Wadiyar dynasty and the seat of the Kingdom of Mysore. Then you can visit Jaganmohan palace and Chamundeshwari Temple. Later you can start drive to Ooty. On reaching check in to the hotel. After small refreshment you can visit Ooty Lake - an artificial manmade lake wherein you can go for boating for few hours. If you are interested there you can enjoy activities like boat ride at Lake, cycling, horse riding etc.., (On direct Payment basis). Later return back to hotel. Overnight stay at Ooty.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<div class="b large mb5px"><b class="dif">Day 3:</b> <h3>Ooty – Coonoor – Ooty</h3>
										</div>
										<p class="aj">Post breakfast you can visit Botanical garden - The Gardens have around a thousand species, both exotic and indigenous, of plants, shrubs, ferns, trees, and herbal and bonsai plants. Then you can visit Rose garden - The garden has been laid out with rose tunnels, pergolas and bowers with rose creepers. Later you can visit Tea Factory, Stephen Church, Thread Garden, and Stone House. Post lunch you can start drive to Coonoor and visit Lambs rock - it overlooks a sheer precipice of several hundred meters with a phenomenal view of vast stretches of forest all the way to the Coimbatore plains, later visit Dolphine Nose, this is actually view point for a fabulous view of the sunrise, you can get a beautiful view of the St. Catherine falls from here, Later Visit Sim’s Park, it is a famous park and the botanical garden together form the largest repository of temperate plants in India and an important destination for botanists. Sims’ Park is the venue for the annual vegetable and fruit show. Apart from these man made gardens, wild flowers like the kurinji, wild Sunflower, Lantana and a number of indigenous species that adorn the mountains seasonally add to this park. Later return back to hotel. Overnight stay at Ooty.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<div class="b large mb5px"><b class="dif">Day 4:</b> <h3>Ooty – Bangalore</h3>
										</div>
										<p class="aj">Today after breakfast, check out from the hotel and get ready to transfer from ooty to Bangalore by road. After reaching Bangalore check in to the hotel and overnight stay at Bangalore hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<div class="b large mb5px"><b class="dif">Day 5:</b> <h3>Bangalore Hotel to Railway Station/Airport Transfer</h3>
										</div>
										<p class="aj">Today morning after breakfast, Check out from the hotel and get ready for Bangalore local sightseeing as per time and evening drop at Bangalore Airport / Railway station to catch your onward flight/ train.</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>CP (Room + Breakfast)</li>
																						<li>3 Star Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																						<li>Transfers</li>
																						<li>Airport Pickup-Drop</li>
																						<li>Private Cab</li>
																						<li>Cab Transfer</li>
																						<li>Stay Included</li>
																						<li>Pickup-Drop</li>
																				<li>Pick up & Drop from Bangalore Airport & Railway Station by Sedan </li><li>
Accommodation facility (Double Sharing)</li><li>
Transport facility. (Sedan)</li><li>
Food facility as per package </li><li>
Fuel, Toll Tax , Parking & Driver charges included. </li><li>
Below 5 years child will be complimentary with parents without extra bed.</li><li>
Room on double sharing.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Flight \ Train charges. </li><li>
Meal other than mentioned & Service other than mentioned.</li><li>
Entry fees, Sports activity. </li><li>
Honeymoon Supplement of including Candle light dinner, Chocolate cake and flower decoration.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>Deposit of 25% of the package cost at the time of booking.</li><li>
Need 50% payment of the package cost, 30 days prior to departure date.</li><li>
Need 100% payment of the package cost, 15 days prior to departure date.</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>10750</b> <small>/
			
			                		Adult			
			                				
			                		
			                	</small></td>
				            	</tr>
				            									<tr>
				            	<td class="p5px10px">Custom pax type</td>
				                <td class="p5px10px">4 Pax</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>10750</b> <small>/
			
			                		Custom pax type			
			                				
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</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>
						 
									<tr>
							    	<td class="p5px10px">
							    	Mysore 
							    	</td>
							        <td class="p5px10px">Hotel Roopa</td>
							        <td class="tac p5px10px">
							        								            	<p class="ac-dib acac-dib ac-mr5px lc-mr0">
											<span class="vam large dif" style="">
							            		<i class="fa fa-star mr2px"></i><i class="fa fa-star mr2px"></i><i class="fa fa-star mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i>							                </span>
											</p>
							                							        </td>
								    </tr>
									 
									<tr>
							    	<td class="p5px10px">
							    	Ooty 
							    	</td>
							        <td class="p5px10px">La Flora Amberley Resort,Ooty</td>
							        <td class="tac p5px10px">
							        								            	<p class="ac-dib acac-dib ac-mr5px lc-mr0">
											<span class="vam large dif" style="">
							            		<i class="fa fa-star mr2px"></i><i class="fa fa-star mr2px"></i><i class="fa fa-star mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i>							                </span>
											</p>
							                							        </td>
								    </tr>
									 
									<tr>
							    	<td class="p5px10px">
							    	Bangalore 
							    	</td>
							        <td class="p5px10px">Rest Inn Sky Hotel</td>
							        <td class="tac p5px10px">
							        								            	<p class="ac-dib acac-dib ac-mr5px lc-mr0">
											<span class="vam large dif" style="">
							            		<i class="fa fa-star mr2px"></i><i class="fa fa-star mr2px"></i><i class="fa fa-star mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i><i class="fa fa-star-o mr2px"></i>							                </span>
											</p>
							                							        </td>
								    </tr>
															</tbody>
						</table>
						</div>
													<div class="data mt20px p15px">            
							<div class="mb7px"> 
							<p class="b xlarge mb10px dib">Terms and Conditions:</p>
							</div>
									
							<ul><li>5% GST will be applicable if paid in INR.</li><li>
The rates are subjects to change without any prior notice.</li><li>
Accommodation in the itinerary at the mentioned hotels or the similar hotels.</li><li>
AC will not work in Hill Stations.</li><li>
Extra bed means extra Mattress.</li><li>
Rooms are subject to the availability. No reservation has been made till date. This is just a quotation. The above rate is valid only for mentioned dates/ month.</li><li>
The above Quotation is only an offer and not confirmation of your bookings. If we are not able to get the original hotels, shall provide equivalent/ alternative hotels.   </li><li>
No refund will be made for any unused accommodation, missed meals, transportation segments, sightseeing tours or any other service due to Bad weather, ill health, Strike, </li><li>
In case of any dispute, our financial liability will not exceed 20% of total cost of tour package.</li><li>
There will be no refund for unused nights or early check-out (In case of Medical condition it completely depends on hotel policy).</li><li>
Check-in and check-out times at hotels would be as per hotel policies. Early check-in or late check-out is subject to availability and may be chargeable by the hotel.</li><li>
The price does not include expenses of personal nature, such as laundry, telephone calls, room service, alcoholic beverages, mini bar charges, tips, portage, camera fees etc.</li><li>
Azure Tour Advisor reserves the right to modify the itinerary at any point, due to reasons including but not limited to: Force Majeure events, strikes, fairs, festivals, weather conditions, traffic problems, overbooking of hotels / flights, cancellation / re-routing of flights, closure of / entry restrictions at a place of visit, etc. While we will do our best to make suitable alternate arrangements, we would not be held liable for any refunds/compensation claims arising out of this.</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>10% of full tour cost - 60 days prior to departure date.</li><li>
25% of full tour cost - 30 days prior to departure date.</li><li>
50% of full tour cost - between 15 & 29 days prior to departure date.</li><li>
75% of full tour cost - between 14 & 7 days prior to departure date.</li><li>
100% - within 7 days prior to tour.</li></ul>			
						</div>
												<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Packages by Theme</p>
						</div>
													<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/hill-station-holidays-catid.htm" title="Hill Station Tour Packages">Hill Station Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/paragliding-holidays-catid.htm" title="Paragliding Tour Packages">Paragliding Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/beach-islands-holidays-catid.htm" title="Beach and Islands Tour Packages">Beach and Islands Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/valley-holidays-catid.htm" title="Valley Tour Packages">Valley Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/heritage-holidays-catid.htm" title="Heritage Tour Packages">Heritage Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/family-holidays-catid.htm" title="Family Tour Packages">Family Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Tour Packages">Forts and Palaces Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/camping-holidays-catid.htm" title="Camping Tour Packages">Camping Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Tour Packages">Religious & Pilgrimage Tours</a></span>
														<span class="dib p5px10px c2px bdr bdree dif mr7px mb7px "><a  href="http://www.azuretouradvisor.com/water-rafting-holidays-catid.htm" title="Water Rafting Tour Packages">Water Rafting Tours</a></span>
														<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
													</div>
												
						<div class="ac mb10px">
						<form class="inquiry-form" name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.azuretouradvisor.com/enquiry-form-10028.htm">
						<input type="hidden" name="subject" value="Bangalore, Mysore & Ooty Tour Package 4 Nights / 5 Days - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>							
						<input type="hidden" name="pkg_slno" value="200575"/>
						</form>
						<a href="javascript:void(0);" class="submit-inquiry button p7px pl12px pr12px c5px b large dib mt10px">Book Your Tour</a>
						</div>
											<div id="myModal" class="modal fade dn pf" role="dialog" style="z-index:9999;left:0;top:0%;width:100%;height:100%;background-color:rgba(0,0,0,0.6);overflow-x: hidden; overflow-y: auto;">
					    <!-- Modal content-->
					    <div style="max-width:380px;margin-top: 50px;min-height:400px;" class="modal-content data m0a p10px pr">
					      <div class="modal-header">
					        <a style="right:25px;top:25px;" class="pa b xxxlarge" data-dismiss="modal"><span class="xlarge">&times;</span></a>	        
					      </div>
					      <div class="modal-body">
					        <p>Loading...</p>
					      </div>
					      <div class="modal-footer">
					        
					      </div>
					    </div>
					</div>
					<script type="text/javascript">
						jQuery(document).ready(function(){
							jQuery(document).on("click", ".submit-inquiry" , function(e){e.stopPropagation()
								var form = jQuery(this).parent().find(".inquiry-form");
								if(form.length){
									jQuery.ajax({
										url: form.attr("action"),
										type: form.attr("method"),
										data:form.serialize(),
										crossDomain:true,
										success:function(res){
											jQuery("#myModal .modal-body").html(res);
										}
									});
								}
							});
							jQuery(document).on("click", "[data-dismiss=modal]", function(){
								jQuery("#myModal .modal-body").html("<p>Loading...</p>");
								jQuery("#myModal").hide();
							});
							jQuery(document).on("submit", "form[name=static_form]", function(e){				
								e.preventDefault();
								var isValidForm =static_inq_form_validate(jQuery(this).attr("form-id"));
								if(isValidForm == undefined){
									var form = jQuery(this);
									if(form.length){
										jQuery.ajax({
											url: form.attr("action"),
											type: form.attr("method"),
											data:form.serialize(),
											crossDomain:true,
											beforeSend:function(){
												jQuery("#myModal .modal-footer").html("");
											},
											success:function(res){
												jQuery("#myModal .modal-body").html(res);
												setTimeout(function(){
													jQuery("#myModal", document).hide();
													jQuery("#myModal .modal-body").html("<p>Loading...</p>");
													},2000)
											}
										});
									}
								}
							});
							var modal = jQuery("#myModal", document);
				
							jQuery(document).on("click", ".submit-inquiry" , function(){
							    modal.show();
							});
				
							window.onclick = function(event) {
							    if (jQuery(event.target) == modal) {
							        modal.css("display","none");
							    }
							}
						});
					</script>
									</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 Destination</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-ratnagiri.htm" title="Packages in Ratnagiri">Ratnagiri Tours</a> <!--b class="alpha50 bn small">(5)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-manali.htm" title="Packages in Manali">Manali Tours</a> <!--b class="alpha50 bn small">(4)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-brussels.htm" title="Packages in Brussels">Brussels Tours</a> <!--b class="alpha50 bn small">(3)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-ooty.htm" title="Packages in Ooty">Ooty Tours</a> <!--b class="alpha50 bn small">(3)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg Tours</a> <!--b class="alpha50 bn small">(3)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-rome.htm" title="Packages in Rome">Rome Tours</a> <!--b class="alpha50 bn small">(3)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-amsterdam.htm" title="Packages in Amsterdam">Amsterdam Tours</a> <!--b class="alpha50 bn small">(3)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-bangalore.htm" title="Packages in Bangalore">Bangalore Tours</a> <!--b class="alpha50 bn small">(3)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam Tours</a> <!--b class="alpha50 bn small">(3)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur Tours</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.azuretouradvisor.com/packages-in-coonoor.htm" title="Packages in Coonoor">Coonoor Tours</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.azuretouradvisor.com/packages-in-amboli.htm" title="Packages in Amboli">Amboli Tours</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.azuretouradvisor.com/packages-in-pisa.htm" title="Packages in Pisa">Pisa Tours</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.azuretouradvisor.com/packages-in-north-goa.htm" title="Packages in North Goa">North Goa Tours</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.azuretouradvisor.com/packages-in-lucerne.htm" title="Packages in Lucerne">Lucerne Tours</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.azuretouradvisor.com/packages-in-innsbruck.htm" title="Packages in Innsbruck">Innsbruck Tours</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.azuretouradvisor.com/packages-in-paris.htm" title="Packages in Paris">Paris Tours</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.azuretouradvisor.com/packages-in-udaipur.htm" title="Packages in Udaipur">Udaipur Tours</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.azuretouradvisor.com/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya Tours</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.azuretouradvisor.com/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore Tours</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.azuretouradvisor.com/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey Tours</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.azuretouradvisor.com/packages-in-florence.htm" title="Packages in Florence">Florence Tours</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.azuretouradvisor.com/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar Tours</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.azuretouradvisor.com/packages-in-kochi.htm" title="Packages in Kochi">Kochi Tours</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.azuretouradvisor.com/packages-in-mumbai.htm" title="Packages in Mumbai">Mumbai Tours</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.azuretouradvisor.com/packages-in-goa-city.htm" title="Packages in Goa City">Goa City Tours</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.azuretouradvisor.com/packages-in-katra.htm" title="Packages in Katra">Katra Tours</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.azuretouradvisor.com/packages-in-mysore.htm" title="Packages in Mysore">Mysore Tours</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.azuretouradvisor.com/packages-in-london.htm" title="Packages in London">London Tours</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.azuretouradvisor.com/packages-in-tashkent-travel.htm" title="Packages in Tashkent">Tashkent Tours</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 Theme</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/hill-station-holidays-catid.htm" title="Hill Station Tour Packages">Hill Station Tours</a> <!--b class="alpha50 bn small">(17)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/paragliding-holidays-catid.htm" title="Paragliding Tour Packages">Paragliding Tours</a> <!--b class="alpha50 bn small">(1)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/beach-islands-holidays-catid.htm" title="Beach and Islands Tour Packages">Beach and Islands Tours</a> <!--b class="alpha50 bn small">(16)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/valley-holidays-catid.htm" title="Valley Tour Packages">Valley Tours</a> <!--b class="alpha50 bn small">(4)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/heritage-holidays-catid.htm" title="Heritage Tour Packages">Heritage Tours</a> <!--b class="alpha50 bn small">(5)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/family-holidays-catid.htm" title="Family Tour Packages">Family Tours</a> <!--b class="alpha50 bn small">(5)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Tour Packages">Forts and Palaces Tours</a> <!--b class="alpha50 bn small">(5)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/camping-holidays-catid.htm" title="Camping Tour Packages">Camping Tours</a> <!--b class="alpha50 bn small">(1)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Tour Packages">Religious & Pilgrimage Tours</a> <!--b class="alpha50 bn small">(7)</b--></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.azuretouradvisor.com/water-rafting-holidays-catid.htm" title="Water Rafting Tour Packages">Water Rafting Tours</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 />
						<section class="pt20px pb20px relTour-pkg rel-prop"><br>
						<div class="wrap">      	
						<div class="myTabs mc bdr0 horizontal987 hot bdr0"><div class=""><ul class="fo lsn m0px p0px"><li class="h hd_h2"><div class="ac"><h2 class="hd_NT">Similar Tour Packages for Bangalore, Mysore, Coonoor, Ooty</h2></div></li></ul></div><p class="cb"></p>
						<div class="ic" id="1102_3-1">
						<div class="slider">
						<ul class="bxslider987">
											
							<li>
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='http://www.azuretouradvisor.com/tour-packages/budget-ooty-package2-nights3-days.htm'">
															<div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px"><img src="https://static.tourtravelworld.com/images/tour-package-no-image.gif"  height=""  width=""    alt="Budget Ooty Package 2 Nights 3 Days" title="Budget Ooty Package 2 Nights 3 Days"  class="bdr p1px"  /></div></div>
								<div class="absViewBtn"><a href="http://www.azuretouradvisor.com/tour-packages/budget-ooty-package2-nights3-days.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								2 Nights / 3 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="http://www.azuretouradvisor.com/tour-packages/budget-ooty-package2-nights3-days.htm" title="Budget Ooty Package 2 Nights 3 Days"><h3>Budget Ooty Package 2 Nights 3 Days</h3></a></div>
							</div>							
							</li>
												
							<li>
  							<div class="dib pr ofh lh0 c5px cp" onclick="location.href='http://www.azuretouradvisor.com/tour-packages/bangalore-mysore-ooty-tour-package3-nights4-days.htm'">
															<div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px"><img src="https://static.tourtravelworld.com/images/tour-package-no-image.gif"  height=""  width=""    alt="Bangalore , Mysore & Ooty Tour Package 3 Nights 4 Days" title="Bangalore , Mysore & Ooty Tour Package 3 Nights 4 Days"  class="bdr p1px"  /></div></div>
								<div class="absViewBtn"><a href="http://www.azuretouradvisor.com/tour-packages/bangalore-mysore-ooty-tour-package3-nights4-days.htm" class="dib buttonBig p5px15px lh12em c20px">View Packages</a></div>
															</div>
							<div class="al">
															<p class="mt5px alpha75">
								3 Nights / 4 Days 
								</p>
															<div class="h large lh12em mt7px"><a href="http://www.azuretouradvisor.com/tour-packages/bangalore-mysore-ooty-tour-package3-nights4-days.htm" title="Bangalore , Mysore & Ooty Tour Package 3 Nights 4 Days"><h3>Bangalore , Mysore & Ooty Tour Package 3 Nights 4 Days</h3></a></div>
							</div>							
							</li>
															
						</ul>
						</div>
						</div> 		  
						<script>
						  $(document).ready(function(){			
							$('.bxslider987').bxSlider({
								mode:'horizontal',				
								slideWidth: 214,maxSlides: 10,slideMargin:10,auto: true, 
								autoDirection:'next',
								moveSlides: 1,
								pause:2000,
								pager:false,
								pagerType:'full',
								autoControls: false, 
								controls:true, 
								autoHover:true,				
								speed:1000
							});
						  });
						  </script></div>
					     </div>
					    </section>
										<section class="pt20px pb20px absTour-Title"><br>
				<div class="wrap">      	
				<div class="myTabs mc bdr0 horizontal987 hot bdr0"><div class=""><ul class="fo lsn m0px p0px"><li class="h hd_h2"><div class="ac"><h2 class="hd_NT">Explore Tour Packages by Destination</h2></div></li></ul></div><p class="cb"></p>
				<div class="ic" id="1102_3-1">
				<div class="slider">
				<ul class="bxslider988">								
				
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-ratnagiri.htm" title="Packages in Ratnagiri" ></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-ratnagiri.htm" title="Packages in Ratnagiri">Ratnagiri Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-manali.htm" title="Packages in Manali" ><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/323321.jpeg"  height=""  width=""    alt="Bangalore , Mysore & Ooty Tour Package 3 Nights 4 Days" title="Bangalore , Mysore & Ooty Tour Package 3 Nights 4 Days"  class="bdr p1px"  alt="Packages in Ratnagiri" title="Packages in Ratnagiri"  alt="Packages in Manali" title="Packages in Manali"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-manali.htm" title="Packages in Manali">Manali Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-brussels.htm" title="Packages in Brussels" ><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/61711.jpg"  height=""  width=""    alt="Bangalore , Mysore & Ooty Tour Package 3 Nights 4 Days" title="Bangalore , Mysore & Ooty Tour Package 3 Nights 4 Days"  class="bdr p1px"  alt="Packages in Ratnagiri" title="Packages in Ratnagiri"  alt="Packages in Manali" title="Packages in Manali"  alt="Packages in Brussels" title="Packages in Brussels"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-brussels.htm" title="Packages in Brussels">Brussels Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-ooty.htm" title="Packages in Ooty" ><img src="https://dynamic.tourtravelworld.com/zsc-header/10263-classified.jpg"  height=""  width=""    alt="Ooty" title="Ooty"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-ooty.htm" title="Packages in Ooty">Ooty Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-gulmarg.htm" title="Packages in Gulmarg" ><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/52347.jpg"  height=""  width=""    alt="Ooty" title="Ooty"  alt="Packages in Gulmarg" title="Packages in Gulmarg"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-rome.htm" title="Packages in Rome" ><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/62096.jpg"  height=""  width=""    alt="Ooty" title="Ooty"  alt="Packages in Gulmarg" title="Packages in Gulmarg"  alt="Packages in Rome" title="Packages in Rome"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-rome.htm" title="Packages in Rome">Rome Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-amsterdam.htm" title="Packages in Amsterdam" ><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/62096.jpg"  height=""  width=""    alt="Ooty" title="Ooty"  alt="Packages in Gulmarg" title="Packages in Gulmarg"  alt="Packages in Rome" title="Packages in Rome"  alt="Packages in Amsterdam" title="Packages in Amsterdam"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-amsterdam.htm" title="Packages in Amsterdam">Amsterdam Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-bangalore.htm" title="Packages in Bangalore" ><img src="https://dynamic.tourtravelworld.com/zsc-header/10182-classified.jpg"  height=""  width=""    alt="Bangalore" title="Bangalore"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-bangalore.htm" title="Packages in Bangalore">Bangalore Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-pahalgam.htm" title="Packages in Pahalgam" ><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/323335.jpeg"  height=""  width=""    alt="Bangalore" title="Bangalore"  alt="Packages in Pahalgam" title="Packages in Pahalgam"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-jaipur.htm" title="Packages in Jaipur" ><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/323572.jpeg"  height=""  width=""    alt="Bangalore" title="Bangalore"  alt="Packages in Pahalgam" title="Packages in Pahalgam"  alt="Packages in Jaipur" title="Packages in Jaipur"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-coonoor.htm" title="Packages in Coonoor" ><img src="https://dynamic.tourtravelworld.com/zsc-header/10245-classified.jpg"  height=""  width=""    alt="Coonoor" title="Coonoor"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-coonoor.htm" title="Packages in Coonoor">Coonoor Tours</a></div>
					</div> 
					</li>
					
					<li>
					<div class="dib pr ofh lh0 c5px"><div class="imgFrame m0a dib w200px h180px"><div class="imgFrame picBg dtc ac vam lh0 w200px h180px">
					<a href="http://www.azuretouradvisor.com/packages-in-amboli.htm" title="Packages in Amboli" ><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/313024/323315.jpeg"  height=""  width=""    alt="Coonoor" title="Coonoor"  alt="Packages in Amboli" title="Packages in Amboli"  /></a></div></div>
					<div class="h xlarge fw6 lh15em"><a href="http://www.azuretouradvisor.com/packages-in-amboli.htm" title="Packages in Amboli">Amboli Tours</a></div>
					</div> 
					</li>
									</ul>
				</div>
				</div>
				<script>
				$(document).ready(function(){			
				$('.bxslider988').bxSlider({
				mode:'horizontal',				
				slideWidth: 214,maxSlides: 10,slideMargin:12,auto: true, 
				autoDirection:'next',
				moveSlides: 1,
				pause:2000,
				pager:false,
				pagerType:'full',
				autoControls: false, 
				controls:true, 
				autoHover:true,				
				speed:1000
				});
				});
				</script></div>
				</div><br><br>
				</section>
				
				</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:94:"Book Bangalore, Mysore & Ooty Tour Package 4 Nights / 5 Days - 4 Nights / 5 Days Tour Packages";i:2;s:170:"book bangalore, mysore & ooty tour package 4 nights / 5 days - 4 nights / 5 days tour packages, hill station tour packages, bangalore, mysore, coonoor, ooty tour packages";i:3;s:220:"Book Bangalore, Mysore & Ooty Tour Package 4 Nights / 5 Days - 4 Nights / 5 Days tour packages from Azure Tour Advisor - Get attractive 4 Nights / 5 Days Hill Station  tour packages for  Bangalore, Mysore, Coonoor, Ooty.";i:4;s:2086:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bangalore, Mysore, Coonoor, Ooty"        
		                 },
		      "description": "Bengaluru (also called Bangalore) is the capital of India's southern Karnataka state. The center of India's high-tech industry, the city is also known for its parks and nightlife. By Cubbon Park, Vidhana Soudha is a Neo-Dravidian legislative building. Former royal residences include 19th-century Bangalore Palace, modeled after England’s Windsor Castle, and Tipu Sultan’s Summer Palace, an 18th-century teak structure.

Mysore (or Mysuru), a city in India's southwestern Karnataka state, was the capital of the Kingdom of Mysore from 1399 to 1947. In its center is opulent Mysore Palace, seat of the former ruling Wodeyar dynasty. The palace blends Hindu, Islamic, Gothic and Rajput styles. Mysore is also home to the centuries-old Devaraja Market, filled with spices, silk and sandalwood.

Ooty (short for Udhagamandalam) is a resort town in the Western Ghats mountains, in southern India's Tamil Nadu state. Founded as a British Raj summer resort, it retains a working steam railway line. Other reminders of its colonial past include Stone House, a 19th-century residence, and the circa-1829 St. Stephen’s Church. Its 55-acre Government Botanical Garden lies on the slopes of Doddabetta Peak.

Coonoor is a hill station in the southern Indian state of Tamil Nadu. It’s known for its tea estates in the surrounding Nilgiri hills. Sim’s Park is a sprawling public garden with plants like rhododendrons, roses and eucalyptus trees. The steam Nilgiri Mountain Railway travels between the towns of Mettupalayam and Ooty via Coonoor. Dolphin’s Nose is a vantage point with views of the cascading Catherine Falls.",
		      "name": "Bangalore, Mysore & Ooty Tour Package 4 Nights / 5 Days",
		      "telephone": "+91-7774977511"
		    }
		    </script>
			";i:5;N;}