@charset "UTF-8";

/* ================================================================================= */
/* 送信ボタン                                                                        */
/* ================================================================================= */
.fm_btn {
	width: 100%;
	margin: 0 auto 30px;
	text-align: center;
}

.fm_btn input {
	width: 100%;
	max-width: 460px;
	margin: 0 auto;
	padding: 10px 0;
	font-size: 1.6rem;
	line-height: 1.6;
	text-align: center;
	color: #ccc;
	background-color: #000;
	cursor: pointer;
	vertical-align: middle;
	border-radius: 10px;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	display: block;
}


/* ================================================================================= */
/* テーブル（スマホの場合は<th><td>を100%にする）                                    */
/* ================================================================================= */

form#mailform table {
	width: 100%;
	margin: 20px 0;
	padding: 0;
	border-collapse: separate;
	border-spacing: 1px;
	/*border: 1px solid #999;*/
}

form#mailform th,
form#mailform td {
	width: auto;
	padding: 8px;
	text-align: left;
	vertical-align: middle;
}

form#mailform th {
	width: 25%;
	/*color: #eee;*/
	background-color: #ddd;
}

	@media only screen and (max-width: 480px) {
		form#mailform table th {
			width: auto;
			display: block;
			border: none;
		}
		form#mailform table td {
			width: auto;
			display: block;
		}
	}

td p {
	width: 100%;
	margin-top: 5px;
	margin-right: 0;
	margin-bottom: 0;
	margin-left: 0;
	padding: 0;
}


/* ================================================================================= */
/* 必須・任意マーク                                                                  */
/* ================================================================================= */
th small {
	margin-left: 10px;
	padding: 3px;
	font-size: 0.7em;
	color: #fff;
	line-height: 1em;
	position: relative;
	top: -0.4em;
	display: inline-block;
	vertical-align: bottom;
}

th small.must {
	background-color: #c66;
}

th small.any {
	background-color: #999;
}


/* ================================================================================= */
/* フォーム部品                                                                       */
/* ================================================================================= */
label {
	width: auto;
	margin-top: 0;
	margin-right: 10px;
	margin-bottom: 0;
	margin-left: 0;
	padding: 0 10px;
}
	@media only screen and (max-width: 480px) {
		label {
			display: block;
		}
	}

input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
textarea {
	width: auto;
	margin: 0;
	padding: 5px;
	font-size: 1em;
	line-height: 1.2em;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	border: 1px solid #ccc;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
input[type="number"]:focus,
textarea:focus,
select:focus {
	outline: 0;
	border: 1px solid #c66;
	box-shadow: 0 0 6px #c66;
}

/* placeholdaer（例のテキスト）のスタイル */
/* Google Chrome, Safari, Opera 15+, Android, iOS */
::-webkit-input-placeholder {
	color: #999;
}
/* Firefox 19+ */
:-moz-placeholder {
	color: #999;
	opacity: 1;
}
/* IE 10+ */
:-ms-input-placeholder {
	color: #999;
}


/* 数字入力項目の右の▲▼を消す -------------------------------------------------------- */
input[type="number"]::-webkit-outer-spin-button ,
input[type="number"]::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}
input[type="number"] {
    -moz-appearance:textfield;
}

/* 幅の短めのテキストボックス（氏名など） */
input.short {
	width: 40%;
	min-width: 230px;
	max-width: 400px;
}

/* 幅長めのテキストボックス（住所など） */
td input.long ,
td textarea.long {
	width: 96%!important;
	min-width: 230px;
}

/* 郵便番号ボックス */
input.mini {
	width: 100px;
}

.zip_btn {
	padding: 3px 5px;
	font-size: 0.8em;
	line-height: 1.2em;
	border-radius: 5px;
	border: 1px solid #999;
	background-color: #ccc;
}

/* セレクトボックス */
td select {
	display: inline-block;
	width: auto;
	height: auto;
	margin: 0;
	padding-top: 5px;
	padding-right: 25px;
	padding-bottom: 5px;
	padding-left: 5px;
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	line-height: 1.4;
	border-radius: 0;
	background-color: #fff;
	vertical-align: middle;
	font-size: inherit;
	color: #333;
	box-sizing: content-box;
	border: 1px solid #cccccc;
	background-image: url(select_arrow.png);
	background-position: center right 2px;
	background-repeat: no-repeat;
	background-size: 18px;
	cursor: pointer;
}

/* セレクトボックス右の▼を消す -------------------------------------------------------- */
td select {
	text-indent: 0.01px;
	text-overflow: '';
}

td select::-ms-expand {
	display: none;
}


