a:6:{i:0;s:9541:"				<div class="h1"><h1>Special Honey Moon Package</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.saiandamanholidays.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.saiandamanholidays.in/travel-packages.htm" title="Travel Packages">Travel Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Special Honey Moon 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_14/401679/111744.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_14/401679/111744.jpg"  width="150" height="150"    alt="Special Honey Moon Package" title="Special Honey Moon Package" /></a></p></div></li>
															</ul>
						</div>
						</td>
											
					<td class="p10px">
											<p class="mb5px"><b>Duration :</b> 
						5 Nights / 6 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Port Blair</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.saiandamanholidays.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Special Honey Moon 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="59165"/>
						</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: Arrival
									</p>
									<div class="data p10px">Arrival at Port Blair in the morning our representative will hold placard with your name and one Bouquet on the day of arrival at the Airport just outside the exit gate of the Terminal and transfer to respective hotel and rest till afternoon. After Lunch start off covering Cellular Jail  visit the Corbyns Cove Beach - 7 kms from Port Blair - a coconut palm fringed beach, ideal for swimming, sun-basking & bathing. Overnight stay at respective Hotel / Resort at Port Blair.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 2: Havelock
									</p>
									<div class="data p10px">Early morning departure by M.V.Makruzz/ Govt. Ferry  to Havelock Island (54 kms by sea from Port Blair). Enjoy your afternoon at the World Famous Radha Nagar Beach (Beach number 7) it’s a famous beach. This beach have received A+ rating from the World Tourism Organization (WTO) and have also been featured in the famous TIME magazine (November 2004 issue) and in the Conde Naste traveler magazine.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 3: Elephant Beach
									</p>
									<div class="data p10px">After a leisure breakfast, we sail for Elephant Beach by High Speed Fiber Boat. The travel time is around 30 minutes to reach Elephant Beach. This beach has one of the best coral reefs in the world & the underwater marine life is very lively & colorful. Snorkeling shall be provided for the couple out here. Please do not forget to take snacks for the trip and lots of drinking water & changing dress for the day trip or advised. After the completion of the coral island tour, return back to respective resort in Havelock Island.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 4: Neil Island
									</p>
									<div class="data p10px">After breakfast, depart to Neil Island by inter-island ferry, an island with clear turquoise sea and white sand beaches. Check in to your hotel. Post breakfast visit Sitapur viewpoint. Then go to Bharatpur Beach, one of the most beautiful beaches in Andaman. You can take a ride in a glass bottomed boat to see under water corals and marine life Optional - extra cost). Late afternoon visit the Laxmanpur Beach 2 to view the natural coral bridge and also go to LaxmanpurBeach1 to view the sunset. Evening free or at own. Overnight in Neil Island.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 5: Port Blair
									</p>
									<div class="data p10px">Entire Morning at leisure. Sail for Port Blair in the noon. Upon return from Neil Island, transfer to Hotel. Evening  proceed to Ross Island, the erstwhile capital of Port Blair during the British regime. The island presently houses the ruins of old buildings like Chief Commissioner's House, Government House, Church, Bakery, Press, Swimming Pool, Cemetery, etc. and all in dilapidated condition.</div>					
									</li>
									<br />
									<li>
									<p class="b mb5px">Day 6: Departure
									</p>
									<div class="data p10px">Return home with memories of the ultimate holidays.</div>					
									</li>
									<br />					
							</ul>						<!--DATA2 EMD--></div>
											
						<div class="ic bdr" id="data4"><!--DATA4 START-->
						<br />
						Expenses of personal nature such as tips, telephone calls, laundry, liquor etc.<br />
Any deviation from the route map.<br />
Any other item not specified in cost included.<br />
Any food other than the plan chosen.<br />
Guide and entrance fees during Sightseeing.<br />
Air fare / Train fare.<br />
Medical Insurance.<br />
Any optional activities like water sports etc. However, if you are interested in any of these activities, we can guide and arrange for the same with the supplementary charges<br />
Lunch & Dinner is as per the meal plan. <br />
Vehicle at disposal.<br />
Any Extra excursions apart from the suggested itinerary.<br />
Personal expenses.<br />
Expenses occurred due to bad weather, Flight or ferry cancellation, strike or any political unrest to be paid by guest as per actual.							<p class="b mb5px dif">Inclusions :</p>
							<ul>
																	<li>Sightseeing</li>
																				<li>Transfers</li>
																	</ul>
							<br />
														<p class="b mb5px dif">Exclusions :</p> <ul><li>Expenses of personal nature such as tips, telephone calls, laundry, liquor etc.</li><li>
Any deviation from the route map.</li><li>
Any other item not specified in cost included.</li><li>
Any food other than the plan chosen.</li><li>
Guide and entrance fees during Sightseeing.</li><li>
Air fare / Train fare.</li><li>
Medical Insurance.</li><li>
Any optional activities like water sports etc. However, if you are interested in any of these activities, we can guide and arrange for the same with the supplementary charges</li><li>
Lunch & Dinner is as per the meal plan. </li><li>
Vehicle at disposal.</li><li>
Any Extra excursions apart from the suggested itinerary.</li><li>
Personal expenses.</li><li>
Expenses occurred due to bad weather, Flight or ferry cancellation, strike or any political unrest to be paid by guest as per actual.</li></ul><br />
													<!--DATA4 EMD--></div>
												<div class="ic bdr" id="data6"><!--DATA6 START-->
						<br />
						~^#^~~^#^~<ul>
	<li align="justify" lang="en-IN" style="widows: 8; page-break-inside: avoid"><font color="#000000"><font face="Arial, serif"><span lang="en-IN"><b>Check out time for most of the hotels mentioned is 0700 hrs.</b></span></font></font></li>
	<li>
	<p align="justify" style="widows: 8; page-break-inside: avoid"><font color="#000000"><font face="Arial, serif"><span lang="en-IN"><b>Please note that our representative will hold placard with your name/travels name just outside the exit gate of the Terminal.</b></span></font></font>
	</li>
	<li>
	<p align="justify" style="widows: 8; page-break-inside: avoid"><font color="#000000"><font face="Arial, serif"><span lang="en-IN"><b>The vehicle used will be exclusive for the couple / group and it will be as per contract &amp; will change as advised / mentioned.</b></span></font></font>
	</li>
	<li>
	<p align="justify" style="widows: 8; page-break-inside: avoid"><font color="#000000"><font face="Arial, serif"><span lang="en-IN"><b>Online rates are subject to change in case of change in hotel rates, transport rates, Government taxes etc.</b></span></font></font>
	</li>
</ul>						<!--DATA6 EMD--></div>
											
					<!--MY TABS END--></div>
					";i:1;s:65:"Book Special Honey Moon Package - 5 Nights / 6 Days Tour Packages";i:2;s:124:"book special honey moon package - 5 nights / 6 days tour packages, beach and islands tour packages, port blair tour packages";i:3;s:161:"Sai Andaman Holidays offers Special Honey Moon Package - 5 Nights / 6 Days tour package, budget Beach and Islands tour packages for Port Blair at exciting price.";i:4;s:1171:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair"        
		                 },
		      "description": "Expenses of personal nature such as tips, telephone calls, laundry, liquor etc.
Any deviation from the route map.
Any other item not specified in cost included.
Any food other than the plan chosen.
Guide and entrance fees during Sightseeing.
Air fare / Train fare.
Medical Insurance.
Any optional activities like water sports etc. However, if you are interested in any of these activities, we can guide and arrange for the same with the supplementary charges
Lunch & Dinner is as per the meal plan. 
Vehicle at disposal.
Any Extra excursions apart from the suggested itinerary.
Personal expenses.
Expenses occurred due to bad weather, Flight or ferry cancellation, strike or any political unrest to be paid by guest as per actual.",
		      "name": "Special Honey Moon Package",
		      "telephone": "91-9538031728/8001435933/9620231698"
		    }
		    </script>
			";i:5;N;}