a:6:{i:0;s:8762:"				<div class="h1"><h1>Hong Kong with Cruise Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.journeyasia.co.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.journeyasia.co.in/packages.htm" title="Packages">Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Hong Kong with Cruise 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">
						4 Nights / 5 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Hong Kong</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.journeyasia.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Hong Kong with Cruise 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="85858"/>
						</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_1/7828/150605.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/7828/150605.jpg"  width="150" height="150"    alt="Hong Kong with Cruise Tour" title="Hong Kong with Cruise 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 in Hong Kong
								</p>
								<p class="aj">On your arrival at the Hong Kong airport, our tour representative helps you with an assisted transfer to your pre-booked hotel. After completing the check-in formalities, you are free to explore the place on your own. One of the most-visited destinations in the world, Hong Kong is a real charmer amongst the Southeast Asian destinations. As the day is at leisure, you can spend as per your own preference.<br />
<br />
Stay overnight 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 – Super Star Virgo Cruise -
								</p>
								<p class="aj">Day 2, after breakfast is free for leisure activities. You can visit and explore the popular tourist attractions of Hong Kong such as Victoria Peak, Madam Tussaud's Wax Museum, Ocean Park, Disney Land, Museum of History, etc. If you want, you can also indulge in shopping at popular markets of Hong Kong such as Time Square, City Gate Outlets, Jade market, Granville Road, Canton Road, Beijing Road and so on. Later in the evening, get transferred to Super Star Virgo Cruise after completing the check-in. As you go aboard and settle in your cabins, you are free to explore this huge stunning ship on your own. The Victoria Harbour with its well-lit skyline is simply going to mesmerize you.<br />
<br />
Overnight stay on the cruise.</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> On-board Cruise
								</p>
								<p class="aj">All the three meals on-board the cruise are going to be huge spreads of multi-cuisine delicacies in the form of a buffet. This 5-star cruise ship has endless food, leisure and entertainment options. There are separate swimming pools for kids and adults, a separate kid's playing area, gymnasium, several restaurants and bars on each deck, special magic, comedy and nude shows, theatrical musical show by world-renowned performers, Video Arcades, business centers, well-furnished and well-equipped rooms and suites, and much more. Your time on-board this luxury cruise is just going to fly away, creating unforgettable memories for lifetime.<br />
<br />
Overnight on the Cruise.</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> Cruise – Hong Kong
								</p>
								<p class="aj">In the morning on day 4, enjoy a delicious breakfast on the cruise, selecting your favorite food from the huge buffet spread. Thereafter, disembark from the cruise and get an assisted transfer to your pre booked hotel. The rest of the day is free for leisure. You can continue with your second leg of sightseeing and indulge in shopping for some great stuff like jewelry, clothes, watches, toys, cosmetics, electronic goods and more.<br />
<br />
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 5:</b> Hong Kong Airport for Departure
								</p>
								<p class="aj">In the morning, after an enjoyable breakfast at the hotel, get an on-time assisted transfer to the hotel for your flight back home.</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.journeyasia.co.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Hong Kong with Cruise 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="85858"/>
						</form>
						</div>
						
						";i:1;s:65:"Book Hong Kong with Cruise Tour - 4 Nights / 5 Days Tour Packages";i:2;s:114:"book hong kong with cruise tour - 4 nights / 5 days tour packages, heritage tour packages, hong kong tour packages";i:3;s:158:"Book Hong Kong with Cruise Tour - 4 Nights / 5 Days tour packages from Journey Asia - Get attractive 4 Nights / 5 Days Heritage  tour packages for  Hong Kong.";i:4;s:407:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Hong Kong"        
		                 },
		      "description": "",
		      "name": "Hong Kong with Cruise Tour",
		      "telephone": "+91-9910078863"
		    }
		    </script>
			";i:5;N;}