@charset "utf-8";

/* ==================== クロスブラウザ設定 ==================== */

/**
 * Bump up IE to get to 13px equivalent
 */
pre,code,kbd,samp,tt {font-family:monospace;*font-size:108%;line-height:100%;}

.clearfix:after { content: ""; display: block; clear: both; }

.clearfix { display: inline-table; }

/* Hides from IE-mac */
* html .clearfix {height: 1%;}
.clearfix {display: block;}
/* End hide from IE-mac */


/* ==================== タグ設定 ==================== */
hr {
	height: 1px;
	margin: 20px 0 20px 0;
	_margin: 10px 0 20px 0;
	padding: 0;
	background: #CCCCCC;
	border: 0px none;
	clear: both;
}


dt.error {
	color: #FF0000;
}

dd table {
	border-collapse: collapse;
	border-spacing: 5;
}

dd th {
	padding: 5px;
}

dd td {
	padding: 5px;
}
table.confirm {
	margin-bottom: 20px;
	border-collapse: collapse;
	border-spacing: 5;
	border-top: #CCCCCC solid 1px;
	border-left: #CCCCCC solid 1px;
}

table.confirm th {
	padding: 15px 10px;
	font-size: 100%;
	font-weight: bold;
	text-align: left;
	background: #ffffff;
	border-bottom: #CCCCCC solid 1px;
	border-right: #CCCCCC solid 1px;
}

table.confirm td {
	padding: 15px 10px;
	font-size: 100%;
	background: #ffffff;
	border-bottom: #CCCCCC solid 1px;
	border-right: #CCCCCC solid 1px;
}

label {
	margin: 0;
}

/* 入力フィード関連 */
input {
	padding: 10px 0;
}
input:hover {
	opacity: 0.5;
}
*:first-child+html input {
	margin: 0 5px 0 0;
}

input.text {
	padding: 3px;
	border: #999999 solid 1px;
}
input.name01,input.name02 {
	padding: 5px;
}
input.text:focus {
	background: #FFFFCC;
	border: #999999 solid 1px;
}

input.text-error {
	padding: 3px;
	color: #FF0000;
	border: #FF0000 solid 1px;
	background: #FFE0E0;
}

input.text-error:focus {
	padding: 3px;
	background: #FFFFCC;
	border: #999999 solid 1px;
}

textarea.error:focus {
	background: #FFFFCC;
	border: #999999 solid 1px;
}

textarea {
	margin: 0 5px 5px 0;
	_margin: 0 5px 0 0;
	padding: 3px;
	border: #999999 solid 1px;
}

*:first-child+html textarea {
	margin: 0 5px 0 0;
}

textarea:focus {
	background: #FFFFCC;
	border: #999999 solid 1px;
}

textarea.error {
	color: #FF0000;
	border: #FF0000 solid 1px;
	background: #FFE0E0;
}

textarea.error:focus {
	background: #FFFFCC;
	border: #999999 solid 1px;
}

select {
	margin: 0 5px 5px 0;
	_margin: 0 5px 0 0;
}

*:first-child+html select {
	margin: 0 5px 0 0;
}

option{ 
	padding-right:10px; 
}

button {
	margin: 0 5px 5px 0;
	padding: 3px;
}
/* フォント関連 */

.font-size-s {
	font-size: 85%;
}
.font-size-m {
	font-size: 100%;
}
.font-size-l {
	font-size: 122%;
}
.font-color-red {
	color: #FF0000;
}
.font-color-blue {
	color: #0066CC;
}
.font-color-green {
	color: #009933;
}
.font-color-gray {
	color: #666666;
}
strong {
	font-weight:bold;
}
.align-center {
	text-align: center;
}
.align-left {
	text-align: left;
}
.align-right {
	text-align: right;
}
/* ==================== レイアウト設定 ==================== */
#container {
	width: 85%;
	margin: 0 auto 30px;
	padding: 0;
	font-size:100%;
	text-align:left;
	position: relative;
}
#header {
	margin: 0 auto;
	padding: 20px;
	clear: both;
}
#contents {
	margin: 10px auto 0;
	padding: 0 20px 20px;
	background: #ffffff;
}
#footer {
	margin: 0 auto;
	padding: 20px 0;
	clear: both;
}
#ad {
	margin: 10px auto;
	padding: 10px 0;
	text-align: center;
	background: #FFFFFF;
	clear: both;
}
#ad a {
	color: #555555;
}
#ad hr {
	height: 1px;
	margin: 10px 0;
	_margin: 0px 0 10px 0;
	padding: 0;
	background: #DDDDDD;
	border: 0px none;
	clear: both;
}
#powered {
	width: 161px;
	height: 0px;
	margin: 0 auto;
	padding-top: 22px;
	background: url(../../images/powered-by-formmailer.gif) no-repeat;
	display: block;
	overflow: hidden;
}
.align-center.enter>input {
	display: block;
	width: 85%;
	min-height: 50px;
	margin: 20px auto;
	font-size: 1.8rem;
}
/* ==================== システムメッセージ ==================== */
#alert {
	width: 100%;
	height: 40px;
	margin: 0 0 20px 0;
	text-align: center;
	font-weight: bold;
	color: #FF0000;
	line-height: 40px;
	background: #FFFFFF;
	clear: both;
}
/* ==================== テンプレート設定 ==================== */
#description {
	padding-bottom: 20px;
	font-size: 100%;
	line-height:1.5;
}
#complete {
	padding: 20px 0;
	font-size: 100%;
	line-height:1.5;
}
.required {
	margin: 0 5px 0 0;
	font-size: 1.5rem;
	color: #ff0000;
	font-weight: bold;
}
div.error {
	margin: 10px 0;
	font-size: 100%;
	color: #FF0000;
	line-height: 1.3;
}
.label {
	margin: 0 5px 0 0;
	font-size: 100%;
}
.notes {
	margin: 10px 0 0 0;
	font-size: 93%;
	line-height: 1.3;
}
/* 注文フォーム */
#box-order {
}

#box-order .comment-header {
	margin: 0 0 10px 0;
	font-size: 100%;
	line-height: 2;
	clear: both;
}

#box-order .comment-footer {
	margin: 10px 0 0 0;
	font-size: 100%;
	line-height: 2;
	clear: both;
}

#box-order table {
	margin: 0 0 20px 0;
	border-collapse: collapse;
	border-spacing: 5;
	background: #ffffff;
	border-top: #CCCCCC solid 1px;
	border-left: #CCCCCC solid 1px;
	border-right: #CCCCCC solid 1px;
}

#box-order table th {
	padding: 10px;
	font-size: 100%;
	font-weight: bold;
	vertical-align: top;
	border-bottom: #CCCCCC solid 1px;
}

#box-order table td {
	padding: 10px;
	font-size: 100%;
	border-bottom: #CCCCCC solid 1px;
}

#box-order table.settle {
	border-collapse: collapse;

	border-spacing: 5;
	border: none;
	background: none;
}

#box-order table.settle th {
	padding: 10px;
	font-size: 100%;
	font-weight: bold;
	text-align: right;
	vertical-align: top;
	border-bottom: #CCCCCC solid 1px;
}

#box-order table.settle td {
	padding: 10px;
	font-size: 100%;
text-align: right;
	border-bottom: #CCCCCC solid 1px;
}
/* thickbox設定 */
#TB_window {
	border:  #333333 solid 3px;
}

#TB_ajaxWindowTitle {
	background: #FFFFFF;
}

#TB_ajaxContent {
	background: #FFFFFF;
}

#TB_closeAjaxWindow {
	background: #FFFFFF;
}

/* 入力補助設定 */
input.required_field,textarea.required_field,tr.required_field,td.required_field {
	background: #FFDDDD;
	border: #FF9999 solid 1px;
}

select.required_field {
	background: #FFDDDD;
}
#formarea {
	margin-top: 20px;
}
.logbox {
	overflow:auto;
	max-width: 780px;
	height: 200px;
	margin: 10px auto 30px;
	padding: 5px;
	border: 1px solid #BBBBBB;
	font-size: 1.3rem;
}
@media screen and (max-width: 999px), print {
	#container {
		width: 92%;
		margin: 0 auto 40px;
		padding: 15px 0 0 0;
		font-size:100%;
		text-align:left;
		position: relative;
	}
	.align-center.enter>input {
		margin: 5px auto;
	}
	#contents {
		margin: 0 auto 0;
		padding: 0 0 20px;
	}
}