a:6:{i:0;s:37193:"				<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>Chardham Package 8 Nights / 9 Days</h1></div>
					<p class="breadcrumb ar uu small"><a href="https://www.omsaitourandtravel.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="https://www.omsaitourandtravel.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Chardham Package 8 Nights / 9 Days</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> 
						8 Nights / 9 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Haridwar, Kedarnath, Badrinath, Yamunotri, Gangotri, Barkot</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="https://www.omsaitourandtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Chardham Package 8 Nights / 9 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="198786"/>
						</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_28/834276/319258.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_28/834276/319258.jpg"  height="150"  width="150"    alt="Chardham Package 8 Nights / 9 Days" title="Chardham Package 8 Nights / 9 Days" /></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>
													
								Chardham Yatra Starts from 1st May usually till October & November near Diwali. Haridwar & Rishikesh are gateway of Chardham Yatra which is located in Uttarakhand state. There are four Major palaces like Yamunotri, Gangotri, Kedarnath & Badrinath ji. Amongs of them Shri Badrinath Dham ji is known for Moksha & Divine. Untill & Unless you will not have to take darshan of Shri Badrinath Dham ji till then you will not complete your journey of Chardham Yatra. Each & every palace is famous for its spirituality & Divine. There are some points to clear in your mind when you do start Chardham yatra.<br />
1. Keep all the necessary belongings with you during your journey like Medicines, Warm Clothes & Sport Shoes<br />
2. You can travel by bus or by taxi only<br />
3. Book your Bus or Taxi from well known travel agent in Haridwar or Rishikesh<br />
4. kedarnath is in high altitude and 17 to 18 km trek from Sonprayag or Guptkashi so book your helicopter if you are senior citizen by government recognized helicopter companies only								</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> Haridwar - Barkot (176kms/7-8hr) / Dehradun Airport – Barkot (156kms/6-7hrs)
										</p>
										<p class="aj">Pickup from Haridwar Railway Station / Dehradun Airport to Barkot via Mussoorie visit with Kempty Fall . Arrive Barkot, transfer to your Hotel. Overnight stay at Barkot.<br />
<br />
Main Attractions :- Mussoorie & Kempty Fall <br />
<br />
Weather - Generally pleasant in summer, the temperature ranges from 25-30 degree Celsius, Winter: The Days are pleasantly cool but the nights are cold,temp ranges from 10 deg to 05 deg.</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> Barkot - Yamunotri - Barkot (45kms/3-4hrs & 6kms Trek)
										</p>
										<p class="aj">Early morning,Drive to Jankichatti/Phoolchatti, trek start from here to Yamunotri (6kms). Either by walk or by horse or by Doli at own cost. Arr. Yamunotri, One can cook rice by packing it in a cloth and dipping it in the hot water of the hot kund. Pilgrims take this cooked rice home as "Prasad". Here near the temple "Pooja" can be offered to Divya Shila, After taking bath in Jamunabai Kund's warm water and having "Darshan" of pious "Yamunaji" returning to Jankichatti. Return back to Barkot, Overnight stay. <br />
Main Attractions <br />
<br />
Yamunotri Temple: Maharani Gularia of Jaipur built the temple in the 19th Century. It was destroyed twice in the present century and rebuilt again. <br />
<br />
Surya Kund: There are a Number of thermal springs in the vicinity of the temple, which flows into numerous pools. The most important of these is Surya Kund.<br />
<br />
Divya Shila: A rock pillar, worshipped before entering the Yamunotri Temple.<br />
<br />
Weather - In summer the maximun temp is 18 degrees and the minimum is 10 degrees celsius. The days are pleasantly cool but the nights are cold.</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> Barkot - Uttarkashi (82kms/4-5hrs)
										</p>
										<p class="aj">Early Morning after breakfast drive to Uttarkashi . Uttarkashi is home to a number of ashrams and temples and also to the Nehru Institute of Mountaineering. The name of the town reflects its similarity to and location (as north of) the city of Kashi (Varanasi). Similar to Varanasi, town of Uttarkashi is situated on the Ganges, lies next to a hill named Varun Parvat, on confluence of two rivers Varuna and Asi, has a ghat called Manikarnika Ghat and has a temple dedicated to Shiva (Kashi Vishwanath Temple) in the center of the town.<br />
<br />
Main Attractions<br />
<br />
Vishwanath temple - Vishwanath temple is one of the oldest Shiva temples in Northern India. Re-constructed in 1857 by Maharani Khaneti Devi of Tehri State in the ancient architectural style. It is situated at the heart of the town. A massive iron trident, symbolic of divine mother’s, is erected and worshiped from time immemorial at the temple complex. Ganeshji, Sakshi Gopal, Markandeya Rishi’s small shrines are also part of the temple complex. Akhand Jyoti as well as Akhand Abhishek, special aarti at morning and evening are offered. As per Skunda Puran, Uttarkashi is known as ‘Saumya Varanasi’, the abode of Lord Shiva in Kaliyug and counted as one of the twelve Jyotirlingas.<br />
<br />
Shakti temple - Right in front of the Vishwanath temple is Shakti temple. It has a big ‘Trishul’ of about 6 meters in height and a circumference of 90 cms. at bottom. Though there are different views about the making of this, the upper part of it seems to be made up of iron and the lower one is of copper. As per the epics this Shakti was thrown on the devils by the Goddess Durga(Shakti), hence it gets its name. Since then this Shakti is erected over here <br />
<br />
Weather - Generally hot in summer, the temperature ranges from 30-35 degree Celsius but nights is pleasant, cold in winters.	•</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> Uttarkashi - Gangotri - Uttarkashi (100kms/4-5hours)
										</p>
										<p class="aj">Early morning drive to Gangotri, enroute at Gangnani take a holy dip in Garam Kund, further drive to Gangotri via beautiful Harsil Valley. Harsil is famous for its nature beauty and for the majestic views of the Deodar trees, and mountains. On arrival at Shree Gangotri, take a holy dip in the sacred river Ganges which is also called Bhagirathi at its origin. Perform Pooja and Darshan, after that relax for some time in the lovely surroundings. Return back to Uttarkashi. Overnight stay at Uttarkashi. <br />
<br />
Main Attractions<br />
<br />
Gangotri Temple: The temple, constructed by the Gorkha General Amar Singh Thapa in the 18th Century, is situated on the right bank of Bhagirathi. <br />
<br />
Submerged Shivling: Submerged in the river, this natural rock Shivling is the place where, according to mythology Lord Shiva sat when he received the Ganga in his matted lock. It is visible in winter months when water level decreases. <br />
<br />
Kedar Ganga Sangam: Around 100 Yards from the Ganga Temple flows the river Kedar Ganga. Starting from the Kedar Valle, this river meets the Bhagirathi on its left bank.</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> Uttarkashi – Guptkashi (220kms/8-9hrs)
										</p>
										<p class="aj">Drive straight to Guptkashi via Moolgarh & Lambgoan. Enroute you can see the beautiful river Mandakini at Tilwara. The Mandakini river comes from Kedarnath, drive alongside the river to reach Guptakashi. On arrival Check In at the Hotel, evening visit Ardh Narishwar Temple. Overnight stay at the Hotel.<br />
The name Gupt Kashi means "Hidden Benares. Mythology describes how when the Pandava brothers were searching for a glimpse of Shiva, Shivji first concealed himself at Gupt Kashi, but later fled from them further up the valley to Kedarnath, where the Pandavas finally got their wish fulfilled. There are more tangible connections as well-the Kedarnath pandas (hereditary pilgrimage priests) live in Gupt Kashi during the winter months, and after the Kedarnath temple closes for the winter, the image of Kedarnath passes through Gupt Kashi on its way to Ukhimath (across the valley), where it stays for the winter.<br />
<br />
Main Attractions :- Triyuginarayan Temple ( 20km/1-2hrs) (Optional), Mandakini river & Ard Nareshwar Temple<br />
<br />
Weather - Generally pleasant in summer, the temperature ranges from 25-30 degree Celsius. Cold in winters.</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> Guptkashi/Phata/Sersi Helipad (10 15kms) or Sonprayag (16-18 kms Trekk) - Kedarnath
										</p>
										<p class="aj">Morning drive to Phata (Helipad), transfer to Kedarnath by Helicopter or drop to Gaurikund/Sonprayag to go by walk. Visit Kedarnath Temple & return back to Phata or Gaurikund/Sonprayag. Later drive back to Guptkashi.<br />
<br />
Main Attractions <br />
<br />
Kedarnath: The Kedarnath shrine, one of the 12 jyotirlingas of Lord Shiva, is a scenic spot situated, against the backdrop of the majestic Kedarnath range. Kedar is another name of Lord Shiva, the protector and the destroyer. According to legend, the Pandavas after having won over the Kaurava in the Kurukshetra war, felt guilty of having killed their own brothers and sought the blessings of Lord Shiva for redemption. He eluded them repeatedly and while fleeing took refuge at Kedarnath in the form of a bull. On being followed he dived into the ground, leaving his hump on the surface. The r! emaining portions of Lord Shiva appeared at four other places and are worshipped there as his manifestations. The arms appeared at Tungnath, the face at Rudranath, the belly at Madhmaheshwar and his locks (hair) with head at Kalpeshwar. Kedarnath and the four above-mentioned shrines are treated as Panch Kedar.<br />
<br />
<br />
Weather - Generally hot in summer, the temperature ranges from 35-40 degree Celsius, Winter: The Days are pleasantly cool but the nights are cold, temp ranges from 20 deg to 05 deg.</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> Guptkashi – Badrinath (210kms/7-8hr)
										</p>
										<p class="aj">Drive to Badrinath via Joshimath. Check in Hotel. Later at evening visit Badrinath Temple for Aarti. Badrinath one of the 'Four Dhams' is one of the most celebrated pilgrimage spots of the country and is situated at an elevation of 3,133 meters, guarded on either side by the two mountain ranges known as Nar & Narayan with the towering Neelkanth Peak providing a splendid backdrop. This revered spot was once carpeted with wild berries. Thus the place got the name "Badri van", meaning "forest of berries". <br />
<br />
Main Atttractions :- Ukkimath, Chopta & Tungnath Temple (Optional)</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> Badrinath – Joshimath - Rudraprayag (160kms/7hr)
										</p>
										<p class="aj">Early Morning, after breakfast finish these attractions below and drive to Rudraprayag Via Joshimath. <br />
<br />
Main Attractions <br />
<br />
Tapt Kund : Natural thermal springs on the bank of the river Alaknanda, where it is customary to bathe before entering the Badrinath temple. <br />
Narad Kund : A recess in the river, near Tapt Kund, forming a pool from where the Badrinath idol was recovered. <br />
Brahama Kapal : A flat platform on the bank of river Alaknanda. Hindus perform proppitiating rites for their deceased ancestors. <br />
Sheshnetra : 1.5kms. away is a boulder having an impression of the legendary serpent, better known as the Sheshnag's eye. <br />
Charanpaduka : 3kms. away is a beautiful meadow where the footprint of Lord Vishnu is seen on a boulder. <br />
Mata Murty Temple : Devoted to the mother of Sri Badrinathji. Other important temples include Sesh Netra Temple, Urvashi Temple and Charanpaduka.<br />
Mana Village : Inhabited by an Indo-Mongolian tribe, it is the last Indian village before Tibet.<br />
Vasundhara : As the name suggests, vasundhara is a magnificent water fall. This place is 5 kms. from Badrinath out of which 2 kms. is motorable upto Mana. <br />
Bhim Pul : On the other side of Mana village, a massive rock forming a natural bridge, lies over the roaring Saraswati river. It presents a spectacular view of water thundering down through the narrow passage under the rock and is believed to have been placed there by Bhim, the second eldest among the five Pandava brothers.<br />
Vyas Gufa (cave) : Near Mana Village, this is a rock-cave where Ved Vyas is believed to have composed the Mahabharata and the pauranic commentaries.<br />
<br />
Joshimath is situated on the slopes above the confluence of the rivers Alaknanda and Dhauliganga. Of the four 'Maths' established by Adi Shankaracharya, Joshimath is the winter seat of Badrinath. The idol is brought down to Joshimath and installed in the temple for people to worship. There are many other temples in the township. The most important is the temple of Nir Singh with the idol of Lord Vishnu. The left arm of this deity is getting destroyed with time and the popular belief holds that the day the arm completely withers Badrinath valley will cease to exist and the Gods will transfer the residence into the neighboring Niti Valley at Bhavishya Badri.</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> Rudraprayag – Rishikesh - Haridwar (160kms/5hr)
										</p>
										<p class="aj">Drive to Rishikesh, the 'place of sages' is a celebrated spiritual town on the bank of Ganga and is surrounded by Shivalik range of the Himalayas on three sides. It is said that when Raibhya Rishi did hard penances, God appeared by the name of “Hrishikesh” and this area hence firth came to be known as Rishikesh.<br />
<br />
Visit Rishikesh Temples & Sight Seeing – Laxman Jhulla, Ram Jhulla, Triveni Ghat, Bharat Mandir, Shivananda Ashram. Later transfer to Dehradun Airport / Haridwar Railway Station.<br />
<br />
Tour End 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>CP (Room + Breakfast)</li>
																						<li>Hotel</li>
																				<li>CP (Room + Breakfast)</li><li>
Hotel</li><li>
Sightseeing</li><li>
Transportation according to seating capacity </li><li>
2 to 3 Star Accommodation in every place with Breakfast.</li><li>
All Taxi charges like fuel, Driver Allowances, Taxes, State Taxes, and Toll & Parking.</li><li>
All sightseeing in Enroute.</li><li>
All hotel taxes</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Any Air or Train Fare. Monument Fee / Camera Fee.</li><li>
Kind of Personal Expenses or Optional Tours/Meals Other Than Specified.</li><li>
Cost Does Not Include Any Other Thing Apart From The Itinerary Inclusions.</li><li>
Transportation as Per Itinerary Only (Not Available At Disposal).</li><li>
Surcharges Applicable During Festival, Peak Season & Special Events.</li><li>
5% GST</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>•	50% Advance Percentage of total booking amount</li><li>
•	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.</li><li>
•	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="https://www.omsaitourandtravel.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Chardham Package 8 Nights / 9 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="198786"/>
						</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="https://www.omsaitourandtravel.com/rishikesh-tour-packages.htm" title="Rishikesh Tour Packages">Rishikesh</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/haridwar-tour-packages.htm" title="Haridwar Tour Packages">Haridwar</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/badrinath-tour-packages.htm" title="Badrinath Tour Packages">Badrinath</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/kedarnath-tour-packages.htm" title="Kedarnath Tour Packages">Kedarnath</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/nainital-tour-packages.htm" title="Nainital Tour Packages">Nainital</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/mussoorie-tour-packages.htm" title="Mussoorie Tour Packages">Mussoorie</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/auli-tour-packages.htm" title="Auli Tour Packages">Auli</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/joshimath-tour-packages.htm" title="Joshimath Tour Packages">Joshimath</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/barkot-tour-packages.htm" title="Barkot Tour Packages">Barkot</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/yamunotri-tour-packages.htm" title="Yamunotri Tour Packages">Yamunotri</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/uttarkashi-tour-packages.htm" title="Uttarkashi Tour Packages">Uttarkashi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/mukteshwar-tour-packages.htm" title="Mukteshwar Tour Packages">Mukteshwar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/devprayag-tour-packages.htm" title="Devprayag Tour Packages">Devprayag</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/gangotri-tour-packages.htm" title="Gangotri Tour Packages">Gangotri</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/bharmour-tour-packages.htm" title="Bharmour Tour Packages">Bharmour</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/rudraprayag-tour-packages.htm" title="Rudraprayag Tour Packages">Rudraprayag</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="https://www.omsaitourandtravel.com/ranikhet-tour-packages.htm" title="Ranikhet Tour Packages">Ranikhet</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="https://www.omsaitourandtravel.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/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="https://www.omsaitourandtravel.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/water-rafting-holidays-catid.htm" title="Water Rafting Packages">Water Rafting</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="https://www.omsaitourandtravel.com/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(1)</b></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 Haridwar, Kedarnath, Badrinath, Yamunotri, Gangotri, Barkot</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='https://www.omsaitourandtravel.com/holiday-packages/ek-dham-tour-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_28/834276/319526.jpg"  height="100"  width="100"    alt="Ek Dham Tour Package" title="Ek Dham Tour Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.omsaitourandtravel.com/holiday-packages/ek-dham-tour-package.htm" title="Ek Dham Tour Package"><h3>Ek Dham Tour Package</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> : 
								1 Nights / 2 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Badrinath, Rishikesh</p>
															<div class="mt10px small">
							<form name="pkg_198872" id="pkg_198872" method="post" action="https://www.omsaitourandtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.omsaitourandtravel.com/holiday-packages/ek-dham-tour-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Ek Dham Tour Package - 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="198872"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.omsaitourandtravel.com/holiday-packages/holly-ganga-haridwar-rishikesh-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_28/834276/319536.jpg"  height="100"  width="100"    alt="Holly Ganga Haridwar & Rishikesh Tour" title="Holly Ganga Haridwar & Rishikesh Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.omsaitourandtravel.com/holiday-packages/holly-ganga-haridwar-rishikesh-tour.htm" title="Holly Ganga Haridwar & Rishikesh Tour"><h3>Holly Ganga Haridwar & Rishikesh 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> : 
								3 Nights / 4 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Haridwar, Rishikesh</p>
															<div class="mt10px small">
							<form name="pkg_198883" id="pkg_198883" method="post" action="https://www.omsaitourandtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.omsaitourandtravel.com/holiday-packages/holly-ganga-haridwar-rishikesh-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Holly Ganga Haridwar & Rishikesh 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="198883"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.omsaitourandtravel.com/holiday-packages/haridwar-rishikesh-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_28/834276/319528.jpg"  height="100"  width="100"    alt="Haridwar & Rishikesh Tour" title="Haridwar & Rishikesh Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.omsaitourandtravel.com/holiday-packages/haridwar-rishikesh-tour.htm" title="Haridwar & Rishikesh Tour"><h3>Haridwar & Rishikesh 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> :  Haridwar, Rishikesh</p>
															<div class="mt10px small">
							<form name="pkg_198874" id="pkg_198874" method="post" action="https://www.omsaitourandtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.omsaitourandtravel.com/holiday-packages/haridwar-rishikesh-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Haridwar & Rishikesh 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="198874"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='https://www.omsaitourandtravel.com/holiday-packages/do-dham-tour-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_28/834276/319525.jpg"  height="100"  width="100"    alt="Do Dham Tour Package" title="Do Dham Tour Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="https://www.omsaitourandtravel.com/holiday-packages/do-dham-tour-package.htm" title="Do Dham Tour Package"><h3>Do Dham Tour Package</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> :  Haridwar, Kedarnath, Badrinath, Rishikes..</p>
															<div class="mt10px small">
							<form name="pkg_198871" id="pkg_198871" method="post" action="https://www.omsaitourandtravel.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="https://www.omsaitourandtravel.com/holiday-packages/do-dham-tour-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Do Dham Tour Package - 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="198871"/>
							</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:73:"Book Chardham Package 8 Nights / 9 Days - 8 Nights / 9 Days Tour Packages";i:2;s:176:"book chardham package 8 nights / 9 days - 8 nights / 9 days tour packages, hill station tour packages, haridwar, kedarnath, badrinath, yamunotri, gangotri, barkot tour packages";i:3;s:230:"Book Chardham Package 8 Nights / 9 Days - 8 Nights / 9 Days tour packages from Om Sai Tour and Tarvel - Get attractive 8 Nights / 9 Days Hill Station  tour packages for  Haridwar, Kedarnath, Badrinath, Yamunotri, Gangotri, Barkot.";i:4;s:1478:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Haridwar, Kedarnath, Badrinath, Yamunotri, Gangotri, Barkot"        
		                 },
		      "description": "Chardham Yatra Starts from 1st May usually till October & November near Diwali. Haridwar & Rishikesh are gateway of Chardham Yatra which is located in Uttarakhand state. There are four Major palaces like Yamunotri, Gangotri, Kedarnath & Badrinath ji. Amongs of them Shri Badrinath Dham ji is known for Moksha & Divine. Untill & Unless you will not have to take darshan of Shri Badrinath Dham ji till then you will not complete your journey of Chardham Yatra. Each & every palace is famous for its spirituality & Divine. There are some points to clear in your mind when you do start Chardham yatra.
1. Keep all the necessary belongings with you during your journey like Medicines, Warm Clothes & Sport Shoes
2. You can travel by bus or by taxi only
3. Book your Bus or Taxi from well known travel agent in Haridwar or Rishikesh
4. kedarnath is in high altitude and 17 to 18 km trek from Sonprayag or Guptkashi so book your helicopter if you are senior citizen by government recognized helicopter companies only",
		      "name": "Chardham Package 8 Nights / 9 Days",
		      "telephone": "+91-9634763570"
		    }
		    </script>
			";i:5;N;}