a:6:{i:0;s:17836:"				<div class="h1"><h1>Turkey Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.travelect.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelect.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Turkey 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">Tour Code </td>
						<td class="p5px pl0px vat">007</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						8 Nights / 9 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Istanbul</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelect.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Turkey 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="62555"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" id="detailslider1">
															<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_12/333350/116841.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/116841.jpg"  height="150"  width="150"    alt="Turkey" title="Turkey" /></a></p></div></li>
																		<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_12/333350/116842.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/116842.jpg"  height="150"  width="150"    alt="Turkey Tour" title="Turkey Tour" /></a></p></div></li>
																		<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_12/333350/116843.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/116843.jpg"  height="150"  width="150"    alt="Turkey Tour" title="Turkey Tour" /></a></p></div></li>
																		<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_12/333350/116845.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/116845.jpg"  height="150"  width="150"    alt="Turkey Tour" title="Turkey Tour" /></a></p></div></li>
																		<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_12/333350/116846.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/116846.jpg"  height="150"  width="150"    alt="Turkey Tour" title="Turkey Tour" /></a></p></div></li>
																		<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_12/333350/116847.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/116847.jpg"  height="150"  width="150"    alt="Turkey Tour" title="Turkey Tour" /></a></p></div></li>
																		<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_12/333350/116848.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/116848.jpg"  height="150"  width="150"    alt="Turkey Tour" title="Turkey Tour" /></a></p></div></li>
																		<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_12/333350/116849.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/333350/116849.jpg"  height="150"  width="150"    alt="Turkey Tour" title="Turkey Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<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> Istanbul Arrival - Half Day Bosphorus Cruise &Turkish Night
								</p>
								<p class="aj">Welcome to Turkey, Istanbul Ataturk Airport. Meet with our staff and transfer to your hotel. Early check in is subject to hotels room availability and usually check in time is after 14:00 hrs. <br />
<br />
Afternoon around 13:30 hrs departure for half day Bosphorus Cruise & Spice Market Tour..<br />
Visit the SPICE BAZAAR (Egyptian Bazaar) The air here is filled with the enticing aromas of cinnamon, caraway, saffron, mint, thyme and every other conceivable herb and spice.<br />
BOSPHORUS BY BOAT a traditional excursion by boat along the waterway separating Europe and Asia. The shore is lined with old wooden villas, palaces of marble, fortresses, and small fishing villages. During the excursion you will see the magnificent sights of the following attractions from your boat. See Dolmabahce Palace, and further along, the parks and imperial pavilions of Yildiz Palace. On the coastal edge of this park, is Ciragan Palace, 300 meters of its marble facade faces the shore. At Ortakoy a great variety of artists gather every Sunday to display their work along the street. Ortakoy is a symbol of tolerance with a church, a mosque and a synagogue existing side by side for centuries.<br />
Around 17:00 hrs return back to hotel. <br />
<br />
Evening around 19:30 / 20:00 hrs you will be picked up from the hotel and proceed to restaurant for Turkish Night Show with local Turkish dinner and limited local drinks later transfer back to the hotel & overnight stay.</p>					
									<p><b>Meals : </b> Dinner & limited local drinks</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> Istanbul - Full Day Historical City Tour
								</p>
								<p class="aj">Pick up at 08:30am from your hotel for the a day tour of old Istanbul city.<br />
Visit to ST. SOPHIA This ancient basilica, built by Constantine the Great in the 4th century and reconstructed by Justinian in the 6th century, is one of the architectural marvels of all time.<br />
TOPKAPI PALACE(closed on Tuesday) The great palace of the Ottoman sultans from the 15th to the 19th centuries housing an exquisite collection of crystal, silver, and Chinese porcelain, robes worn by the sultans and their families, the famous jewels of the Imperial Treasury, miniatures, the Holy Mantle; enshrining relics of the Prophet Mohammed.SULTANAHMET IMPERIAL MOSQUE Across from St. Sophia built in the 16th century by the architect Mehmet, is known as the BLUE MOSQUE because of its magnificent interior decoration of blue Iznik tiles. HIPPODROME Ancient Hippodrome, the scene of chariot races, with the three monuments; the Obelisk of Theodosius, the bronze Serpentine Column and the Column of Constantine. After that GRAND COVERED BAZAAR (closed on Sunday)In this labyrinth of streets and passages are more then 4,000 shops with each trade <br />
<br />
having its own area: the goldsmiths' street, the carpet sellers, Turkish arts and crafts, such as handpainted ceramic plates, hand-honed copperware, brassware and trays, water ewers, onyx-ware and meerschaum pipes. After tour ending, return back to hotel. Evening dinner at Indian restaurant. Overnight stay at hotel in Istanbul</p>					
									<p><b>Meals : </b> Breakfast & Indian 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> Istanbul - Turkish Bath &Flight to Cappadocia
								</p>
								<p class="aj">Breakfast at hotel, We start our morning with a Hamam, that's the word for the Turkish bath and is surely an unforgettable part of your holiday ( Excluding Massage & Scrubbing ) Then free time till departure. Transfer to airport to take domestic flight for Kayseri airport. Arrival and you will be transferred to your hotel. Dinner at hotel. Overnight in Cappadocia</p>					
									<p><b>Meals : </b> Breakfast & Turkish 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> Hot air balloon tour & Cappadocia Full Day Tour
								</p>
								<p class="aj">Early morning hot air balloon tour…We will advise pick up time one day before <br />
Breakfast at hotel, We start our tour to explore Cappadocia by visiting different valleys. The first stop is Goreme Valley, you can find what the process of the rock formations in Cappadocia. Later we drive to Uchisar to visit the cave dwellings which are surrounded by conical rock formations. We have a tea & coffee break before we go and visit Goreme Open-Air Museum. In the museum, you can find the most preserved frescoed of rock cut churches and monasteries.<br />
Then TravelShop Turkey will provide a buffet lunch for you and we visit the fairy chimneys of Urgup afterwards. We have a chance to taste wine from local winery which is really juicy. Moreover, we visit wishing hill which is riddled with caves, its a sightseeing spot worth to go to. Furthermore, we have a short walk in Devrent Valley where you can see so many different figures of rock formations.<br />
Then we drive to Monks Valley (Rahipler Vadisi), you can find some special housing and living area here which are only can be found in this area. Dinner at hotel. Overnight in Cappadocia</p>					
									<p><b>Meals : </b> Breakfast , Turkish lunch & Turkish 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> Cappadocia to Izmir by flight & Transfer to Kusadasi
								</p>
								<p class="aj">After breakfast at hotel, free time till departure. Check out and transfer to airport for domestic flight to Izmir (directly or connection via Istanbul - depend on the flight schedule). After arrival proceed to hotel in Kusadasi for check in. Rest of the day is yours at leisure... Dinner at hotel. Overnight in Kusadasi</p>					
									<p><b>Meals : </b> Breakfast & Turkish 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> Kusadasi - Full Day Ephesus Tour
								</p>
								<p class="aj">After breakfast, proceed to fully guided tour of Ephesus. The tour starting with Isa Bey Mosque, then drive to an ancient Greek city, later a major Roman city, on the west coast of Asia Minor which called Ephesus, stroll past the celsus library, the Temple Of Hadrian and the Trajan Fountain in the Ancient Ephesus. After walking on the historical marble street  the Great Theater where St. Paul preached will meet at the end. Open buffed lunch in a local Turkish restaurant. In the afternoon will visit the carpet coorperative to see how the Turkish carpets are made by hand. Proceed to shrine of Mother Mary,it is believed where she spent recent years of her life. Visit the Temple Of Artemis (Diana), on the side of one of the seven wonders of ancient World. After tour ending, transfer to hotel in Kusadasi.<br />
Dinner at hotel. Overnight in Kusadasi.</p>					
									<p><b>Meals : </b> Breakfast,Turkish lunch & turkish 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> Kusadasi to Pamukkale Tour
								</p>
								<p class="aj">Breakfast at hotel, around 08:00 hrs we depart for Pamukkale. We will arrive around 12.00 hrs and we have a lunch break until 13.30. Afterwards we shall visit the calcium terraces of Pamukkale (cotton castle) and the ruins of Hierapolis, then walk around this natural phenomenon and have the option of lying in the waters of the natural springs. After tour ending, check in to the hotel for relaxing. <br />
Dinner at hotel. Overnight in Pamukkale</p>					
									<p><b>Meals : </b> Breakfast, Turkish lunch & Turkish 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> Pamukkale to Denizli Airport & Flight to Istanbul
								</p>
								<p class="aj">Breakfast at hotel, early morning check out and proceed to Denizli airport for domestic flight to Istanbul. After arrival, meet with our representative and proceed to hotel. Early check in is subject to hotels room availability and usually check in time is after 14:00 hrs. Rest of the day is yours at leisure.Evening dinner at Indian restaurant. Overnight in Istanbul</p>					
									<p><b>Meals : </b> Breakfast & Indian 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> Istanbul Departure
								</p>
								<p class="aj">Breakfast at hotel, 12:00 hrs check out and free time till departure for last minute shopping. Transfer to Istanbul Ataturk Airport airport for your return flight to home.</p>					
									<p><b>Meals : </b> Breakfast</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>Transport</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. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelect.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Turkey 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="62555"/>
						</form>
						</div>
						
						";i:1;s:50:"Book Turkey Tour - 8 Nights / 9 Days Tour Packages";i:2;s:98:"book turkey tour - 8 nights / 9 days tour packages, heritage tour packages, istanbul tour packages";i:3;s:139:"El Travel Elect Pvt. Ltd offers Turkey Tour - 8 Nights / 9 Days tour package, budget Heritage tour packages for Istanbul at exciting price.";i:4;s:391:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Istanbul"        
		                 },
		      "description": "",
		      "name": "Turkey Tour",
		      "telephone": "+91-9225503370"
		    }
		    </script>
			";i:5;N;}