a:6:{i:0;s:29818:"				<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>Andaman Honey Moon Package</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.andamanvishakatravels.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.andamanvishakatravels.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Andaman Honey Moon Package</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_10/270660/255887.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_10/270660/255887.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/270660/255887.jpg"  alt="Andaman Honey Moon Package" title="Andaman Honey Moon Package" 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">Andaman Honey Moon Package</p>
					
											<p class="mb5px"><b>Duration :</b> 
						6 Nights / 7 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Port Blair, Havelock</p>
												<div class="fo mt20px mb20px xxlarge">
						<p class="xxlarge b dif mb2px"><i class="fa fa-inr"></i> 62300						</p>
						<p class="xxsmall alpha50">Per Person</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.andamanvishakatravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Honey Moon Package - 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="169196"/>
						</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">Quotation Details <br />
arrival Datedeparture<br />
dateno.<br />
of Pax- 2<br />
no. of Room- 1dblVehicle Not At Disposal At Any of the Islands.<br />
<br />
flight Fares are Not Included.<br />
<br />
 Any Personal Expenses. Room Service and Special Orders. Alcoholic and Non Alcoholic Beverages<br />
<br />
any Extra Excursions or Sightseeing Apart from the Suggested Tour Itinerary.<br />
<br />
camera Tickets are Not Included in the Mentioned Cost of Sightseeing &<br />
transfers.<br />
<br />
other Meals Not Mentioned Laundry, Telephone Calls, and Incident</p>
						</div>
														<div class="mt30px b xlarge">
												   					Detailed Tour Itinerary
				   													</div>		   
								<br/>
																			<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><b class="dif mr2px vat"> Day 1: </b> <span class="w-title h15px" > Arrival At Port Blair in the Morning/afternoon By Flight and Our Representative Will Be Waiting<br />
outside Holding a Placard with Your Name On It. You Will Be Taken to Your Hotel Where You<br />
relax and Rest. Post Lunch Rest and Later Proceed to One among the Most Visited Attraction In<br />
andaman Islands, Cellular Jail. this Jail Before India's Independence Hosted the Most<br />
ferocious Prisoners in the Andaman Islands. Today this Jail Stands as a National Memorial.<br />
visit to the this Historic Attractions and Know About the Rich History of the Andaman Islands.<br />
post Completion of this Trip, We Drop You Back to Your Hotel.										
											
																					
											</span>
																							<span class="fr pr10px"><i class="fa fa-angle-down"></i></span>
																							
											</div>		   
											</div> 
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><b class="dif mr2px vat"> Day 2: </b> <span class="w-title h15px" > Today We Depart from Port Blair O Havelock Island. On Arrival Our Representative Will Be<br />
waiting At the Exit of the Jetty. Then Proceed to Selected Hotel to Relax. After Lunch Enjoy The<br />
famous Radhanagar Beach. this Beach Has Been Consistently Rated as One of the Best Beach In<br />
asia. Watch a Mesmerizing Sunset On this Beach Before Returning Back to Your Hotel to Relax<br />
and Unwind.										
											
																					
											</span>
																							<span class="fr pr10px"><i class="fa fa-angle-down"></i></span>
																							
											</div>		   
											</div> 
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><b class="dif mr2px vat"> Day 3: </b> <span class="w-title h15px" > Well, How About Exploring Something Underwater? Today, We Begin Our Journey to The<br />
most Visited Snorkelling Destination in Havelock Island, Elephant Beach. Around 30<br />
minutes By Boat, Elephant Beach Flaunts One among the Best Reefs in Havelock Island.<br />
the Great Thing is that the Reef Here Starts At a Depth of Less Than a Meter. Upon<br />
reaching Elephant Beach, We Rest and Relax. Later, Our Guide Takes You to Snorkel<br />
underwater Where You Explore the Amazing Reef in Elephant Beach. Later We Return<br />
back from Elephant Beach to the Havelock Dock										
											
																					
											</span>
																							<span class="fr pr10px"><i class="fa fa-angle-down"></i></span>
																							
											</div>		   
											</div> 
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><b class="dif mr2px vat"> Day 4: </b> <span class="w-title h15px" > Today visit to Kalapthar Beach returning back to your hotel to relax and unwind.										
											
																					
											</span>
																						
											</div>		   
											</div> 
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><b class="dif mr2px vat"> Day 5: </b> <span class="w-title h15px" > Moring /evening Our Representative Then Attends You and Drop You to Board a Ferry Back To<br />
port Blair Where You Spend Your Night for Overnight Stay.										
											
																					
											</span>
																							<span class="fr pr10px"><i class="fa fa-angle-down"></i></span>
																							
											</div>		   
											</div> 
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><b class="dif mr2px vat"> Day 6: </b> <span class="w-title h15px" > Visit the Administrative Capital Prior to Independence from where the Britishers governed<br />
the entire A & N Islands-ROSS ISLAND, A destination for Nature Walk amidst friendly<br />
Deer’s & Peacocks. Smritika Museum records the life of its political prisoners. Explore the<br />
ruins of the island from where Britishers once governed the entire Andaman and Nicobar<br />
Islands. Then begin your excursion to North Bay - Coral Island with Glass Bottom Boat Ride.<br />
Here one can explore the Coral reefs underwater. The lighthouse seen in North Bay Island<br />
trip is the same that is seen in the back of a 20 Rupee Note. Snorkeling, Scuba Diving and<br />
Sea Walk can be done here as well. Note: There is no bottled water sold on Ross Island and<br />
hence we would recommend you to carry bottled water with you and cold filtered water is<br />
available at Ross Island ticket counter at no cost. Ross Island is closed on Wednesday. If your<br />
tour falls on Wednesday we would interchange it with the previous days plan.										
											
																					
											</span>
																							<span class="fr pr10px"><i class="fa fa-angle-down"></i></span>
																							
											</div>		   
											</div> 
																						<div class="product-desc headVr bdr0 mb12px"> 
											<div class="sub-title p15px"><b class="dif mr2px vat"> Day 7: </b> <span class="w-title h15px"  style="cursor: default;" > Return Home with Sweet Memories of These Mesmerizing Islands										
											
																					
											</span>
																						
											</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>Accommodation in Rooms as Given At Respective Hotels with Breakfast On 01dbl Ac Room</li><li>
all Sightseeing By Personal Ac Vehicle.</li><li>
full Day Tour with all Transfers Including Airport Pick Up and Drop.</li><li>
all Entry Tickets, Ferry Tickets and Permit Charges.</li><li>
all Side Cruises to Transfer from One Island to the Other.</li><li>
breakfast At Respective Hotels.</li><li>
transfer to Havelock Island in Makruzz Cruise/green Ocean</li><li>
beach Side Candle Light Dinner with Cake</li><li>
welcome Drinks</li><li>
one Day Flower Bed Decoration</li><li>
complementary Snorkelling At Elephanta Beach</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Vehicle Not At Disposal At Any of the Islands.</li><li>
flight Fares are Not Included.</li><li>
 Any Personal Expenses. Room Service and Special Orders. Alcoholic and Non Alcoholic Beverages</li><li>
any Extra Excursions or Sightseeing Apart from the Suggested Tour Itinerary.</li><li>
camera Tickets are Not Included in the Mentioned Cost of Sightseeing &</li><li>
transfers.</li><li>
other Meals Not Mentioned Laundry, Telephone Calls, and Incident</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">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.andamanvishakatravels.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Honey Moon Package - 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="169196"/>
						</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.andamanvishakatravels.com/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(14)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanvishakatravels.com/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(13)</b></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.andamanvishakatravels.com/adventure-holidays-catid.htm" title="Adventure Packages">Adventure</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanvishakatravels.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(13)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanvishakatravels.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanvishakatravels.com/romantic-holidays-catid.htm" title="Romantic Packages">Romantic</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanvishakatravels.com/honeymoon-holidays-catid.htm" title="Honeymoon Packages">Honeymoon</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanvishakatravels.com/family-holidays-catid.htm" title="Family Packages">Family</a> <b class="alpha50 bn small">(1)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
										<br />
						<div class="row1"> 
						<div class="col-1"> 
						<div class="mt30px">
						<p class="xxlarge b pb10px bdrB db"> Similar Tour Packages for Port Blair, Havelock</p>
						</div>
						<br/>
						<div class="cf_3img">
						<ul class="lsn m0px p0px fo idv_eqheight cols_similar">
											
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanvishakatravels.com/tour-packages/stay-day-trip-havelock-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/270660/231696.jpg"  alt="Stay Day Trip Havelock Tour" title="Stay Day Trip Havelock Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanvishakatravels.com/tour-packages/stay-day-trip-havelock-tour.htm" title="Stay Day Trip Havelock Tour"><h3>Stay Day Trip Havelock Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 18000</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								2 Nights / 3 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_150039" id="pkg_150039" method="post" action="http://www.andamanvishakatravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanvishakatravels.com/tour-packages/stay-day-trip-havelock-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Stay Day Trip Havelock Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="150039"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanvishakatravels.com/tour-packages/amazing-andaman-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/270660/231693.jpg"  alt="Amazing Andaman Tour" title="Amazing Andaman Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanvishakatravels.com/tour-packages/amazing-andaman-tour.htm" title="Amazing Andaman Tour"><h3>Amazing Andaman Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 14000</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								2 Nights / 3 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_150036" id="pkg_150036" method="post" action="http://www.andamanvishakatravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanvishakatravels.com/tour-packages/amazing-andaman-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Amazing Andaman Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="150036"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanvishakatravels.com/tour-packages/port-blair-havelock-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/270660/231681.jpg"  alt="Port Blair - Havelock Tour" title="Port Blair - Havelock Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanvishakatravels.com/tour-packages/port-blair-havelock-tour.htm" title="Port Blair - Havelock Tour"><h3>Port Blair - Havelock Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 29800</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_150029" id="pkg_150029" method="post" action="http://www.andamanvishakatravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanvishakatravels.com/tour-packages/port-blair-havelock-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Port Blair - Havelock Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="150029"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanvishakatravels.com/tour-packages/diglipurto-rangat-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/270660/231705.jpg"  alt="Diglipur to Rangat Tour" title="Diglipur to Rangat Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanvishakatravels.com/tour-packages/diglipurto-rangat-tour.htm" title="Diglipur to Rangat Tour"><h3>Diglipur To Rangat Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 49500</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								8 Nights / 9 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_150049" id="pkg_150049" method="post" action="http://www.andamanvishakatravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanvishakatravels.com/tour-packages/diglipurto-rangat-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Diglipur to Rangat Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="150049"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanvishakatravels.com/tour-packages/andaman-honeymoon-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/270660/231678.jpg"  alt="Andaman Honeymoon Package" title="Andaman Honeymoon Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanvishakatravels.com/tour-packages/andaman-honeymoon-package.htm" title="Andaman Honeymoon Package"><h3>Andaman Honeymoon Package</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 49800</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_150025" id="pkg_150025" method="post" action="http://www.andamanvishakatravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanvishakatravels.com/tour-packages/andaman-honeymoon-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Honeymoon Package - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="150025"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanvishakatravels.com/tour-packages/diglipur-and-neil-island-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_10/270660/231703.jpg"  alt="Diglipur and Neil Island Tour" title="Diglipur and Neil Island Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanvishakatravels.com/tour-packages/diglipur-and-neil-island-tour.htm" title="Diglipur and Neil Island Tour"><h3>Diglipur And Neil Island Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 49800</b> <b class="xsmall alpha50">Per Person</b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								6 Nights / 7 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_150045" id="pkg_150045" method="post" action="http://www.andamanvishakatravels.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanvishakatravels.com/tour-packages/diglipur-and-neil-island-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Diglipur and Neil Island Tour - Tour Package"/>
							<input type="hidden" name="allocate_type" value="tour"/>
							<button type="submit" class="theme2 p5px10px ts0 b dib c5px bdr0 lh15em">Book Your Tour</button>
							<input type="hidden" name="pkg_slno" value="150045"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
															
						</ul>
						</div>
						</div> 		  
						<br>
						</div>  
						<br />
										
				</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:65:"Book Andaman Honey Moon Package - 6 Nights / 7 Days Tour Packages";i:2;s:126:"book andaman honey moon package - 6 nights / 7 days tour packages, adventure tour packages, port blair, havelock tour packages";i:3;s:166:"Andaman Vishaka Travels offers Andaman Honey Moon Package - 6 Nights / 7 Days tour package, budget Adventure tour packages for Port Blair, Havelock at exciting price.";i:4;s:910:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair, Havelock"        
		                 },
		      "description": "Quotation Details 
arrival Datedeparture
dateno.
of Pax- 2
no. of Room- 1dblVehicle Not At Disposal At Any of the Islands.

flight Fares are Not Included.

 Any Personal Expenses. Room Service and Special Orders. Alcoholic and Non Alcoholic Beverages

any Extra Excursions or Sightseeing Apart from the Suggested Tour Itinerary.

camera Tickets are Not Included in the Mentioned Cost of Sightseeing &
transfers.

other Meals Not Mentioned Laundry, Telephone Calls, and Incident",
		      "name": "Andaman Honey Moon Package",
		      "telephone": "+91-9933246100"
		    }
		    </script>
			";i:5;N;}