a:6:{i:0;s:38526:"					<div id="append2PageTittle">
    				<div class="page-title-inner bread-right head-inner fo">
    				<div id="breadcrumb">
					<div class="h1"><h1>The Best Of Hong Kong Macau & Cruise Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.starwayy.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.starwayy.in/holidays.htm" title="Holidays">Holidays</a>  			
																
					<b class="ffv p2px">&rsaquo;</b> The Best Of Hong Kong Macau & Cruise Tour</p>
					</div>
					</div>
					</div>
					<script>jQuery('#breadcrumbA').append(jQuery('#append2PageTittle').html());jQuery('#append2PageTittle').remove()</script>
									<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-->				
								
						<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">
					
											<p class="mb5px"><b>Tour Code :</b> HKCR&MAC5N6D</p>
												<p class="mb5px"><b>Duration :</b> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Hong Kong, Macau</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<p class="mb5px"><b>Special Offer :</b> Inclusions<br />
VISA - Visa is on arrival and cost to be borne by the customer<br />
Other Inclusions<br />
-Guaranteed Early Check In upon arrival at 11 am in Hong Kong <br />
-Upgrade to Deluxe room at Dorsett Tseun Wan<br />
-Complimentary use of Handy with free Wifi at Dorsett Tseun Wan <br />
-Pre-Arrival Registration is mandatory for Indian Nationals visiting Hong Kong. Please ensure that you have applied and successfully completed the online pre-arrival registration PRIOR to your booking<br />
-VISA is free of charge is granted on arrival by Hong Kong Immigration department.<br />
-Round trip economy-class airfare<br />
-Hong Kong Premium City Tour on day of arrival in Hong Kong<br />
-2 nights accommodation in Hong Kong <br />
-1 night on-board Star Pisces (Inside Stateroom)<br />
-2 nights accommodation in Macau <br />
-Daily breakfast<br />
-Daily Indian dinner coupons (except for Cuise)<br />
-Return Hong Kong - Macau ferry tickets<br />
-Return airport/ferry terminal transfers<br />
-Hong Kong Airport Cash Back Information worth HKD120 per person which needs to be redeemed at Hong Kong International Airport on your own<br />
-Please note that flights mentioned from Hub Bengaluru/ Chennai/Hyderabad/Ahmadabad herein are indicative and are subject to change as per the final itinerary, without any prior notice. Do note that a 1-stop flight from the hub you have booked from shall be provided. The flights would be of a similar category/type as mentioned here and the airport-hotel-airport transfers would be taken care accordingly.<br />
-Dorsett Hotel is situated at a distance of 30 Min from City Center <br />
Trip Highlights</p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.starwayy.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="The Best of Hong Kong Macau & Cruise Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px b large dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="108890"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px 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 w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180708.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/413576/180708.jpg"  width="150" height="150"    alt="The Best of Hong Kong Macau & Cruise Tour" title="The Best of Hong Kong Macau & Cruise Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180709.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/413576/180709.jpg"  width="150" height="150"    alt="The Best of Hong Kong Macau & Cruise Tour" title="The Best of Hong Kong Macau & Cruise Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180710.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/413576/180710.jpg"  width="150" height="150"    alt="The Best of Hong Kong Macau & Cruise Tour" title="The Best of Hong Kong Macau & Cruise Tour" /></a></p></div></li>
																		<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180711.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/413576/180711.jpg"  width="150" height="150"    alt="The Best of Hong Kong Macau & Cruise Tour" title="The Best of Hong Kong Macau & Cruise Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Capture captivating skyscrapers, sample delectable seafood, shop at high-end malls or flea markets, party at buzzing discotheques or try your luck at casinos in Macau and Hong Kong with this enthralling 6-day tour package. How about a luxurious overnight stay aboard the glamorous Star Pisces cruise This Macau and Hong Kong package has it all! With return flights, royal stays, comfortable transfers, daily breakfast, Indian dinner coupons and sightseeing trips, it is taking away all the hassles of planning a trip and giving you memories of a lifetime. The outing planned in Hong Kong will cover Kowloon Waterfront, TSL Jewellery Workshop, Repulse Bay and Madame Tussauds, and also take you on a tram ride to Victoria Peak. The two days in Macau will be in your hand to explore the cityas you see fit.Inclusions<br />
VISA - Visa is on arrival and cost to be borne by the customer<br />
Other Inclusions<br />
-Guaranteed Early Check In upon arrival at 11 am in Hong Kong <br />
-Upgrade to Deluxe room at Dorsett Tseun Wan<br />
-Complimentary use of Handy with free Wifi at Dorsett Tseun Wan <br />
-Pre-Arrival Registration is mandatory for Indian Nationals visiting Hong Kong. Please ensure that you have applied and successfully completed the online pre-arrival registration PRIOR to your booking<br />
-VISA is free of charge is granted on arrival by Hong Kong Immigration department.<br />
-Round trip economy-class airfare<br />
-Hong Kong Premium City Tour on day of arrival in Hong Kong<br />
-2 nights accommodation in Hong Kong <br />
-1 night on-board Star Pisces (Inside Stateroom)<br />
-2 nights accommodation in Macau <br />
-Daily breakfast<br />
-Daily Indian dinner coupons (except for Cuise)<br />
-Return Hong Kong - Macau ferry tickets<br />
-Return airport/ferry terminal transfers<br />
-Hong Kong Airport Cash Back Information worth HKD120 per person which needs to be redeemed at Hong Kong International Airport on your own<br />
-Please note that flights mentioned from Hub Bengaluru/ Chennai/Hyderabad/Ahmadabad herein are indicative and are subject to change as per the final itinerary, without any prior notice. Do note that a 1-stop flight from the hub you have booked from shall be provided. The flights would be of a similar category/type as mentioned here and the airport-hotel-airport transfers would be taken care accordingly.<br />
-Dorsett Hotel is situated at a distance of 30 Min from City Center <br />
Trip Highlights								</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> Arrival in Hong Kong
										</p>
										<p class="aj">Hong Kong welcomes you with its supreme skyline and dynamic cultural landscape. At the Hong Kong Airport, you would be greeted by a representative who shall assist you with the transfer to the hotel on a shared basis in coach (seat-in-coach). Depending on the city you are traveling from and your flight schedule, you might reach the hotel at or before the standard check-in time (for most hotels) of 3 pm, so do get in touch with your  representative before you travel to book an early check-in, if required, at an extra cost. Later, you would go on the premium city tour on a seat-in-coach basis which includes a visit to Kowloon Waterfront- situated at the southern tip of West Kowloon. The 400-metre harbour-front walk provides an excellent vantage point, to take in the beautiful Victoria Harbour. You would also visit TSL Jewellery Workshop and souvenir shop, where you could find some great antique pieces.  Later, you would take a tram-ride to the Victoria Peak and return by coach, the highest peak of Hong Kong which provides a jaw-dropping view of the magnificent skylines. Here you would also enjoy a visit to the Madame Tussaud with the complimentary entrance ticket. During the tour, you would also take a short Star ferry ride . Hong Kong is a dynamic shopping destination, and on the tour, you would be making shopping stops in this diverse city.<br />
Later, you may head back to the hotel for an overnight stay.</p>					
											<p><b>Meals : </b> 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 2:</b> Day at Leisure
										</p>
										<p class="aj">After breakfast, you could either spend the entire day at leisure or opt for a full day optional tour to Ocean Park or Disneyland.<br />
Ocean Park - Opened in 1977, Ocean Park Hong Kong is a marine-life theme park featuring animal exhibits, thrill rides and shows.<br />
Disneyland - As the newest Disneyland in the world, Hong Kong Disneyland is a must-see because of its special attractions and the inimitable sense of Chinese culture. With unique scenic spots and Disney Theme Hotels, you can go escape from the real world, and make your dreams come true. The availability of delicious Chinese and Asian food is also a lure for many visitors and Disney fans.<br />
Later, you may head to the hotel for an overnight stay.</p>					
											<p><b>Meals : </b> Breakfast, 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> Board Star Pisces
										</p>
										<p class="aj">After relishing breakfast, you could spend the day at leisure or take an optional tour.<br />
Later, you would be transferred to Cruise Terminal to board the cruise. Enjoy the ride and a comfortable overnight stay in the cruise.</p>					
											<p><b>Meals : </b> Breakfast</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> Transfer to Macau
										</p>
										<p class="aj">After enjoying your breakfast, you would check-out from the hotel and go to the Ferry Terminal to travel to Macau. At Macau Ferry Terminal,Complimentary hotel shuttle (No guide) would be helping with the transfers.Post check-in, you would have rest of the day at leisure to enjoy the global city. In the evening, you could watch the House of Dancing Water Show (at an additional cost). This water-based stage production combines theater, dance, gymnastic artistry, high-performance diving, and state-of-the-art displays. (You could purchase this activity on the payment page at the time of booking this package.)</p>					
											<p><b>Meals : </b> Breakfast, 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> Day at Leisure/Macau Sightseeing Tour
										</p>
										<p class="aj">After a delicious breakfast, you would have rest of the day at leisure. Macau is often known as the Las Vegas of East. But there is another side to the city that could be explored through the full-day city tour (additional expense). The tour includes visits to the Ruins of St. Paul’s Church and the Senado Square. The former is a 17th-century Portuguese cathedral whereas the latter has been Macau’s urban center for centuries. During the tour, you would also visit the Na Cha Temple, a section of the old city walls, A-Ma Temple, and a cake shop. Lunch at a local restaurant is included in the tour.(You could purchase this activity at the time of booking this package on the payment page.)</p>					
											<p><b>Meals : </b> Breakfast, 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> Departure from Macau
										</p>
										<p class="aj">Following a lovely breakfast, you would begin your journey back to India. You would take the ferry from Macau back to Hong Kong where you would catch your flight back home.<br />
Following a lovely breakfast, you would begin your journey back to India. You would take the ferry from Macau back to Hong Kong where you would catch your flight back home.</p>					
											<p><b>Meals : </b> Breakfast</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Transfers</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">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</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.starwayy.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="The Best of Hong Kong Macau & 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="108890"/>
						</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.starwayy.in/packages-in-macau.htm" title="Packages in Macau">Macau</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-hong-kong.htm" title="Packages in Hong Kong">Hong Kong</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-sydney.htm" title="Packages in Sydney">Sydney</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-melbourne.htm" title="Packages in Melbourne">Melbourne</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-los-angeles.htm" title="Packages in Los Angeles">Los Angeles</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-christchurch.htm" title="Packages in Christchurch">Christchurch</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-zurich.htm" title="Packages in Zurich">Zurich</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-rome.htm" title="Packages in Rome">Rome</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/packages-in-belfast.htm" title="Packages in Belfast">Belfast</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.starwayy.in/packages-in-las-vegas.htm" title="Packages in Las Vegas">Las Vegas</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.starwayy.in/packages-in-san-francisco.htm" title="Packages in San Francisco">San Francisco</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.starwayy.in/packages-in-queensland.htm" title="Packages in Queensland">Queensland</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.starwayy.in/packages-in-innsbruck.htm" title="Packages in Innsbruck">Innsbruck</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.starwayy.in/packages-in-dublin.htm" title="Packages in Dublin">Dublin</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.starwayy.in/packages-in-salzburg.htm" title="Packages in Salzburg">Salzburg</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.starwayy.in/packages-in-queenstown.htm" title="Packages in Queenstown">Queenstown</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.starwayy.in/packages-in-lucerne.htm" title="Packages in Lucerne">Lucerne</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.starwayy.in/packages-in-rotorua.htm" title="Packages in Rotorua">Rotorua</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.starwayy.in/packages-in-florence.htm" title="Packages in Florence">Florence</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.starwayy.in/packages-in-cairns.htm" title="Packages in Cairns">Cairns</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.starwayy.in/packages-in-amsterdam.htm" title="Packages in Amsterdam">Amsterdam</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.starwayy.in/packages-in-paris.htm" title="Packages in Paris">Paris</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.starwayy.in/packages-in-interlaken.htm" title="Packages in Interlaken">Interlaken</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.starwayy.in/packages-in-auckland.htm" title="Packages in Auckland">Auckland</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.starwayy.in/packages-in-venice.htm" title="Packages in Venice">Venice</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.starwayy.in/packages-in-nice.htm" title="Packages in Nice">Nice</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.starwayy.in/packages-in-engelberg.htm" title="Packages in Engelberg">Engelberg</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.starwayy.in/packages-in-london.htm" title="Packages in London">London</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.starwayy.in/packages-in-washington.htm" title="Packages in Washington">Washington</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.starwayy.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(27)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(18)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.starwayy.in/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(2)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Hong Kong, Macau</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.starwayy.in/tour-packages/5-nightsin-macau-daytime-skyline-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180622.jpg"  alt="5 Nights in Macau Daytime skyline Tour" title="5 Nights in Macau Daytime skyline Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.starwayy.in/tour-packages/5-nightsin-macau-daytime-skyline-tour.htm" title="5 Nights in Macau Daytime skyline Tour"><h3>5 Nights In Macau Daytime Skyline Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Macau</p>
															<div class="mt10px small">
							<form name="pkg_108798" id="pkg_108798" method="post" action="http://www.starwayy.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.starwayy.in/tour-packages/5-nightsin-macau-daytime-skyline-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="5 Nights in Macau Daytime skyline Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="108798"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.starwayy.in/tour-packages/the-bestof-hong-kong-macau-venetian-special-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180688.jpg"  alt="The Best of Hong Kong & Macau - Venetian Special Package" title="The Best of Hong Kong & Macau - Venetian Special Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.starwayy.in/tour-packages/the-bestof-hong-kong-macau-venetian-special-package.htm" title="The Best of Hong Kong & Macau - Venetian Special Package"><h3>The Best Of Hong Kong & Macau - Venetian S..</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Hong Kong, Macau</p>
															<div class="mt10px small">
							<form name="pkg_108878" id="pkg_108878" method="post" action="http://www.starwayy.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.starwayy.in/tour-packages/the-bestof-hong-kong-macau-venetian-special-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="The Best of Hong Kong & Macau - Venetian Special Package - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="108878"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.starwayy.in/tour-packages/1-night-macau3-night-hong-kong-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180610.jpg"  alt="1 Night Macau & 3 Night Hong Kong Tour" title="1 Night Macau & 3 Night Hong Kong Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.starwayy.in/tour-packages/1-night-macau3-night-hong-kong-tour.htm" title="1 Night Macau & 3 Night Hong Kong Tour"><h3>1 Night Macau & 3 Night Hong Kong Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Hong Kong, Macau</p>
															<div class="mt10px small">
							<form name="pkg_108728" id="pkg_108728" method="post" action="http://www.starwayy.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.starwayy.in/tour-packages/1-night-macau3-night-hong-kong-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="1 Night Macau & 3 Night Hong Kong Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="108728"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.starwayy.in/tour-packages/splendid-macau-hong-kong-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180683.jpg"  alt="Splendid Macau & Hong Kong Tour" title="Splendid Macau & Hong Kong Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.starwayy.in/tour-packages/splendid-macau-hong-kong-tour.htm" title="Splendid Macau & Hong Kong Tour"><h3>Splendid Macau & Hong Kong Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Hong Kong, Macau</p>
															<div class="mt10px small">
							<form name="pkg_108874" id="pkg_108874" method="post" action="http://www.starwayy.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.starwayy.in/tour-packages/splendid-macau-hong-kong-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Splendid Macau & Hong Kong Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="108874"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.starwayy.in/tour-packages/5n-hong-kong-cracker-deal-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180626.jpg"  alt="5N Hong Kong Cracker Deal Tour" title="5N Hong Kong Cracker Deal Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.starwayy.in/tour-packages/5n-hong-kong-cracker-deal-tour.htm" title="5N Hong Kong Cracker Deal Tour"><h3>5n Hong Kong Cracker Deal Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Hong Kong</p>
															<div class="mt10px small">
							<form name="pkg_108800" id="pkg_108800" method="post" action="http://www.starwayy.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.starwayy.in/tour-packages/5n-hong-kong-cracker-deal-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="5N Hong Kong Cracker Deal Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="108800"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.starwayy.in/tour-packages/romantic-getaway-hong-kong-macau-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_14/413576/180703.jpg"  alt="Romantic Getaway - Hong Kong & Macau Package" title="Romantic Getaway - Hong Kong & Macau Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.starwayy.in/tour-packages/romantic-getaway-hong-kong-macau-package.htm" title="Romantic Getaway - Hong Kong & Macau Package"><h3>Romantic Getaway - Hong Kong & Macau Packa..</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Hong Kong, Macau</p>
															<div class="mt10px small">
							<form name="pkg_108858" id="pkg_108858" method="post" action="http://www.starwayy.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.starwayy.in/tour-packages/romantic-getaway-hong-kong-macau-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Romantic Getaway - Hong Kong & Macau Package - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="108858"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</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:80:"Book The Best of Hong Kong Macau & Cruise Tour - 5 Nights / 6 Days Tour Packages";i:2;s:153:"book the best of hong kong macau & cruise tour - 5 nights / 6 days tour packages, water sports and activity tour packages, hong kong, macau tour packages";i:3;s:178:"Starwayy offers The Best of Hong Kong Macau & Cruise Tour - 5 Nights / 6 Days tour package, budget Water Sports and Activity tour packages for Hong Kong, Macau at exciting price.";i:4;s:2792:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Hong Kong, Macau"        
		                 },
		      "description": "Capture captivating skyscrapers, sample delectable seafood, shop at high-end malls or flea markets, party at buzzing discotheques or try your luck at casinos in Macau and Hong Kong with this enthralling 6-day tour package. How about a luxurious overnight stay aboard the glamorous Star Pisces cruise This Macau and Hong Kong package has it all! With return flights, royal stays, comfortable transfers, daily breakfast, Indian dinner coupons and sightseeing trips, it is taking away all the hassles of planning a trip and giving you memories of a lifetime. The outing planned in Hong Kong will cover Kowloon Waterfront, TSL Jewellery Workshop, Repulse Bay and Madame Tussauds, and also take you on a tram ride to Victoria Peak. The two days in Macau will be in your hand to explore the cityas you see fit.Inclusions
VISA - Visa is on arrival and cost to be borne by the customer
Other Inclusions
-Guaranteed Early Check In upon arrival at 11 am in Hong Kong 
-Upgrade to Deluxe room at Dorsett Tseun Wan
-Complimentary use of Handy with free Wifi at Dorsett Tseun Wan 
-Pre-Arrival Registration is mandatory for Indian Nationals visiting Hong Kong. Please ensure that you have applied and successfully completed the online pre-arrival registration PRIOR to your booking
-VISA is free of charge is granted on arrival by Hong Kong Immigration department.
-Round trip economy-class airfare
-Hong Kong Premium City Tour on day of arrival in Hong Kong
-2 nights accommodation in Hong Kong 
-1 night on-board Star Pisces (Inside Stateroom)
-2 nights accommodation in Macau 
-Daily breakfast
-Daily Indian dinner coupons (except for Cuise)
-Return Hong Kong - Macau ferry tickets
-Return airport/ferry terminal transfers
-Hong Kong Airport Cash Back Information worth HKD120 per person which needs to be redeemed at Hong Kong International Airport on your own
-Please note that flights mentioned from Hub Bengaluru/ Chennai/Hyderabad/Ahmadabad herein are indicative and are subject to change as per the final itinerary, without any prior notice. Do note that a 1-stop flight from the hub you have booked from shall be provided. The flights would be of a similar category/type as mentioned here and the airport-hotel-airport transfers would be taken care accordingly.
-Dorsett Hotel is situated at a distance of 30 Min from City Center 
Trip Highlights",
		      "name": "The Best of Hong Kong Macau & Cruise Tour",
		      "telephone": "+91-8818044400"
		    }
		    </script>
			";i:5;N;}