a:6:{i:0;s:13313:"				<div class="h1"><h1>Australia Wonder – 10 Nights & 11 Days Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.oppexholidays.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.oppexholidays.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Australia Wonder – 10 Nights & 11 Days 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">
						10 Nights / 11 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Sydney, Cairns, Melbourne, Gold Coast</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 97199 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.oppexholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Australia Wonder – 10 Nights & 11 Days 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="114285"/>
						</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_2/37817/186715.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_2/37817/186715.jpg"  width="150" height="150"    alt="Australia Wonder – 10 Nights & 11 Days Tour" title="Australia Wonder – 10 Nights & 11 Days Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					(Inclusive of Visa Charges for Australia)<br />
02 Night accommodation in Melbourne<br />
03 Night accommodation in Gold Coast<br />
02 Night accommodation in Cairns<br />
03 Night accommodation in Sydney<br />
Daily Breakfast<br />
Melbourne city Tour<br />
Dream world (Gold Coast)<br />
Sea world (Gold Coast)<br />
Big Cat Cruise Tour to Green Island Reef with Buffet Lunch (Cairns)<br />
Morning half day City Tour Sydney)<br />
Blue Mountains Tour with Wildlife Park (Sydney)<br />
Australia Visa<br />
Return airport transfersAirfare<br />
Any expenses of personal nature.<br />
GST As per applicable<br />
Hotels not booked yet.<br />
Rates Subject to change without prior notice<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> MELBOURNE
								</p>
								<p class="aj">Arrive Melbourne Tullamarine Airport within 2000hrs & SIC Transfer to Hotel (Extra Private Surcharge apply for late night arrivals). Check-in (Early Check-in is Not Guaranteed). Overnight.</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> MELBOURNE
								</p>
								<p class="aj">Breakfast. Morning Half Day SIC Melbourne City Tour.<br />
Overnight at Hotel</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> GOLD COAST
								</p>
								<p class="aj">Breakfast. Depart to Melbourne Tullamarine Airport by SIC Transfer for flights within 2300hrs. Arrive Brisbane or Gold Coast Airport within 2330hrs and SIC Transfer to your Hotel.</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> GOLD COAST
								</p>
								<p class="aj">Breakfast. Return SIC transfer for Dreamworld admission. Overnight at your Hotel</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> GOLD COAST
								</p>
								<p class="aj">Breakfast. Return SIC transfer to Seaworld OR Movieworld admission (Choice of 1 Theme Park - must be pre-booked). Overnight at your Hotel</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> CAIRNS
								</p>
								<p class="aj">Breakfast. Check-out & SIC transfer to Brisbane or Gold Coast Airport. Arrive Cairns Airport within 2230hrs & SIC Transfer to Hotel. Check-in. Day Free & Overnight</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> CAIRNS
								</p>
								<p class="aj">Breakfast. Full Day SIC Big Cat Cruise Tour to Green Island Reef with Buffet Lunch, Semi-submarine & Glass bottom boat OR Snorkelling Gears (Pak 4). Overnight</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 8:</b> CAIRNS
								</p>
								<p class="aj">Breakfast. Depart for Cairns Airport by SIC Transfer for your onward flight. Arrive Sydney Airport within 2000hrs & SIC Transfer to your Hotel. Overnight at your Hotel</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 9:</b> : SYDNEY
								</p>
								<p class="aj">Breakfast. Morning Half Day SIC Sydney City Tour</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 10:</b> SYDNEY
								</p>
								<p class="aj">Breakfast. Choice of 1 Full Day Blue Mountains Tour with Wildlife Park, Scenic Rides at Scenic World</p>
								</td>
								</tr>
								</table>					
								</div><div id="show_more_content" style="display:none;">
									<div class="data">
									<table class="w100 formTable bdr0 imgWidth">
									<tr>
									<td class="p10px vat">
									<p class="b large mb5px"><b class="dif">Day 11:</b> SYDNEY
									</p>
									<p class="aj">Breakfast. Check Out of Hotel. SIC transfer to Sydney Airport for onward flight</p>
									</td>	
									</tr>
									</table>				
									</div>					
							</div>							<p class="mt10px ac"><a class="buttonBig p5px10px dib b" id="more_button" href="javascript:topDestinationToggle('show_more_content','more_button');" >View More &#9660;</a></p>
													<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>Meals</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Airfare</li><li>
Any expenses of personal nature.</li><li>
GST As per applicable</li><li>
Hotels not booked yet.</li><li>
Rates Subject to change without prior notice</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<ul>
	<li>The above is only an offer. In the event of Non availability of the specified hotel, alternate or similar hotels would be offered.</li>
	<li>Rates valid strictly for the requested period.</li>
	<li>RATES FOR PRIVATE SERVICES ARE BASED ON MINIMUM PAX TRAVELING. ANY CHANGE IN THRE NUMBER OF PAX WOULD LEAD TO CHANGE IN COST</li>
	<li>Any increase in the Airlines taxes /Hotel Surcharges from the time of Booking till the Departure date must be borne by pax.</li>
	<li>No refund for unutilized service</li>
	<li>All Hotels, Itinerary, restaurants subject to change without notice.</li>
	<li>Rates valid only for the dates and period requested. Change in date would lead to change of Cost</li>
	<li>Rates are based on as on date&rsquo;s exchange rate. Should there be any major fluctuation OPPEX TRAVELS AND TOURS reserve the right to furnish a fresh quote.</li>
	<li>Rates do not include Event/ Peak Season surcharges. Would be advised at the time of booking.</li>
	<li>Any damage caused to hotel rooms/ Coach during your stay, shall be payable by the which may occur in carrying out the tour arrangement, weather conditions, strikes, Passengers.</li>
	<li>OPPEX TRAVELS AND TOURS will not be liable for the same.</li>
	<li>The Company shall not accept any liability or responsibility for any damages, loss, injury, accident, death, Flight Cancelation by Airline , breakdown, or irregularity, wars, quarantine or any other cause whatsoever and all such loss or expense must be borne by pax.</li>
	<li>All Tours subject to OPPEX TRAVELS AND TOURS Tour conditions</li>
	<li>For payments made in INR, the conversion would be based on the ROE as on the date of payments.</li>
	<li>(Please refer our Terms and Conditions and cancellation policies mentioned in our</li>
</ul>						
    	<p class="h dif xlarge b mb5px">HOTEL DETAILS:</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">PLACE</td>
				<td class="headHr p5px b">HOTEL NAME</td>
				<td class="headHr p5px b">ROOM TYPE</td>
			</tr>
			<tr>
				<td class="data p5px">Gold Coast</td>
				<td class="data p5px">Mantra Legend or similar</td>
				<td class="data p5px">Standard Room</td>
			</tr>
			<tr>
				<td class="data p5px">Melbourne</td>
				<td class="data p5px">Ibis Styles Or Similar</td>
				<td class="data p5px">Standard Heritage Room</td>
			</tr>
			<tr>
				<td class="data p5px">Sydney</td>
				<td class="data p5px">Travelodge Sydney Or Similar</td>
				<td class="data p5px">Guest Room</td>
			</tr>
			<tr>
				<td class="data p5px">Cairns</td>
				<td class="data p5px">Cairns Colonial club Or Similar</td>
				<td class="data p5px">Standard Room</td>
			</tr>
		</table></div><br>						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.oppexholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Australia Wonder – 10 Nights & 11 Days 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="114285"/>
						</form>
						</div>
						
						";i:1;s:75:"Book Australia Wonder – 10 Nights & 11 Days Tour - 111 Days Tour Packages";i:2;s:152:"book australia wonder – 10 nights & 11 days tour - 111 days tour packages, heritage tour packages, sydney, cairns, melbourne, gold coast tour packages";i:3;s:234:"Book Australia Wonder – 10 Nights & 11 Days Tour - 111 Days tour packages from Oppex Travels & Tours ( a Division of Oppex Freight Systems - Get attractive 111 Days Heritage  tour packages for  Sydney, Cairns, Melbourne, Gold Coast.";i:4;s:1056:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Sydney, Cairns, Melbourne, Gold Coast"        
		                 },
		      "description": "(Inclusive of Visa Charges for Australia)
02 Night accommodation in Melbourne
03 Night accommodation in Gold Coast
02 Night accommodation in Cairns
03 Night accommodation in Sydney
Daily Breakfast
Melbourne city Tour
Dream world (Gold Coast)
Sea world (Gold Coast)
Big Cat Cruise Tour to Green Island Reef with Buffet Lunch (Cairns)
Morning half day City Tour Sydney)
Blue Mountains Tour with Wildlife Park (Sydney)
Australia Visa
Return airport transfersAirfare
Any expenses of personal nature.
GST As per applicable
Hotels not booked yet.
Rates Subject to change without prior notice",
		      "name": "Australia Wonder – 10 Nights & 11 Days Tour",
		      "telephone": "+91-9821321975"
		    }
		    </script>
			";i:5;N;}