a:6:{i:0;s:9533:"				<div class="h1"><h1>Amazing Thailand Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.grandindiatrip.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.grandindiatrip.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Amazing Thailand 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">Tour Code </td>
						<td class="p5px pl0px vat">110</td>
						</tr>
												<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">Kolkata, Bangkok, Pattaya</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat">
						INR 22999 Per Person						</td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.grandindiatrip.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Amazing Thailand 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="35036"/>
						</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_9/257644/71662.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/257644/71662.jpg"  width="150" height="150"    alt="Amazing Thailand Tour" title="Amazing Thailand Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Bangkok Pattaya Tours Packages<br />
Pattaya- When on Thailand Holidays, get rejuvenated with the fun-filled water sporting activities like swimming and snorkelling. The blissful coral formation is the major sight on the Pattaya Tours. Above all, the pristine beaches and the cool breeze make for a fascinating Bangkok Holidays. The happening nightlife and limitless entertainment is indeed a tourist treasure. <br />
<br />
Bangkok- The ‘City Of Angels’, greets the tourists with scenic beauty and the wondrous temples. Bangkok Tours Packages treats the tourist with the grandest shopping experience in one of the Asia’s largest shopping centers. Apart from this, Bangkok Tours also treats the taste buds with some pungent delicacies of Thailand. The Safari Tour with Marine Tour is a must-stop destination.Expenses Of Any Personal Nature (Phone Calls, Laundry Etc).<br />
Any Services Not Mentioned In The "Inclusions"<br />
Service Tax Of 3.09% Will Be Applicable On The Package01-0430-09<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> Kolkata – Bangkok - Pattaya
								</p>
								<p class="aj">Transfer from Bangkok International airport to Pattaya Hotel (SIC TRANSFER).<br />
Half Day Coral Island with Glass Bottom Boat Ride & Indian Lunch in Pattaya (SIC TRANSFER).</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> Pattaya
								</p>
								<p class="aj">Alcazar Show Pattaya (SIC TRANSFER).</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> Bangkok
								</p>
								<p class="aj">Transfer from hotel in Pattaya to hotel in Bangkok with Lunch. (SHARED VAN / SIC TRANSFER.</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
								</p>
								<p class="aj">Half Day Bangkok City Tour(SIC TRANSFER).</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> Bangkok - Kolkata
								</p>
								<p class="aj">Transfer from Bangkok Hotel to Bangkok International Airport. (SHARED VAN / SIC TRANSFER).</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>Expenses Of Any Personal Nature (Phone Calls, Laundry Etc).</li><li>
Any Services Not Mentioned In The "Inclusions"</li><li>
Service Tax Of 3.09% Will Be Applicable On The Package</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>~^#^~~^#^~<p>&bull;The Above Rates Are Based On Minimum 2 Persons Traveling Together And Are Applicable For Indian Passport Holders.<br />
&bull;The Above Prices Are Calculated Based On The Lowest Available Airfare And Current Applicable Taxes, And Are Subject To Avaliability And Change At The Time Of Booking.<br />
&bull;Rates Are Subject To Change In Any Case Of Any Changes In Hotel Taxes, Roe, Transport Rates, Government Taxes &amp; Entrance Fees.

<p>&bull;Rates Are Based On Current Roe And Roe Will Be Applicable At The Time Confirmation Hotels Subject To Availability At The Time Of Making Reservation.<br />
&bull;In Case Of Unavailability In Mentioned Hotels, Alternate Accommodation Will Be Arranged In A Similar Category Hotel.<br />
&bull;International Check In Time Is 1400 - 1500 Hours; Check Out Time Is 1100 - 1200 Hours. Early Check In / Late Checks Out Is Subject To Availability Of Rooms.<br />
&bull;Tour Package Rates Are Not Applicable During Trade Fairs, Exhibitions And Conventions. Additional Surcharges Applicable For The Same.<br />
&bull;No Amendments Possible Once Land Arrangements Have Been Confirmed.<br />
&bull;No Refund For Partly Unutilized Tickets. No Refund For &quot;No - Shows&quot;<br />
&bull;Cancellation Charges Would Be As Per The Company Policy.<br />
&bull;Granting Or Rejecting Visas And Immigration Clearance Is The Sole Prerogative Of The Concerned Sovereign Governments And We At Travelguru Can Only Facilitate In The Entire Process. We At Travelguru Shall Neither Be Responsible In Case Of Non-Granting Of Such Documents. Even If The Visas Are Rejected, Cancellation Charges / Fees Shall Be Payable By The Client. There Will Be No Refund, If The Clients, Or Any Member Of His Party, Is Unable To Travel Due To The Said Reasons.												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.grandindiatrip.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Amazing Thailand 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="35036"/>
						</form>
						</div>
						
						";i:1;s:60:"Book Amazing Thailand Tour - 4 Nights / 5 Days Tour Packages";i:2;s:134:"book amazing thailand tour - 4 nights / 5 days tour packages, beach and islands tour packages, kolkata, bangkok, pattaya tour packages";i:3;s:193:"Book Amazing Thailand Tour - 4 Nights / 5 Days tour packages from Grand India Tours & Travels - Get attractive 4 Nights / 5 Days Beach and Islands  tour packages for  Kolkata, Bangkok, Pattaya.";i:4;s:1390:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Kolkata, Bangkok, Pattaya"        
		                 },
		      "description": "Bangkok Pattaya Tours Packages
Pattaya- When on Thailand Holidays, get rejuvenated with the fun-filled water sporting activities like swimming and snorkelling. The blissful coral formation is the major sight on the Pattaya Tours. Above all, the pristine beaches and the cool breeze make for a fascinating Bangkok Holidays. The happening nightlife and limitless entertainment is indeed a tourist treasure. 

Bangkok- The ‘City Of Angels’, greets the tourists with scenic beauty and the wondrous temples. Bangkok Tours Packages treats the tourist with the grandest shopping experience in one of the Asia’s largest shopping centers. Apart from this, Bangkok Tours also treats the taste buds with some pungent delicacies of Thailand. The Safari Tour with Marine Tour is a must-stop destination.Expenses Of Any Personal Nature (Phone Calls, Laundry Etc).
Any Services Not Mentioned In The "Inclusions"
Service Tax Of 3.09% Will Be Applicable On The Package01-0430-09",
		      "name": "Amazing Thailand Tour",
		      "telephone": "+91-9415285186"
		    }
		    </script>
			";i:5;N;}