a:6:{i:0;s:15354:"				<div class="h1"><h1>Marvellous Europe – 10 Nights 11 Days Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.oppexholidays.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.oppexholidays.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Marvellous Europe – 10 Nights 11 Days Tour</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">
						10 Nights / 11 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Paris, Venice, Rome, Zurich</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 76699 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.oppexholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Marvellous Europe – 10 Nights 11 Days 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="111911"/>
						</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_2/37817/183798.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/37817/183798.jpg"  width="150" height="150"    alt="Marvellous Europe – 10 Nights 11 Days Tour" title="Marvellous Europe – 10 Nights 11 Days Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					PARIS IBIS OR Similar<br />
ZURICH Best Western OR Similar<br />
Venice Venice Resort OR Similar<br />
Rome Best Western or Similar<br />
<br />
3N Paris + 3N Zurich + 2N Venice + 2N Rome<br />
Breakfast at hotel<br />
Activities & Transfers as per itineraryAirfare<br />
Visa<br />
Hotels not booked yet.<br />
Rates Subject to change without prior notice.<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> Paris
								</p>
								<p class="aj">Upon arriving at airport get transferred to hotel. Have Leisure time.<br />
Spend a comfortable overnight stay at hotel in Paris.</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> Paris
								</p>
								<p class="aj">Enjoy breakfast at the hotel. Later on Enjoy City tour, Lunch at Eiffel Tower, River Seine Cruise and Illuminations of Paris.<br />
Spend a comfortable overnight stay at hotel in Paris.</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> Paris
								</p>
								<p class="aj">Enjoy a buffet breakfast at the hotel.<br />
Day at leisure.<br />
Optional Tour : Disneyland Paris - 1 Day 1 Park<br />
Spend a comfortable overnight stay at hotel in Paris.</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> Paris –Zurich
								</p>
								<p class="aj">Enjoy a buffet breakfast at the hotel.<br />
Transfer by TGV9215 from PARIS to Zurich<br />
Arrival at Zurich station. Check-in to hotel & relax. Later in the evening you can take stroll in near by places. Spend a comfortable overnight stay at hotel in Zurich.</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> Zurich
								</p>
								<p class="aj">Enjoy a buffet breakfast at the hotel.<br />
Visit the famous Rhine Falls at Schaffhausen<br />
Breakfast at Hotel and Enjoy a combo tour of Zurich –local sightseeing and see the top attractions the city has to offer. Follow this up with an introduction to the trendy Zurich West district and an indulgent shopping trip at the world-famous Lindt Chocolate Factory outlet. Then enjoy The Rhine falls- located on the High Rhine between the municipalities ofNeuhausen am Rheinfall and Laufen-Uhwiesen, near the town of Schaffhausenin northern Switzerland, between the cantons of Schaffhausen and Zürich.<br />
Spend a comfortable overnight stay at hotel in Zurich.</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> Zurich
								</p>
								<p class="aj">Enjoy a buffet breakfast at the hotel. Opt for Mt Titlis tour or Opt for Black Forest – Titisee excursion. Mt Titlis : join a full day excursion tour to Mt. Titlis, one of the most popular tourist attractions in Switzerland. The mountain offers you to enjoy beautiful sights all around you from a point that is considered the highest in Central Switzerland. <br />
Black Forest – Titisee excursion to Northern Switzerland and the Black Forest, one of the most attractive landscapes of Southern Germany. Along Lake Schluchsee you reach Titisee, the very heart of the Black Forest. You will get a short introduction in how they bring those popular cuckoo clocks to sing, then you will enjoy time at leisure. Perhaps you wish to do a boat ride or enjoy the local food; the most known speciality is the Black Forest Cake, made with cherry brandy. Driving through very impressive spruce forests passing by Lenzkirch you return to Switzerland. There you will stop to admire the Rhine Falls, Europe's largest and most spectacular waterfalls Spend a comfortable overnight stay at hotel in Zurich.</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> Zurich - Venice
								</p>
								<p class="aj">Enjoy a buffet breakfast at the hotel. Get transferred to Venice by Eurail. Spend a comfortable overnight stay at hotel in Venice.</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> Venice
								</p>
								<p class="aj">Enjoy a buffet breakfast at the hotel. Enjoy City Sightseeing Hop on hop off Tour Description: Even though there are about 97 other cities or towns named Venice in the world, our Venezia is and will always be a unique city! It has been built on an archipelago of 118 small islands in 800 AC,<br />
Venice today is an extraordinary mixture of artistic and cultural influences which reach the city by land and most of all by sea. This particular city is crossed by 150 canals and connected by over 400 bridges, for this reason it can only be visited on foot or by boat. Without any doubt, admiring the beautiful city of Venezia from the sea is a unique emotion and our red boats will accompany you around the Laguna of Venice. The typical Hop On Hop service will allow you to get on and off from the boat at any stop, that way have the maximum liberty to visit the major sights and attractions. From Piazza San Marco to Ponte dei Sospiri, from the beaches of Lido to the Island of Murano, City Sightseeing will take you on a trip through history, culture and tradition in the most romantic city in the world, so all you have to do is take a seat and admire your surroundings.<br />
Departure Point: Stazione Ferroviaria Santa Lucia- Stazione Marittima (Cruise Terminal)- San Marco (Giardinetti Reali)- Lido SME (Pontile ACTV)- Murano (Pontile Fornace Ferro)- Zattere (Incurabili)- Stazione Marittima (Cruise Terminal).</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> Venice To Rome
								</p>
								<p class="aj">Enjoy a buffet breakfast at the hotel.<br />
Start from Venice to Rome by Flight Check in Hotel in Rome.</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 10:</b> Rome
								</p>
								<p class="aj">After Breakfast, Enjoy Colosseum, Roman Forum and Palatine Hill<br />
Tour Description : Take a complete tour of ancient Rome's major sights and skip the queues for the archaeological area. Gain your special access to the Colosseum and, once inside, breath the bloody past of the amphitheatre and its atmosphere lead by passionate and expert guides. Let's admire the splendid arch of Constantine, climb the Palatine hill and stomp on the legendary via sacra or sacred way.<br />
Start Time : 1: 45 PM<br />
Departure Point : Hotel Pick Up<br />
Spend a comfortable overnight stay at Hotel.</p>
								</td>
								</tr>
								</table>					
								</div><div id="show_more_content" style="display:none;">
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 11:</b> Departure Day
									</p>
									<p class="aj">Enjoy a buffet breakfast at the hotel. This is the last day of your Switzerland vacation.<br />
Have your breakfast in morning and start packing to say farewell to the land of beautiful mountains. Transfer to the airport where you will take a flight back home.</p>
									</td>	
									</tr>
									</table>				
									</div>					
							</div>							<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
													<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>
																		<li>Sightseeing</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Airfare</li><li>
Visa</li><li>
Hotels not booked yet.</li><li>
Rates Subject to change without prior notice.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<ul>
	<li>The above is only an offer. In the event of Non availability of the specified hotel, alternate or similar hotels would be offered.</li>
	<li>Rates valid strictly for the requested period.</li>
	<li>RATES FOR PRIVATE SERVICES ARE BASED ON MINIMUM PAX TRAVELING. ANY</li>
	<li>CHANGE IN THRE NUMBER OF PAX WOULD LEAD TO CHANGE IN COST</li>
	<li>Any increase in the Airlines taxes /Hotel Surcharges from the time of Booking till the departure date must be borne by pax.</li>
	<li>No refund for unutilized service</li>
	<li>All Hotels, Itinerary, restaurants subject to change without notice.</li>
	<li>Rates valid only for the dates and period requested. Change in date would lead to change of Cost</li>
	<li>Rates are based on as on date&rsquo;s exchange rate. Should there be any major fluctuation OPPEX TRAVELS AND TOURS reserve the right to furnish a fresh quote.</li>
	<li>Rates do not include Event/ Peak Season surcharges. Would be advised at the time of booking.</li>
	<li>Any damage caused to hotel rooms/ Coach during your stay, shall be payable by the passengers. OPPEX TRAVELS AND TOURS will not be liable for the same.</li>
	<li>The Company shall not accept any liability or responsibility for any damages, loss, injury, accident, death, Flight Cancelation by Airline , breakdown, or irregularity, which may occur in carrying out the tour arrangement, weather conditions, strikes, wars, quarantine or any other cause whatsoever and all such loss or expense must be borne by pax.</li>
	<li>All Tours subject to OPPEX TRAVELS AND TOURS Tour conditions</li>
</ul>												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.oppexholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Marvellous Europe – 10 Nights 11 Days 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="111911"/>
						</form>
						</div>
						
						";i:1;s:74:"Book Marvellous Europe – 10 Nights 11 Days Tour - 111 Days Tour Packages";i:2;s:139:"book marvellous europe – 10 nights 11 days tour - 111 days tour packages, valley tour packages, paris, venice, rome, zurich tour packages";i:3;s:221:"Book Marvellous Europe – 10 Nights 11 Days Tour - 111 Days tour packages from Oppex Travels & Tours ( a Division of Oppex Freight Systems - Get attractive 111 Days Valley  tour packages for  Paris, Venice, Rome, Zurich.";i:4;s:750:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Paris, Venice, Rome, Zurich"        
		                 },
		      "description": "PARIS IBIS OR Similar
ZURICH Best Western OR Similar
Venice Venice Resort OR Similar
Rome Best Western or Similar

3N Paris + 3N Zurich + 2N Venice + 2N Rome
Breakfast at hotel
Activities & Transfers as per itineraryAirfare
Visa
Hotels not booked yet.
Rates Subject to change without prior notice.",
		      "name": "Marvellous Europe – 10 Nights 11 Days Tour",
		      "telephone": "+91-9821321975"
		    }
		    </script>
			";i:5;N;}