	var W3CDOM = (document.createElement && document.getElementsByTagName);

	function init() {
		if (!W3CDOM) return;
		var fakeFileUpload = document.createElement('div');
		fakeFileUpload.className = 'fakefile';
		fakeFileUpload.appendChild(document.createElement('input'));
		var image = document.createElement('img');
		image.src='/img/company/button_select.gif';
		fakeFileUpload.appendChild(image);
		var x = document.getElementsByTagName('input');
		for (var i=0;i<x.length;i++) {
			if (x[i].type != 'file') continue;
			if (x[i].getAttribute('noscript')) continue;
			if (x[i].parentNode.className != 'fileinputs') continue;
			x[i].className = 'file hidden';
			var clone = fakeFileUpload.cloneNode(true);
			x[i].parentNode.appendChild(clone);
			x[i].relatedElement = clone.getElementsByTagName('input')[0];
			if (x[i].value)
				x[i].onchange();
			x[i].onchange = x[i].onmouseout = function () {
				this.relatedElement.value = this.value;
			}
		}
	}
	
	function check_half_e_n_code(obj){
		str = obj.value;
		err = 0;
		
		for(i=0;i<str.length;i++){
			code = str.charCodeAt(i);
			if((48<=code && code <=57)||(65<=code && code <=90) || (97 <=code && code <= 122)){}
			else {err++;}
		}
		
		if(err!=0) return false;
		return true;
	}
	
	function check_half_e_n_def(obj){
		var allow = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
		str = obj.value;
		err = 0;
		for(i=0;i<str.length;i++){
			if(allow.indexOf(str.charAt(i)) == -1) err++;
		}
		if(err!=0) return false;
		return true;
	}
	
	function check_half_e_n_reg(obj){
		str = obj.value;
		var reg = str.match(/[0-9a-zA-Z\+\-\/\*\,\. ]+/g);
		if(reg != str) return false;
		return true;
	}
	
	function check_zip(obj){
		var chkvalue = obj.value.split('-').join('');
		if ( (obj.value.length - chkvalue.length) >1 ){
			return false;
		}else if (chkvalue.length != 7) {
			return false;
		}
		
		return true;
	}
	
	function check_email(obj){
		var reg=/[!#-9A-~]+@+[a-z0-9]+.+[^.]$/i;
		var str = obj.value;
		
		if(str!=''){
			if(str.match(reg)){
				return true;
			}else{
				return false;
			}
		}else{
			return false;
		}
	}
	
	function check_full_k_def(obj) {
		var reg='アイウエオカキクケコサシスセソタチツテトナニヌネノハヒフヘホマミムメモヤユヨラリルレロワヲンァィゥェォッャュョ';
		var str=obj.value; /* 入力値 */
		  
		var mes='';
		for (var i=0; i<str.length; i++) {
			var tmp1=str.substr(i,1);
			for (var j=0; j<reg.length; j++) {
				var tmp2=reg.substr(j,1);

				if (tmp1==tmp2) {
					mes+='「'+tmp1+'」';
				}
			}
		}
		if(mes!=''){
			return true;
		}else{
			return false;
		}
	}
	
	function check_phone(obj){
		txt = obj.value;
		data1 = txt.match(/^[0-9-]{6,9}$|^[0-9-]{12}$/);
		data2 = txt.match(/^\d{1,4}-\d{4}$|^\d{2,5}-\d{1,4}-\d{4}$/);
		if(!data1 && !data2) return false;
		
		return true;
	}
	
	function check_cell_phone(obj){
		txt = obj.value;

		data = txt.match(/^\d{3}-\d{4}-\d{4}$|^\d{11}$/);
		if(!data) return false;
		
		return true;
	}
	
	function check_numeric(obj){
		var str=obj.value;
		if (str.match(/[^0-9]/g)){
			
			return false;
		}
		return true;
	}
	
	function check_string_length(obj, max_size) {
		var input_str;
		var len;
		var cur_size = 0;
	    
		input_str = obj.value;
	    len = input_str.length;
	
		for (i = 0; i < len; i++) {
			if (input_str.charCodeAt(i) > 127)
				cur_size += 2;
			else
				cur_size += 1;
		}
		if(cur_size > max_size){
			return true;
		}
		else {
			return false;
		}
	}
	
	function preventEnter(event, onEnter) {
	    if (!event) event = window.event;
	    if (event.keyCode == 13) {
	        event.returnValue = false; 
	        event.cancelBubble = true;
	        try { 
	            event.preventDefault(); 
	        } catch(e) { }
			if(typeof(onEnter) == "function")
				onEnter();
	        return false;
	    }
	    return true;
	}
	
	function set_document_style(){
		var __DEF_TEXTAREA_HEIGHT__ = '100';
		var tarea = document.getElementsByTagName('textarea');
		var tarea_length = tarea.length;
		
		for(var i=0; i<tarea_length;i++){
			var TEXTAREA_HEIGHT = tarea.item(i).scrollHeight;
			if(__DEF_TEXTAREA_HEIGHT__< TEXTAREA_HEIGHT){
				tarea.item(i).style.height = TEXTAREA_HEIGHT+'px';
			}else{
				tarea.item(i).style.height = __DEF_TEXTAREA_HEIGHT__+'px';
			}
			tarea.item(i).style.overflow = 'hidden';
			tarea.item(i).onkeyup = set_document_style;
		}
		
		init();
	}
