a:6:{i:0;s:31972:"				<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>Port Blair Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.bonvoyageandaman.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.bonvoyageandaman.in/packages.htm" title="Packages">Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Port Blair 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_17/495652/262179.jpg">
										<div class="imgWidth" style="background-image: url(https://ttw.wlimg.com/package-images/photo-big/dir_17/495652/262179.jpg);background-size:cover;background-position:center;"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/495652/262179.jpg"  alt="Port Blair Tour" title="Port Blair 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">Port Blair Tour</p>
					
											<p class="mb5px"><b>Duration :</b> 
						4 Nights / 5 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">Price</p>
						<p class="xxsmall">On Request</p>
						</div>
												<div class="mt12px mb7px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.bonvoyageandaman.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Port Blair 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="174424"/>
						</form>
						
												</div>
											<br/>
					</div>       
					</div>
											<div class="mt30px mb30px">
						<div class="b xxlarge mb10px">
								   					Overview
		   											</div>					
						<p class="aj">For 4 Adult  : 48,000 Rs all Included.<br />
<br />
<br />
optional:<br />
excluded Optional<br />
adventure Sports<br />
sea Walk@3500 Rs<br />
scuba Diving@4,000 Rs<br />
snorkelling@900 Rs<br />
coral Safari@1850 Rs<br />
bella Bay Night Cruise (dinner ,Dj,At Night In between sea)@2250 RsLUNCH<br />
<br />
SHOPPING</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> Pick Up from Airport, City Tour and Sound and Light Show										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Our Representative Will Receive You At Veer Savarkar Airport, Port Blair and Will Escort to the Hotel, He Will also Assist You to Do Hotel Check-in Formalities. After Check-in and Little Relax, You Will Be Taken to the Following Places.<br />
samudrika Museum:  it is Run By the Indian Navy.  the Museum Has Seven Sections Presenting Geographical Information, Marine Life, Archaeology and People of Andaman. It Has a Good Collection of Shells, Corals and a Few Colorful Fishes.<br />
anthropological Museum:it Was Started in the Year 1975-76. It Illustrates the Four Negrioto Tribes of the Andamanese Viz; the Jarawas, Sentinels, Great Andamanese, the Onges and Two Mongoloid Tribes of the Nicobar Viz; the Nicobariese and the Shompens. It Not Only Describes the Life Style of the Nomadic Tribes of Andaman and Nicobar Island But also Defines Their Stage By Stage Development Till the Present Age. the Articles On Display are the Various Handicrafts, Tools, Weapons, Arts and Crafts, and Photographs Etc.<br />
chatham Saw Mill:it is One of the Oldest and Largest Saw Mill in Asia Lying On the Tiny Island Connected By a Bridge Over a Stretch of Sea-water. It Was Set Up In1883. It is Owned By the Government. It is Still Using the Machinery Set Up Initially By the British for Wood Processing. It Was Targeted By the Invading Japanese Forces in March 1942.<br />
fisheries Museum:it Has 350 Different Species of Marine Life. the Different Kinds of Marine Life On Display have Been Collected from the Bay of Bengal and the Indo-pacific Ocean. It is Situated Adjacent to the Rajiv Gandhi Water Sports Complex Port Blair.<br />
cellular Jail:this Historic Building Was Built in the 19th Century to Look like a Wheel with Seven Spokes. Today Only Three Wings of the Seven Remain. It Took 10 Years to Complete. It is Called ‘cellular’ Because It is “cells Beyond Cells”.<br />
sound & Light Show:at the National Memorial ‘cellular Jail’ You Can Attend the Sound & Light Show Where the Heroic Saga of the Indian Freedom Struggle is Brought Alive By the Means of Light and Sound At the Jail Premises, Presented in English and Hindi, Which Takes You Back to the British Era.               															
														   
											</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> Onward Journey to Havelock (57kms) 1 Night Stay										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												In the Morning You Will Be Escorted to Phoenix Bay Harbor to Board  or Govt. Ferry (2 ½ Hrs) Which Will Take You to Havelock Island.<br />
havelock Island:the Island is Named After a British Army Officer. the Island Offers State-of-the-art Facilities for Snorkeling and Scuba Diving. Havelock is Famous for Its White Sand and Crystal Clear and Transparent Waters.<br />
at the Harbour Our Representative Will Receive You and Will Escort You To radhanagar Beach Which is Asia’s 7th Most Beautiful Beach. At radhanagar Beach you Can Go for Swimming or Just Get Your Feet Wet and Admire the Serene Beauty of the Beach,<br />
 sightseeing Crystal Serene Clear Waters of Kalapathar Beach Bask in Sun Admire the Beauty ,Evening  Hotel Drop.			
														   
											</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> Havlock to Neil Island.(1 Night Stay)										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Hotel Pick Up Havlock Jetty Drop Voyage to Neil Via Ferry .<br />
arrival At Neil Jetty Pick Up By Car Sightseeing 3 Beaches<br />
neil is a Tiny But Beautiful Island Located 37 Kms. to the South of the Andaman Islands. with Unexplored Coral Reefs, Brilliant Bio-diversity, White Sandy Beaches and Tropical Forest and Vegetation, It is One of the Hot Tourist Spots in the Andamans. <br />
laxmanpur Beach: the Secluded Beach of Lakshmanpur Lies 2 Km North of the Neil Jetty. the Beach is a Broad Spur of White Shell Sand with Shallow Water and Offers a Good Snorkeling Option. Sunbathing and Swimming are other Activities. One Can View Spectacular Sun-set from this Beach. <br />
bharatpur Beach:<br />
half a Kilometer from the Jetty, Bharatpur is One of the Best Beaches Known for Swimming and Coral-watching with a Vast Sandy Stretch. this Beach is Ideally Recommended for Youngsters Because of Activity Options. One Can Hire Glass-bottom Boats for Coral Viewing. the Sea Around the Jetty Area is Full of Corals with Schools of Fish Swimming Around. the Colour and Form of Vegetation Along the Beach Soothes the Senses.<br />
                                                                   natural Rock Formation:  a Natural Rock Formation in Laxmanpur Beach is Locally Known as the Howrah Bridge. Visit the Place During Low Tide as the Retreating Sea Leaves Behind Many a Secret from Its Treasure Trove.hotel Drop.<br />
 			
														   
											</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> Return to Port Blair from Neil.										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Hotel Pick Up from Neil and Jetty Drop Voyage Through Govnt Ferry to Port Blair Arrival At Port Blair Jetty Recieve By Driver Complementary Sightseeing Marina Park ,Hotel Drop.			
														   
											</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> Departure from Port Blair										
											
											<span class="fr pr10px"><i class="fa fa-angle-down"></i></span></a></div>
																							<div class="fo product-detail p15px pt0px">
												Check Out and Pick Up from the Hotel and Transfer to Port Blair Airport / Harbour for Your Onward Journey, Carrying Wonderful Memories.			
														   
											</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>Hotel Ac  2 Star with all Amenities Port Blair 3 Rooms On  2 Bed   sharing Basis.</li><li>
1/hotel Palika Palace .(discount2d Price)</li><li>
havlock 2 Nights Beach Resort ac  3 Star Beach Resort  with all Amenities  2 Rooms On  2 Bed   sharing Basis.</li><li>
1/blue Ocean Resort.(near Radha Nagar Beach)</li><li>
neil Island :hotel Ac  3 Star with all Amenities 2 Rooms On  2 Bed   sharing Basis.</li><li>
1/hotel Jasooda .</li><li>
transportation: Ac Good Condition vehicle Port Blair Havlock,Dezire,Stangray,Suv.</li><li>
tickets:</li><li>
1/city Tour Tickets.</li><li>
2/havlock  Ferry Tickets.(govnt  Ferry (port Blair to Havlock to Neil and Neil To  Port Blair )</li><li>
3/2 Island Boat Tickets .</li><li>
meal Plan Map: Breakfast and Dinner.</li>
																	</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>LUNCH</li><li>
SHOPPING</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">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.bonvoyageandaman.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Port Blair 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="174424"/>
						</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.bonvoyageandaman.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(35)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(16)</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.bonvoyageandaman.in/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(21)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(30)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/adventure-sports-holidays-catid.htm" title="Adventure Sports Packages">Adventure Sports</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/affordable-budget-holidays-catid.htm" title="Affordable & Budget Packages">Affordable & Budget</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/group-holidays-catid.htm" title="Group Packages">Group</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/trekking-holidays-catid.htm" title="Trekking Packages">Trekking</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/snorkeling-holidays-catid.htm" title="Snorkeling Packages">Snorkeling</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/parasailing-holidays-catid.htm" title="Parasailing Packages">Parasailing</a> <b class="alpha50 bn small">(1)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.bonvoyageandaman.in/scuba-diving-holidays-catid.htm" title="Scuba Diving Packages">Scuba Diving</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.bonvoyageandaman.in/rowing-boats-holidays-catid.htm" title="Rowing Boats Packages">Rowing Boats</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.bonvoyageandaman.in/boat-safari-holidays-catid.htm" title="Boat Safari Packages">Boat Safari</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>
				
										<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.bonvoyageandaman.in/tour-packages/3nights4-days-andaman-havlock-and-more.htm'">
														
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bonvoyageandaman.in/tour-packages/3nights4-days-andaman-havlock-and-more.htm" title="3nights 4 Days Andaman ,Havlock and More."><h3>3nights 4 Days Andaman ,havlock And More.</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								3 Nights / 4 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_184413" id="pkg_184413" method="post" action="http://www.bonvoyageandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bonvoyageandaman.in/tour-packages/3nights4-days-andaman-havlock-and-more.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="3nights 4 Days Andaman ,Havlock and More. - 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="184413"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bonvoyageandaman.in/tour-packages/andaman5n6d-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://static.tourtravelworld.com/images/tour-package-no-image.gif"  alt="Andaman 5N/6D Tour" title="Andaman 5N/6D Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bonvoyageandaman.in/tour-packages/andaman5n6d-tour.htm" title="Andaman 5N/6D Tour"><h3>Andaman 5n/6d Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 13800</b> <b class="xsmall alpha50"></b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_127562" id="pkg_127562" method="post" action="http://www.bonvoyageandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bonvoyageandaman.in/tour-packages/andaman5n6d-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman 5N/6D 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="127562"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bonvoyageandaman.in/tour-packages/andaman-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/495652/184361.jpg"  alt="ANDAMAN TOUR" title="ANDAMAN TOUR"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bonvoyageandaman.in/tour-packages/andaman-tour.htm" title="ANDAMAN TOUR"><h3>Andaman Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								3 Nights / 4 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_112380" id="pkg_112380" method="post" action="http://www.bonvoyageandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bonvoyageandaman.in/tour-packages/andaman-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="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="112380"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bonvoyageandaman.in/tour-packages/andaman-group-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/495652/279066.jpg"  alt="Andaman Group Tour" title="Andaman Group Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.bonvoyageandaman.in/tour-packages/andaman-group-tour.htm" title="Andaman Group Tour"><h3>Andaman Group Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="xlarge dif pt5px pb5px"><b class="webrupee lh1em">INR 12000</b> <b class="xsmall alpha50"></b></div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_127560" id="pkg_127560" method="post" action="http://www.bonvoyageandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bonvoyageandaman.in/tour-packages/andaman-group-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Group 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="127560"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bonvoyageandaman.in/tour-packages/andaman-honeymoon-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/495652/188510.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.bonvoyageandaman.in/tour-packages/andaman-honeymoon-package.htm" title="Andaman Honeymoon Package"><h3>Andaman Honeymoon Package</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</div>
																<p class="mt7px"><b class="alpha50">Duration</b> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair, Havelock</p>
															<div class="mt10px small">
							<form name="pkg_115624" id="pkg_115624" method="post" action="http://www.bonvoyageandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bonvoyageandaman.in/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="115624"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.bonvoyageandaman.in/tour-packages/amazing-andaman-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/495652/188509.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.bonvoyageandaman.in/tour-packages/amazing-andaman-tour.htm" title="Amazing Andaman Tour"><h3>Amazing Andaman Tour</h3></a></div>
							<div class="bdrT p12px">
															<div class="b large dif pt5px pb5px">Price On Request</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_115623" id="pkg_115623" method="post" action="http://www.bonvoyageandaman.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.bonvoyageandaman.in/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="115623"/>
							</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:54:"Book Port Blair Tour - 4 Nights / 5 Days Tour Packages";i:2;s:123:"book port blair tour - 4 nights / 5 days tour packages, beach and islands tour packages, port blair, havelock tour packages";i:3;s:172:"Book Port Blair Tour - 4 Nights / 5 Days tour packages from Bonvoyage Andaman - Get attractive 4 Nights / 5 Days Beach and Islands  tour packages for  Port Blair, Havelock.";i:4;s:669:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair, Havelock"        
		                 },
		      "description": "For 4 Adult  : 48,000 Rs all Included.


optional:
excluded Optional
adventure Sports
sea Walk@3500 Rs
scuba Diving@4,000 Rs
snorkelling@900 Rs
coral Safari@1850 Rs
bella Bay Night Cruise (dinner ,Dj,At Night In between sea)@2250 RsLUNCH

SHOPPING",
		      "name": "Port Blair Tour",
		      "telephone": "+91-9933297687"
		    }
		    </script>
			";i:5;N;}