@charset "utf-8";

/* 入力フォーム ****************************************************************** */

form{
	margin: 0 auto;
	width: 96%;
	margin-bottom: 15px;
	}

fieldset{
	border: none;
	margin: 0 auto 15px auto;
	}

legend{
	font-size: 20px;
	padding: 0.3em 0;
	width: 100%;
	background-color: #efefef;
	text-align: center;
	margin-bottom: 10px;
	}

legend span{
	font-size: 16px;;
	}

input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="date"],
select,
textarea{
	border: 1px solid #cccccc;
	height: 2em;
	font-size: 18px;
	width: 100%;
	margin-bottom: 10px;
	}

textarea{
	height: 4em;
	}


@media(max-width:959px){ /* スマホ～タブレット用 */

/* チェックボックスボタン化 ======================= */
label{
	font-size: 20px;
	display: block;
	}


input[type="checkbox"],
input[type="radio"]{
	border: 1px solid #cccccc;
	height: 2em;
	font-size: 18px;
	width: 100%;
	margin-bottom: 10px;
	}


.check-group{
	margin-bottom: 10px;
	font-size: 20px;
	}

.check-group input {
	display: none;
	}

.check-group label {
	cursor: pointer;
	padding: 10px 0;
	border: solid 1px #ccc;
	margin-bottom: -1px;
	background: #fff;
	width: 100%;
	text-align: center;
	}

.check-group input:checked+label {
	background: #efefef;
	}

.check-group .top_l label{
	-webkit-border-top-left-radius: 5px;  
	-moz-border-radius-topleft: 5px;
	}

.check-group .top_r label{
	-webkit-border-top-right-radius: 5px;  
	-moz-border-radius-topright: 5px;
	}

.check-group .bottom_l label{
	-webkit-border-bottom-left-radius: 5px;  
	-moz-border-radius-bottomleft: 5px;
	}

.check-group .bottom_r label{
	-webkit-border-bottom-right-radius: 5px;  
	-moz-border-radius-bottomright: 5px;
	}

/* チェックボックス2カラム */
.check-group .half{
	width: 50%;
	float: left;
	}

.check-group .clear{
	clear: both;
	}

}


/* 必須・任意表示 ================================== */
fieldset span.icon{
	font-size: 12px;
	font-weight: bold;
	color: #ffffff;
	background-color: #1374bf;
	padding: 0.25em 0.3em;
	margin-right: 0.2em;
	vertical-align: 25%;
	border-radius: 3px;
	-webkit-border-radius: 3px;  
	-moz-border-radius: 3px;
	}


fieldset span.require{
	background-color: #f2444d;
	}
	


/* 送信ボタン ================================================ */
input[type="submit"]{
	border: 1px solid #999999;
	font-size: 24px;
	margin: 30px auto;
	width: 92%;
	display: block;
	background-color: #efefef;
	border-radius: 5px;
	-webkit-border-radius: 5px;  
	-moz-border-radius: 5px;
	padding: 0.5em 0 0.4em 0;
	line-height: 120%;
	cursor: pointer;
	font-family: "foundation-icons";
	}

input[type="submit"].half{
	width: 50%;
	}


/* 入力内容の確認 ========================================= */
.error{
	color: #ff0000;
	}

form fieldset p.error{
	font-size: 16px;
	margin: 0 auto 20px auto;
	}



form.confirm > div{
	font-size: 18px;
	text-align: center;
	margin-bottom: 1.5em;
	}

form.confirm > div div{
	font-size: 20px;
	background-color: #efefef;
	}

form.confirm > div div span{
	font-size: 16px;
	}

form.confirm > div p{
	margin: 1% 2%;
	}



/* 送信完了 =============================================== */
form.send{
	text-align: center;
	width: 96%;
	max-width: 500px;
	}

form.send p{
	margin: 80px 0;
	}


/* 検索窓 ========================================== */
input.search_word{
	width: 84%;
	display: block;
	float: left;
	margin: 0;
	}

input.search_word_button{
	font-family: "foundation-icons";
	width: 15%;
	float: right;
	margin: 0;
	font-size: 30px;
	color: #666;
	padding: 0;
	line-height: 115%;
	}



@media(max-width:599px){ /* スマホ用 */
	

}


@media(min-width:600px){ /* 小型タブレット用 */


form{
	max-width: 500px;
	}

legend{
	font-size: 16px;
	font-weight: bold;
	}

label{
	font-size: 16px;
	margin-bottom: 2px;
	}

input,
select,
textarea{
	font-size: 16px;
	}

textarea{
	height: 8em;
	}

.check-group{
	margin-bottom: 10px;
	font-size: 16px;
	}



/* 送信ボタン ===================================== */
input[type="submit"]{
	font-size: 20px;
	}


/* 検索窓 ========================================= */
input.search_word{
	width: 88%;
	}


input.search_word_button{
	width: 11%;
	font-size: 30px;
	}	

}


@media(min-width:960px){ /* PC用 */

	
}


@media(min-width:1280px){ /* 大型ディスプレイ用 */

	
}












