a:6:{i:0;s:35674:"				<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
									<div class="h1"><h1>Wonders of Egypt Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.sribalajitourstravels.co.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.sribalajitourstravels.co.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Wonders of Egypt Tour</p> 
										<div class="fo dt w100"> 
					<div class="dtc vat ttw-detail pr20px pr">					
												<ul class="lsn gallery-slide" id="bxlider_ins">
																	<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_13/385927/128840.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_13/385927/128840.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_13/385927/128840.jpg"  alt="Wonders of Egypt Tour" title="Wonders of Egypt Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																	</ul>
												
					<script>
					var $j = jQuery.noConflict();
					var realSlider= $j("ul#bxlider_ins").bxSlider({
					      speed:500,
					      pager:false,
					      auto: true,
					      slideWidth: 450,
					      slideMargin: 0,
					      nextText:'',
					      prevText:'',
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					        changeRealThumb(realThumbSlider,newIndex);
					        
					      }
					      
					    });
					    
					    var realThumbSlider=$j("ul#bxslider-pager").bxSlider({
					      minSlides: 4,
					      maxSlides: 4,
					      slideWidth: 200,
					      slideMargin: 5,
					      moveSlides: 1,
					      pager:false,
					      speed:1000,
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      nextText:'<span></span>',
					      prevText:'<span></span>',
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					
					      }
					    });
					    
					    linkRealSliders(realSlider,realThumbSlider);
					    
					    if($j("#bxslider-pager li").length<5){
					      $j("#bxslider-pager .bx-next").hide();
					    }
					
					// sincronizza sliders realizzazioni
					function linkRealSliders(bigS,thumbS){
					  
					  $j("ul#bxslider-pager").on("click","a",function(event){
					    event.preventDefault();
					    var newIndex=$j(this).parent().attr("data-slideIndex");
					        bigS.goToSlide(newIndex);
					  });
					}
					
					//slider!=$thumbSlider. slider is the realslider
					function changeRealThumb(slider,newIndex){
					  
					  var $thumbS=$j("#bxslider-pager");
					  $thumbS.find('.active').removeClass("active");
					  $thumbS.find('li[data-slideIndex="'+newIndex+'"]').addClass("active");
					  
					  if(slider.getSlideCount()-newIndex>=4)slider.goToSlide(newIndex);
					  else slider.goToSlide(slider.getSlideCount()-4);
					
					}
					
					</script>
					</div>
			        <div class="dtc">
			        <p class="b xlarge mb10px">Wonders of Egypt Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						7 Nights / 8 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Cairo, Abu Simbel, Alexandria, Aswan, Luxor, Edfu, Kom Ombo</p>
												<p class="mb5px"><b>Attractions :</b> Unfinished Obelisk</p>
												<div class="fo mt20px mb20px xxlarge">
						<p class="xxlarge b dif mb2px">Price</p>
						<p class="xxsmall">On Request</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sribalajitourstravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Wonders of Egypt Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px ts0 xxlarge dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="71251"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Cairo •Guided City Tour.<br />
 •Visit the Egyptian Museum with<br />
 Royal Mummies Room.<br />
 •Sound & Light Show at the PyramidsAlexandria •Day Trip to Alexandria with Guided<br />
 City Tour.<br />
Aswan •Guided City Tour.<br />
 •Visit to the High Dam.Abu Simbel •Visit to Temple of Abu Simbel.<br />
Kom Ombo •Visit to Temple of Kom Ombo.<br />
Edfu •Visit to Temple of Edfu.<br />
Luxor •Visit to Temple of Luxor.<br />
 •Visit to Valley of the Kings.<br />
 •Visit to Temple of Hatshepsut.<br />
 •Photo - Stop at Colossi of Memnon.Any increase in the Airfare / Airline Taxes charged by the airlines on your air ticket(calculated at 1st July 2016 rates).<br />
Increase in Visa fees.<br />
Cost of extension of the validity of your air ticket.<br />
Mandatory tipping & Porterage: An amount of USD 5 per person per day towards tips & USD1 per piece of luggage per hotel to be paid to guide / driver / hotel porterWhat your Tour Price does not include<br />
Porterage, tips, insurance, laundry, wines, water, telephone charges, suggested excursions and all items of personal nature and also food and drinks not forming part of the group menus.<br />
Anything not specifically mentioned in ‘What your Tour Price includes’ box.</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Arrive into Cairo										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Welcome to Egypt - the Land of the Pharaohs. On arrival at Cairo International airport, you will be met by our local representative, who will welcome you and transfer you to your hotel for check-in. Later this evening, experience the spectacular Sound and Light Show at the Giza Pyramids of Khufu, Khafre and Menkaure and enjoy the history of the ancient Egyptians. The show begins with the story of the Sphinx who has been the vigilant guardian of the Pyramids for five thousand years. Overnight at the hotel in Cairo															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> Day Trip to Alexandria with Guided City Tour										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today, we drive to Alexandria. On arrival we proceed on a guided city tour of Alexandria. Visit Pompeii’s Pillar, constructed in honor of the Emperor Diocletian at the end of 4th century AD. Then proceed to Qaitbay Citadel which was built on the eastern point of the Pharos Island. It was erected on the exact site of the famous Lighthouse of Alexandria, which was one of the Seven Wonders of the Ancient World. After visiting the Library of Alexandria, we start our return journey to Cairo. Overnight at the hotel in Cairo. (Breakfast, Lunch, Dinner)			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Visit Egyptian Museum with Royal Mummies Room Visit the Khan El Khalili Bazar										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today, we take you on a guided city tour of Cairo. See the Pyramids of Khufu, Khafre and  Menkaure. Also see the Sphinx, carved from the natural bedrock at the bottom of the causeway to Khafre’s pyramid. We then visit the Papyrus Institute and see beautiful paintings being made. Next, we visit the Egyptian Museum, which houses over 1,00,000 antiquities from every period of ancient Egyptian history. Do not miss the gallery featuring the famous treasures of Tutankhamun. We also visit the Royal Mummies Room, another highlight of the Egyptian Museum. Here you can see the mummies of many great Egyptian rulers, including Ramses II, the builder of the temples at Abu Simbel. Later, proceed to the medieval Bazaars of Khan-El-Khalili where you can shop for spices, precious stones and curios. Overnight at the hotel in Cairo.															   
												<div class="mt10px">
												
																	
													<p>Meals : (Breakfast, Lunch, Dinner)</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> Fly to Aswan Guided City Tour of Aswan Welcome Aboard the Nile Cruise										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today, we check-out of the hotel and drive to the airport for our flight to Aswan. On arrival in Aswan, we proceed to visit the High Dam of Aswan, the pride of Egypt and an ideal spot for a panoramic view of Aswan. This is where Egypt ends and Nubia begins. We then take you to see the Unfinished Obelisk. This Obelisk was never detached from the rock as it developed cracks in several places. Later, we board our legendary Nile Cruise for a great three day journey on the scenic Nile River. Overnight on board the Nile Cruise.															   
												<div class="mt10px">
												
																	
													<p>Meals : (Breakfast, Lunch, Dinner)</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 5											
											:</b> Visit to Abu Simbel Temple of Kom Ombo										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today, after collecting your box breakfast, we proceed to visit Abu Simbel by coach. Abu Simbel has two magnificent temples, temple of Ramesses II and the Temple of Nefertari. The Temples were threatened by submersion in the Lake Nasser, due to the construction of the High Dam. During the salvage operation which continued until 1968, the two temples were dismantled and raised over 60 meters up on the sandstone cliff where they had been built more than 3,000 years before. Then, we return to our cruise in Aswan for lunch, as our cruise starts sailing to Kom Ombo. On arrival, we visit the famous Temple of Kom Ombo. Overlooking the Nile, this unique temple is in fact the fusion of two temples, set side by side, with each side having its own gateways and chapels. The left side of the temple is dedicated to Haroeris, the falcon headed God. The right part of the temple is dedicated to Sobek, the crocodile headed God and God of Fertility. Overnight on board the Nile Cruise.															   
												<div class="mt10px">
												
																	
													<p>Meals : (Breakfast, Lunch, Dinner)</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 6											
											:</b> Visit to Edfu Sail to Luxor via Esna Lock Visit to Temple of Luxor										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today morning, on arrival into Edfu, we take you on a shore excursion to visit the Temple of Edfu. Of all the temples of ancient Egypt, the one at Edfu is not only the best preserved, but the second largest after Karnak. The temple had been totally submerged under the desert except for the very top of the pylon entrance. The temple is dedicated to Horus and was built in the Ptolemaic period. This temple is unusual in that it is on the west bank of the river which was normally dedicated to the afterlife. Next, enjoy the sights of the Nile River from the deck, as your Nile Cruise sails to Luxor via the Esna Lock. On arrival in Luxor, we visit the famous Temple of Luxor. There is magic in the tombs of the great Kings with their imposing architecture and marvelous paintings. Even after over 5,000 years, the paintings retain their original colors and tell the story of civilization gone by. Overnight on board the Nile Cruise.															   
												<div class="mt10px">
												
																	
													<p>Meals : (Breakfast, Lunch, Dinner)</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 7											
											:</b> Visit to Valley of the Kings Photo-stop at Colossi of Memnon Visit to Temple of Hatshepsut										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today, we check-out from our cruise and visit the West Bank of Luxor. We proceed deep into the desert to discover the Valley of Kings. This is the place where generations of pharaohs and nobles were buried in great splendour, housed in crypts cut into the cliffs. On our return, we take a photo-stop at the Colossi of Memnon. These two giant statues are all that remain of the mortuary temple of Amenophis III. Next, our excursion takes as to explore Temple of Queen Hatshepsut, the only woman Pharaoh to have ruled Egypt. Later, check into your hotel in Luxor. Overnight at the hotel in Luxor.															   
												<div class="mt10px">
												
																	
													<p>Meals : (Breakfast, Dinner)</p> 
																									</div>	
															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 8											
											:</b> Return home with wonderful memories										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Today, we drive you to the airport for our flight back home. It’s time to say goodbye to all the new friends you have made. We hope you take back many happy memories of your holiday. We would like you to spare a few minutes of your time to write and tell us how you enjoyed your holiday and any suggestions you may have for the future.															   
												<div class="mt10px">
												
																	
													<p>Meals : (Breakfast)</p> 
																									</div>	
															
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-detail').css('display','none');
								    jQuery(".sub-title").click(function() {
								        var $this = jQuery(this);
										  jQuery('.w-title').addClass('h15px',400);
								          $this.find('.w-title').removeClass('h15px',400);
										  jQuery('.product-detail').slideUp();
								          $this.next().slideDown();
								          if($this.find('i').hasClass('fa-angle-up')){
								          	$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
								          } else {
								          	$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
								          }
								        });
									});
								</script>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																						<li>Transport</li>
																						<li>Transfers</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Any increase in the Airfare / Airline Taxes charged by the airlines on your air ticket(calculated at 1st July 2016 rates).</li><li>
Increase in Visa fees.</li><li>
Cost of extension of the validity of your air ticket.</li><li>
Mandatory tipping & Porterage: An amount of USD 5 per person per day towards tips & USD1 per piece of luggage per hotel to be paid to guide / driver / hotel porterWhat your Tour Price does not include</li><li>
Porterage, tips, insurance, laundry, wines, water, telephone charges, suggested excursions and all items of personal nature and also food and drinks not forming part of the group menus.</li><li>
Anything not specifically mentioned in ‘What your Tour Price includes’ box.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some Advance Percentage of total booking amount 
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>						
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
						
						<ul><li>* 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.</li></ul>						
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.sribalajitourstravels.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Wonders of Egypt 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="71251"/>
						</form>
						</div>
						
										</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by City</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-genting.htm" title="Packages in Genting">Genting</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-kuala-lumpur.htm" title="Packages in Kuala Lumpur">Kuala Lumpur</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-lucerne.htm" title="Packages in Lucerne">Lucerne</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-paris.htm" title="Packages in Paris">Paris</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-zurich.htm" title="Packages in Zurich">Zurich</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-bangkok.htm" title="Packages in Bangkok">Bangkok</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-munich.htm" title="Packages in Munich">Munich</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-hong-kong.htm" title="Packages in Hong Kong">Hong Kong</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-dubai.htm" title="Packages in Dubai">Dubai</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-bundi.htm" title="Packages in Bundi">Bundi</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-nairobi.htm" title="Packages in Nairobi">Nairobi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-madrid.htm" title="Packages in Madrid">Madrid</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-macau.htm" title="Packages in Macau">Macau</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-johannesburg-tours.htm" title="Packages in Johannesburg">Johannesburg</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-bratislava.htm" title="Packages in Bratislava">Bratislava</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-shizuoka.htm" title="Packages in Shizuoka">Shizuoka</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-florence.htm" title="Packages in Florence">Florence</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-kargil.htm" title="Packages in Kargil">Kargil</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-schaffhausen.htm" title="Packages in Schaffhausen">Schaffhausen</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/packages-in-nara.htm" title="Packages in Nara">Nara</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/safari-holidays-catid.htm" title="Safari Packages">Safari</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.sribalajitourstravels.co.in/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/heli-skiing-holidays-catid.htm" title="Heli Skiing Packages">Heli Skiing</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/paragliding-holidays-catid.htm" title="Paragliding Packages">Paragliding</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/mountaineering-holidays-catid.htm" title="Mountaineering Packages">Mountaineering</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/skiing-holidays-catid.htm" title="Skiing Packages">Skiing</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/water-rafting-holidays-catid.htm" title="Water Rafting Packages">Water Rafting</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/rock-climbing-holidays-catid.htm" title="Rock Climbing Packages">Rock Climbing</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/horse-riding-holidays-catid.htm" title="Horse Riding Packages">Horse Riding</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/house-boat-holidays-catid.htm" title="House Boat Packages">House Boat</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/camping-holidays-catid.htm" title="Camping Packages">Camping</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/mountain-climbing-holidays-catid.htm" title="Mountain Climbing Packages">Mountain Climbing</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/river-rafting-holidays-catid.htm" title="River Rafting Packages">River Rafting</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/cycling-holidays-catid.htm" title="Cycling Packages">Cycling</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/motor-bike-holidays-catid.htm" title="Motor Bike Packages">Motor Bike</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.sribalajitourstravels.co.in/jeep-safari-holidays-catid.htm" title="Jeep Safari Packages">Jeep Safari</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:60:"Book Wonders of Egypt Tour - 7 Nights / 8 Days Tour Packages";i:2;s:168:"book wonders of egypt tour - 7 nights / 8 days tour packages, forts and palaces tour packages, cairo, abu simbel, alexandria, aswan, luxor, edfu, kom ombo tour packages";i:3;s:211:"Sri Balaji Tours & Travels offers Wonders of Egypt Tour - 7 Nights / 8 Days tour package, budget Forts and Palaces tour packages for Cairo, Abu Simbel, Alexandria, Aswan, Luxor, Edfu, Kom Ombo at exciting price.";i:4;s:1631:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Cairo, Abu Simbel, Alexandria, Aswan, Luxor, Edfu, Kom Ombo"        
		                 },
		      "description": "Cairo •Guided City Tour.
 •Visit the Egyptian Museum with
 Royal Mummies Room.
 •Sound & Light Show at the PyramidsAlexandria •Day Trip to Alexandria with Guided
 City Tour.
Aswan •Guided City Tour.
 •Visit to the High Dam.Abu Simbel •Visit to Temple of Abu Simbel.
Kom Ombo •Visit to Temple of Kom Ombo.
Edfu •Visit to Temple of Edfu.
Luxor •Visit to Temple of Luxor.
 •Visit to Valley of the Kings.
 •Visit to Temple of Hatshepsut.
 •Photo - Stop at Colossi of Memnon.Any increase in the Airfare / Airline Taxes charged by the airlines on your air ticket(calculated at 1st July 2016 rates).
Increase in Visa fees.
Cost of extension of the validity of your air ticket.
Mandatory tipping & Porterage: An amount of USD 5 per person per day towards tips & USD1 per piece of luggage per hotel to be paid to guide / driver / hotel porterWhat your Tour Price does not include
Porterage, tips, insurance, laundry, wines, water, telephone charges, suggested excursions and all items of personal nature and also food and drinks not forming part of the group menus.
Anything not specifically mentioned in ‘What your Tour Price includes’ box.",
		      "name": "Wonders of Egypt Tour",
		      "telephone": "+91-9735148000"
		    }
		    </script>
			";i:5;N;}