a:6:{i:0;s:9409:"				<div class="h1"><h1>Bhutan With Phuntshling Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.softprotravels.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.softprotravels.co.in/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Bhutan With Phuntshling Package</p>
				<br />
				
								
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Thimphu, Paro</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.softprotravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bhutan With Phuntshling Package - 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="98136"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_17/484941/165938.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/484941/165938.jpg"  width="150" height="150"    alt="Bhutan With Phuntshling Package" title="Bhutan With Phuntshling Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
											<div class="headHr">
			            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
			            </div>
			            
								<div class="data">
								<table class="w100 formTable bdr0 imgWidth">
								<tr>
								<td class="p10px vat">
								<p class="b large mb5px"><b class="dif">Day 1:</b> Arrival and Transfer to Phuentsholling
								</p>
								<p class="aj">Our representative will receive the Guest at New Jalpaiguri Railway Station (NJP) / Bagdogra Airport (IXB) / Tenzing Norgay Bus Stand (Junction) – He will be assisting for the transfer via Jaigaon to Phuentsholling - The border of India & Bhutan, Indian side is Jaigaon and the Bhutan side is called Phuentsholing - Nearly 170 kilometers 3 ½ - 4 hours drive – The drive is through Dooars - Land of breathtaking beauty, sloping tea gardens with spectacular views of the - Check into hotel – Evening free to roam around Mall or local Shopping center - Over Night stay at Phuentsholling</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> Transfer to Thimpu after Permit formalities
								</p>
								<p class="aj">After preparing permit etc - Transfer from Jaigaon / Phuentsholling to Thimpu - 180 kilometers – Nearly 6 ½ - 7 ½ hours – The drive will take guest along the Paro Chu (water or river) down stream to the confluence with the Wang Chu next the road bends upstream and travel along the Wang Chu to Thimpu - One can experience breath taking view of Mount Everest, Kanchenjunga and other famous Himalayan peaks including the sacred Jumolhari and Mount Jichu Drake - Check into hotel – Evening free to roam around Mall or local Shopping center - Over Night stay at Thimpu</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> : Thimpu sight seeing (Full day)
								</p>
								<p class="aj">Early morning breakfast – Drive and visit the Memorial Chorten (Stupa) built in memory of the third King of Bhutan who ruled the Kingdom from 1952-1972 - Next the National Library where ancient manuscripts are preserved, Wood Craft and Painting School - The handicrafts Emporium where Bhutanese textiles and other arts and crafts are displayed and can be purchased - Simtokha Dzong, one of the oldest fortresses in Bhutan built by Shabdrung Ngawang Namgyal in 1629 A.D – Back to Hotel - Overnight at hotel 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 4:</b> Thimphu to Dochula pass and transfer to Paro – Nearly 100 kilometers, nearly 3 ½ - 4 hours drive
								</p>
								<p class="aj">After early breakfast, drive up to Dochu-la pass (3,088m/ 10,130 ft) to take in the view and admire the chorten, mani wall, and prayer flags which decorate the highest point on the road - If skies are clear, the following peaks can be seen from this pass Masagang (7158 meters), Tsendagang (6960 meters), Terigang (7060 meters), Jejegangphugang (7158 meters), Kangphugang (7170 meters ), Zongphugang (7060 meters), etc - finally Gangkar puensum, the highest peak in Bhutan at 7497 meters - Next drive to Paro visiting Simtokha Dzong, the oldest fortress of the country built in 1627 on the way - Evening stroll around the area – Night stay at 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 5:</b> Departure – Transfer from Paro to Phuentsholling
								</p>
								<p class="aj">Early morning breakfast. Transfer from Paro to Jaigaon / Phuentsholling - A drive of nearly 180 kilometers, a drive of approximately 6 ½ - 7 hours - After breakfast transfer to Phuentsholing – On the way take a short stop at Chuzom, the confluence of Paro and Thimphu rivers with three different style of stupas adorn this confluence - Drive further through Chapcha and later take glimpse of famous Chukha Dam and the magnificent Vince waterfall before Gedu town - Arrive Phuenthsoling by evening and check into the hotel – Evening free to stroll around the area - Night stay at hotel in Phuentsholing.</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
															</ul>
						<br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.~^#^~* Upon cancellation, refund will be made after deducting the Retention Amount. 
* Retention Amount varies as per the number of days left before your package start date. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.softprotravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bhutan With Phuntshling Package - 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="98136"/>
						</form>
						</div>
						
						";i:1;s:70:"Book Bhutan With Phuntshling Package - 5 Nights / 6 Days Tour Packages";i:2;s:121:"book bhutan with phuntshling package - 5 nights / 6 days tour packages, valley tour packages, thimphu, paro tour packages";i:3;s:159:"Softpro Tour & Travel offers Bhutan With Phuntshling Package - 5 Nights / 6 Days tour package, budget Valley tour packages for Thimphu, Paro at exciting price.";i:4;s:416:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Thimphu, Paro"        
		                 },
		      "description": "",
		      "name": "Bhutan With Phuntshling Package",
		      "telephone": "+91-7896768942"
		    }
		    </script>
			";i:5;N;}