a:6:{i:0;s:15246:"				<div class="h1"><h1>Ancient Turkey Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.rajastravels.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.rajastravels.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Ancient 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">Duration </td>
						<td class="p5px pl0px vat">
						5 Nights / 6 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Istanbul, Ephesus</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price </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.rajastravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Ancient 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="66341"/>
						</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_13/370602/121701.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/370602/121701.jpg"  height="150"  width="150"    alt="Ancient Turkey Tour" title="Ancient 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> Arrive Istanbul
								</p>
								<p class="aj">Ancient Turkey Tour begins with your arrival at the mesmerizing capital city, Istanbul. On Arrival in Istanbul meet our  tour representative. Avail assistance for Airport Transfer to your Hotel and check –in. The approximate transfer time form airport to hotel is 30 minutes from Istanbul's Ataturk airport. Freshen up at allotted room and get ready for the day. Meet at the lobby in the afternoon to enjoy the famed Bosphorus By Boat Tour.<br />
<br />
Boshporous is a waterway dividing Asia and Europe. The busy waters are very scenic and an interesting way to explore Istanbul. The unforgettable boat excursion is a discovery of some of the unrevealed treasures of the city. Enjoy the sights of the city. The boat tour will continue to the local spice market. Relish the sights, smells and sound of chaos. The very air lingers with powerful secrets. Centuries of traditions, heritage and culture saturate the air. Relax with a late lunch served in a local Restaurant. Enjoy the delicious platters of Istanbul. The gastronomical delights are prepared after combining the flavors, tastes, smells and sights of both the continents<br />
<br />
Stroll around the markets. Dusks brings another alluring side of the side. Shaded in pretty lights, everything is vibrant and delightful. The evening is at your leisure. Explore the city, its charm and allure. Dinner can be traditional Indian or the city's special delight. Spend a relaxing time soaking up the pleasant ambiance of the Bosphorous Strait. After the excitements, it's time to turn for an overnight stay in the hotel. Enjoy the lavish accommodation.</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 Tour
								</p>
								<p class="aj">The next day starts with a hearty breakfast at 08.30 in the hotel. Next is the full day tour of the ancient city of Istanbul. The city has various names and identities. It was Constantinople and Byzantine once and now it has been declared the European Capital of Culture. In Istanbul city tour you will explore the jewels of the place.<br />
<br />
The splendors you explore in old Istanbul are beautiful specimens of architecture and history. Explore St. Sophia, Hagia Sophia, and the masterpiece of Byzantine architecture. The beautiful monument has tales to tell. It's a symbol of hope and perseverance. On Mondays the ancient church remains closed so it will be replaced with tour of Chora Church Museum.<br />
<br />
Check out the breathtaking Blue Mosque. Sultan Ahmed Mosque has earned its nickname owing to its beautiful blue interiors. The beautiful monument with its powerful dome and six minarets dominates the skyline of the city. Built as the symbol of the powerful Ottoman Empire. Soak up the enthralling sight. It remains closed on Fridays during prayer time.<br />
<br />
Next on your tour is Topkap? Palace. The large palace of Istanbul has been the residency of the sultans of Ottoman Empire for more than 400 years. One of the finest example of Ottoman architecture, the palace premises have large collections of porcelain, robes, weapons, shields, armor, miniatures, Islamic calligraphic manuscripts and murals, as well treasures and jewelry.<br />
<br />
The day tour takes you next to Hippodrome and the ancient Obelisk of Thedosius. These structures are victory architectures create to celebrate success and make it memorable forever.<br />
<br />
After sightseeing enjoy a Lunch break at the traditional Turkish Restaurant. The Turkish delights are gastronomical pleasures inspired from the presence of varied cultures.<br />
<br />
After lunch make way to the Grand Bazaar. It remains closed on Sundays. The vibrant bazaar is a labyrinth of streets and over 4000 shops. You will be escorted to the ever busy Taxim area in the evening. The Grand Bazaar is an interesting chaos. Miscellany of people from all over the globe are thronging the streets. Be cautious and enjoy the sights, smells and sounds. Stroll and do some shopping to every taste. Take home memories of the ancient city and its layers of heritage and mysteries. Dinner destination is an elegant Indian Restaurant. After the delicious dining, get escorted back to the hotel for a restful sleep.</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> Pamukkale tour
								</p>
								<p class="aj">The third day of the tour starts with early morning breakfast in the hotel. Have a hearty meal as you have another exciting day to start. After checking out of the hotel you are taken to Pamukkale. The tour from Istanbul to Pamukkale is a distance of 657 kilometers. Lunch is served en-route. In Pamukkale visit the ruins of Hierapolis and a panoramic city tour. The archaeological museum designated as a UNESCO World Heritage Site is located close to thermal hot springs. Check out the awe-inspiring ruins. Built in the 2nd century the monument has faced the adversities of time. Once a very powerful centre of civilization stand remnants of the bygone glory.<br />
<br />
After your exciting day check-in to the allotted Thermal Hotel with hot springs in the premises. Enjoy the Hollistic therapeutical effects of hot baths in the hotel premises. Get rejuvenated by the natural wonder. The hot waters soothes your body, mind and soul and pleases your senses. After the invigorating session enjoy a sumptuous dinner in the hotel. After lavish food, enjoy a peaceful sleep in the comfy accommodation.</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> Kusadasi tour
								</p>
								<p class="aj">The fourth day of the Ancient Turkey tour starts with another extravagant breakfast in the hotel. Post breakfast pack up for departure from the hotel. The day starts with visit to the calcium hot spring terraces of Pamukkale. The scenic natural phenomenon is a wonder. Enjoy the invigorating views. Therapies are also available. The hot springs breathes in new life.<br />
<br />
Next you proceed to Kusadasi the lively and welcoming resort town along the pristine blue Aegean coasts. Pamukkale to Kusadasi is a 195 kilometer distance. Check-in the hotel. For lunch assemble in the lobby where you will be taken to a pleasant local Restaurant. Enjoy a mouthwatering lunch prepared with local essences.<br />
<br />
Post lunch visit a typical Turkish village, SiRiNCE. The village has roots of Greek inhabitants. Way back in history, they came here and never went back. They settled and now are part of Turkey. Explore some of the finest Anatolian-Greek architecture. There are numerous beautiful specimens to check out. Get a chance to witness and participate in making the world famous SiRiNCE fruit wines together with the wine making artisans.<br />
<br />
The evening is at your leisure. Have dinner at the hotel and be off to explore the energy of the costal town. Kusadasi has a lively nightlife. Taste the tangy drinks. Dance in pubs and clubs. Music ooze from all corners. The pulsating essence of the town captivates all your senses.</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> Ephesus Tour
								</p>
								<p class="aj">The fifth day of tour starts with another appetizing breakfast. After you have filled your bellies sand hearts with food pack up for Departure from the Hotel. The day comprises of a full day tour of Ephesus, one of the best preserved ancient sites in the world.<br />
<br />
The beautifully preserved Ephesus is walking distance of Kusadasi. In your tour interesting sights await to be explored.<br />
<br />
Start your tour with Temple of Artemis. The ancient temple dedicated to the goddess Artemis of Greek Mythology. The structure is magnificent.<br />
<br />
Next is Curetes street. The now ruined streets was once a beautiful sight. The street had fountains, stalls and numerous interesting architectures.<br />
<br />
Check out the Roman baths at the preserved heritage site. The architecture interests history lovers. They are dated to the time Romans were rulers of the city.<br />
<br />
Pay a visit to Grand Theater which still holds house to some of the best classical orchestras of the world.<br />
<br />
Pay respect at the House of Virgin Mary. The peaceful statue stands as a revered icon for all faiths. Nestled in lush environs, the peaceful monument inspires faith in all.<br />
<br />
After the truly hedonistic tour enjoy another mouthwatering Lunch. Post lunch have the opportunity to visit one of the oldest arts of Turkey, carpet weaving. You will be amazed how fast the hands of the young ladies move to create endless variety of patterns on wool. Witness their creative skills at best. As souvenirs you can buy knick knacks.<br />
<br />
Day ends with dinner at the Hotel. Enjoy a good overnight rest.</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> Departure
								</p>
								<p class="aj">The last day of the tour start with a lavish breakfast. Pack your bags for an early departure from the Hotel. You will be escorted back to Istanbul. The trip is a 651 kilometers journey where we will pass along the productive fields of the Anatolian lands and ever changing landscapes. Enjoy lunch on your transfer.<br />
<br />
Post lunch arrive at the Istanbul Atatürk airport. Get ready to board your flight back home with wonderful memories of ancient Turkey Tour.</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>Sightseeing</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.rajastravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Ancient 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="66341"/>
						</form>
						</div>
						
						";i:1;s:58:"Book Ancient Turkey Tour - 5 Nights / 6 Days Tour Packages";i:2;s:115:"book ancient turkey tour - 5 nights / 6 days tour packages, heritage tour packages, istanbul, ephesus tour packages";i:3;s:145:"RAJAS TRAVELS offers Ancient Turkey Tour - 5 Nights / 6 Days tour package, budget Heritage tour packages for Istanbul, Ephesus at exciting price.";i:4;s:408:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Istanbul, Ephesus"        
		                 },
		      "description": "",
		      "name": "Ancient Turkey Tour",
		      "telephone": "+91-9820123553"
		    }
		    </script>
			";i:5;N;}