a:6:{i:0;s:30350:"				<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>Exotic Andaman Group Vacation Tour</h1></div>
					<p class="breadcrumb ar uu small"><a href="http://www.travelfununlimited.com/" title="Home">Home</a>
					
											<b class="ffv p2px">&rsaquo;</b><a href="http://www.travelfununlimited.com/tour-packages.htm" title="Tour Packages">Tour Packages</a>  			
											
					<b class="ffv p2px">&rsaquo;</b>Exotic Andaman Group Vacation 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.travelfununlimited.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Exotic Andaman Group Vacation 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="28017"/>
						</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_11/329241/54896.jpg"><img src="https://ttw.wlimg.com/package-images/photo-small/dir_11/329241/54896.jpg"  height="150"  width="150"    alt="Exotic Andaman Group Vacation Tour" title="Exotic Andaman Group Vacation Tour" /></a></p></div></li>
															</ul>
						</div>
						</td>
											</tr>
					</table>
					</div>
													<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 Airport - Hotel - Sightseeing
										</p>
										<p class="aj">Meet & Greet on arrival at Port Blair Airport & transfer TO Hotel. Check-in to hotel. Afternoon visit for Corbyns Cove Beach which is 9 kms from Port Blair - It’s a coconut palm fringed beach, ideal for swimming, sun-basking & bathing. Then proceed for Harbour Cruise (Viper Island) in a steamer, covering seven ports, and you can see one of the big floating dry dock, the island naval Harbour and mainland going vessel harbor. Evening is free for leisure. Overnight stay at Port Blair.</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> North Bay (Coral Island) & Ross Island Sightseeing
										</p>
										<p class="aj">After breakfast, full-day excursion to Coral Island (North Bay) to see coral reefs, varieties of beautiful ornamental fish and other marine life. This is an ideal place for snorkeling as this sandy beach coupled with clear water creates a breath-taking spectacle. Please carry your lunch pack, drinking water & changing dress. After that proceed for Ross Island, the former residential and administrative island of the British during their rule of South East Asia, was nick named the Paris of the East. This island is an ideal destination for nature walk amidst sylvan surroundings with deers, peacocks, exotic birds, etc. This island was completely destroyed in an earthquake, now in ruins. Evening is free for leisure. Overnight stay at Port Blair.</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 - Neil Island :(2 hrs)
										</p>
										<p class="aj">A marvelous Island with plenty of marine life, Neil Island in Andaman is an ideal location for eco-tourism. Neil Island is triangularly shaped with lust green surroundings of paddy fields, banana plantations and tropical trees. Many natural beaches and attraction like Howra Bridge, a natural bridge formation makes this Island a much sought after picnic spot. The sandy beaches at Sitpur, Bharatpur and Lakshmanpur are very attractive for spending holidays. Tourists who like to spend vacations in an eco-friendly locale will find this Island ideal. The breathtaking view of the sea and <br />
the lush greenery really rejuvenating and enjoyable for enthusiastic travelers. Evening is free for leisure. Overnight stay at Neil Island.</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 Island - Havelock Island :(2 hrs)
										</p>
										<p class="aj">This morning Check-out from the hotel & transfer to the Neil Jetty to take a ferry to Havelock Island. On arrival check-in TO HOTEL. Enjoy the afternoon at the World Famous and Asia’s best beach "Radhanagar Beach" (Beach number 7). Evening is free for leisure. Overnight stay at Havelock.</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> Excursion to Elephant Beach
										</p>
										<p class="aj">After breakfast, proceed to Elephant Beach for adventurous snorkelling experience. Elephant Beach is located near the eastern coast of Havelock Island. It is approachable by Dunghi (small wooden carved fishing motor boat). Snorkelling is leisure water sports in which a person swims on the surface of water wearing the face mask and view in the underwater corals." Evening is free for leisure. Overnight stay at Havelock.</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> Havelock Island - Port Blair :(57 kms / 2 hrs)
										</p>
										<p class="aj">After breakfast check out from the hotel & transfer to the Havelock Jetty to take a ferry to Port Blair. On arrival check-in TO HOTEL. Evening is free for leisure. Overnight stay at Port Blair.</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> Hotel - Port Blair Airport
										</p>
										<p class="aj">After breakfast check out from HOTEL and transfer to Port Blair Airport for your onward journey.</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>
																			</ul>
								</div>
									
								<div class="data mt20px p15px">            
								<div class="mb7px"> 
								<p class="b xlarge mb10px dib">Terms &amp; Conditions</p>
								</div>				
								<p style="line-height: 20px">Terms &amp; Conditions for Inbound &amp; Domestic Tours<br />
<strong>Booking:</strong><br />
On confirmation of booking your contract is with M/s TRAVEL FUN UNLIMITED A contract exists between us when we confirm your tour/travel services and have received the deposit amount from your end. .<br />
<strong>Payment:</strong><br />
For the services contracted, a minimum deposit of 25% of the total cost is to be paid by you to M/s TRAVEL FUN UNLIMITED the deposit is required to hold the booking on confirmed basis.<br />
<strong>Balance Payment:</strong><br />
Balance payment is to be made 15 days prior to the date of start of services. Any booking made within 15 working days of the date of services would be considered to be a late booking and for same the full and final payment is required to be made at the time of booking itself.<br />
Note: Apart from above, in case of bookings for special train journeys, hotel or RESORT BOOKINGS during the peak season (X-Mas, New Year, Pushkar Fair, Diwali etc) full payment is required to be made at the time of booking itself.

<p style="line-height: 20px"><strong>Mode of Payment:</strong><br />
For Domestic and International clients<br />
Domestic clients can make payment using any of the following methods:-<br />
By Cash / Cheque / Demand Draft.<br />
By Bank Transfer (RTGS &amp; NEFT).<br />
Cash Deposit<br />
International clients can make payment using any of the following methods:-<br />
By Bank / Telex Transfer to our Bank A/c.

<p style="line-height: 20px"><strong>Note:</strong><br />
All payments should be free and clear of any withholding tax and deduction.<br />
Bank charges, if any, for remittance (by remitting bank or by intermediary bank) would be strictly borne by payer.<br />
Payments Procedure<br />
All payments are to be made in name of M/s Indian Holiday Pvt. Ltd

<p style="line-height: 20px"><br />
Policy Regarding Cancellation / NO SHOW / EARLY DEPARTURE:<br />
In case of cancellation of tour/travel services due to any avoidable/unavoidable reason/s we must be informed in writing. Cancellation charges would be effective from the date we receive letter in writing and cancellation charges would be as follows:<br />
60 days &amp; prior to arrival - 10% of the tour/service cost.<br />
59 days to 30 days prior to arrival - 20% of the tour/service cost.<br />
29 days to 15 days prior to arrival - 25% of the tour/service cost.<br />
14 days to 08 days prior to arrival - 50% of the tour/service cost.<br />
07 days &amp; less, prior to arrival or no show - NO REFUND.<br />
Please note -<br />
1. Irrespective of above mentioned cancellations slabs - incase of cancellation of tour / travel services after the booking is made with us - a minimum 10% service charges would be applicable.<br />
2. In case you cancel the trip after commencement refund would be restricted to a limited amount that too would depend on the amount that we would be able to recover from the hoteliers we patronize. For unused HOTEL ACCOMMODATION, chartered transportation and missed meals etc. we do not bear any responsibility to refund.<br />
3. In case of special train journey (like Palace on Wheels, Royal Rajasthan on Wheels, Deccan Odyssey, Golden Chariot, Indian Maharaja &amp; Maharajas Express) - a separate cancellation policy is applicable (which would be advised as and when required).<br />
4. Please note that if booking for following period is/are cancelled, due to whatsoever reason, no refund would be made for said cancellation.<br />
High Peak Season bookings (from 20th Dec to 15th Jan).<br />
Festival Period Bookings (Festivals like -Diwali, Duseera, Holi, Pushkar fair etc).<br />
Long Weekends Bookings.<br />
<strong>Refund</strong><br />
In regard to refund of unused / unutilized services (which are paid for and cancelled in advance) the refund amount would be worked out on the basis of cancellation policy as described above and the MONEY would be accordingly refunded to the person who has made the payment to us. Please note that the refund process may take 2 - 4 weeks due to banking procedures. If the refund is made to the credit card account OR to Bank account, the bank charges would be debited from the refund amount.<br />
Check-In Timings: 1200 - 1500 Hours<br />
Early arrival is subject to availability. For guaranteed early check-in, reservation needs to be made starting from the previous night.<br />
Check-Out Timings: 1000 - 1200 Hours<br />
Late check-outs are available on request and subject to availability / Payment<br />
Extra Usage of Vehicle:<br />
Please note that the cost of extra usage of vehicle (cars / coaches with the driver) is not included in the services and hence extra usage of Vehicle after transfer or after sightseeing is not allowed until unless it is mentioned in the detailed itinerary / services.<br />
Our liabilities &amp; limitations:<br />
Please note that after the finalization of the tour/service cost, if there are any hikes in entrance fees of monuments/museums, taxes, fuel cost or guide charges by the Govt. of India, the same would be charged as extra.<br />
TRAVEL FUN UNLIMITED   rates are based on the prevailing rates as negotiated by us with the HOTELS, airlines etc. Hotels and Airlines retain the right to modify the rates without notice. In case of such change - the rates quoted by us before modification can be changed by us according to the modifications by hotels or airlines.

<p style="line-height: 20px">TRAVEL FUN UNLIMITED and its associates acts only in the capacity of an agent for the hotels, airlines, transporters, railways &amp; the contractors providing other services &amp; all exchange orders, receipts, contracts &amp; tickets issued by us - are issued subject to terms &amp; conditions under which these services are provided by them. The tickets, coupons or passage contract in use by carrier / HOTEL or other contractors rendering services shall constitute the sole contract between the Clients and such contractor.

<p style="line-height: 20px">TRAVEL FUN UNLIMITED - itineraries are sample itineraries, intended to give you a general idea of the likely trip schedule. Numerous factors such as weather, road conditions, the physical ability of the participants etc. may dictate itinerary changes either before the tour or while on the trail. TRAVEL FUN UNLIMITED   reserves the right to amend any aspect of the itinerary including transportation and accommodation without notice in the interest of the trip, participants&#39; safety, comfort and general well being without making any rebate, allowance or refund and extra cost, if any, would be payable by the client.

<p style="line-height: 20px">TRAVEL FUN UNLIMITED shall not be responsible for any delay or change in programmed or expenses incurred or special / consequential loss, injury and damage - directly or indirectly - due to natural hazards, flight cancellations, accident, breakdown of machinery or equipments, breakdown of transport, weather, sickness, landslides, political closures, acts of God, perils incident to the sea, floods, fire, acts of Government or any other authorities, wars, civil disturbances, riots, theft, pilferage, epidemics, quarantines, medical or custom department regulations, defaults, or any other causes beyond our control or any untoward incidents or any such causes whatsoever including any liability or extra expenses sustained by the Clients. Further, the Clients shall be liable for the liability or extra expenses incurred by him / her as a result of the forgoing causes.

<p style="line-height: 20px">TRAVEL FUN UNLIMITED shall not be responsible and shall not accept any liability towards the Clients or his/her legal representative for any loss of property or damages resulting from death or injuries including loss of services which the Clients may sustain on account of act, negligence or default by any transportation Company, hotel agents or any other body of persons, its agents or service providers providing such services or facilities or arising out of or while engaged in any tour, means of transportation or other services, whether due to ownership, maintenance , use, operation or control of any automobile, bicycle, boat, motor, or other vehicle in common carrier or otherwise and whether due to its or there negligence or otherwise or regardless of how caused. Clients using sporting equipment, bicycles, sailing boats, scuba diving gear, hired or supplied by HOTELS or rental bodies shall do so at their own risk.

<p style="line-height: 20px">TRAVEL FUN UNLIMITED do not have any insurance policy covering the expenses for accident, sickness, loss due to theft, or any other reasons. Visitors are advised to seek such insurance arrangements in their home country. All baggage &amp; personal property/s at all times are at the client&#39;s risk.

<p style="line-height: 20px">TRAVEL FUN UNLIMITED reserves the right to cancel any services in case it deems that the tour, trip or passage is impracticable for any reason or should circumstances warrant such action, upon refunding the value thereof and the Client shall not have any other or further claim against the company by any reason thereof.

<p style="line-height: 20px">TRAVEL FUN UNLIMITED reserves the right to refuse to carry out its contract with any person whom it may consider to be undesirable in its absolute discretion and it shall not be required to show any reason for doing so.<br />
All disputes arising in connection with this Agreement shall be referred to an Arbitrator to be appointed by TRAVEL FUN UNLIMITED    All such disputes shall be subject to the jurisdiction of Delhi (India) Courts only. The laws of India shall govern the validity, interpretation, construction, performance and enforcement of these terms and conditions.								</div>
														
						<div class="ac mb10px">
						<form name="frmpackagedetail" id="frmpackagedetail" method="post" action="http://www.travelfununlimited.com/enquiry-form-10002.htm">
						<input type="hidden" name="subject" value="Exotic Andaman Group Vacation 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="28017"/>
						</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.travelfununlimited.com/packages-in-jaipur.htm" title="Packages in Jaipur">Jaipur</a> <b class="alpha50 bn small">(12)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-new-delhi.htm" title="Packages in New Delhi">New Delhi</a> <b class="alpha50 bn small">(11)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-jaisalmer.htm" title="Packages in Jaisalmer">Jaisalmer</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-pushkar.htm" title="Packages in Pushkar">Pushkar</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-jodhpur.htm" title="Packages in Jodhpur">Jodhpur</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-bikaner.htm" title="Packages in Bikaner">Bikaner</a> <b class="alpha50 bn small">(8)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-udaipur.htm" title="Packages in Udaipur">Udaipur</a> <b class="alpha50 bn small">(7)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-agra.htm" title="Packages in Agra">Agra</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-alleppey.htm" title="Packages in Alleppey">Alleppey</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/packages-in-kochi.htm" title="Packages in Kochi">Kochi</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-srinagar.htm" title="Packages in Srinagar">Srinagar</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-munnar.htm" title="Packages in Munnar">Munnar</a> <b class="alpha50 bn small">(5)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-thekkady.htm" title="Packages in Thekkady">Thekkady</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-darjeeling.htm" title="Packages in Darjeeling">Darjeeling</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-gulmarg.htm" title="Packages in Gulmarg">Gulmarg</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-sawai-madhopur.htm" title="Packages in Sawai Madhopur">Sawai Madhopur</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-chennai.htm" title="Packages in Chennai">Chennai</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-varanasi.htm" title="Packages in Varanasi">Varanasi</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-pahalgam.htm" title="Packages in Pahalgam">Pahalgam</a> <b class="alpha50 bn small">(3)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-ranthambore.htm" title="Packages in Ranthambore">Ranthambore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-bodh-gaya.htm" title="Packages in Bodhgaya">Bodhgaya</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-dwarka.htm" title="Packages in Dwarka">Dwarka</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-manali.htm" title="Packages in Manali">Manali</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-sravasti.htm" title="Packages in Sravasti">Sravasti</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-sonamarg.htm" title="Packages in Sonamarg">Sonamarg</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-kodagu.htm" title="Packages in Kodagu">Kodagu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-kodaikanal.htm" title="Packages in Kodaikanal">Kodaikanal</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-bangalore.htm" title="Packages in Bangalore">Bangalore</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-jammu.htm" title="Packages in Jammu">Jammu</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px spanlist dn"><a class="dif" href="http://www.travelfununlimited.com/packages-in-singapore-city.htm" title="Packages in Singapore">Singapore</a> <b class="alpha50 bn small">(2)</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 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.travelfununlimited.com/lakes-rivers-holidays-catid.htm" title="Lakes & Rivers Packages">Lakes & Rivers</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/valley-holidays-catid.htm" title="Valley Packages">Valley</a> <b class="alpha50 bn small">(15)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/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.travelfununlimited.com/heritage-holidays-catid.htm" title="Heritage Packages">Heritage</a> <b class="alpha50 bn small">(10)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/religious-pilgrimage-holidays-catid.htm" title="Religious & Pilgrimage Packages">Religious & Pilgrimage</a> <b class="alpha50 bn small">(6)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/beach-islands-holidays-catid.htm" title="Beach and Islands Packages">Beach and Islands</a> <b class="alpha50 bn small">(4)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/wildlife-nature-holidays-catid.htm" title="Wildlife and Nature Packages">Wildlife and Nature</a> <b class="alpha50 bn small">(2)</b></span>
										<span class="dib p5px10px c2px headVr mr7px mb7px "><a class="dif" href="http://www.travelfununlimited.com/hill-station-holidays-catid.htm" title="Hill Station Packages">Hill Station</a> <b class="alpha50 bn small">(5)</b></span>
						
				</div>
				</div>
				</div>
				</div>
				
				
				</div>
				</div>
				
								
				</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:73:"Book Exotic Andaman Group Vacation Tour - 6 Nights / 7 Days Tour Packages";i:2;s:132:"book exotic andaman group vacation tour - 6 nights / 7 days tour packages, beach and islands tour packages, port blair tour packages";i:3;s:169:"Travel Fun Unlimited offers Exotic Andaman Group Vacation Tour - 6 Nights / 7 Days tour package, budget Beach and Islands tour packages for Port Blair at exciting price.";i:4;s:416:"
			<script type="application/ld+json">
		    {
		      "@context": "https://schema.org",
		      "@type": "TouristAttraction",
		      "address": {
		        "@type": "PostalAddress",
		         "addressRegion": "Port Blair"        
		                 },
		      "description": "",
		      "name": "Exotic Andaman Group Vacation Tour",
		      "telephone": "+91-9717936411"
		    }
		    </script>
			";i:5;N;}