	var map, marker;
	var icon = new GIcon();

	icon.image = mapicon;
	icon.iconSize = new GSize(32, 38);
	icon.iconAnchor = new GPoint(5, 20);
	icon.infoWindowAnchor = new GPoint(5, 1);

	window.onload = function() {
		map = new GMap2(document.getElementById("gmap"));
		map.addControl(new GScaleControl());
//		map.addControl(new GLargeMapControl());
		map.addControl(new GMapTypeControl());


		pointObj = new GLatLng(center_lat, center_lon);
		map.setCenter(pointObj, center_zoom_level,G_NORMAL_MAP);

		var infowindowStatus = 0;

		GEvent.addListener(map, 'infowindowopen', function() {
			infowindowStatus = 1;
		});
		GEvent.addListener(map, 'infowindowclose', function() {
			if(map.getInfoWindow().isHidden() == true) {
				infowindowStatus = 2;
				map.returnToSavedPosition();
			}

		});

		GEvent.addListener(map, 'moveend', function() {
			if (map.getInfoWindow().isHidden() == true) {
				if (infowindowStatus == 0) {
					getXmlData();
					map.savePosition();
				} else if (infowindowStatus == 1) {
					getXmlData();
					map.savePosition();
				}
			} 
			if (infowindowStatus == 2) {
				infowindowStatus = 1;
			}

		});

		getXmlData();
	}

	function getXmlData() {
		map.clearOverlays();
		var center_lat = (map.getCenter()).lat();
		var center_lon = (map.getCenter()).lng();

		httpObj = GXmlHttp.create();

		var zoom_level = map.getZoom();


		if(zoom_level >= 13) {
			httpObj.open("get", ""+sitedir+"xml/?Latitude="+center_lat+"&Longitude="+center_lon);
		} else {
			httpObj.open("get", ""+sitedir+"xml/");	
//			httpObj.open("get", ""+sitedir+"xml/?Latitude="+center_lat+"&Longitude="+center_lon);
		}

		httpObj.onreadystatechange = function() {
			if((httpObj.readyState == 4) && (httpObj.status == 200))
				getDataList();
		}
		httpObj.send(null);

	}

	function getDataList() {

		var zoom_level = map.getZoom();

		var xmlData = httpObj.responseXML;
		var Item = xmlData.getElementsByTagName("Item");
		for (var i=0; i<Item.length; i++) {
			RestaurantName = Item[i].getElementsByTagName("RestaurantName")[0].firstChild.nodeValue;
			TabelogUrl     = Item[i].getElementsByTagName("TabelogUrl")[0].firstChild.nodeValue;
            TabelogUrlAry = TabelogUrl.split("/");

            DtlURL = sitedir+'/detail/'+TabelogUrlAry[6]+'/'
			if(Item[i].getElementsByTagName("TotalScore")[0].firstChild) {
				TotalScore     = Item[i].getElementsByTagName("TotalScore")[0].firstChild.nodeValue;
			}

//			TasteScore     = Item[i].getElementsByTagName("TasteScore")[0].firstChild.nodeValue;
//			ServiceScore   = Item[i].getElementsByTagName("ServiceScore")[0].firstChild.nodeValue;
//			MoodScore      = Item[i].getElementsByTagName("MoodScore")[0].firstChild.nodeValue;
//			Situation      = Item[i].getElementsByTagName("Situation")[0].firstChild.nodeValue;
//			DinnerPrice    = Item[i].getElementsByTagName("DinnerPrice")[0].firstChild.nodeValue;
//			LunchPrice     = Item[i].getElementsByTagName("LunchPrice")[0].firstChild.nodeValue;
			Category       = Item[i].getElementsByTagName("Category")[0].firstChild.nodeValue;


			Address       = Item[i].getElementsByTagName("Address")[0].firstChild.nodeValue;
			Tel        = Item[i].getElementsByTagName("Tel")[0].firstChild.nodeValue;
//			BusinessHours       = Item[i].getElementsByTagName("BusinessHours")[0].firstChild.nodeValue;
//			Holiday        = Item[i].getElementsByTagName("Holiday")[0].firstChild.nodeValue;
			Latitude       = Item[i].getElementsByTagName("Latitude")[0].firstChild.nodeValue;
			Longitude        = Item[i].getElementsByTagName("Longitude")[0].firstChild.nodeValue;


			mes1 ="<div class='rstname'><a href='/"+DtlURL+"'>"+ RestaurantName +"</a></div>";
			mes1+="<div class='genres'>"+Address+" / "+Category+"</div>";
			var star;


			if(TotalScore == 5.0) {
			    star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'>";
			} else if (TotalScore < 5.0 && TotalScore >=4.5) {
 			   star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_05.gif'>";
			} else if (TotalScore < 4.5 && TotalScore >=4.0) {
			    star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else if (TotalScore < 4.0 && TotalScore >=3.5) {
			    star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_05.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else if (TotalScore < 3.5 && TotalScore >=3.0) {
			    star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else if (TotalScore < 3.0 && TotalScore >=2.5) {
			    star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_05.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else if (TotalScore < 2.5 && TotalScore >=2.0) {
			    star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else if (TotalScore < 2.0 && TotalScore >=1.5) {
			    star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_05.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else if (TotalScore < 1.5 && TotalScore >=1.0) {
			    star = "<img src='/images/"+sitedir+"/star_10.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else if (TotalScore < 1.0 && TotalScore >=0.5) {
			    star = "<img src='/images/"+sitedir+"/star_05.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else if (TotalScore < 0.5 && TotalScore >=0) {
			    star = "<img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'><img src='/images/"+sitedir+"/star_00.gif'>";
			} else  {
　　　　　　　　star = "";
			}


  			mes1+="<div class='rating'>"+star+"<span>"+TotalScore+"</span></div>";
			addMarker(map,Latitude,Longitude,mes1);
		}
	}
	function addMarker(map, lat, lon, ahtml) {
		var point = new GPoint(lon, lat);
		var marker = new GMarker(point,icon);
		GEvent.addListener(marker, "click", function() {
			marker.openInfoWindowHtml(ahtml);
		});
		map.addOverlay(marker);
	}
