a:6:{i:0;s:27414:"				<div class="h1"><h1>Europe 15 Days Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.justravels.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.justravels.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Europe 15 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">
						14 Nights / 15 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">London, Paris, Venice, Florence, Brussels, Amsterdam, Innsbruck, Bern</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 228000 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.justravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Europe 15 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="76188"/>
						</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_15/436011/135272.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/436011/135272.jpg"  width="150" height="150"    alt="Europe 15 Days Tour" title="Europe 15 Days Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Highlights<br />
<br />
Value-for-Money Holiday you will cherish for a lifetime.<br />
Visit 09 countries in 15 days: UK, France, Netherlands, Belgium, Germany, Switzerland, Austria, Vatican City and Italy.<br />
A Complete all-inclusive tour at an honest price. No hidden cost!!<br />
All not-to-miss attractions and sightseeing with minimum travel time.<br />
Accommodation in top quality hotels.<br />
Delicious unlimited Indian Vegetarian / Jain / Non-Vegetarian meals.<br />
Continental buffet breakfast daily.<br />
Dinners will be served in the comfort of your hotel and not in restaurants in selected cities.<br />
Choice of local meals in in selected cities.<br />
Travel in a luxury Air Conditioned Coach throughout the tour.<br />
Drivers’ tips included.<br />
Affectionate, Multilingual & Knowledgeable Tour Manager accompanying you throughout the tour.<br />
City tour of London with a local guide.<br />
Entrance to Madame Tussauds Wax Museum.<br />
Ride on London Eye - the millennium landmark.<br />
Witness Changing of the Guards at Buckingham Palace.<br />
A unique experience - Travel under the English Channel through Le Shuttle or by Ferry from Dover to Calais.<br />
City tour of Paris with a local guide.<br />
Visit to the 3rd level of the Eiffel Tower.<br />
Full day excitement and thrill at Euro Disney.<br />
Romantic Cruise on the Seine River.<br />
Entrance to Louvre Museum.<br />
Guided tour of the magnificent Versailles Palace.<br />
The World Famous extravagant Lido Show.<br />
The magnificent Grand Place and Mannekin Pis Statue.<br />
Photo stop at the Atomium. Enjoy Amsterdam on a Canal cruise.<br />
Visit the famous Dam Square - the heart of Amsterdam.<br />
Visit Madurodam - Holland in miniature.<br />
Walk through the world’s largest and the most beautiful floral display at Kuekenhof (till 20th May).<br />
Marvel at the imposing Cologne Cathedral - a Gothic masterpiece. Visit the heart of beautiful Black Forest.<br />
Demonstration of cuckoo clock making at DrubbaWitness breath-taking mountain peaks and glaciers at Mt.Titlis<br />
Ride in the world’s first revolving cable car.<br />
Walk on the Highest suspension bridge in Europe - Titlis Cliff Walk Full Orientation tour of Lucerne. Cog wheel train ride to Jungfraujoch - Top of Europe.<br />
Visit scenic Interlaken.<br />
See the Maria Theresien Strasse and the Golden Roof.<br />
Visit the Swarovski Crystal Headquarters and Museum.<br />
St. Mark’s square by Private boat.<br />
Explore Venice in a classic Venetian Gondola.<br />
Visit the famous Murano Glass showroom.<br />
Guided City tour of Florence with a local English speaking guide.<br />
Visit Square of Miracles.<br />
Photo-stop at the Leaning Tower.<br />
Guided City tour of Rome & Vatican with a local English speaking guide.<br />
Visit to Trevi Fountain.<br />
Visit the Vatican Museum – see sculptures and masterpieces of Renaissance art.<br />
Visit to the awe-inspiring Sistine Chapel.<br />
Visit the magnificent St. Peter’s Basilica.<br />
<br />
LONDON:<br />
<br />
Guided City Tour of London.<br />
Visit to London Eye.<br />
Visit to Madame Tussauds.<br />
Le Shuttle / Ferry from Folkstone / Dover to Calais.<br />
<br />
PARIS:<br />
<br />
Visit to Eiffel Tower. (3rd floor)<br />
Paris River Seine Cruise.<br />
Guided city Tour of Paris.<br />
Entrance to Euro Disney. (Disney Studio or Disney Park)<br />
Guided tour of Versailles Palace.<br />
Entrance to Louvre Museum.<br />
Extravagant Lido Show.<br />
<br />
BRUSSELS:<br />
<br />
Orientation Tour including the Grand Place, Mannekin Pis.<br />
Photostop at Atomium.<br />
<br />
THE NETHERLANDS:<br />
<br />
Amsterdam Canal Cruise.<br />
Visit to Kuekenhof Gardens (Till 20th May)<br />
Visit to Madurodam Model Village.<br />
<br />
GERMANY:<br />
<br />
COLOGNE: Visit the Gothic Cathedral – “Dom”<br />
BLACK FOREST: Visit Drubba Cuckoo Clock outlet; Enjoy the scenic drive.<br />
<br />
SWITZERLAND:<br />
<br />
Cable car ride to Mount Titlis.<br />
Orientation tour of Lucerne.<br />
Train Journey to Jungfraujoch - Top of Europe excursion.<br />
Orientation tour of Interlaken.<br />
Visit to Rhine Falls at Schaffhausen.<br />
<br />
AUSTRIA:<br />
<br />
INNSBRUCK: Orientation Tour including the Hofburg and Golden Dachl.<br />
WATTENS: Visit to Swarovski Crystal Worlds and Museum.<br />
<br />
ITALY:<br />
<br />
VENICE: Private Boat ride to St. Mark’s Square, visit St. Mark’s Square - see the Bridge of Sighs, Doges Palace and the Basilica di San Marco, Gondola Ride, demonstration at Murano Glass Showroom.<br />
PISA: Visit Field of Miracles – see Cathedral, Baptistry and Leaning Tower.<br />
FLORENCE: View of the city from Piazzale Michelangelo; Guided Walking city tour.<br />
ROME: Guided City Tour including a visit to the Vatican Museums and St. Peter’s Basilica.<br />
<br />
<br />
MEALS<br />
<br />
Daily Continental Buffet Breakfast.<br />
13 Indian Jain/Vegetarian/Lunches.<br />
14 Indian Jain/Vegetarian/Non-Vegetarian Dinners.<br />
Choice of Local Meals in 05 different places.<br />
<br />
<br />
ACCOMMODATION:<br />
<br />
02 nights at Hotel Crown Plaza / Heston Hyde / Radisson Blu or similar in London.<br />
03 nights at Hotel Novotel / Residhome / IBIS Styles or similar in Paris.<br />
01 nights at Hotel NH / Carlton De Burg or similar in Belgium / Netherland or similar.<br />
01 night at Hotel Micheal / NH / Achat Plaza or similar in Heppenheim / Mannheim.<br />
03 night at Hotel Seedamm Plaza / Thessoni / Amaris / Apart hotel by Hilton or similar in Central Switzerland.<br />
01 night at Hotel Alp / Bon Alpina / Kronen or similar in Seefeld / Innsbruck.<br />
01 night at Hotel Europa / Unaway / NH or similar in Occhiobello / Rovigo or similar.<br />
01 night at Hotel A Point / Meditur / Da Vinci or similar in Tuscany or similar.<br />
01 night at Hotel Best Western / Antonella / Melia or similar in Rome.<br />
<br />
MEDICAL INSURANCE<br />
<br />
Normal insurance charges for the duration of the tour are included in the tour price. However, any passenger above the age of 60 years and those passengers who wish to extend their stay will be required to pay additional charges.Government Service Taxes (GST 4.5%) as applicable on the total tour price.<br />
Personal expenses like porterage, laundry, wines, mineral water, mini bar, telephone calls etc.<br />
Any extra meals not included in the itinerary.<br />
Any excursions, local guides or entrance fees other than that mentioned in the itinerary.<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> Fly into London, the financial, political and cultural heart of Britain. Ride the London Eye.
								</p>
								<p class="aj">Welcome to one of the world's most visited cities - London. Meet your friendly Travel Professional outside the baggage hall and proceed to our hotel. Check in and relax for a short while. Later we will proceed to London Eye, which stands at 135 meters tall overlooking the river Thames. Get splendid views of the city while you take a 30 minute ride and get a different glimpse of London.<br />
Overnight in London.</p>					
									<p><b>Meals : </b> (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 2:</b> Guided city tour of London with Changing of Guards. Visit to the famous Madame Tussauds wax museum.
								</p>
								<p class="aj">This morning we proceed on a city tour with our expert local guide. We will visit important landmarks like Hyde Park, Big Ben, Houses of Parliament, Westminster Abbey, Trafalgar Square, Piccadilly Circus, Buckingham Palace, Tower Bridge, River Thames, and many more. We will witness the Changing of the Guards at Buckingham Palace (subject to operational). Next we proceed to Madame Tussauds wax museum. Be enthralled by world’s largest wax collection and don’t forget to take a photograph with one of the famous   ersonalities present.<br />
<br />
Overnight in London. (Breakfast/Lunch/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 3:</b> Onwards to Paris, the City of Lights and Glamour. Lido Show.
								</p>
								<p class="aj">Check out of your hotel. We travel by Le shuttle / Ferry to Paris- The fashionable and elegant city known for its haute couture, renowned museums, breath-taking beautiful monuments and sensational cabarets. On arrival in Paris, proceed on a fascinating city tour. Marvel at the finest Parisian sights – the Champs Elysees, Alexander Bridge, Invalides, Arc de Triomphe, Concorde Square, Opera House, and several others. Later in the night witness the world famous Lido Show.<br />
<br />
Overnight in Paris. (Breakfast/Lunch/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> An exciting and adventurous Trip to Euro Disney, (choice of Disney Park or Disney Studios). Enjoy th
								</p>
								<p class="aj">Today, experience a n exciting day at the amusement park. You may choose between Disney Park and enjoy the several rides OR visit the Disney Studios and be astounded by the outstanding stunt shows, watch a film being made and see real-life sets used for creating blockbuster movies. Highlight of the evening will be a romantic cruise down the River Seine.<br />
<br />
Overnight in Paris. (Breakfast/Lunch/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 5:</b> Visit to the World Renowned Louvre Museum, the Eiffel Tower 3rd Level, and a visit to the Versailles
								</p>
								<p class="aj">After breakfast, we visit the world renowned Louvre Museum known for its collection of Artefacts and Paintings and see the enigmatic smile of ‘Mona Lisa’, Leonardo da Vinci’s masterpiece. We proceed to the Versailles Palace of Louis XIV. The opulent Palace served as the royal residence for France's kings and queens for more than a century. Our guided tour will include the Chateau, the Grande Apartments, the Chapel, the Hall of Mirrors and many more. We return to Paris, to the iconic Eiffel Tower, get a stunning view of the city from the 3rd level.<br />
<br />
Overnight in Paris. (Breakfast/Lunch/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 6:</b> Onto Brussels, Visit Keukenh of Gardens (till 20th May). Visit the miniature park - Madurodam.
								</p>
								<p class="aj">Today after the breakfast we proceed to Brussels, Headquarter of the European Union and capital of Belgium. On arrival in Brussels we visit one of Europe's most beautiful squares, the Grand Place, home to the medieval Town Hall and the fabled Mannekin Pis statue. Drive past St. Michael’s Church and stop for a photograph at the Atomium. Relax in your coach as we proceed to the city of Lisse to tour the legendary Kuekenhof Gardens (till the 20th May), where vast numbers of tulips, daffodils and hyacinths create dazzling patches of colour. The park is said to be the greatest flower show on earth. Later we visit Madurodam, a miniature park to see a range of perfect 1:25 scale model replicas of famous Dutch monuments and projects.<br />
<br />
Overnight in Netherland. (Breakfast/Lunch/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 7:</b> Amsterdam with Canal Cruise. Proceed to Cologne - the largest Cologne Cathedral.
								</p>
								<p class="aj">Check out and proceed on a cruise of the city of Amsterdam in your glass-topped boat, drifting through the canals. Thrive<br />
<br />
on the city’s vibrant past with its 1,000 bridges and quaint old houses. Next we proceed to Cologne, famous for its Eau de Cologne. Here you will visit the imposing Cologne Cathedral, a Gothic masterpiece with its 515 feet twin towers, a World Heritage site and the largest cathedral in Northern Europe.<br />
<br />
Overnight in Germany. (Breakfast/Lunch/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 8:</b> Travel to the Heart of the Black Forest. Be awestruck at Europe’s most stunning site - The Rhine F
								</p>
								<p class="aj">After check out, relax in your coach as we drive to the heart of the Black Forest, known for its picturesque woods, consisting of pines and firs. You will be enthralled at the scenic beauty of the quaint villages in the heart of Black Forest region. Witness a demonstration of how cuckoo clocks are made. Sit back and enjoy the scenic beauty as we drive towards Switzerland. We halt at Schaffhausen, where you see the magnificent Rhine Falls - Europe’s biggest and most spectacular falls.<br />
<br />
Overnight in Switzerland. (Breakfast/Lunch/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 9:</b> Highlight of the tour, a magical Alpine excursion of amazing Jungfraujoch –and a visit to scenic I
								</p>
								<p class="aj">Today’s magical Alpine excursion is to Jungfraujoch -the Top of Europe. Board a cogwheel train to reach the highest railway station in Europe at 11,333 feet, to an Alpine wonderland of ice and snow. Visit the Ice Palace and experience a breath-taking panoramic view from the Sphinx Observation Terrace and view the longest glacier in the Alps - the Altesch Glacier. Later we drive to Interlaken, a unique and fascinating city situated between two lakes of Thun and Brienz.<br />
<br />
Overnight in Switzerland. (Breakfast/Lunch/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 10:</b> Visit Mt. Titlis- Stunning scenery and an exciting ride up the snow-clad Swiss Alps in Rotair – th
								</p>
								<p class="aj">Today, we get a view of magnificent mountain peaks and glacier crevasses on your trip to Mt. Titlis in the world’s first revolving cable car, Rotair. Mt. Titlis is central Switzerland’s loftiest peak, covered with snow and ice and a visual treat. At 10,000 feet get an unrestricted 360 degree view of the Alpine landscape. Experience the TITLIS Cliff Walk – the highest suspension bridge in Europe. Later we drive on to one of the most beautiful cities of Switzerland - Lucerne. Visit the Lion Monument and the Kapell Brucke (wooden bridge). You have some free time to shop for famous Swiss watches, knives, souvenirs and chocolates.<br />
<br />
Overnight in Switzerland. (Breakfast/Lunch/Dinner)</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> Drive to Innsbruck and Visit Swarovski Crystal Museum – the dazzling world of crystals.
									</p>
									<p class="aj">This morning, we drive to Innsbruck. On an orientation tour of this beautiful city, see the Golden Roof with its gold plated copper tiles, a characteristic landmark of Innsbruck, walk down cobblestone pathways of Maria Theresien Strasse and re live medieval European culture. The splendid Alps in the background provide a perfect picture-postcard setting. Later we will proceed to Wattens, to visit the Swarovski World of Crystals and marvel at the crystalline works of art. A great opportunity to buy a souvenir for your family.<br />
<br />
Overnight in Austria. (Breakfast/Lunch/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 12:</b> Romantic Venice – Sprawling squares, beautiful monuments, serpentine canals and mysterious alleywa
									</p>
									<p class="aj">Check out of your hotel and we proceed towards Italy. Arrive at the pier in Venice, where we board a private boat. Enjoy your Indian lunch on board while you sail over the Guidecca Canal, past the Adriatic Sea to arrive at St. Mark’s Square – the main square of Venice, where the only traffic is that of humans and pigeons! St. Mark's Basilica, is one of the best examples of Byzantine architecture anywhere in the world. The famed Bell Tower and the Clock Tower, display not only the time of day, but also the dominant sign of the Zodiac and the current phase of the moon. Continueon to the Bridge of Sighs, made of white limestone, that passes over the Rio di Palazzo, connecting the old prisons with interrogations rooms at the Doge's Palace. Treasure a romantic gondola ride, in a flat bottomed Venetian rowing boat, amidst the stunning backdrop of baroque buildings. This truly is one of the best ways to enjoy this enchanting city. Also witness a Murano Glass demonstration and marvel at the intricate and colourful glass artefacts, hand-crafted by master  raftsmen. We return to the pier and later proceed for dinner.<br />
<br />
Overnight in Padova. (Breakfast/Lunch/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 13:</b> Guided city tour of Florence. A visit to the remarkable and famous Leaning Tower of Pisa.
									</p>
									<p class="aj">After a morning check out we drive to Florence – cradle of the Renaissance. Along with your English speaking local guide, take in the culture with a tour of the historic city. Visit the Duomo, the city’s most iconic landmark, the Campanile, the Baptistery with its Gates to Paradise, Piazza Della Signoria – an open air museum crammed with Renaissance sculptures, edged by historic cafes and presided over by the magnificent Palazzo Vecchio, the famed Ponte Vecchio bridge across the river Arno and Santa Croce where some of the famous Italian personalities like Michelangelo, Galileo, Dante Alighieri, father of the Italian language, are buried. Next, drive to Piazzale Michelangelo to get a spectacular city panorama, later we proceed onwards to Pisa –the Square of Miracles and see the remarkable Leaning Tower of Pisa. Don’t forget to take a photograph of yourself with backdrop of Leaning Tower and the square.<br />
<br />
Overnight in Tuscany Region. (Breakfast/Lunch/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 14:</b> All roads lead to Rome – the eternal city. Visit the world’s smallest country – the Vatican Ci
									</p>
									<p class="aj">Relax in your coach as we go towards the eternal city of Rome. On arrival we have a guided city tour of Rome with an expert English-speaking local guide. Next the Vatican City – the smallest country in the world (note: shorts or sleeveless vests not allowed). Enter the Vatican Museum, where you see the renowned classical sculptures and masterpieces of the Renaissance Art. Visit the famed Sistine Chapel - a source of inspiration for art lovers and tourists alike and known for its masterpiece - the Last Judgement. This is also where the Pope gets elected. Later visit the divinely beautiful basilica of St. Peter’s. Get mesmerized by the works of  ichelangelo and Bernini. We then move to see the magnificent Colosseum., a vast amphitheatre that is still well preserved. Later visit the beautiful Trevi Fountains. Legend goes that tossing a coin over your shoulder gets you back to Rome. We continue and drive past the Victor Emmanuel Monument, the Roman Forum, and several more sights of this remarkable city.<br />
<br />
Overnight in Rome. (Breakfast/Lunch/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 15:</b> Fly back home
									</p>
									<p class="aj">Your Holiday ends. Today it’s time to fly back home. Check out and depart fro the Airport for the flight home. (Breakfast)</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>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Government Service Taxes (GST 4.5%) as applicable on the total tour price.</li><li>
Personal expenses like porterage, laundry, wines, mineral water, mini bar, telephone calls etc.</li><li>
Any extra meals not included in the itinerary.</li><li>
Any excursions, local guides or entrance fees other than that mentioned in the itinerary.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<p><strong>Note:- </strong>

<ul>
	<li>above price included Airfare, Visa, Insurance, Accommodation, &amp; Sightseeing As per the Itinerary</li>
	<li>Dep. Dates:- 27th April, 05th May, 12th May, 19th May, 27th May, 03rd June 2017</li>
</ul>												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.justravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Europe 15 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="76188"/>
						</form>
						</div>
						
						";i:1;s:60:"Book Europe 15 Days Tour - 14 Nights / 15 Days Tour Packages";i:2;s:178:"book europe 15 days tour - 14 nights / 15 days tour packages, forts and palaces tour packages, london, paris, venice, florence, brussels, amsterdam, innsbruck, bern tour packages";i:3;s:223:"Book Europe 15 Days Tour - 14 Nights / 15 Days tour packages from Just Travel - Get attractive 14 Nights / 15 Days Forts and Palaces  tour packages for  London, Paris, Venice, Florence, Brussels, Amsterdam, Innsbruck, Bern.";i:4;s:6350:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "London, Paris, Venice, Florence, Brussels, Amsterdam, Innsbruck, Bern"        
		                 },
		      "description": "Highlights

Value-for-Money Holiday you will cherish for a lifetime.
Visit 09 countries in 15 days: UK, France, Netherlands, Belgium, Germany, Switzerland, Austria, Vatican City and Italy.
A Complete all-inclusive tour at an honest price. No hidden cost!!
All not-to-miss attractions and sightseeing with minimum travel time.
Accommodation in top quality hotels.
Delicious unlimited Indian Vegetarian / Jain / Non-Vegetarian meals.
Continental buffet breakfast daily.
Dinners will be served in the comfort of your hotel and not in restaurants in selected cities.
Choice of local meals in in selected cities.
Travel in a luxury Air Conditioned Coach throughout the tour.
Drivers’ tips included.
Affectionate, Multilingual & Knowledgeable Tour Manager accompanying you throughout the tour.
City tour of London with a local guide.
Entrance to Madame Tussauds Wax Museum.
Ride on London Eye - the millennium landmark.
Witness Changing of the Guards at Buckingham Palace.
A unique experience - Travel under the English Channel through Le Shuttle or by Ferry from Dover to Calais.
City tour of Paris with a local guide.
Visit to the 3rd level of the Eiffel Tower.
Full day excitement and thrill at Euro Disney.
Romantic Cruise on the Seine River.
Entrance to Louvre Museum.
Guided tour of the magnificent Versailles Palace.
The World Famous extravagant Lido Show.
The magnificent Grand Place and Mannekin Pis Statue.
Photo stop at the Atomium. Enjoy Amsterdam on a Canal cruise.
Visit the famous Dam Square - the heart of Amsterdam.
Visit Madurodam - Holland in miniature.
Walk through the world’s largest and the most beautiful floral display at Kuekenhof (till 20th May).
Marvel at the imposing Cologne Cathedral - a Gothic masterpiece. Visit the heart of beautiful Black Forest.
Demonstration of cuckoo clock making at DrubbaWitness breath-taking mountain peaks and glaciers at Mt.Titlis
Ride in the world’s first revolving cable car.
Walk on the Highest suspension bridge in Europe - Titlis Cliff Walk Full Orientation tour of Lucerne. Cog wheel train ride to Jungfraujoch - Top of Europe.
Visit scenic Interlaken.
See the Maria Theresien Strasse and the Golden Roof.
Visit the Swarovski Crystal Headquarters and Museum.
St. Mark’s square by Private boat.
Explore Venice in a classic Venetian Gondola.
Visit the famous Murano Glass showroom.
Guided City tour of Florence with a local English speaking guide.
Visit Square of Miracles.
Photo-stop at the Leaning Tower.
Guided City tour of Rome & Vatican with a local English speaking guide.
Visit to Trevi Fountain.
Visit the Vatican Museum – see sculptures and masterpieces of Renaissance art.
Visit to the awe-inspiring Sistine Chapel.
Visit the magnificent St. Peter’s Basilica.

LONDON:

Guided City Tour of London.
Visit to London Eye.
Visit to Madame Tussauds.
Le Shuttle / Ferry from Folkstone / Dover to Calais.

PARIS:

Visit to Eiffel Tower. (3rd floor)
Paris River Seine Cruise.
Guided city Tour of Paris.
Entrance to Euro Disney. (Disney Studio or Disney Park)
Guided tour of Versailles Palace.
Entrance to Louvre Museum.
Extravagant Lido Show.

BRUSSELS:

Orientation Tour including the Grand Place, Mannekin Pis.
Photostop at Atomium.

THE NETHERLANDS:

Amsterdam Canal Cruise.
Visit to Kuekenhof Gardens (Till 20th May)
Visit to Madurodam Model Village.

GERMANY:

COLOGNE: Visit the Gothic Cathedral – “Dom”
BLACK FOREST: Visit Drubba Cuckoo Clock outlet; Enjoy the scenic drive.

SWITZERLAND:

Cable car ride to Mount Titlis.
Orientation tour of Lucerne.
Train Journey to Jungfraujoch - Top of Europe excursion.
Orientation tour of Interlaken.
Visit to Rhine Falls at Schaffhausen.

AUSTRIA:

INNSBRUCK: Orientation Tour including the Hofburg and Golden Dachl.
WATTENS: Visit to Swarovski Crystal Worlds and Museum.

ITALY:

VENICE: Private Boat ride to St. Mark’s Square, visit St. Mark’s Square - see the Bridge of Sighs, Doges Palace and the Basilica di San Marco, Gondola Ride, demonstration at Murano Glass Showroom.
PISA: Visit Field of Miracles – see Cathedral, Baptistry and Leaning Tower.
FLORENCE: View of the city from Piazzale Michelangelo; Guided Walking city tour.
ROME: Guided City Tour including a visit to the Vatican Museums and St. Peter’s Basilica.


MEALS

Daily Continental Buffet Breakfast.
13 Indian Jain/Vegetarian/Lunches.
14 Indian Jain/Vegetarian/Non-Vegetarian Dinners.
Choice of Local Meals in 05 different places.


ACCOMMODATION:

02 nights at Hotel Crown Plaza / Heston Hyde / Radisson Blu or similar in London.
03 nights at Hotel Novotel / Residhome / IBIS Styles or similar in Paris.
01 nights at Hotel NH / Carlton De Burg or similar in Belgium / Netherland or similar.
01 night at Hotel Micheal / NH / Achat Plaza or similar in Heppenheim / Mannheim.
03 night at Hotel Seedamm Plaza / Thessoni / Amaris / Apart hotel by Hilton or similar in Central Switzerland.
01 night at Hotel Alp / Bon Alpina / Kronen or similar in Seefeld / Innsbruck.
01 night at Hotel Europa / Unaway / NH or similar in Occhiobello / Rovigo or similar.
01 night at Hotel A Point / Meditur / Da Vinci or similar in Tuscany or similar.
01 night at Hotel Best Western / Antonella / Melia or similar in Rome.

MEDICAL INSURANCE

Normal insurance charges for the duration of the tour are included in the tour price. However, any passenger above the age of 60 years and those passengers who wish to extend their stay will be required to pay additional charges.Government Service Taxes (GST 4.5%) as applicable on the total tour price.
Personal expenses like porterage, laundry, wines, mineral water, mini bar, telephone calls etc.
Any extra meals not included in the itinerary.
Any excursions, local guides or entrance fees other than that mentioned in the itinerary.",
		      "name": "Europe 15 Days Tour",
		      "telephone": "+91-8878382228"
		    }
		    </script>
			";i:5;N;}