a:6:{i:0;s:11957:"				<div class="h1"><h1>Singapore and Thailand Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.northerntourandtravels.com/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.northerntourandtravels.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Singapore and 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">Duration </td>
						<td class="p5px pl0px vat">
						7 Nights / 8 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Bangkok, Pattaya, Singapore</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.northerntourandtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Singapore and 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="46942"/>
						</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_12/334611/92138.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_12/334611/92138.jpg"  width="150" height="150"    alt="Singapore and Thailand Tour" title="Singapore and Thailand Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<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> Singapore
								</p>
								<p class="aj">After arriving at the Singapore airport, an  representative helps you with an assisted transfer to the hotel. While the day is at leisure, the evening is scheduled for a memorable night safari tour. The first wildlife park in the world offers an entirely different experience to the visitors of having a rendezvous with the wildlife of the tropical jungle during the night hours. Soft lighting technique has been used so that the visitors can see around 1000 night animals of over 100 species. Hop into the tram and enjoy the show. The tiny island country has a lot stored for you in the coming days. Stay 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> Singapore sightseeing
								</p>
								<p class="aj">On day 2 after breakfast, get all set for a city tour. Explore China Town-Chinese neighborhood, Little India- Singapore's ethnic neighborhood where Indian and Singapore's culture mingle with each other and drive past the government houses and Orchard Road. Later, the afternoon is scheduled for Sentosa Twilight Tour including one-way cable car ride to Sentosa, admission ticket and visit to Dolphin Lagoon for enjoying a performance by 2 rare pink dolphins, Underwater World-travel underwater and enjoy seeing the sea animals swimming right above you, Songs of the Sea- a musical extravaganza of lights and colors. Afterwards also visit the Merlion Tower- the Guradian of the Island. The day will be absolutely thrilling. Overnight in Singapore.</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> Singapore
								</p>
								<p class="aj">On the 3rd day, have your breakfast and then you are free to spend the day as per your own liking. You can visit the nearby attractions on your own, splurge on shopping, taste the delicacies of the local cuisine and more. some of the Singapore's tourist attractions that are worth-visiting include Sentosa Island, Universal Studios, Botanical Garden. Jurong Bird Sanctuary, Chandi Museum and so on. If you love shopping, this place is surely a paradise for you and has a lot to offer, be it high-end mall or street markets that are best for bargaining. Some of the options include Suntec City, China Town, Kampong Glam, Little India, Tiong Bahru and Orchard Road. Get your hands on clothes, electronic goods, antiques and more. Overnight in Singapore.</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> Singapore - Pattaya via Bangkok
								</p>
								<p class="aj">After breakfast on the 4th day of the tour, complete the check-out formalities and get transferred to the airport to go aboard your flight to Bangkok. On reaching Bangkok, an  representative helps you with an assisted transfer to Pattaya that is around 2 hours away. An extremely popular beach resort, Pattaya is a wonderful place with lovely beaches. Partake in sightseeing or adventure sports activities here to make your stay memorable. On arrival, check-in at the hotel. Overnight in Pattaya.</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
								</p>
								<p class="aj">Post breakfast, get ready to visit the enchanting Coral Island via speed boat. Visit Koh Larn, also known as Ko Lan, popular for its 6 beaches that have crystal clean azure water and white-colored sand. Have lunch. Partake in water sports and other leisure activities such as scuba diving, swimming, snorkeling, leisure walks, parasailing and sun bathing. Hop into a glass-bottomed boat and explore the underwater sea world. Have an absolutely thrilling day while exploring the underwater world, soak-in the tranquility and treat your eyes to the natural beauty, spread all around. Overnight in Pattaya.</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">On day 6, post breakfast, check-out and get transferred to Bangkok. Upon reaching, complete the check-in formalities. The day is at leisure. The capital city of Thailand, Bangkok is an exotic destination, worth-visiting for all its attractions. Some of the popular attractions include Safari World, Siam Park City, Bangkok National Museum, Thonburi, Lumphini Park etc. You can also visit the very popular shopping centers and markets such as China town, Pratunam, Pantim Plaza, Chatuchak Market, Gaysorn Plaza and Sogo Department Store to splurge on shopping. Do not miss buying clothes, imitate jewellery, accessories, electronic goods, decorative items and more. You can also explore the nearby attractions on-foot or can gorge on local delicacies. Overnight in Bangkok.</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> City tour of Bangkok
								</p>
								<p class="aj">Have your breakfast and leave the hotel for temple tour of Bangkok including Wat Traimit or the Temple of Solid Gold Buddha- home to the world's largest huge gold statue of seated - Buddha, Wat Po or the Temple of Reclining Buddha - a gold plated temple that is the oldest one in Bangkok and the Wat Benchamabophit, also known as the Marble Temple-one of Bangkok's prime attraction. The last visit of the day is the Grand Palace or the Royal Palace - a complex of buildings that is the home of Bangkok's royalty since 1782. Stay 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> Departure
								</p>
								<p class="aj">Spend time at leisure after breakfast. Thereafter get timely transfer to the airport to catch a flight for your onward journey. Please note that check out time is 12:00 Pm.</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>Sightseeing</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.northerntourandtravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Singapore and 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="46942"/>
						</form>
						</div>
						
						";i:1;s:66:"Book Singapore and Thailand Tour - 7 Nights / 8 Days Tour Packages";i:2;s:142:"book singapore and thailand tour - 7 nights / 8 days tour packages, beach and islands tour packages, bangkok, pattaya, singapore tour packages";i:3;s:203:"Book Singapore and Thailand Tour - 7 Nights / 8 Days tour packages from A.G Northern Tour and Travels - Get attractive 7 Nights / 8 Days Beach and Islands  tour packages for  Bangkok, Pattaya, Singapore.";i:4;s:426:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Bangkok, Pattaya, Singapore"        
		                 },
		      "description": "",
		      "name": "Singapore and Thailand Tour",
		      "telephone": "+91-9086002323"
		    }
		    </script>
			";i:5;N;}