a:6:{i:0;s:20969:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>5 Days Bishkek Winter Tour</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.mnmtravels.co.in/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.mnmtravels.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> 5 Days Bishkek Winter 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> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Bishkek</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.mnmtravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="5 Days Bishkek Winter 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="188942"/>
						</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_17/495710/296344.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/495710/296344.jpg"  width="150" height="99"    alt="5 Days Bishkek Winter Tour" title="5 Days Bishkek Winter 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> Sunday – Delhi - Bishkek
										</p>
										<p class="aj">12:50 hrs on your arrival at Manas Airport (Bishkek, the capital of the Republic of Kyrgyzstan, located in the Chui valley at the northern foot of the Kyrgyz Ala-Too on an inclined plain, at an altitude of 700-900 meters above sea level).<br />
13:30 hrs Meet & Greet Service outside of arrival hall. Transfers to Bishkek City about 40 Kms from the Airport.<br />
14:30 hrs Lunch at India Restaurant.<br />
15:30 hrs Check in the Bishkek Hotel, fresh and change and Time to relax/ City Tour.<br />
20:30 hrs Transfer to the Indian Restaurant.<br />
22:00 hrs Transfers back to hotel, Night Stay at Bishkek<br />
(Night Club Activities on your own in the famous Bishkek Clubs)<br />
(Night owls will love Bishkek. Locals and every Bishkek guide will be quick to point out that the city has the most thriving club scene in Central Asia (second only to Almaty).<br />
(One Bottle of mineral water for each pax in Bus and Hotel room)</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> Monday – Bishkek (City Tour & Shopping Tour)
										</p>
										<p class="aj">07:00-10:00 hrs Enjoy buffet breakfast at your hotel coffee shop<br />
10:30 hrs Move for the Panoramic City<br />
("Bishkek" means a stick for beating koumiss - the national drink of sour mare's milk. Bishkek - one of the major cities of Central Asia and the largest city in Kyrgyzstan with a population of over 800,000 people, the<br />
multinational city with over 80 nationalities. The main language of international communication is Russian).<br />
You will visit Ala Too Square, Opera and Ballet Theater, Stat History Museum, Fine Arts Museum, World National Library.<br />
(Bishkek is influenced by the Soviets, and you can enjoy quite a number of typical soviet-style architecture<br />
(Philharmonia – concert hall, government building, Historic Museum, Monument for the Great War of the Native Country). It is interesting to note that Bishkek is the only city in Central Asia, where there is a monument to Lenin on the Central Square).<br />
13:30 hrs Lunch at Indian restaurant.<br />
14:30 hrs Transfer to the shopping tour<br />
Visit Bishkek Mall (Bishkek Park , Bishkek City Shopping mall )<br />
19:30 hrs Returns back to hotel – Time to Relax and Freshen Up.<br />
20:00 hrs Transfers to Indian Restaurant for Dinner.<br />
22:00 hrs Transfers back to hotel, Night Stay at Bishkek<br />
(Night Club Activities on your own in the famous Bishkek Clubs).<br />
(One Bottle of mineral water for each pax in Bus and Hotel room)</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> Tuesday – Bishkek – (Ala Archa Nature Park + Shopping Tour)
										</p>
										<p class="aj">07:00-10:00 hrs Enjoy buffet breakfast at your hotel coffee shop<br />
10:30 hrs Transfers to Ala-Archa Nature Park 35 km from Bishkek.<br />
(Ala Archa means "bright juniper", and indeed there are juniper bushes growing all through this beautiful gorge. The area is stunning, probably best described as Alpine; abundant with wild flowers, bubbling mountain<br />
streams, glaciers and vast mountain panoramas. It's a great spot to do a bit of hiking as most of the canyon is protected as part of a Krgyz National Nature Park. The Gorge itself is 35 kms long and the surrounding<br />
mountains are massive, home to some of the largest glaciers in all of Kyrgyzstan).<br />
14:30 hrs Return from Ala-Archa Nature Park and Lunch at Indian restaurant.<br />
15:30 hrs Shopping tour, you will be visiting Market.<br />
(The bazaar is a fun place to shop because the food is fresh and the clothes are cheap! You will love going to the bazaars in Bishkek, and it’s even more fun if you get yourself into tri-lingual conversations. Just be prepared to have to haul your goods back home afterwards).<br />
18:30 hrs returns back to hotel, fresh and change<br />
20:00 hrs Transfers to Indian Restaurant for Dinner<br />
22:00 hrs Transfer Back to the Hotel<br />
(Night Club Activities in the Night Bar in Bishkek on your own).<br />
(One Bottle of mineral water for each pax in Bus and Hotel room)</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> Wednesday – Bishkek – (Kashka-Suu Ski Resort + Shopping Tour)
										</p>
										<p class="aj">07:00-10:00 hrs Enjoy buffet breakfast at your hotel.<br />
Kashka-Suu ski resort is located 2,100 meters above sea level, 35 km from the capital of Kyrgyzstan - Bishkek.<br />
Fresh air, stunning panorama of the the Great Kyrgyz Range and the Chuy valley, great tracks and the quality of service contribute to a good winter holiday in Kyrgyzstan.<br />
The resort facilities include a restaurant, bar, sauna, open air cafe, two conference halls, a winter skating rink, bandstand, playground, parking for 100 cars, as well as the 1.5 kilometer chairlift that will take you to the<br />
observation deck at the height of 2200 m, as well as six ski runs of various levels of difficulty:<br />
There is one aerial ropeway chairlift and ropeway trackback lift. The ropeway chairlift is 1165 to 1365 m with elevation ranging from 110 to 380 m with an average speed of the cable car of about 2 m / sec. Length of the ropeway trackback is 200 to 860 m, with elevation ranging from 60 to 260 meters, tow lift is moving at an average speed of 2.5 m / sec.<br />
14:00 hrs Lunch at the Local Restaurant on route to Bishkek<br />
15:00 hrs Transfer back to Bishkek Hotel, fresh and change and Time to relax.<br />
20:00 hrs Transfers to Indian Restaurant for Dinner<br />
22:00 hrs Transfers back to hotel, Night Stay at Bishkek<br />
(Night Club Activities on your own in the famous Bishkek Clubs).<br />
(One Bottle of mineral water for each pax in Bus and Hotel room)</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> Thursday –Bishkek - Delhi
										</p>
										<p class="aj">03:00 hrs Check out from the hotel.<br />
04:00 hrs Transfers back to Manas International Airport with everlasting memories of Kyrgyzstan.<br />
(One Bottle of mineral water for each pax in Bus)</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>
																				<li>Return Economy Class Air Tickets Ex-Delhi-Bishkek-Delhi(Direct Flight)</li><li>
04 Nights Accommodation in BISHKEK Hotel as per the confirmation</li><li>
Excursions as shown in the itinerary with entrance fees</li><li>
LOI support from Kyrgyzstan</li><li>
Group Tourist Visa processing & Fee at the Embassy of Kyrgyzstan</li><li>
Buffet Breakfast + Lunch + Dinner</li><li>
½ Ltr water bottles each in Hotel Room & Coach (1 Ltrs of water per person per day)</li><li>
English speaking guide throughout the program in Kyrgyzstan</li><li>
All Transfers & Sightseeing on SIC Basis as per the group size</li><li>
Rates are Nett and Non Commissionable</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Personal expenses like laundry, SIM cards, tips</li><li>
Charges in the Hotel for any additional Services</li><li>
Personal Insurance</li><li>
Anything Not Mentioned Above</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></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></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.mnmtravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="5 Days Bishkek Winter 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="188942"/>
						</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.mnmtravels.co.in/new-delhi-tour-packages.htm" title="New Delhi Tour Packages">New Delhi</a> <b class="alpha50 bn small">(18)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/manali-tour-packages.htm" title="Manali Tour Packages">Manali</a> <b class="alpha50 bn small">(18)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/shimla-tour-packages.htm" title="Shimla Tour Packages">Shimla</a> <b class="alpha50 bn small">(17)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/dalhousie-tour-packages.htm" title="Dalhousie Tour Packages">Dalhousie</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/chandigarh-city-tour-packages.htm" title="Chandigarh City Tour Packages">Chandigarh City</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/dharamshala-tour-packages.htm" title="Dharamshala Tour Packages">Dharamshala</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/khajjiar-tour-packages.htm" title="Khajjiar Tour Packages">Khajjiar</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/amritsar-tour-packages.htm" title="Amritsar Tour Packages">Amritsar</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/katra-tour-packages.htm" title="Katra Tour Packages">Katra</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/pushkar-tour-packages.htm" title="Pushkar Tour Packages">Pushkar</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.mnmtravels.co.in/jodhpur-tour-packages.htm" title="Jodhpur Tour Packages">Jodhpur</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.mnmtravels.co.in/jaipur-tour-packages.htm" title="Jaipur Tour Packages">Jaipur</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.mnmtravels.co.in/tashkent-travel-tour-packages.htm" title="Tashkent Tour Packages">Tashkent</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.mnmtravels.co.in/jaisalmer-tour-packages.htm" title="Jaisalmer Tour Packages">Jaisalmer</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.mnmtravels.co.in/bishkek-tour-packages.htm" title="Bishkek Tour Packages">Bishkek</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.mnmtravels.co.in/bikaner-tour-packages.htm" title="Bikaner Tour Packages">Bikaner</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.mnmtravels.co.in/agra-tour-packages.htm" title="Agra Tour Packages">Agra</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.mnmtravels.co.in/baku-tour-packages.htm" title="Baku Tour Packages">Baku</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.mnmtravels.co.in/udaipur-tour-packages.htm" title="Udaipur Tour Packages">Udaipur</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.mnmtravels.co.in/mount-abu-tour-packages.htm" title="Mount Abu Tour Packages">Mount Abu</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.mnmtravels.co.in/almaty-tour-packages.htm" title="Almaty Tour Packages">Almaty</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.mnmtravels.co.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.mnmtravels.co.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.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.mnmtravels.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(18)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.mnmtravels.co.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</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:65:"Book 5 Days Bishkek Winter Tour - 4 Nights / 5 Days Tour Packages";i:2;s:113:"book 5 days bishkek winter tour - 4 nights / 5 days tour packages, adventure tour packages, bishkek tour packages";i:3;s:184:"Book 5 Days Bishkek Winter Tour - 4 Nights / 5 Days tour packages from Monks & Monkeys Travels Private Limited - Get attractive 4 Nights / 5 Days Adventure  tour packages for  Bishkek.";i:4;s:405:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bishkek"        
		                 },
		      "description": "",
		      "name": "5 Days Bishkek Winter Tour",
		      "telephone": "+91-8368523999"
		    }
		    </script>
			";i:5;N;}