a:6:{i:0;s:13531:"				<div class="h1"><h1>Andaman Unforgettable Tour</h1></div>
				<p class="breadcrumb ar uu small"><a href="http://www.andamandiyatours.in/" title="Home">Home</a> 
				
									<b class="ffv p2px">&rsaquo;</b><a href="http://www.andamandiyatours.in/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
									
				<b class="ffv p2px">&rsaquo;</b>Andaman Unforgettable Tour</p>
				<br />
				
								
						<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">
					<table class="w100 packageForm">
											<tr>
						<td class="b p5px w125px vat">Duration </td>
						<td class="p5px pl0px vat">
						9 Nights / 10 Days 
						</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Destination Covered </td>
						<td class="p5px pl0px vat">Port Blair</td>
						</tr>
												<tr>
						<td class="b p5px w125px vat">Price (Starting From) </td>
						<td class="p5px pl0px vat"><span class="dif">On Request</span></td>
						</tr>
												<tr>
						<td></td>
						<td>
						<p>
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.andamandiyatours.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Unforgettable 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="45932"/>
						</form>
						</p>
						</td>
						</tr>
											</table>
					</td>
											<td class="p10px vat imgWidth150 w150px lh0">
						<div class="demo-wrap">
						<ul class="lsn m0px p0px" >
															<li class="bdr bw3px c5px p1px"><div class="dt"><p class="ac vam dtc w150px h150px"><a rel="gall" data-fancybox="showZoomImage" href="https://ttw.wlimg.com/package-images/photo-big/dir_13/387716/90597.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_13/387716/90597.jpg"  width="150" height="150"    alt="Andaman Unforgettable Tour" title="Andaman Unforgettable Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
					<br />
					
					Air/Ship fare to & from Port Blair. <br />
Personal Expenses like Telephone, Fax, Internet, Laundry, etc.<br />
Camera Tickets at various places of Sightseeing/tour.<br />
Ayuraveda Body Massage.<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> Port Blair- Jail Light & Sound-Carbines cove Beach
								</p>
								<p class="aj">Arrival at Port Blair in the afternoon by flight, on arrival at Airport our Guest Relation Executive will meet and greet and transfer to hotel. Afternoon Start a breathtaking trip to carbines cove Beach, One of the most picturesque, coconut palm fringed beach,7 kms away from Port Blair town In the evening, attend the enthralling Sound and Light Show at Cellular Jail- where the heroic saga of the Indian freedom struggle is brought alive. Overnight stay at Port Blair.</p>					
									<p><b>Meals : </b> Rooms + Breakfast</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> Havelock-Radhanagar Beach
								</p>
								<p class="aj">Morning (7:00 am) after breakfast departure by inter-island ferry to Havelock Island (57 kms by sea from Port Blair) + Visit to Radhanagar Beach at Havelock Island (Best Beach in Asia by Time Magazine-2007- and also Declared countries Best beach Announced by Tourism Dept of India), Stay overnight amongst sandy beach and lush green forest in a comfortable beach resort.</p>					
									<p><b>Meals : </b> Rooms + Breakfast</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- Elephanta Beach
								</p>
								<p class="aj">Morning for leisure  Visit to-Elephant Beach Embark on the most memorable snorkeling trip, just 40 min by Boat this beach offers snorkelers calm blue shallow waters and is the perfect spot for beginner snorkelers. The boat goes right up to the beach and it’s so easy to slip on your gear and just start snorkeling. It’s also a great place to just spend the time on the beach and relaxing. The beach is very scenic with fallen trees and white sand giving the photographer some interesting shots. The reef here starts very close to shore at a depth of about 1 meter. The large reef is mostly made up of hard coral and has plenty of marine life. and Stay overnight amongst sandy beach and lush green forest in a comfortable beach resort. </p>					
									<p><b>Meals : </b> Rooms + Breakfast</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> Neil Beach Tour
								</p>
								<p class="aj">Morning (10 am) after breakfast departure by inter island ferry to Neil Island, on arrival our Guest Relation Executive will meet and greet and transfer to Resort. Evening visit to the Sitapur Beach + Laxman Pur Beach + Bharat Pur Beach. Stay overnight amongst sandy beach and lush green forest in a comfortable beach resort. </p>					
									<p><b>Meals : </b> Rooms + Breakfast</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> Port Blair-City Tour
								</p>
								<p class="aj">Morning  after breakfast returns from Neil Island to Port Blair. After reached make a visit of Chatham Saw Mill, one of the   oldest and largest sawmill in the world embark on a sightseeing tour in and around the city like. Fisheries Museum (Aquarium) - exhibits species of marine life peculiar to the islands, Naval Marine Museum (Samudrika)- gives a good insight of the history, shells, Corals marine life, geography and archaeology of these islands. Over night in Port Blair.</p>					
									<p><b>Meals : </b> Rooms + Breakfast</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> Baratang Island Tour
								</p>
								<p class="aj">Guests leave very early in the morning for BARATANG ISLAND which is situated between South Andaman & Middle Andaman around 100 kms from Port Blair by road. Guests undertake MANGROVE SAFARI which takes them along a beautiful trail through mangrove forests and creeks and culminates into a LIME STONE CAVE surrounded by beautiful mangrove creeks. After lunch Guests return back to Port Blair for overnight stay in their respective Hotel at Port Blair.</p>					
									<p><b>Meals : </b> Rooms + Breakfast</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> Ross Island & North Bay Island
								</p>
								<p class="aj">ROSS ISLAND, the erstwhile capital of Port Blair during the British regime. The island presently houses the ruins of old buildings like Chief Commissioner’s House, Government House, Church, Bakery, Press, Swimming Pool, etc, all in dilapidated condition. After seeing Ross Island the same boat takes Guests for a trip to NORTH BAY ISLAND (Coral Island) - an island just 1 km away from Port Blair habituating coral reefs, exotic varieties of beautiful ornamental fishes and other marine lives. Guests can do SCUBA DIVING and then return back to hotel for overnight stay at their respective Hotel/Resort at Port Blair.</p>					
									<p><b>Meals : </b> Rooms + Breakfast</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 8:</b> Port Blair-Mount Harriet-Chidiya- Tappu Beach
								</p>
								<p class="aj">Morning After Breakfast visit to mount Harriet<br />
Mount Harriet is located 55 km by road from Port Blair and 15 km by ferry. Mount Harriet is a 365 meters high peak in the South Andaman’s and is the highest in the area. . After lunch visit to Chidiya Tappu Beach Sunset point which is around 30 kms from Port Blair enjoy till evening .Over night at Port Blair.</p>					
									<p><b>Meals : </b> Rooms + Breakfast</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 9:</b> Jolly Buoy Island Tour
								</p>
								<p class="aj">After breakfast Guests leave for Wandoor jetty with their packed lunch. Around 30 kms by road from Port Blair, Wandoor jetty is where Guests take a ferry ride to JOLLY BUOY ISLAND. This Island is one of the most beautiful island among the 15 small and large Islands of MAHATMA GANDHI MARINE NATIONAL PARK. Guests see corals reefs, exotic varieties of beautiful ornamental fishes and other marine lives through Glass-bottom boat ride & Snorkeling. After the visit Guests retire to their respective Hotel/Resort at Port Blair for overnight stay.</p>					
									<p><b>Meals : </b> Rooms + Breakfast</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 10:</b> Departure
								</p>
								<p class="aj">After breakfast departure.. transfer to Port Blair airport for your onward journey.</p>					
									<p><b>Meals : </b> Rooms + Breakfast</p>
								</td>
								</tr>
								</table>					
								</div>						<br />
												 <p class="headHr p7px b pl10px xlarge">Tour Detail</p>
			             <div class="data p15px aj">
										
						<p class="large b mb5px dif">Inclusions :</p>
						<ul>
															<li>Hotel</li>
																		<li>Sightseeing</li>
																		<li>Transfers</li>
																		<li>Entry Tickets</li>
															</ul>
						<br />
												<p class="large b mb5px dif">Exclusions :</p> <ul><li>Air/Ship fare to & from Port Blair. </li><li>
Personal Expenses like Telephone, Fax, Internet, Laundry, etc.</li><li>
Camera Tickets at various places of Sightseeing/tour.</li><li>
Ayuraveda Body Massage.</li></ul><br />
											
						<p class="large b mb5px dif">Terms &amp; Conditions :</p>* Some Advance Percentage of total booking amount * Airfare/Transport fare to be paid full at one time in advance.~^#^~* 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. ~^#^~												</div>
												
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.andamandiyatours.in/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Andaman Unforgettable 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="45932"/>
						</form>
						</div>
						
						";i:1;s:66:"Book Andaman Unforgettable Tour - 9 Nights / 10 Days Tour Packages";i:2;s:116:"book andaman unforgettable tour - 9 nights / 10 days tour packages, romantic tour packages, port blair tour packages";i:3;s:177:"Book Andaman Unforgettable Tour - 9 Nights / 10 Days tour packages from Andaman Diya Tours & Travels - Get attractive 9 Nights / 10 Days Romantic  tour packages for  Port Blair.";i:4;s:588:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair"        
		                 },
		      "description": "Air/Ship fare to & from Port Blair. 
Personal Expenses like Telephone, Fax, Internet, Laundry, etc.
Camera Tickets at various places of Sightseeing/tour.
Ayuraveda Body Massage.",
		      "name": "Andaman Unforgettable Tour",
		      "telephone": "+91-9933262165"
		    }
		    </script>
			";i:5;N;}