
function easterDay(){

	var scripttype;
	var d1;
	var d2;
	var d3;
	var d4;
	var d52;
	var d5;
	var d6;
	var d7;
	var mm;
	var dd;
	var wk1;
	var wk2;
	var ddd;
	var feb;

	scripttype = document.FORM1.htmltype.value;

	year = Number(document.FORM1.txtYear.value);
	
	if( year < 1900 || year > 2099 ) {
		alert("西暦年は1900から2099の範囲で入力してください。");
		exit;
	}

	/* (1)の計算 */
	d1 = year % 19;

	/* (2)の計算 */
	d2 = 225 - d1 * 11;
	
	/* (3)の計算 */
	for( d3 = d2; 51 < d3; d3 = d3 - 30) {
	}

	/* (4)の計算 */
	if( d3 > 48 ) {
		d4 = d3 - 1;
	} else {
		d4 = d3;
	}

	/* (5)の計算 */
	d52 = parseInt( year / 4 );
	d5 = year + d52 + d4 + 1;

	/* (6)の計算 */
	d6 = d5 % 7;

	/* (7)の計算 */
	d7= d4+7-d6;

	/* (8)の計算 */
	if( d7 > 31 ){
		d8 = d7 - 31;
		mm = 4;
	}else{
		d8 = d7;
		mm = 3;
	}

	/* 計算方法の表示 */
	if( scripttype == "js" ) {
		document.FORM1.txtD1.value = d1;
		document.FORM1.txtD2.value = d2;
		document.FORM1.txtD3.value = d3;
		document.FORM1.txtD4.value = d4;
		document.FORM1.txtD51.value = year;
		document.FORM1.txtD52.value = d52;
		document.FORM1.txtD53.value = d4;
		document.FORM1.txtD5.value = d5;
		document.FORM1.txtD6.value = d6;
		document.FORM1.txtD7.value = d7;
		document.FORM1.txtD81.value = mm + "月" + d8 + "日";
	} else {
		document.all.txtD1.innerHTML = d1;
		document.all.txtD2.innerHTML = d2;
		document.all.txtD3.innerHTML = d3;
		document.all.txtD4.innerHTML = d4;
		document.all.txtD51.innerHTML = year;
		document.all.txtD52.innerHTML = d52;
		document.all.txtD53.innerHTML = d4;
		document.all.txtD5.innerHTML = d5;
		document.all.txtD6.innerHTML = d6;
		document.all.txtD7.innerHTML = d7;
		document.all.txtD81.innerHTML = mm + "月" + d8 + "日";
	}



	/* うるう年判定 */
	if ( (year % 4) > 0 ) {
		feb = 28;
	} else {
		if( (year % 400) > 0 && (year % 100) == 0) {
			feb = 28;
		} else {
			feb = 29;
		}
	}
	
	for( wk1 = 225 - (year % 19) * 11; 51 < wk1; wk1 = wk1 - 30) {
	}

	if( wk1 > 48 ) {
		wk1 = wk1 - 1;
	}

	wk2 = ( year + parseInt( year / 4 ) + wk1 + 1 ) % 7;
	
	ddd = (wk1 + 7) - wk2;

	/* イースター */
	if( ddd > 31 ){
		mm = 4;
		dd = ddd - 31;
	}else{
		mm = 3;
		dd = ddd;
	}
	if( scripttype == "js" ) {
		document.FORM1.easter.value = mm + "月" + dd + "日";
	} else {
		document.all.easter.innerHTML = mm + "月" + dd + "日";
	}
	
	/* 聖金曜日 */
	ddd = ddd - 2;
	if( ddd > 31 ){
		mm = 4;
		dd = ddd - 31;
	}else{
		mm = 3;
		dd = ddd;
	}
	if( scripttype == "js" ) {
		document.FORM1.gfriday.value = mm + "月" + dd + "日";
	} else {
		document.all.gfriday.innerHTML = mm + "月" + dd + "日";
	}

	/* 聖木曜日 */
	ddd = ddd - 1;
	if( ddd > 31 ){
		mm = 4;
		dd = ddd - 31;
	}else{
		mm = 3;
		dd = ddd;
	}
	if( scripttype == "js" ) {
		document.FORM1.bansan.value = mm + "月" + dd + "日";
	} else {
		document.all.bansan.innerHTML = mm + "月" + dd + "日";
	}

	/* 棕櫚の日曜 */
	ddd = ddd - 4;
	if( ddd > 31 ){
		mm = 4;
		dd = ddd - 31;
	}else{
		mm = 3;
		dd = ddd;
	}
	if( scripttype == "js" ) {
		document.FORM1.palm.value = mm + "月" + dd + "日";
	} else {
		document.all.palm.innerHTML = mm + "月" + dd + "日";
	}


	ddd = ddd + feb;
	/* レント */
	for ( i = 4; i >= 0; i--) {
		ddd = ddd - 7;
		if( ddd > (31 + feb) ){
			mm = 4;
			dd = ddd - 31 - feb;
		}else if ( ddd > feb ){
			mm = 3;
			dd = ddd - feb;
		} else {
			mm = 2;
			dd = ddd;
		}
		if( scripttype == "js" ) {
			document.FORM1.lent[i].value = mm + "月" + dd + "日";
		} else {
			document.all.lent[i].innerHTML = mm + "月" + dd + "日";
		}
	}

	/* 灰の水曜日 */
	ddd = ddd - 4;
	if ( ddd > feb ){
		mm = 3;
		dd = ddd - feb;
	} else {
		mm = 2;
		dd = ddd;
	}
	if( scripttype == "js" ) {
		document.FORM1.ash.value = mm + "月" + dd + "日";
	} else {
		document.all.ash.innerHTML = mm + "月" + dd + "日";
	}

}

function thisyear(){
	var date = new Date();
	var year = date.getFullYear();

	document.FORM1.txtYear.value = year;
	easterDay();
}
