a:6:{i:0;s:10601:"				<div class="h1"><h1>Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.travelshopgorakhpur.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelshopgorakhpur.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days</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">Bangkok, Pattaya, Phuket</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.travelshopgorakhpur.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days - 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="34425"/>
						</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/20162/70546.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/20162/70546.jpg"  height="150"  width="150"    alt="Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days" title="Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Travel Insurance, Tips, Porterage<br />
Applicable peak season surcharge<br />
Expenses of Personal Nature<br />
Anything not Mentioned in the package inclusions<br />
Service Tax extra 3.9%<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> Pickup From Airport Don Muang International Airport
								</p>
								<p class="aj">Arrive at Don Muang International Airport<br />
Arrive at Don Muang International Airport and after clearing immigration and customs make your way to the Association of Thai Travel Agents (ATTA) exit. Please ensure that you exit the same terminal that your flight arrives in (e.g. if you arrive by Thai Airways which arrives at Terminal 1, you should ensure that you exit customs at Terminal 1 itself). You will be met by our representative at the appointed seat in coach time at the ATTA waiting lounge and you will be transferred to Pattaya, 147 kms from Bangkok. Day is free for relaxation or you can take an optional Alcazar / Tiff any Show, the famous cultural dance performance. 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 2:</b> Koh Larn - Coral Island
								</p>
								<p class="aj">Koh Larn - Coral Island<br />
Breakfast at Hotel. Visit the scenic Koh Larn - Coral Island. Major attractions viewing coral reefs from glass-bottomed boats, snorkeling, scuba diving, windsurfing, skiing and para-sailing (water sports are optional and can a vail locally). Overnight stay at the 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> Transfer to Bangkok
								</p>
								<p class="aj">Bangkok<br />
After breakfast, check out of Hotel. You will be transferred to the Bangkok hotel.The rest of the day is yours, to explore your surroundings at leisure.<br />
Over Night 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> Bangkok Sight Seeing
								</p>
								<p class="aj">This morning you will do a city and orientation tour of historic and modern Bangkok, or the City of Angels as Bangkok is known to the Thai people. The programme includes a visit to the Reclining Buddha Temple (also known as Wat Pho), the oldest of the city temples situated opposite the Grand Palace. The temple is renowned as Thailand s oldest university and there are instructive murals illustrating the finer points of Thai massage which is still taught and practised here. The highlight is the 46 metre long and 15 metre high statue of a reclining Buddha. Also included is a visit to the Golden Buddha Temple (also known as Wat Traimit), located close to Hua Lum Pong, Bangkok s central railway station. The temple houses a 5.5 tonne solid gold Buddha, which was discovered when it s plaster casing broke whilst being transported to its new home. Following this you will be taken to a Gems Factory. Gemstones are mined in Thailand and nearby Myanmar. At the Gems factory you will see their team of experienced artists cut, polish, and set each precious stone to create a perfect and exquisite unique piece of jewellery.<br />
Over Night 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> Transfer To Phuket
								</p>
								<p class="aj">This is your day to relax or do an optional tour to the Phi Phi Islands. The Phi Phi islands are located about 48 Km southeast from Phuket or you could do an optional tour to James Bond Island. This famous landmark first found its way onto the international map through its function as the location for the shooting of the James Bond movie "The Man With the Golden Gun". The entire area surrounding this island with its signature rocky pinnacle is indeed spectacular. 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 6:</b> Phuket Free Day
								</p>
								<p class="aj">After breakfast, Day is free for leisure and exploring the Island on your own. 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 7:</b> Transfer To Phuket Airport
								</p>
								<p class="aj">After breakfast, you will be fetched from your Hotel and dropped to Phuket Airport for your flight 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>Transfers</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Travel Insurance, Tips, Porterage</li><li>
Applicable peak season surcharge</li><li>
Expenses of Personal Nature</li><li>
Anything not Mentioned in the package inclusions</li><li>
Service Tax extra 3.9%</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.travelshopgorakhpur.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days - 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="34425"/>
						</form>
						</div>
						
						";i:1;s:87:"Book Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days - 6 Nights / 7 Days Tour Packages";i:2;s:160:"book bangkok - pattaya - phuket tour 6 nights/ 7 days - 6 nights / 7 days tour packages, beach and islands tour packages, bangkok, pattaya, phuket tour packages";i:3;s:188:"Travel Shop offers Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days - 6 Nights / 7 Days tour package, budget Beach and Islands tour packages for Bangkok, Pattaya, Phuket at exciting price.";i:4;s:614:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bangkok, Pattaya, Phuket"        
		                 },
		      "description": "Travel Insurance, Tips, Porterage
Applicable peak season surcharge
Expenses of Personal Nature
Anything not Mentioned in the package inclusions
Service Tax extra 3.9%",
		      "name": "Bangkok - Pattaya - Phuket Tour 6 Nights/ 7 Days",
		      "telephone": "+91-9935400834"
		    }
		    </script>
			";i:5;N;}