a:6:{i:0;s:46842:"				<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>Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.tripfounders.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.tripfounders.co.in/packages.htm" title="Packages">Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) 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> 
						11 Nights / 12 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> New Delhi, Jaipur, Jodhpur, Sawai Madhopur, Udaipur, Agra, Ranakpur, Amber</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.tripfounders.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) 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="90911"/>
						</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_16/469119/157376.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_16/469119/157376.jpg"  width="150" height="150"    alt="Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) Tour" title="Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="headHr">
					            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
					            </div>
					            
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 1:</b> Udaipur - City Place Tour
										</p>
										<p class="aj">Arrive Udaipur you will be met and transferred to the hotel for check-in.</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> Udaipur - City Place Tour
										</p>
										<p class="aj">Our morning touring begins with a visit to the City Palace, the largest palace complex in Rajasthan. It is a spectacular complex containing decorated mirror works and galleries adorned with frescoes. The City Palace was built in 1725 of granite and marble with filigreed balconies, ornate windows and craftsmanship in glass. The royal palace walls stretch over a mile on the eastern side of the lake. Within the palace is a maze of courtyards, apartments and decorated halls. The rooms are covered with frescoes, displays of royal processions, stone and glass mosaics and ornamental doors and painted windows. You will also visit the Jagdish Temple, one of the famous temples of Udaipur. Located in the City Palace complex of Udaipur, this temple is made in the Indo-Aryan style of architecture. In 1651 Jagdish temple was built by Maharana Jagat Singh, who ruled Udaipur during 1628-53. The temple is dedicated to Lord Vishnu (LaxmiNarayan), the preserver of the Universe. It is celebrated for being the largest temple in the city of Udaipur. This three-storied temple is a wonder of architecture that comprises beautifully carved pillars, decorated ceilings, painted walls and lush halls. In those times, 1.5 million rupees were spent to raise this structure. The spire of the main temple is around 79 feet high that undoubtedly dominates the skyline of Udaipur. This shikhar (spire) is festooned with sculptures of dancers,elephants, horsemen and musicians making it truly a sight to behold. Every year, people from far and near come to visit this holy place of worship. The serenity as well as the architectural magnificence of the temple cannot be bounded in words, so one must visit this temple to get the blessings of Lord Jagdish.<br />
Continue with a boat ride on the placid waters of Lake Pichola. The beautiful Lake Pichola was enlarged by Maharana Udai Singh after he founded the city. The city palace extends a considerable distance along the east bank of the lake. From the boat you will be able to view the city of Udaipur as it rises majestically above the lake in the middle of the Rajasthan desert. You will be able to get a view of the Dhobi(laundry) ghats.<br />
Continue to visit Sahelion ki Bari Gardens built by Maharana Sangram Singh in the mid-18th Century. Literally translated as 'The Garden of the Maidens', it evokes vivid pictures of the luxurious lifestyle of the ladies of the court. The garden is said to have been made for the 48 girls that the Maharana received in his dowry! The beautifully landscaped discreet gardens are adorned by four pools with dainty kiosks and encompassed with flowerbeds, lawns, pools and fountains. A series of walls and shady trees protect these gardens. The foundation of the Sahelion ki Bari functions solely by water pressure. To add to the ambience the garden also has a lotus pool and the tingling bells add to the nostalgia of these gardens. Return to your hotel where the rest of the day is 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 3:</b> Udaipur - Jodhpur via Ranakpur
										</p>
										<p class="aj">This morning you will depart for Jodhpur stopping en route to visit the magnificent Jain temple complex of Ranakpur. This complex is believed to have been constructed anywhere between the late 14th to mid 15th centuries. Inspired by a dream of a celestial vehicle, Dharna Shah, a Porwad, is said to have commissioned it, under the patronage of Rana Kumbha, then ruler of Mewar. There is an inscription on a pillar near the main shrine stating that in 1439 Deepaka, an architect constructed the temple at the direction of Dharanka, a devoted Jain. Dedicated to Adinath, the first Jain Tirthankara, who's four - faced image is enshrined in the central sanctuary, this temple, with its distinctive domes, shikhara, turrets and cupolas rises majestically from the slope of a hill. Light colored marble has been used for the construction of this grand temple which occupies an area of approximately 60 x 62 meters. Over 1444 marble pillars, carved in exquisite detail, support the temple. The pillars are all differently carved and no two pillars are the same. It is also said that it is impossible to count the pillars. Also all the statues face one or the other statue. There is one beautiful carving made out of a single marble rock where there 108 heads of nakes and numerous tails. One cannot find the end of the tails. The image faces all four cardinal directions. In the axis of the main entrance, on the western side, is the largest image. In the assembly hall, there are two big bells weighing 108 kg whose sound echoes. Continue to Jodhpur, also known as India's Blue City. Situated at the edge of the Thar Desert, it is the largest city in Rajasthan after Jaipur.Of Rajasthan's many princely settlements, Jodhpur is among the most distinctive. This five hundred-year-old settlement was the headquarters of the Rathore Rajputs' celebrations. A six-mile-long wall surrounds the old Jodhpur City with eight gates serving as entrances. Upon arrival proceed to your hotel where the rest of the day is 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> Mehrangarh Fort & Jaswant Thada Tour
										</p>
										<p class="aj">This morning your exploration of the city includes a visit to the Meherangarh Fort. Founded by Rao Jodha in 1459, when he shifted his capital from Mandore, this majestic fort was one of the largest forts in India. Situated approximately 4 miles from Jodhpur, it overlooks the city from atop a 125m high hill. During your decent you will see Jaswant Thada on your left. This is an architectural white marble memorial built by Sardar Singh in 1899 in memory of Maharja Jaswant Singh.<br />
The monument, in its entirety, is built out of intricately carved sheets of marble. These stones are extremely thin and polished so that they emit a warm glow when the sun's rays dance across their surface. Within this cenotaph, there are also two more tombs. The Jaswant Thada is a traditional cremation ground of Jodhpur rulers. The grounds are also comprised of exquisitely carved gazebos, a beautiful multi-tiered garden, and a small lake. This afternoon stroll around the old city of Jodhpur. Life in Jodhpur focuses very much around the Fort. The bazaars of the old city are gathered around the tall clock tower with the different areas assigned to different trades. Jalori Gate and Sojati Gate are especially famous for the Bandhni fabric makers, where the fabric is tied in intricate patterns with the help of nails, beads or grain, thus preventing seepage of color into the tied areas during dyeing. Continue to explore the lively local markets and take in the heady aroma of spices. As you walk the streets you will get glimpses of many interesting things. You will pass fabric dyers dipping in yards of fabric into huge pots of boiling colors and magically transforming its appearance. The puppet makers lovingly creating his characters, which will soon entertain the crowds! Spice vendors selling exotic spices that are not just ingredients that add flavour and aroma to foods and have been known to have magical healing powers. Marvel at the infinite detail and then painstakingly pieced together in different patterns The vividness of the city remains with you as you return to your 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> Jodhpur - Jaipur
										</p>
										<p class="aj">This morning you will drive to Jaipur, a city, whose past is never too far from hand. The city of victory, Jaipur presides over the fascinating desert state and its people: surrounded by rugged hills, each crowned by a formidable fort; and beautiful palaces, mansions and gardens dotted throughout its precincts. The palaces and forts of yesteryear that were witness to royal processions and splendour are now living monuments, accepted quite naturally into the lifestyles of the people of the "pink city".</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 6:</b> Amber Fort Excursion / Jaipur Sightseeing
										</p>
										<p class="aj">This morning you will drive along the streets of Jaipur to Amber Fort, stopping en-route to view and photograph the Palace of Winds. Completed in 1799, the Palace was originally built to allow the sequestered ladies of the court to view the bustling life of the city. It is popularly known as Hawa Mahal, because of the perforated screen facade which catches the welcome breeze or Hawa. Continue on to the Amber Fort on top of an elephant just as the Maharajahs once did. On the crest of a rugged hilltop and overlooking Lake Moata, the fort evokes thoughts of legends and fairy tales. The fort has been constructed in white and red sandstone. The Fort is unique in that it's outside, an imposing and rugged defensive structure, is markedly different from its inside, an ornate, lavish interior influenced by both Hindu and Muslim styles of ornamentation. The walls of the interior of the fort are covered with murals, frescoes, and paintings depicting various scenes from daily life. Other walls are covered with intricate carvings, mosaic, and minute mirror work. This afternoon you will explore the city. Your program begins with a visit to the City Palace complex that continues to evoke the splendour of a bygone era. In an unending series of delights, from its grand aged entrance to the play of ornamental fountains, the City Palace is a dazzling showplace of Hindu and Mughal architecture. Amongst the pleasures of the Palace is a museum with ample evidence of opulence. Next to the city palace is Jantar Mantar, literally translated as Calculation Instrument. This Observatory was built between 1728 and 1734 by Maharaja Jai Singh, Jantar Mantar was built on a grand scale and was way beyond its time. This was modeled after the one that was built in Delhi, the then Mughal capital. He had constructed a total of five of which the one in Jaipur is the largest.</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 7:</b> Jaipur - Elephant Ride
										</p>
										<p class="aj">Today you will be picked up at your hotel in Jaipur and driven to "Elefantastic" for a unique and inspiring experience that is a must do for anyone visiting India! Elefantastic is owned and managed by a former elephant rider (mahout), and the organization focuses on the care and health of their animals. Your day begins by interacting with an elephant to gain insight into the lives of these amazing beasts. You will learn how to feed and care for them. If you are adventurous, a bareback ride will give you an even closer experience. If you like, you could also paint the elephant (with natural paints). Afterwards, transfer back to your hotel in Jaipur and the remainder of the day is 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 8:</b> Jaipur - Ranthambhore
										</p>
										<p class="aj">This morning you will depart for Sawai Madhopur and home to the Ranthambore National Park originally was the hunting reserve for the Maharaja of Jaipur and it was declared a game sanctuary in 1955. In 1972 this park came under Project Tiger and finally in 1980 it became a National Park. Ranthambore is one of the best locations to get a close view of the tigers with a viewing sometimes as near as 30 feet. Ranthambore is situated in the State of Rajasthan and is surrounded by hill ranges and very near to the outer fringes of the Thar Desert. Originally a hunting ground of the Maharaja of Jaipur, Ranthambore was declared a game sanctuary in 1955. In 1980, it became a national park and listed among the reserves protected under Project Tiger (1973). It sprawls over an estimated area of 400 square km. Steep crags embrace a network of lakes and rivers and on top of one of these hills is the impressive Ranthambore Fort built in the 10th century. The terrain fluctuates between impregnable forests and open bush land. As a result of stringent efforts in conservation, tigers, the prime assets of the Park, have become more and more active during the day. More than in any other park or sanctuary in India, tigers are easily spotted here in daylight. They can be seen lolling around lazily in the sun or feverishly the lakes.</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 9:</b> Ranthambhore Game Reserve
										</p>
										<p class="aj">Early this morning you will enjoy a pre-booked game drive in a canter through the Ranthambore National Park. You will be accompanied by a naturalist. This is the perfect time and place to indulge in wildlife photography. Numerous animals are found in this park and it is common to spot antelopes, nilgai, sambhar and chital (different species of deer). Down by the lake and at the water holes many other animals can be sighted like the sloth bear, wild boar, porcupine, jackal, leopard, jungle cat and crocodile. A large number of birds are also found within the park and there are over 300 different species of birds here. But of course it is the tigers that everyone omes to see. And seeing these magnificent animals in the wild is a fantastic experience. Ranthambore is one of the best locations to get a close view. They are sighted almost daily somewhere in the park - especially early in the morning. The luckiest visitors may catch a glimpse of tigers hunting, and the females taking care of their cubs. Return to your hotel for lunch. This afternoon you will set out on another game drive.</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 10:</b> Ranthambhore - Agra / Fatehpur Sikri
										</p>
										<p class="aj">A visit to its thousand-year-old ramparts provides a magnificent view of the surrounding area. Built by the Mughals, the Its breath-taking interiors display intricate workmanship, and the Hammir Court is known for its acoustics - even a whisper can be heard at the other end of the building. You will also visit the Gupt Ganga, which is a series of steps cut into the rock and leading down to the source of a perennial stream, is also a must. After your visit you will drive to Agra stopping en route to visit Fatehpur Sikri or "The City of Victory" - the deserted red sandstone city, built by the Great Mughal Emperor Akbar as his capital and palace in the late 16th century. Fatehpur Sikri (the City of Victory) was the capital of the Mughal Empire for only some 10 years. It was abandoned soon after it was built when the local wells went dry and it remains today in much the same condition that it was over 300 years ago. It is complete with palaces and mosques and used to be a town larger than London when it was originally constructed. After your visit you will continue to Agra, the capital to the Mughals in the 16th and 17th Centuries. Agra was also the repository of many of the Mughals most famous monuments. The city has long astonished visitors and many places of interest date back to the Afghans, who predated the Mughals. Arrive and proceed to your hotel. The rest of the day is at leisure.</p>
										</td>
										</tr>
										</table>					
										</div><div id="show_more_content" style="display:none;">
											<div class="data">
											<table class="w100 formTable bdr0 imgWidth">
											<tr>
											<td class="p10px vat">
											<p class="b large mb5px"><b class="dif">Day 11:</b> Agra - Taj Mahal Sunrise & Agra Fort
											</p>
											<p class="aj">Early this morning, visit the awe-inspiring Taj Mahal, built by Shah Jahan in memory of his beloved wife who died in childbirth. It is said to have taken over 22 years to build, using more than 20,000 men. Return to your hotel for rest, then later this morning, visit Agra Fort, a red sandstone building overlooking the Taj. Shah Jahan, imprisoned there by his son, eventually died in capture. Return to your hotel in the afternoon and enjoy a henna painting session. The remainder of the day is 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 12:</b> Agra - Delhi - Depart
											</p>
											<p class="aj">This morning, after a leisurely breakfast, drive to Delhi. Upon arrival, check into your hotel and the remainder of the day is at leisure.</p>
											</td>	
											</tr>
											</table>				
											</div>					
									</div>									<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
																	<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.tripfounders.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) 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="90911"/>
						</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.tripfounders.co.in/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(20)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-bangkok.htm" title="Packages in Bangkok">Bangkok</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-rudraprayag.htm" title="Packages in Rudraprayag">Rudraprayag</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-kuala-lumpur.htm" title="Packages in Kuala Lumpur">Kuala Lumpur</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-chamoli.htm" title="Packages in Chamoli">Chamoli</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-uttarkashi.htm" title="Packages in Uttarkashi">Uttarkashi</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-hong-kong.htm" title="Packages in Hong Kong">Hong Kong</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-rishikesh.htm" title="Packages in Rishikesh">Rishikesh</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-haridwar.htm" title="Packages in Haridwar">Haridwar</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-dubai.htm" title="Packages in Dubai">Dubai</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.tripfounders.co.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 spanlist dn"><a class="dif" href="http://www.tripfounders.co.in/packages-in-sydney.htm" title="Packages in Sydney">Sydney</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.tripfounders.co.in/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</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.tripfounders.co.in/packages-in-joshimath.htm" title="Packages in Joshimath">Joshimath</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.tripfounders.co.in/packages-in-chennai.htm" title="Packages in Chennai">Chennai</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.tripfounders.co.in/packages-in-bali.htm" title="Packages in Bali">Bali</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.tripfounders.co.in/packages-in-pondicherry.htm" title="Packages in Pondicherry">Pondicherry</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.tripfounders.co.in/packages-in-kufri.htm" title="Packages in Kufri">Kufri</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.tripfounders.co.in/packages-in-munnar.htm" title="Packages in Munnar">Munnar</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.tripfounders.co.in/packages-in-kanchipuram.htm" title="Packages in Kanchipuram">Kanchipuram</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.tripfounders.co.in/packages-in-ramanathapuram.htm" title="Packages in Ramanathapuram">Ramanathapuram</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.tripfounders.co.in/packages-in-berlin.htm" title="Packages in Berlin">Berlin</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 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.tripfounders.co.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(32)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(35)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(16)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.tripfounders.co.in/safari-holidays-catid.htm" title="Safari Packages">Safari</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 />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for New Delhi, Jaipur, Jodhpur, Sawai Madhopur, Udaipur, Agra, Ranakpur</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripfounders.co.in/tour-packages/shimla-calling-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/469119/160376.jpg"  alt="Shimla Calling Tour" title="Shimla Calling Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripfounders.co.in/tour-packages/shimla-calling-tour.htm" title="Shimla Calling Tour"><h3>Shimla Calling Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Chail, Kufri, Shimla</p>
															<div class="mt10px small">
							<form name="pkg_93832" id="pkg_93832" method="post" action="http://www.tripfounders.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripfounders.co.in/tour-packages/shimla-calling-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Shimla Calling Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="93832"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripfounders.co.in/tour-packages/manali-delhi-manali-delhi6-days5-nights-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/469119/156874.jpg"  alt="Manali (Delhi / Manali / Delhi (6 Days / 5 Nights) Tour" title="Manali (Delhi / Manali / Delhi (6 Days / 5 Nights) Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripfounders.co.in/tour-packages/manali-delhi-manali-delhi6-days5-nights-tour.htm" title="Manali (Delhi / Manali / Delhi (6 Days / 5 Nights) Tour"><h3>Manali (delhi / Manali / Delhi (6 Days / 5..</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Manali, Rohtang Pass</p>
															<div class="mt10px small">
							<form name="pkg_90916" id="pkg_90916" method="post" action="http://www.tripfounders.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripfounders.co.in/tour-packages/manali-delhi-manali-delhi6-days5-nights-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Manali (Delhi / Manali / Delhi (6 Days / 5 Nights) Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="90916"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripfounders.co.in/tour-packages/shimla-short-escape-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/469119/160375.jpg"  alt="Shimla Short Escape Tour" title="Shimla Short Escape Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripfounders.co.in/tour-packages/shimla-short-escape-tour.htm" title="Shimla Short Escape Tour"><h3>Shimla Short Escape Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								2 Nights / 3 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Kufri, Shimla</p>
															<div class="mt10px small">
							<form name="pkg_93831" id="pkg_93831" method="post" action="http://www.tripfounders.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripfounders.co.in/tour-packages/shimla-short-escape-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Shimla Short Escape Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="93831"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripfounders.co.in/tour-packages/shri-hemkund-sahib-yatra-from-delhi-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/469119/160709.jpg"  alt="Shri Hemkund Sahib Yatra From Delhi Tour" title="Shri Hemkund Sahib Yatra From Delhi Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripfounders.co.in/tour-packages/shri-hemkund-sahib-yatra-from-delhi-tour.htm" title="Shri Hemkund Sahib Yatra From Delhi Tour"><h3>Shri Hemkund Sahib Yatra From Delhi Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Chamoli, Joshimath, Rishikesh</p>
															<div class="mt10px small">
							<form name="pkg_94099" id="pkg_94099" method="post" action="http://www.tripfounders.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripfounders.co.in/tour-packages/shri-hemkund-sahib-yatra-from-delhi-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Shri Hemkund Sahib Yatra From Delhi Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="94099"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripfounders.co.in/tour-packages/winter-char-dham-yatra-from-delhi-for9-days8-nights-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/469119/160606.jpg"  alt="Winter Char Dham Yatra From Delhi for 9 Days / 8 Nights Tour" title="Winter Char Dham Yatra From Delhi for 9 Days / 8 Nights Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripfounders.co.in/tour-packages/winter-char-dham-yatra-from-delhi-for9-days8-nights-tour.htm" title="Winter Char Dham Yatra From Delhi for 9 Days / 8 Nights Tour"><h3>Winter Char Dham Yatra From Delhi For 9 Da..</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Haridwar, Joshimath, Rishikes..</p>
															<div class="mt10px small">
							<form name="pkg_94019" id="pkg_94019" method="post" action="http://www.tripfounders.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripfounders.co.in/tour-packages/winter-char-dham-yatra-from-delhi-for9-days8-nights-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Winter Char Dham Yatra From Delhi for 9 Days / 8 Nights Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="94019"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.tripfounders.co.in/tour-packages/short-escapeto-sariska-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_16/469119/160213.jpg"  alt="Short Escape to Sariska Tour" title="Short Escape to Sariska Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.tripfounders.co.in/tour-packages/short-escapeto-sariska-tour.htm" title="Short Escape to Sariska Tour"><h3>Short Escape To Sariska Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								2 Nights / 3 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  New Delhi, Jaipur, Sariska</p>
															<div class="mt10px small">
							<form name="pkg_93684" id="pkg_93684" method="post" action="http://www.tripfounders.co.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.tripfounders.co.in/tour-packages/short-escapeto-sariska-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Short Escape to Sariska Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="93684"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</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:98:"Book Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) Tour - 11 Nights / 12 Days Tour Packages";i:2;s:212:"book royal rajasthan with taj mahal (12 days / 11 nights) tour - 11 nights / 12 days tour packages, heritage tour packages, new delhi, jaipur, jodhpur, sawai madhopur, udaipur, agra, ranakpur, amber tour packages";i:3;s:242:"Trip Founders offers Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) Tour - 11 Nights / 12 Days tour package, budget Heritage tour packages for New Delhi, Jaipur, Jodhpur, Sawai Madhopur, Udaipur, Agra, Ranakpur, Amber at exciting price.";i:4;s:503:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "New Delhi, Jaipur, Jodhpur, Sawai Madhopur, Udaipur, Agra, Ranakpur, Amber"        
		                 },
		      "description": "",
		      "name": "Royal Rajasthan with Taj Mahal (12 Days / 11 Nights) Tour",
		      "telephone": "+91-9871512555"
		    }
		    </script>
			";i:5;N;}