a:6:{i:0;s:33594:"				<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 Journey Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.destinationandamantours.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.destinationandamantours.com/holiday-packages.htm" title="Holiday Packages">Holiday Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Andaman Journey 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.destinationandamantours.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Journey 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="117616"/>
						</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_17/507938/190944.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_17/507938/190944.jpg"  width="150" height="150"    alt="Andaman Journey Tour" title="Andaman Journey 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>
													
								Points to be noted before trip starts :<br />
1. The above itinerary might be shuffled if any change in the weather conditions , natural calamity or any change in the cruise / ferry schedule to Havelock / Neil island.<br />
2. Cruise tickets booking will be as per the availability of seats in the cruise or ferry at the time of booking.<br />
3. We suggest our clients to not to take all your luggage while you travelling to Havelock island or Neil island you may keep your luggage in the respective hotel clock room, request you to take minimum luggage like 02 or 3pair of clothes and your personnel belongings.<br />
4. If you want to contact to your relative or friends then you to choose as per the networks available in Andaman ( BSNL & Airtel is the available network) 5. In Havelock and Neil island the no of vehicle is less , we request you to cooperate If any delay in Pick up and Drop<br />
<br />
Accommodation with BREAKFAST.<br />
All entry and Monument Charges.<br />
All transfers, sightseeing transfers by an a/c vehicle in Port Blair .<br />
Non a/c vehicle in Havelock & Neil island .<br />
Havelock & Neil Island to and fro transfers by a/c cruise @ Premium class or std class seats. ( Cruise Transfers are subject to availability of Tickets and weather conditions)<br />
Ross and north bay island by non ac motor boat..<br />
Guided tour to Cellular jail and Ross island .<br />
One ½ Litr Complimentary Mineral water bottle daily in Port Blair only at the time of Sightseeing.<br />
One session of Complimentary Honey moon cake @ Port Blair<br />
Meet and Assist At All arrival And Departure Points<br />
<br />
SUPPLEMENT Water Based Activity Package<br />
Scuba Diving = Inr 4500 / Head<br />
Under Water Sea Walking = Inr 4500 / Head<br />
ELEPHANT BEACH INR : 850 /head<br />
SNORKELLING TRIP BY A GLASS BOTTOM BOAT = INR 500 / HEAD<br />
CORAL VIEW TRIP BY AN SEMI SUBMARINE = INR 1800 / HEAD<br />
JET SKIE INR : 600 / HEAD<br />
GLASS BOTTOM RIDE INR : 600 / HEAD<br />
SPEED BOAT RIDE INR : 600 / HEAD<br />
BANANA RIDE INR : 600 / HEAD<br />
Honeymoon inclusions Optional Cost :<br />
INR : 4500 (one session of candle light dinner )<br />
INR: 2000 ( Flower bed decoration )<br />
INR: 3000 ( Cake & Wine<br />
<br />
CRUISE UPGRADATION : <br />
DELUXE CLASS : INR : 400 / HEAD/ ONE WAY <br />
ROYAL CLASS : INR : 1400 /HEAD/ ONE WAY <br />
AC VEHICLE IN HAVELOCK ISLAND : 2500 /DAY<br />
TOUR ESCORT FOR ACCOMPANY INR : 2000 / DAYAirfares/Ship Fare To Mainland<br />
Personal Expenses<br />
Room Service, Laundry, Telephone Charges<br />
Activity Charges, Scuba, Jet Ski, Snorkeling Etc<br />
Expenses Occurred Due To Bad Weather Or Ferry /Flight Cancellation<br />
Additional Tour Or Vehicle Usage								</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> Arrival
										</p>
										<p class="aj">You arrive to Port Blair, our escorts in the airport port receive you there and then after a short introduction will take you to your first booked hotel, after check-in and once you are done with you lunch & refreshment we will be heading towards our first visit to cellular jail (The Cellular Jail, also known as KALAPANI (derived from Sanskrit words ‘Kal’ which means Time or Death and ‘Pani’ which means Water), was a colonial prison in the Andaman and Nicobar Islands, India and it will be followed by Light and sound show : Timing of Light and Sound Show “ this show derives the story of the jail through light show.<br />
TIMING : Hindi show starts from 6:00 pm to 7:15 pm on Tuesday, Thursday, Saturday and Sunday. English show starts from 7:15 pm. Jail Museum opens from 9:00 am to 12:00 noon, and from 1:30 pm to 4:45 pm. Close on Mondays.</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> Ross and North bay island
										</p>
										<p class="aj">Today it will be a full day trip to Ross and North bay island as all the boats will leave @ 09:00 am from the jetty so we have to be informed their at least 40mins before to check in the boat , this destination of Ross island will be the one of the most liked sightseeing in Andaman where you will be briefing about the old buildings , chief commissioner office , bakery and bunkers once you finish this tour we will be heading to North bay island – this island know for its coral world where you will mesmerize the beauty of coral and also take water activities like “ Snorkeling , Scuba diving , Underwater sea walk , glass bottom ride etc on direct payment basis “.</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> Havelock island
										</p>
										<p class="aj">We start the day a bit early today as we need to embark for Havelock island ,all the cruise departs in between 0630 to 0830 hours we need to report at least 45 min earlier to finish the screening and Embarkation procedure Hence taking a Packed breakfast is the only convenient way . Once we board the cruise it will take 1 and ½ hours to reach Havelock Island , our local representative will receive you at the arrival area and assist you with you transfer to the hotel and then after post lunch will take you to Radha Nagar beach .One of the most beautiful and famous beach in the Island , experience the ocean and the Amazing sun set before returning back to the Resort .</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> Leisure day at your own for water activities
										</p>
										<p class="aj">Leisure day at your own for water activities</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> Sitapur beach
										</p>
										<p class="aj">Today once you finish up your breakfast we will be check out from the hotel as per the schedule timing will catch the cruise to reach our next destination “ Neil island “ it’s like the same Havelock island with some beautiful beaches ( Laxmanpur beach , sitapur beach , natural bridge , after this sightseeing we will back to hotel and take rest the day end here.</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> Chidiayatapu beach
										</p>
										<p class="aj">Morning as per the scheduled check-out we will check out hotel in Neil island, and take a morning cruise back to Port Blair, our local representatives will assist you with respective hotel transfers and then after a break will take you to head on to our “ Chidiayatapu beach “ a perfect way to cast your evening</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> Departure
										</p>
										<p class="aj">Departure</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>Transfers</li>
																			</ul>
								</div>
																<div class="data mt20px p15px">
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Exclusions</p>
								</div>
								
								<ul><li>Airfares/Ship Fare To Mainland</li><li>
Personal Expenses</li><li>
Room Service, Laundry, Telephone Charges</li><li>
Activity Charges, Scuba, Jet Ski, Snorkeling Etc</li><li>
Expenses Occurred Due To Bad Weather Or Ferry /Flight Cancellation</li><li>
Additional Tour Or Vehicle Usage</li></ul>
								</div>
																<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Rate Card</p>
								</div>
								
		<div class="dynamic-data-container">
    	<table class="bdrAll" width="100%" cellpadding="5">
			<tr>
				<td class="headHr p5px b">PACKAGE</td>
				<td class="headHr p5px b"></td>
				<td class="headHr p5px b">HOTEL USED</td>
				<td class="headHr p5px b"></td>
				<td class="headHr p5px b">COUPLE PRICING</td>
			</tr>
			<tr>
				<td class="data p5px"></td>
				<td class="data p5px">PORT BLAIR</td>
				<td class="data p5px">HAVELOCK ISLAND</td>
				<td class="data p5px">NEIL ISLAND</td>
				<td class="data p5px"></td>
			</tr>
			<tr>
				<td class="data p5px">STANDARD</td>
				<td class="data p5px">SHREESH HOTEL ( 03NIGHTS )</td>
				<td class="data p5px">RADHA KRISHANA RESORT ( 02NIGHTS )</td>
				<td class="data p5px">COCONHUTS BEACH RESORT ( 01 NIGHT )</td>
				<td class="data p5px">Rs. 35,500 +5% GST</td>
			</tr>
			<tr>
				<td class="data p5px">DELUXE</td>
				<td class="data p5px">HOTEL HAYWIZZ ( 03NIGHTS</td>
				<td class="data p5px">HOLIDAY INN BEACH RESORT ( 02NIGHTS )</td>
				<td class="data p5px">HOLIDAY INN BEACH RESORT ( 01 NIGHT )</td>
				<td class="data p5px">Rs. 42,700 + 5% GS</td>
			</tr>
			<tr>
				<td class="data p5px">PREMIUM</td>
				<td class="data p5px">PEERLESS SAROVAR PORTICO BEAH RESORT ( 03NIGHTS )</td>
				<td class="data p5px">HAVELOCK ISLAND BEACH RESORT ( 02NIGHTS )</td>
				<td class="data p5px">PEARL PARK BEACH RESORT ( 01 NIGHT )</td>
				<td class="data p5px">Rs. 68,700 + 5% GST</td>
			</tr>
		</table></div><br>								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p><strong>Note :</strong>

<ul>
	<li>These rates are valid from 01st Sept 2017 to 31st March 2018</li>
	<li>These rates are not valid from 15th Dec 2017 to 15th Jan 2018</li>
	<li>The above pricing is based on Breakfast only</li>
	<li>If any change in the service tax will be applicable same ..</li>
</ul>

<p><strong>Package Booking Process</strong>

<ul>
	<li>Destination Andaman will revert to your respective enquiry .</li>
	<li>Conversation to the respective enquiry with the Executive / Reservation staff will be always @ your services for any clarifications.</li>
	<li>This is once the agent / client confirms the package with any negotiation , first we will ask our agent/client to give some time once will confirm the availability with the hotels , cruise then will proceed with the package process.</li>
	<li>If we found any change in the package or change in the cruise schedule will intimate the same to the agent/guest to avoid further deviation.</li>
	<li>Once we confirm the details like &ndash; Package , itinerary , Cruise , hotels will send agent / client the final confirmation voucher along with payment policy, cancellation policy , weather policy. We request our agents / clients to check the entire voucher once you confirm the package with the given hotels reviews , payment policy , weather policy , terms and conditions , Do&rsquo;s and Don&rsquo;ts before you start your trip.</li>
</ul>

<p><strong>Payment Policy</strong>

<ul>
	<li>Once the booking got confirmed we request our all the agents / clients to pay 50% of the advance payment to reconfirm your booking &ndash; hotels , cruise , Entry &amp; Monument and other stuffs of your trip .</li>
	<li>We assure to hold your booking till the date of given cut off of the payment and if any release of the rooms /booking &ldquo; Destination Andaman &ldquo; will not be responsible ..</li>
	<li>All your payment must be cleared before your arrival ( 50% once booking confirmed and remaining 50% balance before a week of your arrival )</li>
	<li>All the bookings done in between 15th Dec to 15th Jan is high peak season so the booking amount has to be paid at the given cutoff date and an additional supplement charges for X-Mas and New Year will be applicable as per the category of hotel .</li>
	<li>Destination Andaman reserve the write to deny/withdraw any booking if we found unforeseen confrontation with the agent / Guest or any loss to the Company</li>
</ul>

<p><strong>Cancellation Policy</strong>

<ul>
	<li>Booking Done 30 days Prior to Arrival, and cancelled before 30 days of Arrival there will be no Cancellation Charges .</li>
	<li>Cancellation within 15-20 Days prior to the arrival date of the tour packages / Hotel Booking / Transportation : 50 % retention</li>
	<li>10 Days prior to the arrival date of the tour packages / Hotel Booking / Transportation or Non Utilization of the same : 100 % Retention..</li>
	<li>Amount of 10% of the total package will be charged if any cancellation due to weather / health issues from the agent side / client side. The hotels which we booked will not be changed , if any complaints from the guest to change the hotel or upgrade the rooms then he /she has to pay the supplement charges , we only try to change to other same category room.</li>
</ul>

<p><strong>Weather Policy</strong>

<ul>
	<li>We Destination Andaman Company want to describe few things which are we always falls under these Circumstances twice in a year with effect of Cyclone , so we always suggest to our clients to take a appropriate step while you choose your journey.</li>
	<li>If any sudden cancellation in the hotels will be charged the cancellation as per the hotel policy and each hotel has different cancellation policy .</li>
	<li>With regard to the transportation, entry and monument charges, and other supplement if any we will pay Complete Refund for the same. But for the hotel part until and unless the hotels pay back we will not refund the amount.</li>
	<li>we also want to tell our agent / clients if any change in the tour like (Ross and North bay island , Elephant beach , Water activities which all falls under sea level and which are subject to weather conditions , if these spots are not operational then we are looking your cooperation to plan the alternative tours if we face any such issues .</li>
	<li>Check in and Checkout Timing of the Hotel will be according to the timing of the respective Hotels.</li>
	<li>Company is not responsible for compensating any loss or additional cost incurred by the guest while taking the tour. Company is not responsible, nor liable for any damage, loss or injury caused to any passenger while taking the tour.</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="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.destinationandamantours.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Journey 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="117616"/>
						</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.destinationandamantours.com/packages-in-port-blair.htm" title="Packages in Port Blair">Port Blair</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.destinationandamantours.com/packages-in-havelock.htm" title="Packages in Havelock">Havelock</a> <b class="alpha50 bn small">(6)</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.destinationandamantours.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(9)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.destinationandamantours.com/water-sports-activity-holidays-catid.htm" title="Water Sports and Activity Packages">Water Sports and Activity</a> <b class="alpha50 bn small">(2)</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.destinationandamantours.com/tour-packages/andaman-package-6nights-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/507938/190939.jpg"  alt="Andaman Package 6Nights Tour" title="Andaman Package 6Nights Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.destinationandamantours.com/tour-packages/andaman-package-6nights-tour.htm" title="Andaman Package 6Nights Tour"><h3>Andaman Package 6nights 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_117611" id="pkg_117611" method="post" action="http://www.destinationandamantours.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.destinationandamantours.com/tour-packages/andaman-package-6nights-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Package 6Nights 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="117611"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.destinationandamantours.com/tour-packages/honeymoon-trip-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/507938/191844.jpg"  alt="Honeymoon Trip Tour" title="Honeymoon Trip Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.destinationandamantours.com/tour-packages/honeymoon-trip-tour.htm" title="Honeymoon Trip Tour"><h3>Honeymoon Trip 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> : 
								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_118290" id="pkg_118290" method="post" action="http://www.destinationandamantours.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.destinationandamantours.com/tour-packages/honeymoon-trip-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Honeymoon Trip 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="118290"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.destinationandamantours.com/tour-packages/adventure-trip-package.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/507938/191842.jpg"  alt="Adventure Trip Package" title="Adventure Trip Package"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.destinationandamantours.com/tour-packages/adventure-trip-package.htm" title="Adventure Trip Package"><h3>Adventure Trip 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> : 
								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_118288" id="pkg_118288" method="post" action="http://www.destinationandamantours.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.destinationandamantours.com/tour-packages/adventure-trip-package.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Adventure Trip 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="118288"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.destinationandamantours.com/tour-packages/andaman3-night-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/507938/190943.jpg"  alt="Andaman 3 Night Tour" title="Andaman 3 Night Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.destinationandamantours.com/tour-packages/andaman3-night-tour.htm" title="Andaman 3 Night Tour"><h3>Andaman 3 Night 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> : 
								5 Nights / 6 Days 
								</p>
																<p class="mt2px"><b class="alpha50">Destinations Covered</b> :  Port Blair</p>
															<div class="mt10px small">
							<form name="pkg_117615" id="pkg_117615" method="post" action="http://www.destinationandamantours.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.destinationandamantours.com/tour-packages/andaman3-night-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman 3 Night 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="117615"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.destinationandamantours.com/tour-packages/leisure-trip-for-03nights-and04-days-tour.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/507938/191845.jpg"  alt="Leisure Trip For 03Nights And 04 Days Tour" title="Leisure Trip For 03Nights And 04 Days Tour"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.destinationandamantours.com/tour-packages/leisure-trip-for-03nights-and04-days-tour.htm" title="Leisure Trip For 03Nights And 04 Days Tour"><h3>Leisure Trip For 03nights And 04 Days 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_118291" id="pkg_118291" method="post" action="http://www.destinationandamantours.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.destinationandamantours.com/tour-packages/leisure-trip-for-03nights-and04-days-tour.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Leisure Trip For 03Nights And 04 Days 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="118291"/>
							</form>
							</div>
							</div>
							</div>
							</div>
							</li>
												
							<li>
							<div class="bdr">
							<div class="cp" onclick="location.href='http://www.destinationandamantours.com/tour-packages/andaman-package-03nights.htm'">
															<div class="picBg ac vam lh0"><img src="https://ttw.wlimg.com/package-images/photo-big/dir_17/507938/190942.jpg"  alt="Andaman Package 03Nights" title="Andaman Package 03Nights"  class="bdr p1px"  /></div>
															
							<div class="headHr bdr0 p7px b ml2px mr2px mt1px large tp-head"><a href="http://www.destinationandamantours.com/tour-packages/andaman-package-03nights.htm" title="Andaman Package 03Nights"><h3>Andaman Package 03nights</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_117614" id="pkg_117614" method="post" action="http://www.destinationandamantours.com/enquiry-form-10002.htm">
							<a class="theme1 dib p5px10px ts0 b c5px lh15em" href="http://www.destinationandamantours.com/tour-packages/andaman-package-03nights.htm" title="View Details">View Details</a> 
							<input type="hidden" name="subject" value="Andaman Package 03Nights - 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="117614"/>
							</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:59:"Book Andaman Journey Tour - 6 Nights / 7 Days Tour Packages";i:2;s:126:"book andaman journey tour - 6 nights / 7 days tour packages, water sports and activity tour packages, port blair tour packages";i:3;s:183:"Book Andaman Journey Tour - 6 Nights / 7 Days tour packages from Destination Andaman Tours - Get attractive 6 Nights / 7 Days Water Sports and Activity  tour packages for  Port Blair.";i:4;s:2929:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair"        
		                 },
		      "description": "Points to be noted before trip starts :
1. The above itinerary might be shuffled if any change in the weather conditions , natural calamity or any change in the cruise / ferry schedule to Havelock / Neil island.
2. Cruise tickets booking will be as per the availability of seats in the cruise or ferry at the time of booking.
3. We suggest our clients to not to take all your luggage while you travelling to Havelock island or Neil island you may keep your luggage in the respective hotel clock room, request you to take minimum luggage like 02 or 3pair of clothes and your personnel belongings.
4. If you want to contact to your relative or friends then you to choose as per the networks available in Andaman ( BSNL & Airtel is the available network) 5. In Havelock and Neil island the no of vehicle is less , we request you to cooperate If any delay in Pick up and Drop

Accommodation with BREAKFAST.
All entry and Monument Charges.
All transfers, sightseeing transfers by an a/c vehicle in Port Blair .
Non a/c vehicle in Havelock & Neil island .
Havelock & Neil Island to and fro transfers by a/c cruise @ Premium class or std class seats. ( Cruise Transfers are subject to availability of Tickets and weather conditions)
Ross and north bay island by non ac motor boat..
Guided tour to Cellular jail and Ross island .
One ½ Litr Complimentary Mineral water bottle daily in Port Blair only at the time of Sightseeing.
One session of Complimentary Honey moon cake @ Port Blair
Meet and Assist At All arrival And Departure Points

SUPPLEMENT Water Based Activity Package
Scuba Diving = Inr 4500 / Head
Under Water Sea Walking = Inr 4500 / Head
ELEPHANT BEACH INR : 850 /head
SNORKELLING TRIP BY A GLASS BOTTOM BOAT = INR 500 / HEAD
CORAL VIEW TRIP BY AN SEMI SUBMARINE = INR 1800 / HEAD
JET SKIE INR : 600 / HEAD
GLASS BOTTOM RIDE INR : 600 / HEAD
SPEED BOAT RIDE INR : 600 / HEAD
BANANA RIDE INR : 600 / HEAD
Honeymoon inclusions Optional Cost :
INR : 4500 (one session of candle light dinner )
INR: 2000 ( Flower bed decoration )
INR: 3000 ( Cake & Wine

CRUISE UPGRADATION : 
DELUXE CLASS : INR : 400 / HEAD/ ONE WAY 
ROYAL CLASS : INR : 1400 /HEAD/ ONE WAY 
AC VEHICLE IN HAVELOCK ISLAND : 2500 /DAY
TOUR ESCORT FOR ACCOMPANY INR : 2000 / DAYAirfares/Ship Fare To Mainland
Personal Expenses
Room Service, Laundry, Telephone Charges
Activity Charges, Scuba, Jet Ski, Snorkeling Etc
Expenses Occurred Due To Bad Weather Or Ferry /Flight Cancellation
Additional Tour Or Vehicle Usage",
		      "name": "Andaman Journey Tour",
		      "telephone": "+91-9474250093"
		    }
		    </script>
			";i:5;N;}