a:6:{i:0;s:21349:"				<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
									<div class="h1"><h1>Jewels of Maharashtra Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.worldtraveltourism.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.worldtraveltourism.in/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Jewels of Maharashtra Tour</p> 
									
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Aurangabad, Daulatabad, Lonar</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.worldtraveltourism.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Jewels of Maharashtra 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="17619"/>
						</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_2/36146/29832.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/36146/29832.jpg"  width="150" height="150"    alt="Jewels of Maharashtra Tour" title="Jewels of Maharashtra Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								West India or the Western region of India consists of the states of Goa, Gujarat and Maharashtra, along with the Union Territories of Daman and Diu and Dadra and Nagar Haveli. The regions became part of India upon independence, and took their current form after the States Reorganization Act of 1956. The states are roughly bounded by the Thar Desert in the northwest, the Vindhya Range in the north and the Arabian Sea in the west. It is highly industrialized, with a large urban population. Most of Western India was part of the Rashtrakuta Empire before colonization by the British. A major portion of Western India shares the Deccan Plateau with South India. Before the partition of India, Sindh and Balochistan were also included in this region.Any entrance/monument charges wherever applicable.<br />
Any personal expenses like Lunch, Mineral Water, Cold Drinks, porter charges, tips, telephone calls, laundry, beverages and other items not specified in the Tour Cost Includes list.<br />
Any Train/Flight fare.<br />
Any inadvertent hike in the Hotel and Transport rates.<br />
Govt. of India Service Tax @ 3.09%.								</div>
								<br />
																<div class="headHr">
					            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
					            </div>
					            
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 1:</b> Arrival & Local Sightseeing in Aurangabad
										</p>
										<p class="aj">On arrival in City take a transfer to the hotel, at leisure. Evening 4 pm. Take a tour to Historical Gates. Later towards Aurangabad Caves, situated at a distance of 5 km, nestled amidst the hills are Buddhist caves.Then proceed towards Bibi ka Maqbara : the burial place of Aurangzeb's wife, Rabia-ud-Durrani. It is an imitation of the Taj Mahal at Agra, it is popularly also known as the Mini Taj. While returning visit Panchakki. The 17th century water mill situated on Kham river side. Evening free or at leisure , you can have a drive to Mall or City shopping area.</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> Excursion To Ajanta Caves
										</p>
										<p class="aj">Post breakfast proceed to Ajanta Caves. It is world's greatest historical monument recognized by UNESCO. Arrive in Ajanta watch the scenic view of Caves from View Point. Then towards Caves, you will have to travel in pollution free vehicle, which are available from, "T" point at a distance of 10 km from the caves. After Caves visit return journey to Aurangabad. Evening at leisure. Optional visit Himroo shawls & Paithani Sari centre. Overnight stay.</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> Excursion To Ellora Caves & the Surrounding Attractions
										</p>
										<p class="aj">After breakfast proceed to Ghrishneshwar which is a famous Hindu temple dedicated to Lord Shiva and is one of the twelve Jyotirlingas, after darshan towards ELLORA CAVES: well-known for its monumental caves, Ellora is a World Heritage Site. A famous Kailasa Cave. Getting to Khuldabad : A Bhadra Hanuman Temple, popular holy place, a glass work in temple is one attraction. After visiting Aurangzeb Tomb we move towards Devgiri Fort, it is a 14th century fort city. The fort also known as Daulatabad., return to Aurangabad in evening, rest of the time at leisure.</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> Excursion To The Lonar Crater
										</p>
										<p class="aj">Today after breakfast proceed towards the Lonar Crater. Lonar impresses with the richness of its natural heritage. And, like the meteorite that put it on the map, leaves a lasting impression. It is the largest impact crater in Lonar crater is situated around 550 km from Mumbai, 160 km from Aurangabad. Lonar crater is an important geological structure. This crater formed in basalt rock of the Deccan plateau. Return to the hotel in the evening. Overnight at the hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 5:</b> Depart with Happy memories
										</p>
										<p class="aj">Today after breakfast, check out of the hotel and proceed towards railway station/airport for your onwards journey. The tour ends with happy memories.</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>Hotel</li>
																						<li>Transport</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Any entrance/monument charges wherever applicable.</li><li>
Any personal expenses like Lunch, Mineral Water, Cold Drinks, porter charges, tips, telephone calls, laundry, beverages and other items not specified in the Tour Cost Includes list.</li><li>
Any Train/Flight fare.</li><li>
Any inadvertent hike in the Hotel and Transport rates.</li><li>
Govt. of India Service Tax @ 3.09%.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Rate Card</p>
								</div>
								
    	<p class="h dif xlarge b mb5px">Rate Card</p>
    	<div class="otherDetails aj">Valid between 1st October 2013 till 31st March 2014. Except 20th December 2013 to 05th January 2014.- In Indian Rupees: For Indian Nationals only</div><br>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="data p5px">Standard</td>
				<td class="data p5px"></td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">02-03 PAX</td>
			</tr>
			<tr>
				<td class="data p5px">Per Person on Twin Sharing</td>
				<td class="data p5px">16099</td>
			</tr>
			<tr>
				<td class="data p5px">Per Person on Triple Sharing</td>
				<td class="data p5px">13199</td>
			</tr>
			<tr>
				<td class="data p5px">Child With Bed</td>
				<td class="data p5px">12499</td>
			</tr>
			<tr>
				<td class="data p5px">Child Without Bed</td>
				<td class="data p5px">9699</td>
			</tr>
			<tr>
				<td class="data p5px">Single Person Travelling with Others</td>
				<td class="data p5px">21699</td>
			</tr>
			<tr>
				<td class="data p5px">Single Person Travelling Alone</td>
				<td class="data p5px">32199</td>
			</tr>
			<tr>
				<td class="data p5px">Infant (below 05 years)</td>
				<td class="data p5px"></td>
			</tr>
		</table></div><br>								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p>3.09% Govt. service tax is extra on total billing. Extra person or Child With Bed would be provided with extra mattresses. Child below 3 years would be complimentary. Please note rooms are subject to availability. We are not holding any rooms. It is mandatory to carry photo ID card while you are on tour. All domestic Hotels/Transport rates are based on current tariff &amp; subject to change without prior notification; the revised rates will be charged extra. All arrangements made by TCIL are in the capacity of an agent only. TCIL will not be liable for claims or expenses arising from circumstances beyond our control such as accidents, injuries, delayed or cancelled flights &amp; acts of force majuere.								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.worldtraveltourism.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Jewels of Maharashtra 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="17619"/>
						</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.worldtraveltourism.in/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-mumbai.htm" title="Packages in Mumbai">Mumbai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/packages-in-nainital.htm" title="Packages in Nainital">Nainital</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.worldtraveltourism.in/packages-in-bhopal.htm" title="Packages in Bhopal">Bhopal</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.worldtraveltourism.in/packages-in-udaipur.htm" title="Packages in Udaipur">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.worldtraveltourism.in/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya</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.worldtraveltourism.in/packages-in-kodaikanal.htm" title="Packages in Kodaikanal">Kodaikanal</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.worldtraveltourism.in/packages-in-jaisalmer.htm" title="Packages in Jaisalmer">Jaisalmer</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.worldtraveltourism.in/packages-in-munnar.htm" title="Packages in Munnar">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.worldtraveltourism.in/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.worldtraveltourism.in/packages-in-bharatpur.htm" title="Packages in Bharatpur">Bharatpur</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.worldtraveltourism.in/packages-in-sanchi.htm" title="Packages in Sanchi">Sanchi</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.worldtraveltourism.in/packages-in-mysore.htm" title="Packages in Mysore">Mysore</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.worldtraveltourism.in/packages-in-aurangabad.htm" title="Packages in Aurangabad">Aurangabad</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.worldtraveltourism.in/packages-in-fatehpur-sikri.htm" title="Packages in Fatehpur Sikri">Fatehpur Sikri</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.worldtraveltourism.in/packages-in-ooty.htm" title="Packages in Ooty">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.worldtraveltourism.in/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</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.worldtraveltourism.in/packages-in-bangkok.htm" title="Packages in Bangkok">Bangkok</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.worldtraveltourism.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/bird-watching-holidays-catid.htm" title="Birdwatching Packages">Birdwatching</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.worldtraveltourism.in/valley-holidays-catid.htm" title="Valley Packages">Valley</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:65:"Book Jewels of Maharashtra Tour - 4 Nights / 5 Days Tour Packages";i:2;s:138:"book jewels of maharashtra tour - 4 nights / 5 days tour packages, hill station tour packages, aurangabad, daulatabad, lonar tour packages";i:3;s:190:"Book Jewels of Maharashtra Tour - 4 Nights / 5 Days tour packages from World Travel Tourism - Get attractive 4 Nights / 5 Days Hill Station  tour packages for  Aurangabad, Daulatabad, Lonar.";i:4;s:1527:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Aurangabad, Daulatabad, Lonar"        
		                 },
		      "description": "West India or the Western region of India consists of the states of Goa, Gujarat and Maharashtra, along with the Union Territories of Daman and Diu and Dadra and Nagar Haveli. The regions became part of India upon independence, and took their current form after the States Reorganization Act of 1956. The states are roughly bounded by the Thar Desert in the northwest, the Vindhya Range in the north and the Arabian Sea in the west. It is highly industrialized, with a large urban population. Most of Western India was part of the Rashtrakuta Empire before colonization by the British. A major portion of Western India shares the Deccan Plateau with South India. Before the partition of India, Sindh and Balochistan were also included in this region.Any entrance/monument charges wherever applicable.
Any personal expenses like Lunch, Mineral Water, Cold Drinks, porter charges, tips, telephone calls, laundry, beverages and other items not specified in the Tour Cost Includes list.
Any Train/Flight fare.
Any inadvertent hike in the Hotel and Transport rates.
Govt. of India Service Tax @ 3.09%.",
		      "name": "Jewels of Maharashtra Tour",
		      "telephone": "+91-8449030700"
		    }
		    </script>
			";i:5;N;}