//月の休日["年月"]
var RestDay = new Object();
RestDay["200604"] = "2,9,16,23,29,30";
RestDay["200605"] = "3,4,5,6,7,13,14,20,21,27,28";
RestDay["200606"] = "3,4,10,11,17,18,24,25";
RestDay["200607"] = "1,2,8,9,15,16,17,22,23,29,30";
RestDay["200608"] = "5,6,10,11,12,13,14,15,16,19,20,26,27";
RestDay["200609"] = "2,3,9,10,16,17,18,23,24,30";
RestDay["200610"] = "1,7,8,9,14,15,21,22,28,29";
RestDay["200611"] = "3,4,5,11,12,18,19,23,25,26,";
RestDay["200612"] = "2,3,9,10,16,17,23,24,29,30,31";
RestDay["200701"] = "1,2,3,4,6,7,8,13,14,20,21,27,28";
RestDay["200702"] = "3,4,10,11,12,17,18,24,25";
RestDay["200703"] = "3,4,10,11,17,18,21,24,25,31";
RestDay["200704"] = "1,7,8,14,15,21,22,28,29,30";
RestDay["200705"] = "3,4,5,6,12,13,19,20,26,27";
RestDay["200706"] = "2,3,9,10,16,17,23,24,30";
RestDay["200707"] = "1,7,8,14,15,16,21,22,28,29";
RestDay["200708"] = "4,5,11,12,13,14,15,16,18,19,25,26";
RestDay["200709"] = "1,2,8,9,15,16,17,22,23,24,29,30";
RestDay["200710"] = "6,7,8,13,14,20,21,27,28";
RestDay["200711"] = "3,4,10,11,17,18,23,24,25";
RestDay["200712"] = "1,2,8,9,15,16,22,23,24,29,30,31";
RestDay["200801"] = "1,2,3,4,5,6,12,13,14,19,20,26,27";
RestDay["200802"] = "2,3,9,10,11,16,17,23,24";
RestDay["200803"] = "1,2,8,9,15,16,20,22,23,29,30";
RestDay["200804"] = "5,6,12,13,19,20,26,27,29";
RestDay["200805"] = "3,4,5,6,10,11,17,18,24,25,31";
RestDay["200806"] = "1,7,8,14,15,21,22,28,29";
RestDay["200807"] = "5,6,12,13,19,20,21,26,27";
RestDay["200808"] = "2,3,9,10,11,12,13,14,15,16,17,23,24,30,31";
RestDay["200809"] = "6,7,13,14,15,20,21,23,27,28";
RestDay["200810"] = "4,5,11,12,13,18,19,25,26";
RestDay["200811"] = "1,2,3,8,9,15,16,22,23,24,29,30";
RestDay["200812"] = "6,7,13,14,20,21,23,27,28,29,30,31";
RestDay["200901"] = "1,2,3,4,10,11,12,17,18,24,25,31";
RestDay["200902"] = "1,7,8,11,14,15,21,22,28";
RestDay["200903"] = "1,7,8,14,15,20,21,22,28,29";
RestDay["200904"] = "4,5,11,12,18,19,25,26,29";
RestDay["200905"] = "2,3,4,5,6,9,10,16,17,23,24,30,31";
RestDay["200906"] = "6,7,13,14,20,21,27,28";
RestDay["200907"] = "4,5,11,12,18,19,20,25,26";
RestDay["200908"] = "1,2,8,9,13,14,15,16,22,23,29,30";
RestDay["200909"] = "5,6,12,13,19,20,21,22,23,26,27";
RestDay["200910"] = "3,4,10,11,12,17,18,24,25,31";
RestDay["200911"] = "1,3,7,8,14,15,21,22,23,28,29";
RestDay["200912"] = "5,6,12,13,19,20,23,26,27,28,29,30,31";
RestDay["201001"] = "1,2,3,4,9,10,11,16,17,23,24,30,31";
RestDay["201002"] = "6,7,11,13,14,20,21,27,28";
RestDay["201003"] = "6,7,13,14,20,21,22,27,28";
RestDay["201004"] = "3,4,10,11,17,18,24,25,29";
RestDay["201005"] = "1,2,3,4,5,8,9,15,16,22,23,29,30";
RestDay["201006"] = "5,6,12,13,19,20,26,27";
RestDay["201007"] = "3,4,10,11,17,18,19,24,25,31";
RestDay["201008"] = "1,7,8,13,14,15,16,21,22,28,29";
RestDay["201009"] = "4,5,11,12,18,19,20,23,25,26";
RestDay["201010"] = "2,3,9,10,11,16,17,23,24,30,31";
RestDay["201011"] = "3,6,7,13,14,20,21,23,27,28";
RestDay["201012"] = "4,5,11,12,18,19,23,25,26,29,30,31";



restdays1 = new Array();
restdays2 = new Array();
//配列生成
monstr = new Array();
yostr = new Array();

Err1 = new String();
Err2 = new String();
/*----------------*
 * 設定はここから *
 *----------------*/
//var clfont     = "HGP創英角ｺﾞｼｯｸUB";  // フォントの種類（全体共通）
var clfont     = "";  // フォントの種類（全体共通）

var frbgcolor  = "#ffffff";	    // 外枠の背景色
var frborder   = 1;             // 外枠の幅
var monfnsize  = "12pt";        // 月のフォントサイズ
var frfncolor  = "#333333";     // 月の文字色

var inbgcolor  = "#ffffff";     // 日付部の背景色
var yobgcolor  = "#CCFF99";     // 曜日部の背景色
var tdbgcolor  = "#FFCC66";     // 本日の背景色
var dwidth     = 27;            // 日付・曜日欄の幅
var dheight    = 10;            // 日付・曜日欄の高さ
var dayfnsize  = "9pt";         // 日付と曜日のフォントサイズ
var dayfncolor = "#333333";     // 平日の文字色（曜日・日付共通）
var kdfncolor  = "#ff3333";     // 日曜・休日の文字色（曜日・日付共通）
var ndstr      = "・";          // 日付なし欄に出す文字
var ndfncolor  = "#333333";     // 日付なし欄の文字色

// 月の表示文字
monstr[0]  = "1月";  //  1月
monstr[1]  = "2月";  //  2月
monstr[2]  = "3月";  //  3月
monstr[3]  = "4月";  //  4月
monstr[4]  = "5月";  //  5月
monstr[5]  = "6月";  //  6月
monstr[6]  = "7月";  //  7月
monstr[7]  = "8月";  //  8月
monstr[8]  = "9月";  //  9月
monstr[9]  = "10月"; // 10月
monstr[10] = "11月"; // 11月
monstr[11] = "12月"; // 12月

// 曜日の表示文字
yostr[0] = "日";  // 日曜
yostr[1] = "月";  // 月曜
yostr[2] = "火";  // 火曜
yostr[3] = "水";  // 水曜
yostr[4] = "木";  // 木曜
yostr[5] = "金";  // 金曜
yostr[6] = "土";  // 土曜

/*----------------*
 * 設定はここまで *
 *----------------*/
//for test
var test = 0;	// 1:testmode on
var testyear = 2006;  // year for test
var testmonth = 8;    // month for test
var testday = 1;      // day for test
//
maxday = new Array(31,28,31,30,31,30,31,31,30,31,30,31);
var date = new Date();
if (test == 1) { date.setYear(testyear); date.setMonth(testmonth-1); date.setDate(testday); }

//年判定
var year = date.getFullYear();
var month = date.getMonth() + 1;

if(month < 10){ var dispM1 = "0" + month; }
else{ var dispM1 = new String(month); }

if(month == 12){
	var nextyear = year + 1;
	var nextmonth = 1;
}else{
	var nextyear = year;
	var nextmonth = month + 1;
}

if(nextmonth < 10){ var dispM2 = "0" + nextmonth; }
else{ var dispM2 = new String(nextmonth); }

var today = date.getDate();
if ((year % 4 == 0 && year % 100 != 0) || year % 400 == 0) { maxday[1]++; }
date.setDate(1);

if(RestDay[ year + dispM1 ]){
	restdays1 = RestDay[ year + dispM1 ].split(",");
}else{
	Err1 = '<p>今月のデータがありません</p>';
}
if(RestDay[ nextyear + dispM2 ]){
	restdays2 = RestDay[ nextyear + dispM2 ].split(",");
}else{
	Err2 = '<p>来月のデータがありません</p>';
}
//今月のカレンダー表示

if(Err1.length){
	document.write(Err1);
}else{

month = Number(month);
nextmonth = Number(nextmonth);

var yo1 = date.getDay();
var yo2 = 0;
var flag = 0;
var daycnt = 1;
var moncnt = 0;
var yasumi, syuku, furi;
document.write('<table border="0" style="margin-top: 5px;" bgcolor="' + frbgcolor + '" cellpadding="' + frborder + '" cellspacing="0" width="200">');
document.write('<tr><td align="center">');
document.write('<span style="font-family:' + clfont + ';font-size:' + monfnsize + '">');
document.write('<font color="' + frfncolor + '"><b>'
  + monstr[month - 1] + ' ' + year + '<\/font><\/b><\/span><br>');
// 曜日欄
document.write('<table border="0" bgcolor="' + inbgcolor + '" cellpadding="3" cellspacing="0">');
document.write('<tr bgcolor="' + yobgcolor + '">');
for (yo = 0; yo < 7; yo++) {
  document.write('<td width="' + dwidth + '" height="' + dheight + '" align="center">');
  document.write('<span style="font-family:' + clfont + ';font-size:' + dayfnsize + '">');
  if (yo == 0) { document.write('<font color="' + kdfncolor + '">'); }
    else { document.write('<font color="' + dayfncolor + '">'); }
  document.write(yostr[yo]);
  if (yo == 0) { document.write('<\/font>'); }
  document.write('<\/span>');
  document.write('<\/td>');
}
document.write('<\/tr>');
while (flag < 2) {
  document.write('<tr>');
  for (yo = 0; yo < 7; yo++) {
    document.write('<td width="' + dwidth + '" height="' + dheight + '" align="center"');
    if (flag == 0 && yo1 == yo) { flag = 1; }	// 1日
    if (flag == 1) {	// 日付あり
		yo2 = yo;
      if (daycnt == today) {
        document.write('bgcolor="' + tdbgcolor + '"');	// 本日の背景設定
      }
      document.write('>');
      document.write('<span style="font-family:' + clfont + ';font-size:' + dayfnsize + '">');
      yasumi = 0;
      syuku = 0;
      
      for(i=0; i<restdays1.length; i++){
      	if(restdays1[i] == daycnt){
		yasumi = 1;
		}
     }
      if (yasumi == 1) { document.write('<font color="' + kdfncolor + '">' + daycnt + '<\/font>'); }
        else { document.write('<font color="' + dayfncolor + '">' + daycnt + '<\/font>'); }
      if (++daycnt > maxday[month - 1]) { flag = 2; }	// 最終日
    } else {	// 日付なし
      document.write('><font color="' + ndfncolor + '">' + ndstr + '<\/font>');
    }
    document.write('<\/span>');
    document.write('<\/td>');
  }
  document.write('<\/tr>');
}
document.write('<\/table>');
document.write('<\/td><\/tr><\/table>');

}


//来月のカレンダー表示

if(Err2.length){
	document.write(Err2);
}else{

var yo1 = yo2 + 1;
if(yo1 == 7){
	var yo1 = 0;
}
var flag = 0;
var daycnt = 1;
var moncnt = 0;
var yasumi, syuku, furi;
document.write('<table border="0" bgcolor="' + frbgcolor + '" cellpadding="' + frborder + '" cellspacing="0" width="200">');
document.write('<tr><td align="center">');
document.write('<span style="font-family:' + clfont + ';font-size:' + monfnsize + '">');
document.write('<font color="' + frfncolor + '"><b>'
  + monstr[nextmonth - 1] + ' ' + nextyear + '<\/font><\/b><\/span><br>');
// 曜日欄
document.write('<table border="0" bgcolor="' + inbgcolor + '" cellpadding="3" cellspacing="0">');
document.write('<tr bgcolor="' + yobgcolor + '">');
for (yo = 0; yo < 7; yo++) {
  document.write('<td width="' + dwidth + '" height="' + dheight + '" align="center">');
  document.write('<span style="font-family:' + clfont + ';font-size:' + dayfnsize + '">');
  if (yo == 0) { document.write('<font color="' + kdfncolor + '">'); }
    else { document.write('<font color="' + dayfncolor + '">'); }
  document.write(yostr[yo]);
  if (yo == 0) { document.write('<\/font>'); }
  document.write('<\/span>');
  document.write('<\/td>');
}
document.write('<\/tr>');
while (flag < 2) {
  document.write('<tr>');
  for (yo = 0; yo < 7; yo++) {
    document.write('<td width="' + dwidth + '" height="' + dheight + '" align="center"');
    if (flag == 0 && yo1 == yo) { flag = 1; }	// 1日
    if (flag == 1) {	// 日付あり
      document.write('>');
      document.write('<span style="font-family:' + clfont + ';font-size:' + dayfnsize + '">');
      yasumi = 0;
      syuku = 0;
      
      for(i=0; i<restdays2.length; i++){
      	if(restdays2[i] == daycnt){
		yasumi = 1;
		}
      }
      if (yasumi == 1) { document.write('<font color="' + kdfncolor + '">' + daycnt + '<\/font>'); }
        else { document.write('<font color="' + dayfncolor + '">' + daycnt + '<\/font>'); }
      if (++daycnt > maxday[nextmonth - 1]) { flag = 2; }	// 最終日
    } else {	// 日付なし
      document.write('><font color="' + ndfncolor + '">' + ndstr + '<\/font>');
    }
    document.write('<\/span>');
    document.write('<\/td>');
  }
  document.write('<\/tr>');
}
document.write('<\/table>');
document.write('<\/td><\/tr><\/table>');

}