a:6:{i:0;s:36717:"				<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 Tour Package in Vacations Port Blair and all Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.andamanseahawktravels.in/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.andamanseahawktravels.in/packages.htm" title="Packages">Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Andaman Tour Package in Vacations Port Blair and all Tour</p> 
									
						<script language="javascript"> 
							function topDestinationToggle(showHideDiv, switchTextDiv) {
							var ele = document.getElementById(showHideDiv);
							var text = document.getElementById(switchTextDiv);
							if(ele.style.display == "block") {
								ele.style.display = "none";
							  text.innerHTML = "View More &#9660;";
							}
							else {
							  ele.style.display = "block";
							  text.innerHTML = "View Less &#9650;";
							}
							}
		                </script>
											<script type="text/javascript">			
					(function($){	
					  $(function(){
						$('[id^=detailslider]').each(function(){
							$(this).DG_Slider({
								auto: true, mode:'fade', pager:true, pagerType:'short',controls:true
							});
						})
				
						$('a[rel=gall]').fancybox()
					  });	
					}(jQuery))
					</script>
					
					<br />
					<div class="data">
					<table class="w100 formTable bdr0 imgWidth">
					<tr>
					<td class="p10px">
					
											<p class="mb5px"><b>Duration :</b> 
						6 Nights / 7 Days 
						</p>
												<p class="mb5px"><b>Destination Covered :</b> Port Blair</p>
												<p class="mb5px"><b>Price (Starting From) :</b> <span class="dif">On Request</span></p>
												<br />
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.andamanseahawktravels.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Tour Package in Vacations Port Blair and all Tour - 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="68556"/>
						</form>
						
												</p>
											</td>
											<td class="p10px vat imgWidth200 w200px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w200px h200px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_9/244363/124823.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_9/244363/124823.jpg"  width="150" height="150"    alt="Andaman Tour Package in Vacations Port Blair and all Tour" title="Andaman Tour Package in Vacations Port Blair and all Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Tour Detail</p>
								</div>
													
								Personal expenses.<br />
Airfares / Ship fare to mainland India.<br />
Activity charges, Jet Ski, scuba diving etc.<br />
Room Services, Laundry, Telephone charges, Ross island maintenance fee.<br />
Anything which is not mentioned in "PRICE INCLUDES".<br />
Additional usage of vehicle.<br />
Any services not specifically mentioned in the inclusions.<br />
Supplement(s) if any - Per Person in          INR We will not be Liable for the following :<br />
For any lost or damage your personal belongings during the tour / stay, we would request you to take care of your<br />
personal belongings on your own.<br />
To pay for any extra services beyond the above-mentioned inclusions (Until approved by you in writing).<br />
We would in no way be liable for any delay / loss of Baggage, Loss of Passports, Air Tickets and Forex/INR etc. However we would provide assistance to the best of our abilities.<br />
<br />
Cancellation Policy:<br />
All services such as Airline seats / Hotel accommodation / ground transportation for tours are pre-blocked well in advance. We are liable to pay penalties to all our suppliers / vendors if these services are released within the below mentioned time frame.<br />
<br />
If circumstances make you cancel the Tour or the group size reduces below the number of passengers mentioned, the cancellation must be intimated to us in writing. Such Cancellation will attract the following Cancellation Charges:<br />
<br />
Cancellation Charges Per Person when a Cancellation is made-<br />
45 days or more prior to the departure of the tour<br />
-      25%<br />
30 days or more prior to the departure of the tour<br />
-      50%<br />
15 days or more prior to the departure of the tour<br />
-      100%<br />
No Show<br />
-      100%<br />
<br />
In case there are any other Cancellation that are levied by either of the suppliers i.e. Airlines or the Hotels the same would subsequently be charged from you.<br />
<br />
<br />
General Information-<br />
The prices are quoted on Per Person basis in<br />
<br />
<br />
INR      .<br />
The confirmation of rooms at desired hotels will be subject to availability on the day of making the booking. In case rooms are not available at the hotel foreseen/ desired bookings will be made in alternate or similar category or the next best available hotel. Any supplement/ reduction applicable in such cases will be payable accordingly by you.<br />
Above prices are subject to any revision of tax and tariff. Standard Check-in / Check out time at hotels is 12 Noon. Flight/Train schedule is subject to change by the Airlines/Railways.<br />
The Airfare is in Economy Class and subject to change without any prior notice.								</div>
								<br />
																<div class="headHr">
					            <p class="p7px b pl10px xlarge">Tour Itinerary</p>
					            </div>
					            
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 1:</b> Arrive Port Blair
										</p>
										<p class="aj">Airport pickup<br />
welcome on arrival at Port Blair - Veer Savarkar Airport at Port Blair & get transferred by a private Air -Conditioned Vehicle to the Resort / hotel include baggage handling. After reaching to the Hotel our representative will assist to do Hotel Check in formalities. After a short time for leisure have lunch and start for sightseeing of places in and around Port Blair.<br />
<br />
Carbyn's Cove Beach ,Cellular Jail & Light and Sound<br />
we proceed to Carbyn's Cove Beach, Which cover Corbyn's Cove Beach - 9 kms from Port Blair town - a coconut palm fringed beach Corbyn’s Cove has a small curve of sand backed by palms. The coastal road here is a scenic journey, and passes several Japanese WWII bunkers along the way.<br />
The Cellular Jail has a pride of place in India ’s freedom struggle. Many a stalwart were imprisoned here. Declared a national memorial, this three storey prison constructed by Britishers in 1906, is a pilgrimage destination for freedom fighters. This colossal edifice has mutely witnessed the most treacherous of inhumane atrocities borne by the convicts, who were mostly freedom fighters.<br />
Cellular Jail is closed on Monday<br />
Light and Sound Show at 1800 hrs or 1900 Hrs. Back to Gust house. Enjoy Cellular Jail Entry Ticket<br />
Enjoy Cellular Jail Light & Sound Program<br />
<br />
Overnight at Hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 2:</b> Port Blair
										</p>
										<p class="aj">Breakfast at hotel.<br />
<br />
Baratang Island<br />
Today we proceed towards Baratang Island Mud Volcano, Limestone Caves (Full Day Programme). Baratang Island is located between Middle and South Andaman Islands. Approximately, 110 Kms from Port Blair, Baratang Island is another major attraction for most of the tourist visiting this island. What would you expect when you visit a tropical island? Dense Forest, Tribes, Mangroves, boats, beaches, birds, caves, trekking, volcanoes; Baratang has all of these to offer. Journey to this Island is an adventurous one. Your trip starts early in the morning from Port Blair and Same day return to Port Blair.<br />
<br />
Enjoy Boat Ticket<br />
Enjoy Lime Stone Cave<br />
Enjoy Mud Valcano Per Group Upto 8 Pax<br />
Overnight at Hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 3:</b> Port Blair - Havelock
										</p>
										<p class="aj">Breakfast at hotel.<br />
One arrival at Port Blair Harvour our representative will be stand out side the gate to take you and drop to Hotel /Guest House.<br />
Enjoy Port Blair To Havelock Green Ocean Ship (Executive) Ticket<br />
Arrival at Havelock<br />
On arrival at the Havelock Harbour by Ship, you ’ll be met by one of our representatives outside the exit gate. Just keeps a look out for a friendly man holding a placard with your name on it. The representative will take you to your car and transfer to your tour<br />
<br />
Radhanagar Beach<br />
After reach our company’s vehicle will be in the resort to take you to the Radhanagar beach- Asia's Best Beach and rated amongst world's top ten beaches. Radhanagar Beach (Beach #7) is the most beautiful on the island and was rated as the best in Asia by Time in 2004. Gorgeous, silky white sand backed by a forest that provides welcome shade looks out over turquoise water, some stretches with a sandy bottom good for swimming and some with excellent coral reefs that are great for snorkeling - a great combination indeed. Sunsets here are often spectacular and it's a popular time to be at the beach. By evening return back to the hotel and Stay Overnight at Havelock Island.<br />
Kindly remind hotel to provide packed breakfast at Port Blair since the same is not included at Havelock<br />
.<br />
Overnight at Hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 4:</b> Havelock - Neil Island
										</p>
										<p class="aj">Breakfast at hotel. Kala Pathar Beach<br />
Kala Pathar beach is a relatively small yet lovely beach. Silvery sand and aqua green waters make the place exotic and exquisite. The beach, honestly is no where close to Radhanagar beach but nevertheless it is a beautiful place to visit . Sadly, there are no eco huts or shade with benches to sit so the best idea is to carry a hammock, tie it around a tree on the beach, lay down in the hammock and enjoy the view or read your favorite author. Kala Pathar beach which is about<br />
6-8 kms away from Dolphin resort.<br />
Proceed to Neil Island<br />
After Lunch we proceed towards the Neil Island from Havelock Island Harbour. Enjoy Havelock To Neil Island Govt Ferry Ticket<br />
Arrival at Neil Island<br />
On arrival at Neil Island Harbour, you'll be met our representative with hold a play card and pick up to Hotel/Guest House.<br />
Bharatpur, Laxmanpur Beach & Natural Rock Formation<br />
Neil Island Another beautiful island with lush green forests and sandy beaches, and Neil is as beautiful as the other islands in Port Blair, sightseeing to Bharatpur Beach, Laxmanpur Beach-1 & Laxmanpur Beach-2.<br />
Overnight at Hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 5:</b> Neil Island - Port Blair
										</p>
										<p class="aj">Breakfast at hotel.<br />
Sitapur Beach<br />
In morning we proceed to Sitapur Beach one of another beach of Neil Island, we see the sun rise view at Sitapur Beach.<br />
<br />
Proceed to Port Blair<br />
After breakfast we start our journey towards Port Blair Island by from Neil Island Harbour. Enjoy Neil Island To Port Blair Makruzz Ship (Premium) Ticket<br />
One arrival at Port Blair Harvour our representative will be stand out side the gate to take you and drop to Hotel /Guest House.<br />
<br />
Chidiyatapu Beach<br />
After Launch we proceeds towards Chidiyatapu beach, the best destination of sunset point, crossing the Rreserve Dense<br />
Forest and Biological Park. And back to Port Blair Hotel/Guest House. Breakfast at hotel.<br />
<br />
Sitapur Beach<br />
In morning we proceed to Sitapur Beach one of another beach of Neil Island, we see the sun rise view at Sitapur Beach.<br />
<br />
Proceed to Port Blair<br />
After breakfast we start our journey towards Port Blair Island by from Neil Island Harbour. Enjoy Neil Island To Port Blair Makruzz Ship (Premium) Ticket<br />
One arrival at Port Blair Harvour our representative will be stand out side the gate to take you and drop to Hotel /Guest House.<br />
<br />
Chidiyatapu Beach<br />
After Launch we proceeds towards Chidiyatapu beach, the best destination of sunset point, crossing the Rreserve Dense Forest and Biological Park. And back to Port Blair Hotel/Guest House.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 6:</b> Port Blair
										</p>
										<p class="aj">Breakfast at hotel.<br />
<br />
Ross & North Bay Island<br />
Today after breakfast embark on a day long two island cruise. One of the most sought after activities. It covers a panorama of seven harbours that include the , North Bay and Ross Island. It leaves a lasting impression. Visit Ross Island. Once the administrative headquarters of the British and capital of these Islands, the island is now under the Indian Navy. It stands now as a ruin of the bygone days with the old structures almost in debris. There is a small museum named Smritika, it holds photographs and the other antiques of the Britishers relevant to these islands. The island is famous for friendly flocks of Deer and lush green walking trails. North Bay, the water lovers may enjoy (called the Coral Island). Best destination to enjoy the view of colourful corals and underwater marine life through glass bottom boat and Snorkeling or take a glass bottom boat ride (Optional on direct payment) in its shallow waters with a chance to see corals up close. Return to the hotel. Dinner and stay overnight at the Hotel.<br />
<br />
Enjoy Ross Island & North Bay Island Boat Ticket<br />
Overnight at Hotel.</p>
										</td>
										</tr>
										</table>					
										</div>
										<div class="data">
										<table class="w100 formTable bdr0 imgWidth">
										<tr>
										<td class="p10px vat">
										<p class="b large mb5px"><b class="dif">Day 7:</b> Port Blair
										</p>
										<p class="aj">Breakfast at hotel.<br />
<br />
Airport Droping<br />
Drop at Airport. Return home with memories of a wonderful holiday. (Check out time ---- Hrs)</p>
										</td>
										</tr>
										</table>					
										</div>								<br />
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Inclusions</p>
								</div>
												
								<ul>
																			<li>Hotel</li>
																						<li>Sightseeing</li>
																						<li>Transport</li>
																						<li>Transfers</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Personal expenses.</li><li>
Airfares / Ship fare to mainland India.</li><li>
Activity charges, Jet Ski, scuba diving etc.</li><li>
Room Services, Laundry, Telephone charges, Ross island maintenance fee.</li><li>
Anything which is not mentioned in "PRICE INCLUDES".</li><li>
Additional usage of vehicle.</li><li>
Any services not specifically mentioned in the inclusions.</li><li>
Supplement(s) if any - Per Person in          INR We will not be Liable for the following :</li><li>
For any lost or damage your personal belongings during the tour / stay, we would request you to take care of your</li><li>
personal belongings on your own.</li><li>
To pay for any extra services beyond the above-mentioned inclusions (Until approved by you in writing).</li><li>
We would in no way be liable for any delay / loss of Baggage, Loss of Passports, Air Tickets and Forex/INR etc. However we would provide assistance to the best of our abilities.</li><li>
Cancellation Policy:</li><li>
All services such as Airline seats / Hotel accommodation / ground transportation for tours are pre-blocked well in advance. We are liable to pay penalties to all our suppliers / vendors if these services are released within the below mentioned time frame.</li><li>
If circumstances make you cancel the Tour or the group size reduces below the number of passengers mentioned, the cancellation must be intimated to us in writing. Such Cancellation will attract the following Cancellation Charges:</li><li>
Cancellation Charges Per Person when a Cancellation is made-</li><li>
45 days or more prior to the departure of the tour</li><li>
-      25%</li><li>
30 days or more prior to the departure of the tour</li><li>
-      50%</li><li>
15 days or more prior to the departure of the tour</li><li>
-      100%</li><li>
No Show</li><li>
-      100%</li><li>
In case there are any other Cancellation that are levied by either of the suppliers i.e. Airlines or the Hotels the same would subsequently be charged from you.</li><li>
General Information-</li><li>
The prices are quoted on Per Person basis in</li><li>
INR      .</li><li>
The confirmation of rooms at desired hotels will be subject to availability on the day of making the booking. In case rooms are not available at the hotel foreseen/ desired bookings will be made in alternate or similar category or the next best available hotel. Any supplement/ reduction applicable in such cases will be payable accordingly by you.</li><li>
Above prices are subject to any revision of tax and tariff. Standard Check-in / Check out time at hotels is 12 Noon. Flight/Train schedule is subject to change by the Airlines/Railways.</li><li>
The Airfare is in Economy Class and subject to change without any prior notice.</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Rate Card</p>
								</div>
								
    	<p class="h dif xlarge b mb5px">Hotel Details</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">City</td>
				<td class="headHr p5px b">Hotel</td>
				<td class="headHr p5px b">Room Category</td>
				<td class="headHr p5px b">Meal Plan</td>
			</tr>
			<tr>
				<td class="data p5px">Port Blair</td>
				<td class="data p5px">Airport Hotel</td>
				<td class="data p5px">Executive Room</td>
				<td class="data p5px">Breakfast</td>
			</tr>
			<tr>
				<td class="data p5px">Havelock</td>
				<td class="data p5px">Hotel Eldorado Beach Resort</td>
				<td class="data p5px">Standard AC Cottage</td>
				<td class="data p5px">Breakfast</td>
			</tr>
			<tr>
				<td class="data p5px">Neil Island</td>
				<td class="data p5px">Coconhuts Beach Resort</td>
				<td class="data p5px">Standard AC Cottage</td>
				<td class="data p5px">Breakfast</td>
			</tr>
		</table></div><br>
    	<p class="h dif xlarge b mb5px"> CATEGORY/ PER PERSON RATES</p>
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">02 PAX</td>
			</tr>
			<tr>
				<td class="data p5px">3 STAR HOTEL</td>
			</tr>
		</table></div><br>								</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.andamanseahawktravels.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Tour Package in Vacations Port Blair and all 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="68556"/>
						</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.andamanseahawktravels.in/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(229)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanseahawktravels.in/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(1)</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.andamanseahawktravels.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.andamanseahawktravels.in/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(223)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanseahawktravels.in/forts-palaces-holidays-catid.htm" title="Forts and Palaces Packages">Forts and Palaces</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.andamanseahawktravels.in/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</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</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.andamanseahawktravels.in/tour-packages/exotic-andamans-family-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_9/244363/44328.jpg"  alt="Exotic Andamans Family Package " title="Exotic Andamans Family Package "  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanseahawktravels.in/tour-packages/exotic-andamans-family-package.htm" title="Exotic Andamans Family Package "><h3>Exotic Andamans Family 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</p>
															<div class="mt10px small">
							<form name="pkg_23220" id="pkg_23220" method="post" action="http://www.andamanseahawktravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanseahawktravels.in/tour-packages/exotic-andamans-family-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Exotic Andamans Family 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="23220"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanseahawktravels.in/tour-packages/andaman-mega-ishland-tour6-nights7-days.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_9/244363/123909.jpg"  alt="Andaman Mega ishland Tour 6 Nights 7 Days" title="Andaman Mega ishland Tour 6 Nights 7 Days"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanseahawktravels.in/tour-packages/andaman-mega-ishland-tour6-nights7-days.htm" title="Andaman Mega ishland Tour 6 Nights 7 Days"><h3>Andaman Mega Ishland Tour 6 Nights 7 Days</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</p>
															<div class="mt10px small">
							<form name="pkg_67958" id="pkg_67958" method="post" action="http://www.andamanseahawktravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanseahawktravels.in/tour-packages/andaman-mega-ishland-tour6-nights7-days.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Mega ishland Tour 6 Nights 7 Days - 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="67958"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanseahawktravels.in/tour-packages/andaman-weekend-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_9/244363/11411.jpg"  alt="Andaman Weekend Tour" title="Andaman Weekend Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanseahawktravels.in/tour-packages/andaman-weekend-tour.htm" title="Andaman Weekend Tour"><h3>Andaman Weekend 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> : 
								4 Nights / 5 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_10388" id="pkg_10388" method="post" action="http://www.andamanseahawktravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanseahawktravels.in/tour-packages/andaman-weekend-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Weekend 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="10388"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanseahawktravels.in/tour-packages/sampoorna-andaman-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_9/244363/43533.jpg"  alt="Sampoorna Andaman Tour" title="Sampoorna Andaman Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanseahawktravels.in/tour-packages/sampoorna-andaman-tour.htm" title="Sampoorna Andaman Tour"><h3>Sampoorna 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</p>
															<div class="mt10px small">
							<form name="pkg_22973" id="pkg_22973" method="post" action="http://www.andamanseahawktravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanseahawktravels.in/tour-packages/sampoorna-andaman-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Sampoorna 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="22973"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanseahawktravels.in/tour-packages/port-blair-sea-beach-tour1.htm'">
															<div class="picBg ac vam lh0"><img src="https://static.tourtravelworld.com/images/tour-package-no-image.gif"  alt="Port Blair Sea Beach Tour" title="Port Blair Sea Beach Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanseahawktravels.in/tour-packages/port-blair-sea-beach-tour1.htm" title="Port Blair Sea Beach Tour"><h3>Port Blair Sea Beach 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</p>
															<div class="mt10px small">
							<form name="pkg_10492" id="pkg_10492" method="post" action="http://www.andamanseahawktravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanseahawktravels.in/tour-packages/port-blair-sea-beach-tour1.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Port Blair Sea Beach 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="10492"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.andamanseahawktravels.in/tour-packages/baratang-island-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_9/244363/12176.jpg"  alt="Baratang Island Tour" title="Baratang Island Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.andamanseahawktravels.in/tour-packages/baratang-island-tour.htm" title="Baratang Island Tour"><h3>Baratang Island 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> : 
								9 Nights / 10 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_10801" id="pkg_10801" method="post" action="http://www.andamanseahawktravels.in/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.andamanseahawktravels.in/tour-packages/baratang-island-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Baratang 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="10801"/>
							</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:96:"Book Andaman Tour Package in Vacations Port Blair and all Tour - 6 Nights / 7 Days Tour Packages";i:2;s:155:"book andaman tour package in vacations port blair and all tour - 6 nights / 7 days tour packages, beach and islands tour packages, port blair tour packages";i:3;s:204:"Andaman Sea Hawk Tours & Travels offers Andaman Tour Package in Vacations Port Blair and all Tour - 6 Nights / 7 Days tour package, budget Beach and Islands tour packages for Port Blair at exciting price.";i:4;s:2950:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair"        
		                 },
		      "description": "Personal expenses.
Airfares / Ship fare to mainland India.
Activity charges, Jet Ski, scuba diving etc.
Room Services, Laundry, Telephone charges, Ross island maintenance fee.
Anything which is not mentioned in "PRICE INCLUDES".
Additional usage of vehicle.
Any services not specifically mentioned in the inclusions.
Supplement(s) if any - Per Person in          INR We will not be Liable for the following :
For any lost or damage your personal belongings during the tour / stay, we would request you to take care of your
personal belongings on your own.
To pay for any extra services beyond the above-mentioned inclusions (Until approved by you in writing).
We would in no way be liable for any delay / loss of Baggage, Loss of Passports, Air Tickets and Forex/INR etc. However we would provide assistance to the best of our abilities.

Cancellation Policy:
All services such as Airline seats / Hotel accommodation / ground transportation for tours are pre-blocked well in advance. We are liable to pay penalties to all our suppliers / vendors if these services are released within the below mentioned time frame.

If circumstances make you cancel the Tour or the group size reduces below the number of passengers mentioned, the cancellation must be intimated to us in writing. Such Cancellation will attract the following Cancellation Charges:

Cancellation Charges Per Person when a Cancellation is made-
45 days or more prior to the departure of the tour
-      25%
30 days or more prior to the departure of the tour
-      50%
15 days or more prior to the departure of the tour
-      100%
No Show
-      100%

In case there are any other Cancellation that are levied by either of the suppliers i.e. Airlines or the Hotels the same would subsequently be charged from you.


General Information-
The prices are quoted on Per Person basis in


INR      .
The confirmation of rooms at desired hotels will be subject to availability on the day of making the booking. In case rooms are not available at the hotel foreseen/ desired bookings will be made in alternate or similar category or the next best available hotel. Any supplement/ reduction applicable in such cases will be payable accordingly by you.
Above prices are subject to any revision of tax and tariff. Standard Check-in / Check out time at hotels is 12 Noon. Flight/Train schedule is subject to change by the Airlines/Railways.
The Airfare is in Economy Class and subject to change without any prior notice.",
		      "name": "Andaman Tour Package in Vacations Port Blair and all Tour",
		      "telephone": "+91-9933200646"
		    }
		    </script>
			";i:5;N;}