
function validate(f) {
  var must   = new Array('sei','mei','sei_kana','mei_kana','email','email_ck','organization','tel1','tel2','tel3','prefecture','about','msg');
  var must_v = new Array('ご担当者氏名（姓）','ご担当者氏名（名）','フリガナ（姓）','フリガナ（名）','メールアドレス','メールアドレスの確認','所属団体名','電話番号（市外局番）','電話番号（市内局番）','電話番号（加入者番号）','都道府県', 'お問合せ内容', 'ご質問・ご要望内容');
  var err = new Array();
  var obj;
  var email_s = 0;
  // 必須
  for(i=0;i<must.length;i++) {
    var emp = false;
    obj = f.elements[must[i]];
    if(obj.type == 'text' || obj.type == 'textarea') {
      if(obj.value=='') {
	err.push(must_v[i]+'は必須項目です。');
	emp = true;
      }
      // kana
      if(i == 2 || i == 3) {
	if(!emp && !obj.value.match(/^[\u30A0-\u30FF]+$/)) {
	  err.push(must_v[i]+'は全角カタカナで入力してください。');
	}
      }
      // email
      if(i == 4 || i == 5) {
	if(!emp) email_s++;
        if(email_s == 2) {
	  if(f.elements['email'].value != obj.value) {
	    err.push('メールアドレスをご確認ください。');
	  }else if(!obj.value.match(/^([a-z0-9_]|\-|\.|\+)+@(([a-z0-9_]|\-)+\.)+[a-z]{2,6}$/i)) {
	    err.push('メールアドレスを正しく入力してください。');
	  }
	}
      }
      // msg
      if(i == 12) {
	if(obj.value.match(/^[\n\r\s]+$/)) {
	  err.push(must_v[i]+'を正しく入力してください。');
	}
      }
    }else if(obj.type == 'select-one') {
      var max;
      if(i == 10) {
	max = 47;
      }else if(i == 11) {
	max = 5;
      }
      if(obj.value < 1 || obj.value > max) {
	err.push(must_v[i]+'は必須項目です。');
      }
    }
  }
  if(err.length != 0) {
    alert(err.join("\n"));
    return false;
  }
}


