a:6:{i:0;s:17712:"				<div class="h1"><h1>6N/7D Greece Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.bellatours.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.bellatours.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>6N/7D Greece 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">
						6 Nights / 7 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Athens</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 45386 Per Person						</td>
						</tr>
												<tr>
						<td class="b p5px dif w125px vat">Special Offer </td>
						<td class="p5px pl0px dif vat">Special Offer 	<br />
1st 50 people get BELLA TOURS bag</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.bellatours.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="6N/7D Greece 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="92034"/>
						</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_14/397488/158227.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/397488/158227.jpg"  width="150" height="150"    alt="6N/7D Greece Tour" title="6N/7D Greece Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					2 Nights in Athens with Breakfast<br />
2 Nights in Santorini with Breakfast<br />
2 Nights in Mykonos with Breakfast<br />
Half day Athens city tour on SIC<br />
Santorini half day Volcano tour & hot springs on SIC<br />
Transfers in Athens : airport - hotel - port on private<br />
Transfers in Mykonos : port - hotel - port on SIC<br />
Transfers in Santorini : port - hotel - airport on SIC<br />
Economy class normal Ferry ticket from Athens to Mykonos<br />
Economy class high speed ferry from Mykonos to Santorini<br />
{Note: - Kindly be on time for SIC transfer as coach will not wait for more than the confirmed pick up time and there will be no refund provided for missed transfers}Special Offer 	<br />
1st 50 people get BELLA TOURS bagAirfare & Taxes<br />
Visa & Insurances charges<br />
Any up gradation in hotel room category<br />
Any meals other than specified above<br />
Any sightseeing other than mentioned above<br />
Any Entrance fees or Fees for video or camera permit<br />
Any item of personal nature like tips, laundry, telephone calls etc<br />
Service tax will be applicable on total invoice17-0731-12<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> Arrive in Athens
								</p>
								<p class="aj">Welcome to Greece. Arrive at airport and transfer to hotel for your stay. You have rest of day at leisure. Overnight stay in Athens.</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_14/397488/158227.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/397488/158227.jpg"  width="150" height="150"    alt="6N/7D Greece Tour" title="6N/7D Greece Tour" /></a></p></div></li>
									</ul>
									</div>
									</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> Athens - Half Day city tour with Acropolis and Museum
								</p>
								<p class="aj">In the morning you will be picked up from your hotel and start the half-day tour to Athens. This tour gives you an opportunity to observe the striking contrasts that make Athens such a fascinating city. Our expert guides will take you to see the Panathenaic Stadium where the first Olympic Games of modern times were held in 1896 (short stop). Continue and pass by the Presidential residence (ex Royal Palace) guarded by the Euzones in their colorful uniform, the Temple of Olympian Zeus, the Hadrian’s Arch, the Parliament and the memorial to the Unknown Soldier, the Academy, the University, the National Library, the Constitution Square (Syntagma). On the Acropolis visit the Architectural Masterpieces of the Golden Age of Athens: The Propylaea, the Temple of Athena Nike, the Erechtheion and finally “the harmony between material and spirit”, the monument that “puts order in the mind”, the Parthenon. Continue and visit the place where at last the statues found their home and admire the wonders of the classical era: The new Acropolis museum. Return to the hotel for a free afternoon. Overnight stay in Athens.</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> Athens - Mykonos
								</p>
								<p class="aj">After breakfast Transfer to Piraeus port for your ferry embarkation to Mykonos Island. Mykonos sits amidst the Aegean Sea like a unique jewell handcrafted by time, the Greek sun and an anonymous local craftsman. All that can be said or written about Mykonos would be just too little. For centuries Mykonos existed under the shade of the religious centre of Delos and it had to wait until the 20th century to reach its international status and win a place on the world tourist map. Mykonos,  famously called 'the island of the winds' due to the constant wind that blows, is the most popular and cosmopolitan island of the Cyclades and considered as one the most famous islands of the world. The sunlight of Mykonos from its first sunshine of dawn all the way to its last of the sunset is astonishing and supplements an atmosphere of images that seem to have sprung out of a painting. Arrival in Mykonos and transfer to your hotel. Rest of the day is free in order to explore the island. Overnight stay in Mykonos.</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> Mykonos
								</p>
								<p class="aj">Free day at leisure for shopping or individual activities. Overnight stay in Mykonos.</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> Mykonos - Santorini
								</p>
								<p class="aj">After breakfast check out from hotel & transfer to the port of Mykonos for your ferry trip to Santorini Island. (High-speed boat) A thousand sunsets, a thousand memories, a thousand heartbeats, colors of blue red & gold streaking the sky ... this is Santorini island ... Poets have written about it, artists attempt to capture its beauty. Nothing can quite describe ... the unsurpassed magic of Santorini. This tiny Greek island in the Aegean sea, rich in history & steeped in myth, is situated on the southern east tip of the Cyclades Cluster. Once famous for its seafaring captains & thriving trade from Russia towards England, France & Italy, & even further back in time the biblical volcanic catastrophe of 1500 BC, today Santorini is one of the most popular holiday destinations worldwide. Arrival in Santorini and transfer to your hotel. Rest of the day is yours to spend in order to explore the island and admire the breathtaking view. Overnight stay in Santorini.</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> Santorini - Half day volcano & hot springs tour
								</p>
								<p class="aj">This morning proceed to enjoy volcano & hot springs tour. The tour departs daily from the old port of Fira. After only 10 minutes by boat, we'll be arriving at the harbor of Erinia which is the name of the small volcano bay, where we'll be docking for about 1 hour and 15 minutes, during which, if you want, you can follow the path to the top where active craters are. Next we'll be moving to the island of PaleaKameni for the hot springs, the famous mud baths, which were formed as result of volcanic eruptions. In the small bay of AgiosNikolaos the water temperature ranges from 30 to 35 degrees Celsius, as it mixes continuously with the normal sea currents. The boat will be staying here about 30 minutes to allow you a healthy bath. After the bath, you will return to the old port of Fira.Overnight stay in Santorini.</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> Santorini- Departure
								</p>
								<p class="aj">After breakfast you will be transferred to the Airport for your flight to Athens and then back home – or extend your stay in Greece. Be sure to leave full of wonderful memories, having found a new and comfortable home in Greece.</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>
																		<li>3 Star Hotel</li>
																		<li>Sightseeing</li>
																		<li>Transport</li>
																		<li>Transfers</li>
																		<li>Airport Pickup-Drop</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Airfare & Taxes</li><li>
Visa & Insurances charges</li><li>
Any up gradation in hotel room category</li><li>
Any meals other than specified above</li><li>
Any sightseeing other than mentioned above</li><li>
Any Entrance fees or Fees for video or camera permit</li><li>
Any item of personal nature like tips, laundry, telephone calls etc</li><li>
Service tax will be applicable on total invoice</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. ~^#^~						
    	<p class="h dif xlarge b mb5px">Hotel Details:-</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">City</td>
				<td class="headHr p5px b">Standard</td>
				<td class="headHr p5px b">Deluxe</td>
			</tr>
			<tr>
				<td class="data p5px">Athens</td>
				<td class="data p5px">Candia/ Oscar or Similar</td>
				<td class="data p5px">Polis Grand/ President or Similar</td>
			</tr>
			<tr>
				<td class="data p5px">Mykonos</td>
				<td class="data p5px">Elena/ Anastasios Sevasti or Similar</td>
				<td class="data p5px">Rhenia/ petinos/ Manoulas Beach or Similar</td>
			</tr>
			<tr>
				<td class="data p5px">Santorini</td>
				<td class="data p5px">Costa Marina/ Solaris/ Melina or Similar</td>
				<td class="data p5px">El Greco/ Daedalus/ Orizontes or Similar</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px">Price per person in EUR:-</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">Category</td>
				<td class="headHr p5px b">Validity</td>
				<td class="headHr p5px b">Twin</td>
				<td class="headHr p5px b">Triple</td>
				<td class="headHr p5px b">Single</td>
				<td class="headHr p5px b">CWB (Below 10 yrs)</td>
			</tr>
			<tr>
				<td class="data p5px">Standard</td>
				<td class="data p5px">01 Apr - 20 May</td>
				<td class="data p5px">637</td>
				<td class="data p5px">587</td>
				<td class="data p5px">898</td>
				<td class="data p5px">298</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">21 May - 30 Jun</td>
				<td class="data p5px">748</td>
				<td class="data p5px">698</td>
				<td class="data p5px">1087</td>
				<td class="data p5px">353</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">01 Jul - 15 Sep</td>
				<td class="data p5px">898</td>
				<td class="data p5px">787</td>
				<td class="data p5px">1298</td>
				<td class="data p5px">409</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">16 Sep - 30 Sep</td>
				<td class="data p5px">748</td>
				<td class="data p5px">698</td>
				<td class="data p5px">1087</td>
				<td class="data p5px">353</td>
			</tr>
			<tr>
				<td class="data p5px">Deluxe</td>
				<td class="data p5px">01 Apr - 30 Apr</td>
				<td class="data p5px">731</td>
				<td class="data p5px">676</td>
				<td class="data p5px">1142</td>
				<td class="data p5px">276</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">01 May - 09 Jun</td>
				<td class="data p5px">898</td>
				<td class="data p5px">809</td>
				<td class="data p5px">1387</td>
				<td class="data p5px">342</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">10 Jun - 10 Jul</td>
				<td class="data p5px">964</td>
				<td class="data p5px">864</td>
				<td class="data p5px">1442</td>
				<td class="data p5px">364</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">11 Jul - 31 Aug</td>
				<td class="data p5px">1064</td>
				<td class="data p5px">976</td>
				<td class="data p5px">1653</td>
				<td class="data p5px">398</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">01 Sep – 15 Sep</td>
				<td class="data p5px">964</td>
				<td class="data p5px">864</td>
				<td class="data p5px">1442</td>
				<td class="data p5px">364</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">16 Sep – 30 Sep</td>
				<td class="data p5px">898</td>
				<td class="data p5px">809</td>
				<td class="data p5px">1387</td>
				<td class="data p5px">342</td>
			</tr>
		</table></div><br>						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.bellatours.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="6N/7D Greece 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="92034"/>
						</form>
						</div>
						
						";i:1;s:56:"Book 6N/7D Greece Tour - 6 Nights / 7 Days Tour Packages";i:2;s:102:"book 6n/7d greece tour - 6 nights / 7 days tour packages, heritage tour packages, athens tour packages";i:3;s:145:"Book 6N/7D Greece Tour - 6 Nights / 7 Days tour packages from Bella Tours - Get attractive 6 Nights / 7 Days Heritage  tour packages for  Athens.";i:4;s:1436:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Athens"        
		                 },
		      "description": "2 Nights in Athens with Breakfast
2 Nights in Santorini with Breakfast
2 Nights in Mykonos with Breakfast
Half day Athens city tour on SIC
Santorini half day Volcano tour & hot springs on SIC
Transfers in Athens : airport - hotel - port on private
Transfers in Mykonos : port - hotel - port on SIC
Transfers in Santorini : port - hotel - airport on SIC
Economy class normal Ferry ticket from Athens to Mykonos
Economy class high speed ferry from Mykonos to Santorini
{Note: - Kindly be on time for SIC transfer as coach will not wait for more than the confirmed pick up time and there will be no refund provided for missed transfers}Special Offer 	
1st 50 people get BELLA TOURS bagAirfare & Taxes
Visa & Insurances charges
Any up gradation in hotel room category
Any meals other than specified above
Any sightseeing other than mentioned above
Any Entrance fees or Fees for video or camera permit
Any item of personal nature like tips, laundry, telephone calls etc
Service tax will be applicable on total invoice17-0731-12",
		      "name": "6N/7D Greece Tour",
		      "telephone": "+91-9819406969"
		    }
		    </script>
			";i:5;N;}