a:6:{i:0;s:9317:"				<div class="h1"><h1>Thailand Budget Holiday Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.kirtytours.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.kirtytours.com/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Thailand Budget Holiday Package</p>
				<br />
				
									<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>
					
					<table class="w100 formTable imgWidth">
					<tr>
					
											<td class="p10px vat imgWidth150 w150px">
						<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/4147/10317.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_1/4147/10317.jpg"  height="150"  width="150"    alt="Thailand Budget Holiday Package" title="Thailand Budget Holiday Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Bangkok, Pattaya</p>
												<p><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.kirtytours.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Thailand Budget Holiday Package - 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="9880"/>
						</form>
						</p>
											</td>
					</tr>
					</table>
										<br />
					
					<div class="packageTabs myTabs horizontal mc"><!--MY TABS STARTS-->
					<ul class="fo lsn m0px p0px">
					
											<li id="tab2"><a href="#data2">Itinerary</a></li>
												<li id="tab4"><a href="#data4">Tour Detail</a></li>
												<li id="tab6"><a href="#data6">Terms &amp; Conditions</a></li>
											</ul>
					
					
											<div class="ic bdr" id="data2"><!--DATA2 START-->
						<br />
						<ul class="lsn m0px p0px">
									<li>
									<p class="b mb5px">Day 1: Bangkok To Pattaya
									</p>
									<div class="data p10px">After arriving in Bangkok to Meet at Respected terminals. Drive to Pattaya, a breathtakingly beautiful beach destination. A tropical beach retreat town, Pattaya is a perfect place to laze around under swaying coconut trees, exploring white sandy beaches and crystal azure waters. Interested travelers will be happy to know that the nightlife of Pattaya is one of the most happening in the world. You can either enjoy the evening at leisure or come with us we will take you for the Alcazar show(Optional Tour), a world-famous cabaret that can give the Lido and Paris' Moulin Rouge, a run for their money. Featuring a grand theatre with 1,200 seats, mega watts of pulsating sound, a state-of-the-art light & sound system and ultra-modern computer technology, the Alcazar is a unique blend of acting, stage design, costumes and glamorous actors. After the scintillating Alcazar experience, return to your hotel and stay overnight at the hotel.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Pattaya
									</p>
									<div class="data p10px">After a scrumptious breakfast, speedboat your way to the idyllic Coral Island (KohLan) through the sparkling aqua-blue waters of the Gulf of Thailand. Spend the day luxuriating under the warm tropical sun. Relax, swim, snorkel or just lie around sunning on the island's immaculate golden beaches.. You can also dive down into the waters for a more personal experience. After a relaxing time at the island, enjoy the evening at leisure and comfortably stay overnight at the hotel.</div>					
										<p><b>Meals : </b> Breakfast & Lunch</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Bangkok
									</p>
									<div class="data p10px">After enjoying breakfast at the hotel, you will embark on a pleasant journey back to Bangkok where we will take you on a temple and city tour to experience another side to Bangkok that's rewarding, intriguing, memorable and waiting for you to discover it. Thailand is home to more than 26,000 Wats (Buddhist temples). This vacation, let us take you to one of Bangkok's most distinguished Wat Wat Po, (Temple of the Reclining Buddha), the largest and the oldest shrine of its kind in Bangkok. Comfortably stay overnight at the hotel.</div>					
										<p><b>Meals : </b> Breakfast</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Bangkok
									</p>
									<div class="data p10px">After a hearty breakfast at the hotel spend the day at leisure or visit to the Safari World with Marine Park (Optional tour), which is Thailand's popular open zoo and leisure park. Divided into four distinct sections (Safari Park, Bird Park, Games Corner and Macaw Island), the Safari World Park is the place to be, for some intimate encounters with dolphins, orang-utans, seals and a myriad of other exotic animals and birds amidst a picturesque African setting. After enjoying lunch at the Safari World Park, return to the hotel. Enjoy an overnight stay at the hotel.</div>					
										<p><b>Meals : </b> Breakfast</p>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 5: Departure
									</p>
									<div class="data p10px">After enjoying breakfast, check-out of your hotel  and proceed to the airport to board the return flight.</div>					
										<p><b>Meals : </b> Breakfast</p>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
						28-0231-05							<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Hotel</li>
																	</ul>
							<br />
														<p class="b mb5px dif">Departure Cities with rates :</p>Package Cost Per Person : 145USD.<br /><br />
													<!--DATA4 EMD--></div>
												<div class="ic bdr" id="data6"><!--DATA6 START-->
						<br />
						~^#^~~^#^~<p>Meal Cost per person per meal without transfers : PTY - USD 07 ; BKK - USD 08. # Above mentioned rates are not valid during surcharge period. ( 08 Apr - 20 Apr) This rate is applicable only for Suvarnabhumi Airport. Hotel Check in time 14.00 PM and check out time 12.00 Noon. No reservation has been made yet.<br />
<br />
<b>Validity of the quotation</b><br />
This quotation will remain valid up to 10 days after the date of sending. Afterward Kirty Holiday reserves the right to alter or revise the prices when circumstances beyond the company&#39;s control deem it necessary.<br />
<br />
<b>Please Note:</b><br />
3.09% GST will be added against Total Bill Amount. No space is being held for your booking at present. Space will be confirmed subject to availability at the time of receiving your acceptance of our offer. Hotel rate always change without any prior notice.<br />
<br />
<b>Round Trip Airport Transfer Timing (SIC) 08.00Hrs. - 18.00Hrs</b><br />
Hotel Check in time 14.00 PM and check out time 12.00 Noon. We have rights to amend the quotation should any of the above service is unavailable. Conversion rate of the currency will be taken 01.25 Rupee more as per the rates shown in www.xe.com<br />
<br />
<b>Cancellation Fees</b><br />
Until 28 days prior Arrival - no charge 28 - 25 days prior Arrival - 25 % of the package price 25&nbsp;- 17 days prior Arrival - 35 % of the package price 17 - 12 days prior Arrival - 50 % of the package price 12 - 10 days prior Arrival - 75 % of the package price 10 - 00 days prior Arrival - 100 % of the package price<br />
The amount of cancellation fees depends on the day of receipt of the written cancellation at the responsible sales office (local time Mon - Fri). Saturdays and Sundays are excluded.<br />
<br />
<b>Kindly find below the requirements for on arrival Thai Visa:</b><br />
The applicant must possess instrument of means of living expenses 10,000 Baht per person and 20,000 Baht per family accordingly. The applicant must produce instrument of means of transport (full paid ticket) which is usable within 15 days since the date of entry. Passport validity of minimum 06 months. Confirm voucher. 01 passport size photograph in white back ground (3.5 x 4.5 cm). THB 1000 as visa fees.						<!--DATA6 EMD--></div>
											
					<!--MY TABS END--></div>
					";i:1;s:70:"Book Thailand Budget Holiday Package - 4 Nights / 5 Days Tour Packages";i:2;s:135:"book thailand budget holiday package - 4 nights / 5 days tour packages, beach and islands tour packages, bangkok, pattaya tour packages";i:3;s:173:"Kirty Tours & Travels offers Thailand Budget Holiday Package - 4 Nights / 5 Days tour package, budget Beach and Islands tour packages for Bangkok, Pattaya at exciting price.";i:4;s:429:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bangkok, Pattaya"        
		                 },
		      "description": "28-0231-05",
		      "name": "Thailand Budget Holiday Package",
		      "telephone": "+91-9021222720"
		    }
		    </script>
			";i:5;N;}