a:6:{i:0;s:9514:"				<div class="h1"><h1>Delhi Sightseeing Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.indiatourandvacations.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.indiatourandvacations.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Delhi Sightseeing Tour</p>
				<br />
				
								
						<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">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						1 Day 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">New Delhi</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.indiatourandvacations.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Delhi Sightseeing 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="46261"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_13/376887/91057.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/376887/91057.jpg"  width="150" height="150"    alt="Delhi Sightseeing Tour" title="Delhi Sightseeing Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Personal expenses such as table drinks telephone calls or tip etc.<br />
Any additional expenses caused by disturbance in program due to weather conditions, sickness, natural disasters, riots etc.<br />
Liability for or insurance against injury, loss of life, accidents or loss of goods.<br />
Lunch (Can be organized)<br />
Camera Charges, If Any<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> Old & New Delhi Sightseeing Tour
								</p>
								<p class="aj">After breakfast at the hotel, depart for a guided tour of Old & New Delhi.<br />
<br />
VISIT RED FORT<br />
"The Red Fort and the city of Shahjahanabad was constructed by the Emperor Shah Jahan in 1639 A.D. The layout of the Red Fort was organised to retain and integrate this site with the Salimgarh Fort.The fortress palace is an important focal point of the medieval city of Shahjahanabad. The planning and aesthetics of the Red Fort represent the zenith of Mughal creativity which prevailed during the reign of Emperor Shahjahan. This Fort has had many developments added on after its construction by Emperor.<br />
<br />
VISIT JAMA MASJID.<br />
"Jama Masjid is the principal mosque of Old Delhi in India. Commissioned by the Mughal Emperor Shah Jahan, builder of the Taj Mahal, and completed in the year 1656 AD, it is one of the Largest and best- known mosques in India". Shahjahan. The significant phases of development were under Aurangzeb and later Mughal rulers"<br />
<br />
DRIVE PAST RAJ GHAT ( THE MAHATMA GANDHI MEMORIAL )<br />
"Raj Ghat (meaning Royal Steps) is a beautiful, peaceful memorial to Mahatma Gandhi. This simple and somber black granite platform marks the site where, on January 31, 1948, Gandhi's last rites/cremation were performed. An eternal flame burns perpetually in the middle (end) of the square stone. The memorial was designed to reflect Gandhi's simple life. The inscription in the stone, "He Ram" ("Oh God"), is believed to be Gandhi's last words".<br />
<br />
Lunch At The Place Of Choice<br />
<br />
VISIT INDIA GATE AND DRIVE PAST RASHTRAPATI BHAWAN.<br />
"India Gate is one of the largest war memorials in India. Situated in the heart of New Delhi. India Gate is prominent landmark in Delhi & Commemorates the members of the erstwhile British Indian Army who lost their lives fighting for the Indian Empire in World War I & the Afghan Wars. Following India’s independence India Gate became site of the Indian Army’s Tomb of the Unknown Soldier, known as the Amar Jawan Jyoti"<br />
<br />
VISIT HIMAYUN’S TOMB<br />
"Humayun's tomb in the capital Delhi is a fine specimen of the great Mughal architecture. Built in 1570, the tomb is of particular cultural significance as it was the first garden-tomb on the Indian subcontinent. Its unique beauty is said to have inspired several major architectural innovations, culminating in the construction of the unparalleled Taj Mahal. In many ways, this magnificent red and white sandstone building is as spectacular as the famous 'monument to love' in Agra. This historic monument was erected by Humayun's queen Hamida Banu Begam (Haji Begam) at a cost of about 1.5 million. It is believed that she designed the Tomb"<br />
<br />
VISIT LOTUS TEMPLE<br />
"The Lotus Temple is the Bahai temple in Delhi, India. It is called the Lotus temple because of its lotus-like shape. It is one of the most popular tourist attractions of Delhi. It has a beautiful garden outside where tourists can relax. It was inaugurated in 1986. It is the main Bahai temple of the indian subcontinent. It is one of the most heavily visited sites in the whole world with 4 million visitors every year. It welcomes visitors irrespective of which religion they belong to. It is one of the most photographed buildings in the world<br />
<br />
VISIT QUTAB MINAR<br />
"Qutab Minar is the world’s tallest brick minaret in Delhi, India. Construction commenced in 1193 under order of India’s first muslim ruler Qutb-ud-dinAibak & the topmost storey of the minaret was completed in 1386 by FirozShah Tugluq. The Qutab Minar is notable for being one of the earliest & Most prominent examples of Indo Islamic architecture".<br />
<br />
Back to Hotel<br />
TOUR ENDS</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Sightseeing</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Personal expenses such as table drinks telephone calls or tip etc.</li><li>
Any additional expenses caused by disturbance in program due to weather conditions, sickness, natural disasters, riots etc.</li><li>
Liability for or insurance against injury, loss of life, accidents or loss of goods.</li><li>
Lunch (Can be organized)</li><li>
Camera Charges, If Any</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount * Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount. * Retention Amount varies as per the number of days left before your package start date. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.indiatourandvacations.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Delhi Sightseeing 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="46261"/>
						</form>
						</div>
						
						";i:1;s:50:"Book Delhi Sightseeing Tour - 1 Days Tour Packages";i:2;s:99:"book delhi sightseeing tour - 1 days tour packages, heritage tour packages, new delhi tour packages";i:3;s:144:"Book Delhi Sightseeing Tour - 1 Days tour packages from India Tour and Vacations - Get attractive 1 Days Heritage  tour packages for  New Delhi.";i:4;s:730:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi"        
		                 },
		      "description": "Personal expenses such as table drinks telephone calls or tip etc.
Any additional expenses caused by disturbance in program due to weather conditions, sickness, natural disasters, riots etc.
Liability for or insurance against injury, loss of life, accidents or loss of goods.
Lunch (Can be organized)
Camera Charges, If Any",
		      "name": "Delhi Sightseeing Tour",
		      "telephone": "+91-9818529130"
		    }
		    </script>
			";i:5;N;}