body {
	margin: 0;  
}

body * {
	margin: 0;
	padding: 0;
	line-height: 1;
	font-size: small;
	font-family: 'Lucida Grande', 'Hiragino Kaku Gothic Pro W3', 'MS PGothic', sans-serif;
}

ul, ol {
	list-style: none;
}

img {
	border: 0;
}

.clear {
	clear: both;
}

a:link, a:visited {
	color: #22457f;
}

a:hover, a:active {
	color: #1597c6;
}

div#wrapper {
	width: 901px;
	margin: 0 auto;
}

/* @group Header */

div#header {
	height: 120px;
	background: transparent url(/images/header_bg.png) repeat-x top center;
}

div#header div.contents {
	position: relative;
	width: 830px;
	height: 120px;
	margin: 0 auto;
	background: transparent url(/images/header.png) repeat-x top center;
}

div#header div.contents h1 {
	position: absolute;
	top: 27px;
	left: 0;
}

div#header div.header_catalog {
	position: absolute;
	top: 28px;
	right: 0;
}

/* @end */

div#miniheader {
	margin: 10px 0;
	text-align: center;
}

div#main {
	width: 830px;
	margin: 10px auto;
}

div#main p {
	line-height: 1.4;
}

/* @group Presentation */

div.presentation {
	background: url(/images/presentation_bg.jpg) no-repeat top left;
	border-bottom: 1px solid #c29b56;
	margin-top: 10px;
}

div.presentation * {
	/*border: 1px solid #ccc;*/
}

div.presentation h3 {
	padding-left: 118px;
}

div.presentation.narrow {
	width: 750px;
	margin: 10px auto;
}

div.presentation_detail {
	width: 600px;
	float: right;
	padding: 27px 30px 20px 0;
}

div.presentation.narrow div.presentation_detail {
	width: 540px;
	border-right: 1px solid #c29b56;
}

div.presentation_detail h4 {
	padding-bottom: 20px;
}

div.presentation_detail div.btn_presentation {
	padding-top: 20px;
}

/* @end */

div.pagetop {
	background: url(/images/pagetop.gif) no-repeat;
	line-height: 14px;
	padding-left: 20px;
	float: right;
	margin: 10px 0;
}

/* @group Footer */

div#footer {
	background: #e5dec4;
	margin-top: 50px;
}

div#footer div.contents {
	position: relative;
	width: 830px;
	height: 70px;
	margin: 0 auto;
	padding: 10px 0 50px;
}

div#footer div.contents ul {
	position: absolute;
	top: 20px;
}

div#footer div.contents ul li {
	float: left;
	background: url(/images/footer_arrow.gif) no-repeat;
	line-height: 9px;
	padding: 0 30px 0 10px;
}

div#footer div.contents li a {
	color: #563100;
	text-decoration: none;
}

div#footer div.footer_catalog {
	position: absolute;
	top: 20px;
	right: 0;
}

div#footer div.contents div.copyright {
	position: absolute;
	top: 55px;
	left: 0;
	font-family: sans-serif;
	font-size: x-small;
	color: #563100;
}



/* @end */

/* @group Form */

.required {
	color: red;
}

form.inputform {
	
}

form.inputform p.remarks {
	margin: 10px 0;
	line-height: 1.2;
}

form.inputform fieldset {
	margin: 15px 0;
	padding: 10px;
	border: none;
	letter-spacing: 1px;
}

form.inputform legend {
	font-size: small;
	line-height: 1.4;
	color: #009946;
	padding-left: 0.5em;
	padding-right: 0.5em;
}

form.inputform table {
	border-collapse: collapse;
	margin: 10px auto;
}

form.inputform table * {
	font-size: medium;
}

form.inputform table th {
	width: 230px;
	padding: 3px 5px 7px 0;
	text-align: right;
	color: #213052;
	border-bottom: 1px solid #ccc;
	white-space: nowrap;
	line-height: 1.2;
}

form.inputform table th.receipt_mail {
	text-align: left;
	border-bottom: none;
	padding-top: 4px;
	padding-bottom: 0;
	width: auto;
}

form.inputform table td {
	border-bottom: 1px solid #ccc;
	padding: 3px 10px;
	width: 350px;
}

form.inputform table tr.error th,
form.inputform table tr.error td {
	color: red;
	background: #ffefef url(/images/errors_bg.png) repeat-x center;
}

form.inputform table td label {
	padding-right: 1em;
}

div.submitbutton {
	margin: 20px;
	text-align: center;
}

ul.errors_list {
	width: 650px;
	margin: 10px auto 20px;
	padding: 8px;
	background: #ffefef url(/images/errors_bg.png) repeat-x center;
	border: 2px solid #fcc;
	-moz-border-radius: 6px;
	-webkit-border-radius: 6px;
}

ul.errors_list li {
	display: inline;
	line-height: 1.3;
	color: red;
}

input.sizeSSS {
	width: 30px;
}
input.sizeSS {
	width: 60px;
}
input.sizeS {
	width: 110px;
}
input.sizeM {
	width: 150px;
}
input.sizeL {
	width: 230px;
}
input.sizeLL {
	width: 350px;
}
textarea.sizeL {
	width: 400px;
}
textarea.sizeM {
	width: 350px;
}

/* @end */