a:6:{i:0;s:14314:"				<div class="h1"><h1>Thailand Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.excellworldholidays.com/" title="Home">Home</a> 
				
								
				<b class="ffv p2px">&rsaquo;</b>Thailand Package</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">Tour Code </td>
						<td class="p5px pl0px vat">EWH-TH210</td>
						</tr>
												<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">
						INR 27500 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.excellworldholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Thailand Package - 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="89950"/>
						</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/27643/155752.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/27643/155752.jpg"  height="150"  width="150"    alt="Phuket" title="Phuket" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Thailand is located in Southeast Asia on the Gulf of Thailand and the Andaman Sea. The center of Thailand consists of flat plains no more than a few feet above sea level, watered by the Chao Phraya River and a number of smaller rivers and canals. The country is generally quite safe, and it has decades of experience in catering to travelers, be it anyone.Govt.Service Tax.<br />
Air Fare<br />
Thailand visa charge exclusive<br />
Meals Not Mentioned In The Itinerary<br />
Entry Fees To Monuments And Palaces.<br />
Anything Not Mentioned In The Inclusions.<br />
Porterage At Hotels And Airports, Tips, Insurance, Laundry, Liquors, Wine, Etc.<br />
All Items Of Personal Nature.<br />
Any Cost Arising Due To Natural Calamities Like Landslides, Roadblocks, Etc.<br />
Any Increase In Taxes Or Fuel Leading To An Increase In Surface Transport.<br />
Mandatory X- Mas / New Year Eve Supplementary Charges, That Should Be Paid By The Guest Directly To The Hotels Concerned.17-0330-06<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 Phuket
								</p>
								<p class="aj">Welcome to Thailand !!! Upon arrival at Phuket International Airport kindly make your way to the exit gate, you will be greet by our local representative and transferred to the beautiful beach destination Phuket. Check into the hotel. Rest of the day at leisure. It is here that you can hit the bars, saks on the beaches, shop till you drop, pamper yourself with a foot massage and relish mouth-watering Thai cuisine. For evening we recommend you to visit the great and most popular Phuket Fantasea Show as an optional. Phuket Fantasea Show is inspired by Thailand rich and exotic heritage.The result is a stunning 140-acre theme complex, packed with a multitude of activities and entertainment: a Carnival village with games, handicrafts and shopping; a 4,000-seat theme restaurant offering a grand buffet of Thai and international cuisines; and a breathtaking Las Vegas-style theatrical show, where state-of-the-art technology and special effects enhance the grace and beauty of Thailand myths, mysteries and magic in a wondrous extravaganza certain to delight the whole family. Overnight stay at the hotel.</p>
								</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 <? echo $p_class; ?>"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_1/27643/155752.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/27643/155752.jpg"  height="150"  width="150"    alt="Phuket" title="Phuket" /></a></p></div></li>
									</ul>
									</div>
									</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> Phuket - City Tour
								</p>
								<p class="aj">After a sumptuous breakfast at hotel proceed for the Phuket City Tour is a great choice for fans of culture and architecture. Visiting Island highlights such as Wat Chalong, Phuket most revered monastery. Then, proceed to Phromthep Cape for spectacular views. Visit the view point for a bird eye view. Take in Phuket Island natural beauty as you are driven along beach roads through Patong, Karon, Kata and Rawai. Visit the Three Beaches viewpoint where you can take in a great vista of the beautiful bays of Kata Noi, Kata, Karon and Kho Pu Island, at one of the island best scenic spot. This tour gives an insight into the highlights of the Pearl of the Andaman. It also includes a leisurely drive around Phuket town to view the Sino-Portuguese style buildings. Other attractions visited are Wang Thalang Lapidary gem factory. 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> Phuket - Bangkok - Pattaya
								</p>
								<p class="aj">After a sumptuous breakfast at hotel you will be transferred to airport to catch flight for your next destination Bangkok. Upon arrival at Bangkok Suvarnabhumi International Airport kindly make your way to the exit gate, you will be greet by our local representative and transferred to the beautiful beach destination Pattaya by road for a drive of approx. 2 hours. Check into the hotel. Rest of the day at leisure. It is here that you can hit the bars, saks on the beaches, shop till you drop, pamper yourself with a foot massage and relish mouth-watering Thai cuisine. For evening we recommend you to visit the great and most popular Alcazar Show as an optional. The Alcazar Show a world-famous cabaret, like the Lido and Moulin Rouge of Paris. Featuring a grand theatre with 1200 seats. and experience Dazzling Performances by men artist who are in glittering evening gowns as well groomed ladies and they dance against a backdrop of surround sound and computerized lighting. 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 4:</b> Pattaya - Coral Island Tour
								</p>
								<p class="aj">After a sumptuous breakfast at hotel you will transfer to the sparkling blue water of the Gulf of Thailand by a speedboat and arrive at the idyllic Coral Island (Koh Lan), where you will spend the day luxuriating under the welcoming tropical sun. One can explore beautiful and extensive coral while scuba diving or enjoy snorkeling in crystal clear sea waters. Laze around on the beach and bask in the sun or get playful and indulge in exciting water sports like parasailing, glass bottom boat ride,water-skiing and jet skis, water scooters. In the afternoon enjoy local Indian lunch at an Indian restaurant. 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 5:</b> Pattaya - Bangkok - City Tour
								</p>
								<p class="aj">After a sumptuous breakfast at hotel check out from Pattaya and will be transferred to Bangkok. Today get ready to experience panoramic City and Temple tour of Bangkok. The tour takes you to some of Bangkok most distinguished Buddhist temples locally known as Wats. Visit Wat Traimit, Temple of the Golden Buddha which is home to a 5.5 ton statue of the holy Buddha made from solid gold and is a fine example of Sukhothai art. Next stop comes at Wat Pho, Temple of the Reclining Buddha that is home to the largest and the oldest shrine of its kind in Bangkok. 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 6:</b> Bangkok
								</p>
								<p class="aj">After a sumptuous breakfast at hotel day free for your leisure ,shopping ,explore the city own own or we recommend you to take optional tour of Safari World and Marine Park.Thailand popular open zoo. Divided into four distinct sections (Safari Park, Bird Park, Games Corner and Macaw Island), the Safari World Park is the place to be, to see dolphins, orangutans, seals and a myriad of other exotic animals and birds amidst a picturesque African setting. Several lunch options are available here for you to pick from.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 7:</b> Departure Bangkok
								</p>
								<p class="aj">After a sumptuous breakfast check out from the hotel. If you have time left in your flight, enjoy free time for some last minute shopping. Later get transferred to the airport to board 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>2 Star Hotel</li>
																		<li>Sightseeing</li>
																		<li>Transfers</li>
																		<li>Airport Pickup-Drop</li>
																		<li>Private Guides</li>
																		<li>Stay Included</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Govt.Service Tax.</li><li>
Air Fare</li><li>
Thailand visa charge exclusive</li><li>
Meals Not Mentioned In The Itinerary</li><li>
Entry Fees To Monuments And Palaces.</li><li>
Anything Not Mentioned In The Inclusions.</li><li>
Porterage At Hotels And Airports, Tips, Insurance, Laundry, Liquors, Wine, Etc.</li><li>
All Items Of Personal Nature.</li><li>
Any Cost Arising Due To Natural Calamities Like Landslides, Roadblocks, Etc.</li><li>
Any Increase In Taxes Or Fuel Leading To An Increase In Surface Transport.</li><li>
Mandatory X- Mas / New Year Eve Supplementary Charges, That Should Be Paid By The Guest Directly To The Hotels Concerned.</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.excellworldholidays.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Thailand Package - 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="89950"/>
						</form>
						</div>
						
						";i:1;s:55:"Book Thailand Package - 6 Nights / 7 Days Tour Packages";i:2;s:128:"book thailand package - 6 nights / 7 days tour packages, beach and islands tour packages, bangkok, pattaya, phuket tour packages";i:3;s:180:"Book Thailand Package - 6 Nights / 7 Days tour packages from Excellworld Holidays - Get attractive 6 Nights / 7 Days Beach and Islands  tour packages for  Bangkok, Pattaya, Phuket.";i:4;s:1345:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bangkok, Pattaya, Phuket"        
		                 },
		      "description": "Thailand is located in Southeast Asia on the Gulf of Thailand and the Andaman Sea. The center of Thailand consists of flat plains no more than a few feet above sea level, watered by the Chao Phraya River and a number of smaller rivers and canals. The country is generally quite safe, and it has decades of experience in catering to travelers, be it anyone.Govt.Service Tax.
Air Fare
Thailand visa charge exclusive
Meals Not Mentioned In The Itinerary
Entry Fees To Monuments And Palaces.
Anything Not Mentioned In The Inclusions.
Porterage At Hotels And Airports, Tips, Insurance, Laundry, Liquors, Wine, Etc.
All Items Of Personal Nature.
Any Cost Arising Due To Natural Calamities Like Landslides, Roadblocks, Etc.
Any Increase In Taxes Or Fuel Leading To An Increase In Surface Transport.
Mandatory X- Mas / New Year Eve Supplementary Charges, That Should Be Paid By The Guest Directly To The Hotels Concerned.17-0330-06",
		      "name": "Thailand Package",
		      "telephone": "+91-9881120349"
		    }
		    </script>
			";i:5;N;}