a:6:{i:0;s:5538:"				<div class="h1"><h1>Switzerland Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.kirtytours.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.kirtytours.com/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Switzerland Tour</p>
				<br />
				
									<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>
					
					<table class="w100 formTable imgWidth">
					<tr>
					
											<td class="p10px vat imgWidth150 w150px">
						<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_1/4147/27.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/4147/27.jpg"  width="150" height="150"    alt="Switzerland Tour" title="Switzerland Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Lucerne</p>
												<p><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.kirtytours.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Switzerland 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="40"/>
						</form>
						</p>
											</td>
					</tr>
					</table>
										<br />
					
					<div class="packageTabs myTabs horizontal mc"><!--MY TABS STARTS-->
					<ul class="fo lsn m0px p0px">
					
											<li id="tab4"><a href="#data4">Tour Detail</a></li>
												<li id="tab6"><a href="#data6">Terms &amp; Conditions</a></li>
											</ul>
					
					
										
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
						Extensive Sightseeing<br />
<br />
interlaken<br />
jungfraujoch - Top of Europe. , Visit the Ice Palace, Sphinx Terraces Offering Breathtaking Views of the Altesch Glacier, the Logest Glacier in the Alps.<br />
<br />
lucerne<br />
board the Lake Lucerne Cruise from Lucerne to Alpnachstad, Then upto Mt. Pilatus - By Steepest Cogwheel Railway in the World (from May to Mid October). During Winter You Take the Bus from Lucerne to Kriens and Further to Panoramic Gondola from Kriens to Pilatus.<br />
<br />
hotel Accommodation & Night Stay<br />
interlaken : (02) Chalet Oberland or Similar.<br />
lucerne : (02) Nh Hotel / Alpina or Similar.Passport & Poe Charges.<br />
any Increase in the Airfare/ Taxes Charged By the Airlines On Your Ticket.<br />
any Increase in the Rate of Foreign Currency Leading to An Increase in Surface Transportation & Land Arrangements, Which May Come Into Effect Prior to Departure. the Rate On the Given Day Will However Apply. Roe 1 Usd = Rs. 46.<br />
porterage At Hotels, Airports & Seaports, Tips, Laundry, Wines, Mineral Water, Telephone Charges & all in Terms of Personal Nature and also Food Drinks Not Forming Part of the Group Menus.<br />
anything Not Specifically Mentioned in Tour Cost Includes Box.<br />
any Entrance Fees, Video & Camera Permits.<br />
part of the Tour Cost is Paid from the Btq Foreign Exchange Quota of the Traveler.							<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Hotel</li>
																				<li>Sightseeing</li>
																	</ul>
							<br />
														<p class="b mb5px dif">Exclusions :</p> <ul><li>Passport & Poe Charges.</li><li>
any Increase in the Airfare/ Taxes Charged By the Airlines On Your Ticket.</li><li>
any Increase in the Rate of Foreign Currency Leading to An Increase in Surface Transportation & Land Arrangements, Which May Come Into Effect Prior to Departure. the Rate On the Given Day Will However Apply. Roe 1 Usd = Rs. 46.</li><li>
porterage At Hotels, Airports & Seaports, Tips, Laundry, Wines, Mineral Water, Telephone Charges & all in Terms of Personal Nature and also Food Drinks Not Forming Part of the Group Menus.</li><li>
anything Not Specifically Mentioned in Tour Cost Includes Box.</li><li>
any Entrance Fees, Video & Camera Permits.</li><li>
part of the Tour Cost is Paid from the Btq Foreign Exchange Quota of the Traveler.</li></ul><br />
													<!--DATA4 EMD--></div>
												<div class="ic bdr" id="data6"><!--DATA6 START-->
						<br />
						* 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. ~^#^~						<!--DATA6 EMD--></div>
											
					<!--MY TABS END--></div>
					";i:1;s:55:"Book Switzerland Tour - 4 Nights / 5 Days Tour Packages";i:2;s:103:"book switzerland tour - 4 nights / 5 days tour packages, adventure tour packages, lucerne tour packages";i:3;s:156:"Book Switzerland Tour - 4 Nights / 5 Days tour packages from Kirty Tours & Travels - Get attractive 4 Nights / 5 Days Adventure  tour packages for  Lucerne.";i:4;s:1699:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Lucerne"        
		                 },
		      "description": "Extensive Sightseeing

interlaken
jungfraujoch - Top of Europe. , Visit the Ice Palace, Sphinx Terraces Offering Breathtaking Views of the Altesch Glacier, the Logest Glacier in the Alps.

lucerne
board the Lake Lucerne Cruise from Lucerne to Alpnachstad, Then upto Mt. Pilatus - By Steepest Cogwheel Railway in the World (from May to Mid October). During Winter You Take the Bus from Lucerne to Kriens and Further to Panoramic Gondola from Kriens to Pilatus.

hotel Accommodation & Night Stay
interlaken : (02) Chalet Oberland or Similar.
lucerne : (02) Nh Hotel / Alpina or Similar.Passport & Poe Charges.
any Increase in the Airfare/ Taxes Charged By the Airlines On Your Ticket.
any Increase in the Rate of Foreign Currency Leading to An Increase in Surface Transportation & Land Arrangements, Which May Come Into Effect Prior to Departure. the Rate On the Given Day Will However Apply. Roe 1 Usd = Rs. 46.
porterage At Hotels, Airports & Seaports, Tips, Laundry, Wines, Mineral Water, Telephone Charges & all in Terms of Personal Nature and also Food Drinks Not Forming Part of the Group Menus.
anything Not Specifically Mentioned in Tour Cost Includes Box.
any Entrance Fees, Video & Camera Permits.
part of the Tour Cost is Paid from the Btq Foreign Exchange Quota of the Traveler.",
		      "name": "Switzerland Tour",
		      "telephone": "+91-9021222720"
		    }
		    </script>
			";i:5;N;}