a:6:{i:0;s:33231:"				<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-->				
									<div class="h1"><h1>Sri Lanka Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.bellwortt.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.bellwortt.in/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Sri Lanka Tour</p> 
										<div class="fo dt w100"> 
					<div class="dtc vat ttw-detail pr20px pr">					
												<ul class="lsn gallery-slide" id="bxlider_ins">
																	<li>
										<div class="imgFrame m0a dib bdr">
										<div class="imgFrame picBg dtc ac vam lh0">	<a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_18/536386/257402.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_18/536386/257402.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_18/536386/257402.jpg"  alt="Sri Lanka Tour" title="Sri Lanka Tour" class="imga"  />									</div></a>
										</div>
										</div>
										</li>
																	</ul>
												
					<script>
					var $j = jQuery.noConflict();
					var realSlider= $j("ul#bxlider_ins").bxSlider({
					      speed:500,
					      pager:false,
					      auto: true,
					      slideWidth: 450,
					      slideMargin: 0,
					      nextText:'',
					      prevText:'',
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					        changeRealThumb(realThumbSlider,newIndex);
					        
					      }
					      
					    });
					    
					    var realThumbSlider=$j("ul#bxslider-pager").bxSlider({
					      minSlides: 4,
					      maxSlides: 4,
					      slideWidth: 200,
					      slideMargin: 5,
					      moveSlides: 1,
					      pager:false,
					      speed:1000,
					      infiniteLoop:true,
					      hideControlOnEnd:true,
					      nextText:'<span></span>',
					      prevText:'<span></span>',
					      onSlideBefore:function($slideElement, oldIndex, newIndex){
					
					      }
					    });
					    
					    linkRealSliders(realSlider,realThumbSlider);
					    
					    if($j("#bxslider-pager li").length<5){
					      $j("#bxslider-pager .bx-next").hide();
					    }
					
					// sincronizza sliders realizzazioni
					function linkRealSliders(bigS,thumbS){
					  
					  $j("ul#bxslider-pager").on("click","a",function(event){
					    event.preventDefault();
					    var newIndex=$j(this).parent().attr("data-slideIndex");
					        bigS.goToSlide(newIndex);
					  });
					}
					
					//slider!=$thumbSlider. slider is the realslider
					function changeRealThumb(slider,newIndex){
					  
					  var $thumbS=$j("#bxslider-pager");
					  $thumbS.find('.active').removeClass("active");
					  $thumbS.find('li[data-slideIndex="'+newIndex+'"]').addClass("active");
					  
					  if(slider.getSlideCount()-newIndex>=4)slider.goToSlide(newIndex);
					  else slider.goToSlide(slider.getSlideCount()-4);
					
					}
					
					</script>
					</div>
			        <div class="dtc">
			        <p class="b xlarge mb10px">Sri Lanka Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Colombo, Kandy, Nuwara Eliya, Bentota</p>
												<div class="fo mt20px mb20px xxlarge">
						<p class="xxlarge b dif mb2px"><i class="fa fa-inr"></i> 25000						</p>
						<p class="xxsmall alpha50">Per Person</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.bellwortt.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Sri Lanka Tour - Tour Package"/>
						<input type="hidden" name="allocate_type" value="tour"/>
						<a href="#" onclick="document.getElementById('frmpackagedetail').submit();" class="buttonBig p10px20px c5px ts0 xxlarge dib">Book Your Tour</a>
						<input type="hidden" name="pkg_slno" value="170568"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt7px dif">* Mentioned prices may vary depending upon date of travel, hotel availability, surge pricing and seasonal rush.</div>
												<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">Begin the New Phase of Your Life Amidst Beautiful Expanses of Sri Lanka with this 4 Nights, 5 Days Sri Lanka Honeymoon Package. Head to the Most Romantic Destinations of this Island Nation – Kandy, Nuwara Eliya, Bentota, and Colombo for a Memorable Sri Lankan Honeymoon. a Host of Wildlife Sanctuaries, Tea Estates, Historical Structures, Spectacular Scenery, and Exciting Watersports Make Your First Ever Trip of Togetherness Truly Remarkable.<br />
<br />
your Sri Lanka Honeymoon Itinerary Commences with Arrival At Sri Lanka International Airport, Followed By a Transfer to Kandy.  Enjoy the Leisure Day in Kandy Just as You Desire. Explore Myriad Sightseeing Attractions as per Your Kandy Honeymoon Package. On the Second Day, You Will Be Visiting Nuwara Eliya, the Mesmeric City Wrapped By Lovely Hills, Presenting a Dream-like Destination for Newlyweds like You. Delight in the Unparalleled Scenic Attractions like Strawberry Gardens, Ramboda Waterfalls, and Gregory Lake During Your Holiday Together. Up Next is a Beach Destination – Bentota, Where You Can Indulge in Exciting Watersports, Followed By a Pleasurable City Tour. Visit the Turtle Hatchery and Watch How Turtle Hatchlings are Cared For.<br />
<br />
finally, Your Sri Lanka Honeymoon Package from India Will Take You to Colombo, the Capital City of the Island Country. Soak in Its Happening Spirit, Laced with An Aura of Serenity. Make the Most of Your Romantic Honeymoon Package in Sri Lanka By Visiting Places like Viharamahadevi Park, Galle Face Green, and National Museum. You Can also Seek Blessings for a Beautiful Marital Life At Various Religious Places in Colombo. What Makes Your Honeymoon Packages Commendable is the Fact that Every Package is Coupled with Comfortable Transfers, Soothing Stays, and Delish Meals. So, Book a Package Today for a Blissful Honeymoon Trip.<br />
<br />
to Get An Idea of What to Include in Your Package and How Your Vacation Be Like, We Recommend You to Go Through the Below Detailed Itinerary Plan of Our Sri Lanka Honeymoon Package and Set Your Preferred Choices of Attractions and Activities that Come Under Your Budget. Connect with Us, and We Will Be Happy to Guide You and Create a Customised Package Exclusively for You.Airfare<br />
<br />
Personal expenses<br />
<br />
Anything not mentioned in inclusions</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 1											
											:</b> Kandy: a Lovely Vacation Begins										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Sri Lanka Welcomes You with Open Arms for a Blissful Sri Lanka Honeymoon Package<br />
<br />
your Arrival At Sri Lanka Airport in Colombo is Greeted By An Agent’s Representative, Who Will Escort You to the Hotel in Kandy. Your Journey to Kandy Starts with a Visit to the Pinnawela Elephant Orphanage that Lies En Route. Watch Orphaned, Abandoned and Injured Elephants Being Taken Care Of. You Can also Accompany These Giants to a River in Proximity, Where They Bathe and Play.<br />
<br />
now, Proceed to Kandy – the Second Largest Sri Lankan City, Celebrated for Its Pristine Natural Charm. Also, It is the Last Capital of Ancient Sri Lanka and among the Seven Unesco World Heritage Sites of the Country.<br />
<br />
once You Reach Kandy, Register Yourself At the Hotel Reception and Unwind. Once Refreshed, Set Off for a Pleasurable City Tour, to Enjoy Your Kandy Honeymoon Package. Visit Attractions such as the Royal Botanical Gardens, Dalada Maligawa Museum, and the Aromatic Tea Gardens. Walk Through the Udawattakele Forest Reserve. Once a Pleasure Garden of the Kandy Kings, the Forest Reserve is Now a Wildlife Sanctuary. You Can also Spot Several Buddhist Meditation Hermitages Here. Enjoy a Leisurely Stroll Hand in Hand At the Serene and Beautiful Kandy Lake. Temple of the Tooth Relic and Bahiravokanda Vihara Buddha Statue are other Attractions that You Can Visit Today. After a Pleasurable Sightseeing Day, Come Back to the Hotel for a Restful Night.<br />
<br />
distance from Colombo to Kandy: 133 Km<br />
<br />
travel Time: 3 Hours, 30 Minutes (approx.)															
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 2											
											:</b> Nuwara Eliya: a Visit to Ethereal Expanses										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Proceed to the Country’s ‘little England’ as per this Honeymoon Package in Sri Lanka<br />
<br />
kickstart Your Day with a Nutritious Breakfast and Check Out from the Hotel. Today, You Will Be Taken to the Destination of Living Painting – Nuwara Eliya. Its Mighty Mountains and Landscape Dotted with Beautiful Valleys, Gushing Waterfalls, and Aromatic Tea Plantations Make It a Breathtaking City. En Route, Stop By At the Famous Ramboda Falls Which Will Add a Tinge of Romance to Your Road Journey.<br />
<br />
once You Reach Nuwara Eliya, Sri Lanka Honeymoon Itinerary Takes You to the Tea Factory Where You Get to Enjoy a Refreshing Tea with Your Partner. this is Followed By Visits to Attractions like Gregory Lake, Strawberry Gardens, the Golf Course, Hakgala Botanical Garden, and Nuwara Eliya Gardens. Visiting such Lovely Places with Your Soulmate Brings You Closer and Enhances Your Honeymooning Delight. When the Sun Sets, Head to Seetha Eliya Temple to Seek Blessings for Your Marital Life. Now, Check-in to the Hotel Where You are Transferred. Refresh and Hop On to Your Cozy Bed for a Soothing Sleep.<br />
<br />
tip: Take the Much-popular Train Ride from Nuwara Eliya to Ella<br />
<br />
distance from Kandy to Nuwara Eliya: Approx 76 Km (approx)<br />
<br />
travel Time: Approx 2.5 Hours (approx)			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 3											
											:</b> Bentota: Transfer to the City of Golden Beaches										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Beach Delight Beckons You to Bentota as per this Sri Lanka 5 Days Itinerary<br />
<br />
wake Up to a Healthy Morning Meal and Checkout from the Hotel. Today, You Will Be Taken to Bentota- a Resort Town, Dotted with Everything that Fascinates Love Birds like You. Once You Reach Bentota, Check-in to the Hotel and Wash Out the Journey Fatigue.<br />
<br />
now, Head to One of the Beautiful Beaches to Soak in the Sun and have Some Splashing Fun in the Water. if You Love Adventure, Take Up Some Water Sports Together such as Windsurfing, Wakeboarding, Snorkeling, Wave Surfing, Sea Diving, Water Skiing, Banana Ride, and Jet-skiing.<br />
<br />
once You have Enjoyed Water Fun to the Fullest, Set Off On a City Tour as per this Sri Lankan Honeymoon. Delight in a Romantic Boat Ride Along the Madhu River and Cross Several Mangroves Rich Islets. Stopover At the Turtle Hatchery, Where Turtle Hatchlings are Cared for and Released Into the Sea When They Turn 2-4 Days Old. After a Happening Day, Come Back to the Hotel and Snuggle the Night Away.<br />
<br />
optional: Water Sports (charges Extra)<br />
<br />
distance from Kandy to Bentota: Approx 178.5 Km (approx)<br />
<br />
travel Time: Approx 3.5 Hours			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 4											
											:</b> Colombo: the Capital City of Sri Lanka Welcomes You										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												The Penultimate Day of Your Sri Lanka Honeymoon Itinerary Takes You to Colombo<br />
<br />
a Lovely Breakfast Marks the Beginning of Your Day, Followed By a Check-out Process. Now, You Will Be Taken to Colombo for An Intriguing Bout of Sightseeing. On Arrival in Colombo, Complete Registration Formalities At the Hotel Reception, Check in and Unwind for a While. Later in the Day, Be Prepared to Explore Its Myriad Edifices that Exude Various Architectural Styles such as British, Portuguese, Dutch, Hindu, Islamic, Buddhist, Indian, and Contemporary.<br />
<br />
in Addition to These Structures, Visit Attractions like National Museum, Old Parliament Building, Independence Square, and Twin World Trade Center Towers. other Unmissable Places Include Viharamahadevi Park, Galle Face Green, Fort District, and Various Religious Places.<br />
<br />
once this Fascinating Sightseeing Tour of Your Sri Lanka Honeymoon Package from India Completes, You Can Buy Home Souvenirs as Mementos of Your Love Trip. You Can Enjoy Shopping At House of Fashion, Noritake, Majestic City, and Odel. After such a Wonderful Day, Come Back to the Hotel for a Refreshing Sleep.<br />
<br />
distance from Bentota to Colombo: 87 Km (approx )<br />
<br />
travel Time: Approx 1 Hour, 40 Minutes (approx )			
														   
											</div> 
											</div>
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><a href="javascript:void(0)" class="clickable db"><b class="dif mr2px">
																							Day 5											
											:</b> Colombo: Farewell Greetings from Colombo										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Kiss Your Honeymoon Package Sri Lanka Goodbye<br />
<br />
enjoy a Hearty Breakfast Together and Checkout from the Hotel as Your Sri Lanka Honeymoon Trip Culminates Today. Go Shopping if You have Missed Buying Gifts for Any of Your Loved Ones. Get Transferred to Colombo International Airport and Board Your Flight Back Home.			
														   
											</div> 
											</div>
																			<script>
								jQuery(document).ready(function() {
									//jQuery('.product-detail').css('display','none');
								    jQuery(".sub-title").click(function() {
								        var $this = jQuery(this);
										  jQuery('.w-title').addClass('h15px',400);
								          $this.find('.w-title').removeClass('h15px',400);
										  jQuery('.product-detail').slideUp();
								          $this.next().slideDown();
								          if($this.find('i').hasClass('fa-angle-up')){
								          	$this.find('i').removeClass('fa-angle-up').addClass('fa-angle-down');
								          } else {
								          	$this.find('i').removeClass('fa-angle-down').addClass('fa-angle-up');
								          }
								        });
									});
								</script>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Meals</li>
																						<li>Sightseeing</li>
																				<li>Airport transfers</li><li>
Assistance at the Airport</li><li>
Double sharing Accommodation</li><li>
Breakfast</li><li>
Sightseeing & city tour</li><li>
Transfers on private basis in an A/C vehicle English speaking chauffeur guideAll related government taxes</li><li>
Free Mobile SIM card on arrival5%Discount voucher for shopping at ODEL</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Airfare</li><li>
Personal expenses</li><li>
Anything not mentioned in inclusions</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 
* 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">Price &amp; Rates</p>
						</div>				
				        <table class="mb15px bdrall bdreee w100 p5px15px formTable">
			            	<tr class="headVr b">
			                	<td class="p5px10px">No of pax</td>
			                    <td class="p5px10px">Age Limit</td>
			                    <td class="p5px10px">Price per pax (Rs)</td>
			                </tr>

															<tr>
				            	<td class="p5px10px">Adult</td>
				                <td class="p5px10px">Above 12 years</td>
				                <td class="p5px10px">
			                				                		<b class="webrupee">INR</b>
			                					                	<b>25000</b> <small>/
			
			                		Adult			
			                				
			                		
			                	</small></td>
				            	</tr>
				            					         </table>
						</div>
					 					
						<div class="data mt20px p15px">            
						<div class="mb7px"> 
						<p class="b xlarge mb10px dib">Accommodation</p>
						</div>				
		
				    	<table class="mb15px bdrall bdreee w100 p5px15px formTable">
						<tr class="headVr b">
						<td class="p5px10px">City</td>
						<td class="p5px10px">Hotel Name</td>
						<td class="p5px10px">Star Rating</td>
						</tr>
												</tbody>
						</table>
						</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. 
* 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.bellwortt.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Sri Lanka 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="170568"/>
						</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.bellwortt.in/packages-in-pokhara.htm" title="Packages in Pokhara">Pokhara</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-ghorepani.htm" title="Packages in Ghorepani">Ghorepani</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-deurali.htm" title="Packages in Deurali">Deurali</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-kathmandu.htm" title="Packages in Kathmandu">Kathmandu</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-bikaner.htm" title="Packages in Bikaner">Bikaner</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-bali.htm" title="Packages in Bali">Bali</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-corbett.htm" title="Packages in Corbett">Corbett</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/packages-in-pattaya.htm" title="Packages in Pattaya">Pattaya</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.bellwortt.in/packages-in-manali.htm" title="Packages in Manali">Manali</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.bellwortt.in/packages-in-queensland.htm" title="Packages in Queensland">Queensland</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.bellwortt.in/packages-in-goa-city.htm" title="Packages in Goa City">Goa City</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.bellwortt.in/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.bellwortt.in/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.bellwortt.in/packages-in-sydney.htm" title="Packages in Sydney">Sydney</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.bellwortt.in/packages-in-ranthambore.htm" title="Packages in Ranthambore">Ranthambore</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.bellwortt.in/packages-in-colombo.htm" title="Packages in Colombo">Colombo</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.bellwortt.in/packages-in-genting.htm" title="Packages in Genting">Genting</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.bellwortt.in/packages-in-rishikesh.htm" title="Packages in Rishikesh">Rishikesh</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.bellwortt.in/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.bellwortt.in/packages-in-leh-ladakh.htm" title="Packages in Leh Ladakh">Leh Ladakh</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.bellwortt.in/packages-in-hong-kong.htm" title="Packages in Hong Kong">Hong Kong</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.bellwortt.in/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.bellwortt.in/packages-in-kandy.htm" title="Packages in Kandy">Kandy</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.bellwortt.in/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.bellwortt.in/packages-in-melbourne.htm" title="Packages in Melbourne">Melbourne</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.bellwortt.in/packages-in-phuket.htm" title="Packages in Phuket">Phuket</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.bellwortt.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</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.bellwortt.in/packages-in-bangkok.htm" title="Packages in Bangkok">Bangkok</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.bellwortt.in/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/romantic-holidays-catid.htm" title="Romantic Packages">Romantic</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/river-rafting-holidays-catid.htm" title="River Rafting Packages">River Rafting</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/cruise-holidays-catid.htm" title="Cruise Packages">Cruise</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bellwortt.in/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bellwortt.in/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 spanlist dn"><a class="dif" href="http://www.bellwortt.in/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</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.bellwortt.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bellwortt.in/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.bellwortt.in/national-parks-holidays-catid.htm" title="National Parks Packages">National Parks</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.bellwortt.in/safari-holidays-catid.htm" title="Safari Packages">Safari</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.bellwortt.in/golden-triangle-holidays-catid.htm" title="Golden Triangle Packages">Golden Triangle</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.bellwortt.in/mountain-climbing-holidays-catid.htm" title="Mountain Climbing Packages">Mountain Climbing</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.bellwortt.in/climbing-holidays-catid.htm" title="Climbing Packages">Climbing</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>
				</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:53:"Book Sri Lanka Tour - 4 Nights / 5 Days Tour Packages";i:2;s:139:"book sri lanka tour - 4 nights / 5 days tour packages, beach and islands tour packages, colombo, kandy, nuwara eliya, bentota tour packages";i:3;s:179:"Bellwortt International offers Sri Lanka Tour - 4 Nights / 5 Days tour package, budget Beach and Islands tour packages for Colombo, Kandy, Nuwara Eliya, Bentota at exciting price.";i:4;s:2704:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Colombo, Kandy, Nuwara Eliya, Bentota"        
		                 },
		      "description": "Begin the New Phase of Your Life Amidst Beautiful Expanses of Sri Lanka with this 4 Nights, 5 Days Sri Lanka Honeymoon Package. Head to the Most Romantic Destinations of this Island Nation – Kandy, Nuwara Eliya, Bentota, and Colombo for a Memorable Sri Lankan Honeymoon. a Host of Wildlife Sanctuaries, Tea Estates, Historical Structures, Spectacular Scenery, and Exciting Watersports Make Your First Ever Trip of Togetherness Truly Remarkable.

your Sri Lanka Honeymoon Itinerary Commences with Arrival At Sri Lanka International Airport, Followed By a Transfer to Kandy.  Enjoy the Leisure Day in Kandy Just as You Desire. Explore Myriad Sightseeing Attractions as per Your Kandy Honeymoon Package. On the Second Day, You Will Be Visiting Nuwara Eliya, the Mesmeric City Wrapped By Lovely Hills, Presenting a Dream-like Destination for Newlyweds like You. Delight in the Unparalleled Scenic Attractions like Strawberry Gardens, Ramboda Waterfalls, and Gregory Lake During Your Holiday Together. Up Next is a Beach Destination – Bentota, Where You Can Indulge in Exciting Watersports, Followed By a Pleasurable City Tour. Visit the Turtle Hatchery and Watch How Turtle Hatchlings are Cared For.

finally, Your Sri Lanka Honeymoon Package from India Will Take You to Colombo, the Capital City of the Island Country. Soak in Its Happening Spirit, Laced with An Aura of Serenity. Make the Most of Your Romantic Honeymoon Package in Sri Lanka By Visiting Places like Viharamahadevi Park, Galle Face Green, and National Museum. You Can also Seek Blessings for a Beautiful Marital Life At Various Religious Places in Colombo. What Makes Your Honeymoon Packages Commendable is the Fact that Every Package is Coupled with Comfortable Transfers, Soothing Stays, and Delish Meals. So, Book a Package Today for a Blissful Honeymoon Trip.

to Get An Idea of What to Include in Your Package and How Your Vacation Be Like, We Recommend You to Go Through the Below Detailed Itinerary Plan of Our Sri Lanka Honeymoon Package and Set Your Preferred Choices of Attractions and Activities that Come Under Your Budget. Connect with Us, and We Will Be Happy to Guide You and Create a Customised Package Exclusively for You.Airfare

Personal expenses

Anything not mentioned in inclusions",
		      "name": "Sri Lanka Tour",
		      "telephone": "+91-9599453303"
		    }
		    </script>
			";i:5;N;}