a:6:{i:0;s:9615:"				<div class="h1"><h1>4/5 Star Hongkong - Macau - Shenzhen Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.pragyatravels.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.pragyatravels.com/tour-packages.htm" title="Packages">Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>4/5 Star Hongkong - Macau - Shenzhen 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">Hong Kong, Macau, Shenzhen</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.pragyatravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="4/5 Star Hongkong - Macau - Shenzhen 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="68062"/>
						</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/434232/124070.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_15/434232/124070.jpg"  width="150" height="150"    alt="4/5 Star Hongkong - Macau - Shenzhen Tour" title="4/5 Star Hongkong - Macau - Shenzhen 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> Mumbai - Hong Kong
								</p>
								<p class="aj">Board Your Flight From Mumbai Airport For Hong Kong. Arrive At Hong Kong Proceed To The Hotel And Relax For Some Time And Later Experience The Magic Of Hong Kong Night City Tour Where You Will Visit The Golden Bauhinia Square, Repulse Bay , Stanley Market, Aberdeen Village, Jewellery Factory , Victoria Peak, Tram Ride And Madame Tussaud’s Wax Museum. Enjoy 45 Minutes In Cruise Experience The Stunning Panoramic Views Of The Bustling Harbor And The City's Skyscrapers Along With A Laser & Light Show (Symphony Of Lights).Overnight Stay In Hong Kong.</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> Hong Kong
								</p>
								<p class="aj">After Breakfast, Proceed For A Full Day Trip To Disneyland. Step Into A Wondrous World Of Exciting And Enchanting Lands. Located On Scenic Lantau Island, Disneyland Offers Magical Experiences Ranging From Broadway -Sty Le Shows, Hilarious 3D Movies And Music Adventure To Signature Disney Attractions, Snapshots With Your Favorite Disney Friends, Spectacular Fireworks And Parades For The Entire Family . Lunch Coupon Will Be Served Inside The Disneyland Theme Park Restaurant. Enjoy Fireworks. Overnight Stay In Hong Kong.</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> Hong Kong
								</p>
								<p class="aj">After Breakfast, Proceed To Visit Full Day Ocean Park Tour Where You Will Have A Day Full Of Fun And Excitement. Ocean Park Is One Of The Spectacular Oceanariums In The World With The Largest Marine Theatre. It Is An Amusement Park With The Popular Dragon Roller Coaster Ferris Wheel And The Other Thrills. Lunch Coupon Will Be Served Inside The Ocean Park Restaurant. Shopping. Overnight Stay In Hong Kong.</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> Hong Kong - Macau
								</p>
								<p class="aj">After Early Breakfast Checkout From The Hotel And Proceed To Hong Kong Ferry Terminal, Take The Ferry And Proceed For A 60-Minute Ferry Ride To Macau. Arrive At Macau. Meet And Greet By Our Local Representative / Driver Cum Guide And Proceed For Half Day City Tour Of Macau. Transfer And Check Into The Hotel. Rest Of The Day Is At Leisure And Later In The Evening Explore Macau And Try Your Luck At The Casino. Overnight Stay In Macau.</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> Macau - Shenzhen
								</p>
								<p class="aj">After Breakfast Transfer To Shenzhen . Arrive At Shenzhen Check In The Hotel And Rest Of The Day Is Free At Leisure And Shopping. Overnight Stay In Shenzhen.</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> Shenzhen
								</p>
								<p class="aj">After Breakfast We Move For A Shenzhen City Tour With Windows Of The World Visiting The Local Mineral Museum, Lotus Square, And Diwang Mansion & Local Shops For Shopping. Overnight Stay In Shenzhen.</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> Shenzhen - Hong Kong Airport - Mumbai
								</p>
								<p class="aj">After Breakfast At The Hotel. Check Out From Your Hotel And Spend Little Time For Last Minute Shopping. Transfer To The Airport To Board Your Flight Back Home. Please Report At The Airline Counter At Least 3 Hours Prior To Your Schedule Departure Time Of Your Flight. Once Again Thank You For Been A Part Of Cosmos Tours India!!!. Arrive In India With Happy Memories.Tour Ends.</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>
															</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.pragyatravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="4/5 Star Hongkong - Macau - Shenzhen 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="68062"/>
						</form>
						</div>
						
						";i:1;s:80:"Book 4/5 Star Hongkong - Macau - Shenzhen Tour - 6 Nights / 7 Days Tour Packages";i:2;s:146:"book 4/5 star hongkong - macau - shenzhen tour - 6 nights / 7 days tour packages, heritage tour packages, hong kong, macau, shenzhen tour packages";i:3;s:173:"Pr Travels offers 4/5 Star Hongkong - Macau - Shenzhen Tour - 6 Nights / 7 Days tour package, budget Heritage tour packages for Hong Kong, Macau, Shenzhen at exciting price.";i:4;s:439:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Hong Kong, Macau, Shenzhen"        
		                 },
		      "description": "",
		      "name": "4/5 Star Hongkong - Macau - Shenzhen Tour",
		      "telephone": "+91-7060220730"
		    }
		    </script>
			";i:5;N;}