a:6:{i:0;s:18599:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Mysore And Ooty 3 Star Package For 5 Days</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.enjoyhappyholidays.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.enjoyhappyholidays.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Mysore And Ooty 3 Star Package For 5 Days</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> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Bangalore, Mysore, Ooty</p>
												<p class="mb5px"><b>Price (Starting From) :</b> 
						INR 46776 Per Person						</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.enjoyhappyholidays.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Mysore and Ooty 3 Star Package For 5 Days - 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="188677"/>
						</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_20/597001/295753.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_20/597001/295753.jpg"  width="150" height="112"    alt="Mysore and Ooty 3 Star Package For 5 Days" title="Mysore and Ooty 3 Star Package For 5 Days" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div><br />
														<div class="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> Bangalore - Mysore
										</p>
										<p class="aj">Pickup from arrival and proceed to Mysore. En route visit Srirangapatna(Dariya Daulat Bagh, Gumbaz, Tippu Fort and Temple). On arrival check in to hotel. Evening proceed to Brindavan Garden. Overnight Stay at Mysore.</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
										</p>
										<p class="aj">After Breakfast Maharajaâs Palace, Chamundi Hill, Big Bull, St. Philomenaâs Church, Jagan Mohan Palace and Mysore Zoo, Overnight Stay @ Mysore.</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> Mysore - Ooty
										</p>
										<p class="aj">After Breakfast check out and proceed to Ooty. On arrival check in to hotel. Later proceed to visit Ooty Lake, Rose Garden and Botanical Garden. Overnight Stay @ Ooty.</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
										</p>
										<p class="aj">After Breakfast Proceed to visit Coonoor Sight Seeing (Simâs Park, Lamâs Rock, Dolphin Nose, Tea Factory and Tea Gardens) and Doddabetta Peak. Overnight Stay @ Ooty.</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> Ooty - Bangalore
										</p>
										<p class="aj">After Breakfast checkout and proceed to Bangalore / Mysore / Coimbatore to board your Train or Flight.</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>
																				<li>2 Nights Accommodation in mentioned or similar Hotel in Mysore</li><li>
2 Nights Accommodation in mentioned or similar Hotel in Ooty</li><li>
Daily breakfast</li><li>
Transfer & sightseeing as per the itinerary by A/C Vehicle (AC will switch off in hills)</li><li>
Min 02 pax:- A/C Indigo</li><li>
Min 04 pax:- A/C Innova</li><li>
Min 06 Pax: A/C Innova</li><li>
All toll tax, parking fees & driver allowances</li><li>
All applicable hotel taxes (GST Extra)</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Air fare .</li><li>
Any meals other then those specified in Cost Includes.</li><li>
Expenses of personal nature such as tips, telephone calls, laundry, liquor etc</li><li>
Any other item not specified in Inclusions.</li><li>
5.0 % Government service tax.</li><li>
Guide & Any Sports Activities Charges</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>Package valid only for Indian nationals.</li><li>
Air tickets and hotels are subject to availability.</li><li>
It is mandatory for guests to present valid photo identification at the time of check-in.</li><li>
The identification proofs accepted are Driving License, Voters Card, Passport, Ration Card. Without valid ID the guest will not be allowed to check in. Note- PAN Cards will not be accepted as a valid ID card.</li><li>
All transfers and sightseeing are as per the Itinerary/package and in case of Air Conditioned vehicles, It</li><li>
will be switched off in the hills.</li><li>
The inclusion of extra bed with a booking is facilitated with a folding cot or a mattress as an extra bed.</li><li>
Early check-in or late check-out is subject to availability and may be chargeable by the hotel. The standard check-in time is 1300hrs and the standard check-out time is 1000hrs.</li><li>
Any kind of personal expenses (Laundry, room service etc..) or optional tours/ extra meals are not</li><li>
inclusive in the package cost.</li><li>
The hotel reserves the right of admission. Accommodation can be denied to guests posing as a couple if suitable proof of identification is not presented at check-in. will not be responsible for any check- in denied by the hotel due to the aforesaid reason.</li><li>
In case of non-availability of above mentioned hotels similar category hotel will be provided.</li><li>
Flight Raja Travels Pvt. Ltd. reserves the right to change/modify or terminate the offer any time at its own discretion and without any prior notice.</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>46776</b> <small>/
			
			                		Adult			
			                	( With Tax )			
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 							<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>Please note Cancellation / Amendment request needs to reach us in writing. Any amendment received after booking will be treated as cancellation. The Cancellation policy is as follows:</li><li>
Cancellation Charges per person</li><li>
Up to 30 days prior to date of departure -Initial deposit amount 25% of the tour cost (Non Refundable) per person</li><li>
Between 22 days to 29 days prior to departure - 50% of tour cost ( We need 50% payment as well)</li><li>
Between 16 days to 21 days prior to departure - 75% of tour cost</li><li>
Less than 15 days prior to departure - 100% of tour cost</li><li>
This policy may vary during Apr, May and Jun months, Diwali / Dussehra and New Year period and Long Weekends will go up to 100% cancellation - After confirmation.</li><li>
Bank transaction charges apply on credit card/net banking refunds.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.enjoyhappyholidays.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Mysore and Ooty 3 Star Package For 5 Days - 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="188677"/>
						</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.enjoyhappyholidays.in/ahmedabad-tour-packages.htm" title="Ahmedabad Tour Packages">Ahmedabad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/somnath-tour-packages.htm" title="Somnath Tour Packages">Somnath</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/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.enjoyhappyholidays.in/dwarka-tour-packages.htm" title="Dwarka Tour Packages">Dwarka</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/hyderabad-tour-packages.htm" title="Hyderabad Tour Packages">Hyderabad</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/mumbai-tour-packages.htm" title="Mumbai Tour Packages">Mumbai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/katra-tour-packages.htm" title="Katra Tour Packages">Katra</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/jamnagar-tour-packages.htm" title="Jamnagar Tour Packages">Jamnagar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/kathmandu-tour-packages.htm" title="Kathmandu Tour Packages">Kathmandu</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/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.enjoyhappyholidays.in/munnar-tour-packages.htm" title="Munnar Tour Packages">Munnar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.enjoyhappyholidays.in/bangalore-tour-packages.htm" title="Bangalore Tour Packages">Bangalore</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.enjoyhappyholidays.in/puri-tour-packages.htm" title="Puri Tour Packages">Puri</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.enjoyhappyholidays.in/amritsar-tour-packages.htm" title="Amritsar Tour Packages">Amritsar</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.enjoyhappyholidays.in/junagadh-tour-packages.htm" title="Junagadh Tour Packages">Junagadh</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.enjoyhappyholidays.in/pokhara-tour-packages.htm" title="Pokhara Tour Packages">Pokhara</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.enjoyhappyholidays.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/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.enjoyhappyholidays.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.enjoyhappyholidays.in/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.enjoyhappyholidays.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(3)</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:80:"Book Mysore and Ooty 3 Star Package For 5 Days - 4 Nights / 5 Days Tour Packages";i:2;s:147:"book mysore and ooty 3 star package for 5 days - 4 nights / 5 days tour packages, hill station tour packages, bangalore, mysore, ooty tour packages";i:3;s:199:"Book Mysore and Ooty 3 Star Package For 5 Days - 4 Nights / 5 Days tour packages from Enjoy Happy Holidays - Get attractive 4 Nights / 5 Days Hill Station  tour packages for  Bangalore, Mysore, Ooty.";i:4;s:436:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bangalore, Mysore, Ooty"        
		                 },
		      "description": "",
		      "name": "Mysore and Ooty 3 Star Package For 5 Days",
		      "telephone": "+91-9775769250"
		    }
		    </script>
			";i:5;N;}