function writeCalendar()
{
	cldr = "";
	day = new Date();
	thisday = day.getDate();  //今日の日付 - 背景色を変更するため
	day.setDate(1);       //今月最初の日にセット
	month = day.getMonth() + 1;

	year = day.getYear();
	if(year < 2000) year += 1900;
	numdays = new Array(31,28,31,30,31,30,31,31,30,31,30,31);

	// うるう年
	if((year%4 == 0) && (year%100 != 0) || (year%400 == 0)) numdays[1] = 29;

	// 休日の定義
	if(month == 1){holiday1 = 1; holiday2 = 14-(day.getDay()+5)%7; holiday3 = 4; holiday4 = 5;}  //成人の日
	else if(month == 2){holiday1 = 11; holiday2 = -1; holiday3 = -1; holiday4 = -1;}
	else if(month == 3){
	  ed =  20.8431 + 0.242194 * (year - 1980) - Math.floor((year - 1980)/4);  //春分の日
	  holiday1 = Math.floor(ed);
	  holiday2 = -1;
	  holiday3 = -1;
	  holiday4 = -1;
	}
	else if(month == 4){holiday1 = 29; holiday2 = -1; holiday3 = -1; holiday4 = -1;}
	else if(month == 5){holiday1 = 3; holiday2 = 4; holiday3 = 5; holiday4 = 6;}
	else if(month == 6){holiday1 = -1; holiday2 = -1; holiday3 = -1; holiday4 = -1;}
	else if(month == 7){holiday1 = 21-(day.getDay()+5)%7; holiday2 = -1;holiday3 = -1; holiday4 = -1;}
	else if(month == 8){holiday1 = -1; holiday2 = -1; holiday3 = -1; holiday4 = -1;}
	else if(month == 9){
	  holiday1 = 21-(day.getDay()+5)%7;
	  ed =  23.2488 + 0.242194 * (year - 1980) - Math.floor((year - 1980)/4);  //秋分の日
	  holiday2 = Math.floor(ed);
	  holiday3 = -1;
	  holiday4 = -1;
	}
	else if(month == 10){holiday1 = 14-(day.getDay()+5)%7;; holiday2 = -1; holiday3 = -1; holiday4 = -1;}  //体育の日
	else if(month == 11){holiday1 = 3; holiday2 = 23; holiday3 = -1; holiday4 = -1;}
	else if(month == 12){holiday1 = 23; holiday2 = 29; holiday3 = 30; holiday4 = 31;}
	// 休日の定義終わり

	// カレンダー本体
	cldr += "<table width='150' class='calendar' border='0' cellspacing='0' cellpadding='0'><tr><td><img src=\"img/calendar.jpg\"></td></tr><tr><td class='month'>" + year + "年" + month + "月<br>";
	cldr += "<table border='1' cellspacing='0' cellpadding='2' bordercolor='#cccccc' class='calendar2'>";
	cldr += "<tr class='week'><td><font class='sunday_w'>日</a></td><td class='day'>月</td><td class='day'>火</td><td class='day'>水</td><td class='day'>木</td><td class='day'>金</td><td><font class='saturday_w'>土</a></td></tr>";


	// 日付の書き込み
	for(sunday = 1-day.getDay(); sunday <= 31; sunday +=7){
	  cldr += "<TR class='day'>";
	  for(i = sunday; i < sunday + 7; i++){
	    if((i > 0) && (i <= numdays[month-1])){
	      day.setDate(i);
	      today = day.getDay();

	      if(thisday == i) {
					if(today == 0){
						cldr += "<td class='sunday_t'>";
					} else if((i == holiday1)||(i == holiday2)||(i == holiday3)||(i == holiday4)){
						cldr += "<td class='holiday_t'>";
					} else if((today == 1)&&((i-1 == holiday1)||(i-1 == holiday2)||(i-1 == holiday3)||(i-1 == holiday4))){
						 cldr += "<td class='holiday_t'>";
					} else if(today == 6){
						 cldr += "<td class='saturday_t'>";
					} else {
						 cldr += "<td class='day_t'>";
					}
	      }else if(today == 0){
	         cldr += "<td class='sunday'>";
	      }else if((i == holiday1)||(i == holiday2)||(i == holiday3)||(i == holiday4)){
	         cldr += "<td class='holiday'>";
	      }else if((today == 1)&&((i-1 == holiday1)||(i-1 == holiday2)||(i-1 == holiday3)||(i-1 == holiday4))){
	         cldr += "<td class='holiday'>";
	      }else if(today == 6){
	         cldr += "<td class='saturday'>";
	      }else {
	         cldr += "<td class='day'>";
	      }

	      if(thisday == i) {
	        cldr += "<font class='today'>"+ i +"</font></td>";
	      }else if(today == 0){
	        cldr += "<font class='sunday'>"+ i +"</font></td>";
	      }else if((i == holiday1)||(i == holiday2)||(i == holiday3)||(i == holiday4)){
	        cldr += "<font class='holiday'>"+ i +"</font></td>";
	      }else if((today == 1)&&((i-1 == holiday1)||(i-1 == holiday2)||(i-1 == holiday3)||(i-1 == holiday4))){
	        cldr += "<font class='holiday'>"+ i +"</font></td>";
	      }else if(today == 6){
	        cldr += "<font class='saturday'>"+ i +"</font></TD>";
	      }else{
	        cldr += ""+ i +"</td>";
	      }

	    }else{
	      cldr += "<td>&nbsp;</td>";
	    }
	  }
	  cldr += "</TR>";
	}
	cldr += "</TABLE><br>";
	cldr += "</td></tr></table>";

	document.write(cldr);

}
