a:6:{i:0;s:23237:"						<section class="headBg theme2 ">
						<div class="wrap">
						<div class="page-title-inner fo"> 
						<div class="h1"><h1>Malaysia Tour 5 Days</h1></div>
						<p class="breadcrumb ar uu small"><a href="http://www.risingsunbinz.com/" title="Home">Home</a>
						
													<b class="ffv p2px">&rsaquo;</b><a href="http://www.risingsunbinz.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>
								
						<b class="ffv p2px">&rsaquo;</b> Malaysia Tour 5 Days</p>
						</div>
						</div>
						</section>
										<section id="middle"><br />
				<div class="wrap packages" id="bodyFormatNT">
				<div class="row1 dt columns12"><!--MIDDLE ROW1 STARTS-->
				<div class="col-2 wideColumn ip ls"><!--MIDDLE ROW1 COL-2 STARTS-->				
								
						<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">
					
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> MALAYSIA,</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.risingsunbinz.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Malaysia Tour 5 Days - 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="185244"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_19/559847/285567.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_19/559847/285567.jpg"  width="150" height="112"    alt="Malaysia Tour 5 Days" title="Malaysia Tour 5 Days" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Malaysia is a country that yields a rich mix of cultural attractions and rapidly expanding cities filled with skyscrapers and multilane highways. Whether it’s the country’s jam-packed calendar of festivals, or its capital city of Kuala Lumpur, home to sprawling malls and narrow alleyways with lively and colourful markets, Malaysia’s street life is vibrant. But these are not the only reasons Malaysia welcomes a steady stream of visitors: there is also its cheap, tasty and varied food as well as its charming and sometimes eclectic blend of Moghul, Malay, Victorian and ultramodern architecture. Besides that, generations of travellers are also enthralled by the white-sand beaches of famous west coast islands such as Pulau Langkawi and Pulau Redang, as well as the lush rainforests of Borneo to the east. With so many varied and alluring attractions, Malaysia has something for everyone.								</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> Day 1
										</p>
										<p class="aj">Kota Bharu Located on the eastern side of Malaysia, Kota Bharu is the capital city and the seat of the royals of the Kelantan state. Now if you’re confused let me clear the air a bit. Malaysia is essentially a federation of 13 states and Kelantan happens to be one of them. Now if nature is your calling, and being out in the wilderness appeals to you more than the high rises of the city, Kota Bharu is the place for you.Rich and vibrant in terms of culture, you can see a lot of Islamic influence in this state, especially in the beautiful architecture of the mosques. The Gua Ikan caves and the strong waterfalls will transport you to a world where nature is the ruler. When you’ve had your fun frolicking in nature, you can indulge in some much needed shopping spree at Kota Bharu’s famous day night market.</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> Day 2
										</p>
										<p class="aj">IpohIpoh has always been an important city. One only needs to turn the pages of history to learn how it was the second administrative centre during the British colonial era, after Kuala Lumpur. Post that the city gained importance for being the centre of the world’s tin industry. Off late it has started to gain importance as a tourist destination. The city has lots of beautiful sights to withhold. One such being Gunung Lang Recreation park, where many a locals are often spotted spending their time in leisure. The Town hall, Mariamman kovil temple and Kellie’s castle are also places worth visiting for their exquisite architecture.Apart from its numerous vibrant offerings, Ipoh also becomes a gateway to the Cameron Highlands. Almost the size of Singapore, Cameron highlands is Malaysia’s most extensive and one of the most beautiful hill stations. Just a short drive away, it’s a definite visit should you find yourself in Ipoh.</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> Day 3
										</p>
										<p class="aj">George town – PenangThe capital city of the state of Penang, it is one of the most sought after tourist destinations. The perfect combination of ancient culture and colonial architecture makes it so popular amongst the tourists across the world. One of the biggest attractions of Penang is its architecture. The people, culture and food all come together in a perfect way, making George town even more irresistible. The narrow lanes, the shrines, the occasional shops lined with a stream of paper lanterns give George town a charm of it’s own. A charm that is hard to resist.If all that wasn’t motivational enough, George town is often deemed as the food capital of Malaysia. The food here sees an influence of South East Asia. George town is known for its street food. Just a whiff of it, and resisting these mouth-watering temptations becomes next to impossible. The seafood here is also exquisite, something that you definitely need to try.</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> Day 4
										</p>
										<p class="aj">Kota KinabaluSometimes you come across beauty that is striking, hard to resist, then you come across the other type of beauty. The subtle kind, the one that is not obvious at first, but later when you see it, it blinds you. Kota Kinabalu, the capital of the state of Sabah falls in the latter category. The beautiful sunrise and the breathtaking sunsets that colour the city in a fiery red glaze, the vibrant art and music scene and most of all the friendly locals. The experience of Kota Kinabalu will transport you to simpler times, a time where beauty ruled.There’s a lot to see and behold in Kota Kinabalu. The Atkinson clock tower, the Signal hill observatory, the Green Connection Aquarium are just some of the things to keep you occupied. The Likas Bay beach, popular among both locals and tourists is a good place to just sit back and relax and watch the sun dip behind the horizon. But one place that you absolutely cannot miss is the Tunku Abdul Rahman Marine park, a group of 5 islands accessible by a 15-30 minute speedboat ride. Why you ask? Well, you’ll have to go there and find out for yourself!</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> Day 5
										</p>
										<p class="aj">Malacca CityOne of the oldest Malaysian cities, it is located in the strait of Malacca. This popular tourist destination has been declared as a UNESCO World Heritage site since 2008. Malacca is just overflowing with things to do and places to grab a bite of the most delicious food. Malacca is known for its famous Jonker Streetnight market which is always abuzz with people and tourists. Something that you must check out, when you find yourself in Malacca.Apart from that there’s a lot to see and do as we mentioned above. The St Paul’s church a former Portuguese church and later a cemetery during the Dutch occupation is a definite must visit. There’s also Cheng Hoon Teng Temple, The Kampung Keling Mosque and Bukit China. There’s a small river that runs through the city. A boat trip is highly recommended, especially at night when the entire city of Malacca is lit up and looks like a sight of beauty.</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>MAP (Room + Breakfast + Lunch/Dinner)</li>
																						<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Payments Terms</p>
								</div>
								
								<ul><li>* Some  Advance Percentage of total booking amount</li><li>
* Airfare/Transport fare to be paid full at one time in advance.</li></ul>					
								</div>
														<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Cancellation &amp; Refund Policy</p>
						</div>
								
						<ul><li>* Upon cancellation, refund will be made after deducting the Retention Amount.</li><li>
* Retention Amount varies as per the number of days left before your package start date.</li></ul>			
						</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.risingsunbinz.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Malaysia Tour 5 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="185244"/>
						</form>
						</div>
						
										</div>
				<div class="col-3 thinColumn"><!--MIDDLE ROW1 COL-1 STARTS-->
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by City</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-naggar.htm" title="Packages in Naggar">Naggar</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-manikaran.htm" title="Packages in Manikaran">Manikaran</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-kullu.htm" title="Packages in Kullu">Kullu</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-amritsar.htm" title="Packages in Amritsar">Amritsar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-beijing.htm" title="Packages in Beijing">Beijing</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-chandigarh-city.htm" title="Packages in Chandigarh City">Chandigarh City</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-dharamshala.htm" title="Packages in Dharamshala">Dharamshala</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-bangkok.htm" title="Packages in Bangkok">Bangkok</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-chengdu.htm" title="Packages in Chengdu">Chengdu</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-guilin.htm" title="Packages in Guilin">Guilin</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-sonamarg.htm" title="Packages in Sonamarg">Sonamarg</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-shanghai.htm" title="Packages in Shanghai">Shanghai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-leshan.htm" title="Packages in Leshan">Leshan</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-dubai.htm" title="Packages in Dubai">Dubai</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-kumarakom.htm" title="Packages in Kumarakom">Kumarakom</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-xian.htm" title="Packages in Xian">Xian</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-shimla.htm" title="Packages in Shimla">Shimla</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.risingsunbinz.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="uu db ar"><a class="showallspan" data-target="show" href="javascript:void(0)" >View More</a></span>
										
				</div>
				</div>
				</div>
				</div>
				
				<div class="column_Box mc">
				<div class="tcl bullet divider">
				<div class="h h2"><b class="plusMinus"></b>
				<p class="b dif rHead">Packages by Category</p>
				</div>
				<div class="ic showHide_rp">
				<div class="mt10px">
									<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.risingsunbinz.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</div>
				</section>
				
				<script>
					window.addEventListener("DOMContentLoaded", function(){
						jQuery(document).on("click", ".showallspan", function(){
							if(jQuery(this).attr("data-target") === 'show'){
								jQuery(this).text("View Less");
								jQuery(this).attr("data-target", "hide");
								jQuery(this).closest("div").find(".spanlist").removeClass("dn");
							}else{
								jQuery(this).text("View More");
								jQuery(this).attr("data-target", "show");
								jQuery(this).closest("div").find(".spanlist").addClass("dn");
							}
						});
					});
				</script>
				";i:1;s:59:"Book Malaysia Tour 5 Days - 4 Nights / 5 Days Tour Packages";i:2;s:109:"book malaysia tour 5 days - 4 nights / 5 days tour packages, adventure tour packages, malaysia, tour packages";i:3;s:173:"Book Malaysia Tour 5 Days - 4 Nights / 5 Days tour packages from Rising Sun Binz Holidays Pvt Ltd - Get attractive 4 Nights / 5 Days Adventure  tour packages for  MALAYSIA,.";i:4;s:1299:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "MALAYSIA,"        
		                 },
		      "description": "Malaysia is a country that yields a rich mix of cultural attractions and rapidly expanding cities filled with skyscrapers and multilane highways. Whether it’s the country’s jam-packed calendar of festivals, or its capital city of Kuala Lumpur, home to sprawling malls and narrow alleyways with lively and colourful markets, Malaysia’s street life is vibrant. But these are not the only reasons Malaysia welcomes a steady stream of visitors: there is also its cheap, tasty and varied food as well as its charming and sometimes eclectic blend of Moghul, Malay, Victorian and ultramodern architecture. Besides that, generations of travellers are also enthralled by the white-sand beaches of famous west coast islands such as Pulau Langkawi and Pulau Redang, as well as the lush rainforests of Borneo to the east. With so many varied and alluring attractions, Malaysia has something for everyone.",
		      "name": "Malaysia Tour 5 Days",
		      "telephone": "+91-9582175228"
		    }
		    </script>
			";i:5;N;}