a:6:{i:0;s:24882:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP TOUR</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.besttravelagency.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.besttravelagency.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP TOUR</p>
						</div>
						</div>
						</section>
										<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					
											<p class="mb5px"><b>Duration :</b> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Bagdogra, Thimphu, Punakha</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.besttravelagency.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP 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="189493"/>
						</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_21/602162/297382.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_21/602162/297382.jpg"  height="150"  width="150"    alt="MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP TOUR" title="MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP 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> BAGDOGRA/SILIGURI/NJP - PHUNTSHOLING /4 HRS
										</p>
										<p class="aj">Meet & greet on arrival at Bagdogra Airport (IXB)/New Mal Jn(NMZ) / New Maynaguri (NMX) /NJP Railway Stationand drive towards Indo - Bhutaneese Border(Jaigaon-Phunsholing) through the Tea Estates. Phuntsholing. N/Stay in PhuntSholing</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> WELCOME TO BHUTAN AND TRANSFER TO THIMPHU/6 HRS
										</p>
										<p class="aj">After breakfast , proceed towards Thimphu via the wonderful mystic town Gedu, which is about 9000 ft above the sea and Chukha Dam. On the way, halt at Chojum to take photographs of confluence of two rivers of Bhutan, Thumpu Chu and Paro Chu. Reach Thimphu in the evening. Overnight in Thimphu</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> THIMPHU SIGHTSEEING
										</p>
										<p class="aj">After breakfast, we go for a full day sightseeing tour of Thimphu, one of the smallest capital in the world . Buddha View Point- A place from where you can get a good overview of the Thimphu valley is from the Buddha point (Kuensel Phodrang). You can pay your obeisance and offer prayers to the Buddha, the largest statue in the country and then walk around and take a glimpse of the valley. Memorial Chorten, Also known as the Thimphu Chorten, The Memorial Chorten(a stupa dedicated to world peace and prosperity in 1974 in memory of the Third King of Bhutan) Trashi Chhoe Dzong - Also called Fortress of the Glorious Religion it is situated on north of the city on west bank of the Wang Chhu. The Dzong was the site of the lavish formal coronation of the fifth King in 2008 and hosts the city's biggest annual bash, the colorful tsechu festivities. The opening times 5-6 PM Mon-Fri, 8AM-6PM on Sat & Sun.<br />
National Library - Housing an extensive collection of priceless Buddhist manuscripts; the Institute for Zorig Chusum (commonly known as the PaintingSchool) is where students undergo a 6-year training course in Bhutan's 13 traditional arts and crafts. SAARC BuildingGuest will also visit to Wonderful SSARC Building Simtokha Dzong, The monastery was built in 1627 by Zhabdrung Ngawang Namgyal. It houses the Institute for Language and Cultural Studies. The carvings behind the prayer wheel in the courtyard are a major attraction of this temple. Textile Museum - Get to know the living national art of weaving at the TextileMuseum. Exhibitions introduce major weaving techniques, styles of local dress and textiles made by women and men Takin Mini Zoo - The Takin is the national animal of Bhutan, and looks like a cross between a cow and a goat. Legend has it that the animal was created by the great Buddhist yogi, Drupa Kunley, and it can be found only in Bhutan. In the evening, return to your hotel and rest overnight after dinner.</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> THIMPHU - PUNAKHA
										</p>
										<p class="aj">After breakfast, start for Punakha . One the way , visit Dochula view point stop: The first stop after leaving Thimphu on the journey is Dochu La pass around 3100 m high and way above the clouds. Only an hour's drive from Thimphu, it offers visitors their first glimpse of the Eastern Himalayan range. From the pass the road curls its way down into the relative lowlands of the Punakha Valley. Before Thimphu was made the permanent capital of Bhutan Punakha Dzongbeautiful Punakha Dzong(known as the "The Palace of Great Happiness"),located at the confluence of the Pho Chhu (father) and Mo Chhu (mother) rivers in the Punakha-Wangdue valley. the city's dzong is one of the most picturesque of all Bhutan's ancient fortresses The dzong is joined to the mainland by an arched wooden bridge, and contains many precious relics from the days when successive kings reined the kingdom from this valley. Chimi Lhakhang (Fertility Temple): Situated on a hillock in the centre of the valley below Metshina is the yellow-roofed Chimi Lhakhang. Overnight in Punakha</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> PUNAKHA -PARO
										</p>
										<p class="aj">Punakha - Paro After breakfast start for Paro , around 4 hrs drive . and have lunch in Paro . after Lunch start for Paro local sight seeing. Drukgyal Ruin Dzong: Originally a fortress and Buddhist monastery, it is now in ruins and is located in the upper part of Paro valley. The Dzong was built by Tenzin Drukdra in 17th<br />
century 'fortress of victory' built to commemorate the victory of the Bhutanese over the invaders from Tibet National Museum of Bhutan: , Housed inside the revamped Ta-dzong building in Paro, a major attraction that has in its possession over 3,000 works of Bhutanese art, covering more than 1,500 years of Bhutan's cultural heritage . Overnight in Paro.</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> PARO SIGHTSEEING
										</p>
										<p class="aj">Taksang Monastery (Tiger's Nest Temple) -The most famous of Bhutanese monasteries. It is said that Guru Rinpoche arrived here on the back of a tigress and meditated at this monastery hence it is called Tiger's Nest. Precariously perched on the edge of 1,200 metre cliff, this monastery creates an impressive sight, and is the unofficial symbol of Bhutan. It is about 2 hour up-hill hike or ride a horse from the parking lot to the monastery. If the full hike sounds a bit tough you can hike for 1 hour to the cafetaria, a wooden tea-house restaurant which offers a good view of the monastery. After a visit to the monastery spend the evening at leisure in Paro town for some souvenir shopping and get a feel of local Paro town. Overnight in Paro.</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> PARO-LATAGURI/7 HRS.
										</p>
										<p class="aj">After breakfast , start for Lataguri , the gateway of Gorumara National Park. Overnight stay in Lataguri</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> CHERISH UR MEMORIES
										</p>
										<p class="aj">After early breakfast , Enjoy the Gorumara Jungle Safari(Direct Cost Basis) and start for Bagdogra Airport with a sweet Bhutan Holiday memory and cherish ur memories forever..</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>EP (No Meal)</li>
																			</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</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="http://www.besttravelagency.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP 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="189493"/>
						</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.besttravelagency.in/punakha-tour-packages.htm" title="Punakha Tour Packages">Punakha</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/thimphu-tour-packages.htm" title="Thimphu Tour Packages">Thimphu</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/paro-tour-packages.htm" title="Paro Tour Packages">Paro</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/agra-tour-packages.htm" title="Agra Tour Packages">Agra</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/pattaya-tour-packages.htm" title="Pattaya Tour Packages">Pattaya</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/jaipur-tour-packages.htm" title="Jaipur Tour Packages">Jaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/chitwan-tour-packages.htm" title="Chitwan Tour Packages">Chitwan</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/goa-city-tour-packages.htm" title="Goa City Tour Packages">Goa City</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/kathmandu-tour-packages.htm" title="Kathmandu Tour Packages">Kathmandu</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.besttravelagency.in/shillong-tour-packages.htm" title="Shillong Tour Packages">Shillong</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.besttravelagency.in/bagdogra-tour-packages.htm" title="Bagdogra Tour Packages">Bagdogra</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.besttravelagency.in/bangkok-tour-packages.htm" title="Bangkok Tour Packages">Bangkok</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.besttravelagency.in/singapore-city-tour-packages.htm" title="Singapore Tour Packages">Singapore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.besttravelagency.in/pokhara-tour-packages.htm" title="Pokhara Tour Packages">Pokhara</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.besttravelagency.in/colombo-tour-packages.htm" title="Colombo Tour Packages">Colombo</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.besttravelagency.in/guwahati-tour-packages.htm" title="Guwahati Tour Packages">Guwahati</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.besttravelagency.in/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="http://www.besttravelagency.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</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 Bagdogra, Thimphu, Punakha</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.besttravelagency.in/holiday-packages/beautiful-bhutan-tour7n8d.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_21/602162/297379.jpg"  height="100"  width="100"    alt="Beautiful Bhutan Tour - 7N/8D" title="Beautiful Bhutan Tour - 7N/8D"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.besttravelagency.in/holiday-packages/beautiful-bhutan-tour7n8d.htm" title="Beautiful Bhutan Tour - 7N/8D"><h3>Beautiful Bhutan Tour - 7n/8d</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> : 
								7 Nights / 8 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Thimphu, Paro, Punakha</p>
															<div class="mt10px small">
							<form name="pkg_189490" id="pkg_189490" method="post" action="http://www.besttravelagency.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.besttravelagency.in/holiday-packages/beautiful-bhutan-tour7n8d.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Beautiful Bhutan Tour - 7N/8D - 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="189490"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.besttravelagency.in/holiday-packages/amazing-bhutan-package-tour5n6d.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_21/602162/297378.jpg"  height="100"  width="100"    alt="Amazing Bhutan Package Tour -5N/6D" title="Amazing Bhutan Package Tour -5N/6D"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.besttravelagency.in/holiday-packages/amazing-bhutan-package-tour5n6d.htm" title="Amazing Bhutan Package Tour -5N/6D"><h3>Amazing Bhutan Package Tour -5n/6d</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> :  Thimphu, Paro, Punakha</p>
															<div class="mt10px small">
							<form name="pkg_189489" id="pkg_189489" method="post" action="http://www.besttravelagency.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.besttravelagency.in/holiday-packages/amazing-bhutan-package-tour5n6d.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Amazing Bhutan Package Tour -5N/6D - 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="189489"/>
							</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:117:"Book MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP TOUR - 7 Nights / 8 Days Tour Packages";i:2;s:187:"book magical bhutan -7nights/8days bagdogra-bagdogra/siliguri-siliguri/njp-njp tour - 7 nights / 8 days tour packages, hill station tour packages, bagdogra, thimphu, punakha tour packages";i:3;s:222:"BEST Travel Agency offers MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP TOUR - 7 Nights / 8 Days tour package, budget Hill Station tour packages for Bagdogra, Thimphu, Punakha at exciting price.";i:4;s:476:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bagdogra, Thimphu, Punakha"        
		                 },
		      "description": "",
		      "name": "MAGICAL BHUTAN -7NIGHTS/8DAYS BAGDOGRA-BAGDOGRA/SILIGURI-SILIGURI/NJP-NJP TOUR",
		      "telephone": "+91-8825118563"
		    }
		    </script>
			";i:5;N;}