function simulate() {
	var gaku = document.form1.gaku.value;
	var kikan_y = document.form1.kikan_y.value;
	if (kikan_y == '') {
		kikan_y = '0';
	}
	var kikan_m = document.form1.kikan_m.value;
	if (kikan_m == '') {
		kikan_m = '0';
	}
	var kinri = document.form1.kinri.value;

	// フォーム入力値チェック
	var message = '';
	if (!isNumber(gaku) || gaku < 1) {
		message = appendMessage(message, '「預入金額」は1以上の数値を半角で入力してください。');
	}
	if ((kikan_y == '0' && kikan_m == '0') || (kikan_y == '10' && kikan_m != '0')) {
		message = appendMessage(message, '「預入期間」は1ヶ月から10年の間で指定してください。');
	}
	if (!isNumber(kinri) || kinri <= 0) {
		message = appendMessage(message, '「適用金利」は0より大きな数値を半角で入力してください。');
	}
	if (message != '') {
		alert(message);
		return;
	}

	// フォーム入力値の補正
	gaku = truncNumber(gaku, 0);
	document.form1.gaku.value = gaku;
	document.form1.kikan_y.value = kikan_y;
	document.form1.kikan_m.value = kikan_m;

	// シミュレート条件
	document.getElementById('cond_gaku').innerHTML = formatNumber(gaku);
	document.getElementById('cond_kikan_y').innerHTML = kikan_y;
	document.getElementById('cond_kikan_m').innerHTML = kikan_m;
	document.getElementById('cond_kinri').innerHTML = kinri;

	// シミュレート計算
	var kikan = (parseInt(kikan_y) * 12) + parseInt(kikan_m);
	var zeikomi = gaku * (kinri / 100) * (kikan / 12);
	var zeinuki = zeikomi * 0.8;
	document.getElementById('zeikomi').innerHTML = formatNumber(zeikomi) + '円';
	document.getElementById('zeinuki').innerHTML = formatNumber(zeinuki) + '円';
	document.getElementById('goukei').innerHTML = formatNumber(gaku + zeinuki) + '円';
}

function isNumber(value) {
	if (isNaN(truncNumber(value, 0))) {
		return false;
	} else {
		return true;
	}
}

function appendMessage(message, append) {
	if (message == '') {
		return append;
	} else {
		return message + '\n' + append;
	}
}

function truncNumber(number, precision) {
	return 1 * truncToFixed(number, precision);
}

function formatNumber(number) {
	return numberFormatter("#,###")(truncNumber(number, 0));
}

function init() {
	document.form1.gaku.value = '';
	document.form1.kikan_y.selectedIndex = 0;
	document.form1.kikan_m.selectedIndex = 0;
	document.form1.kinri.value = '';
	document.getElementById('gaku').innerHTML = '－';
	document.getElementById('kikan_y').innerHTML = '－';
	document.getElementById('kikan_m').innerHTML = '－';
	document.getElementById('kinri').innerHTML = '－';
	document.getElementById('zeikomi').innerHTML = '円';
	document.getElementById('zeinuki').innerHTML = '円';
	document.getElementById('goukei').innerHTML = '円';
}




