@charset "shift-jis";

body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td { 
	margin: 0;
	padding: 0;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

caption,th {
	text-align: left;
}

address,caption,cite,code,dfn,em,strong,th,var {
	font-style: normal;
}

h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}

ol,ul,li {
	list-style: none;
}

img {
	vertical-align: bottom;
	border: none;
}

.img-l {
	float: left;
	margin: 0px 15px 15px 0;
}

.img-r {
	float: right;
	margin: 0px 0 15px 15px;
}

input,textarea {
	padding: 3px;
	font-size: 120%;
	margin-right: 5px;
}

.clear {
	clear: both;
}

.hidden {
	display: none;
}

.center {
	text-align: center;
}

.right {
	text-align: right;
}

.bold {
	font-weight: bold;
}

.red {
	color: #cc0000;
}

.blue {
	color: #0000ff;
}

body {
	background: url(images/body_bg.jpg) no-repeat center top;
	color: #585858;
	font-family: Verdana, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", Osaka, Sans-Serif;
	font-size: 100%;
	text-align: center;
}


/*----------------------------------------------------
	link
----------------------------------------------------*/
a {
	outline: none;
}

a:link {
	color: #003399;
	text-decoration: underline;
}

a:visited {
	color: #003399;
	text-decoration: underline;
}

a:hover {
	color: #ff6600;
	text-decoration: none;
}

a:active {
	color: #ff6600;
	text-decoration: none;
}


/*----------------------------------------------------
	clearfix
----------------------------------------------------*/
.clearfix:after {
	content: "."; 
	display: block; 
	height: 0; 
	clear: both; 
	visibility: hidden;
}

.clearfix {
	display: inline-table;
	min-height: 1%;
}

/* Hides from IE-mac \*/
* html .clearfix { height: 1%; }
.clearfix { display: block; }
/* End hide from IE-mac */


/*----------------------------------------------------
	container
----------------------------------------------------*/
#container {
	width: 960px;
	margin: 0 auto;
	text-align: left;
}

#container p.tpath {
	margin: 15px 0;
	padding: 0;
	font-size: 75%;
	letter-spacing: 0.1em;
}

#container p.pagetop {
	clear: both;
	padding: 10px 0 0 0;
	text-align: right;
}


/*----------------------------------------------------
	header
----------------------------------------------------*/
#header {
	width: 960px;
	height: 110px;
}

#header h1 {
	margin: 0;
	padding: 5px 0 0 5px;
	color: #666666;
	font-weight: normal;
	font-size: 63%;
	letter-spacing: 0.2em;
}

#header p {
	position: absolute;
	top: 40px;
	margin: 0 0 0 0;
}

#header ul.hnavi {
	position: absolute;
	top: 0;
	width: 300px;
	height: 30px;
	margin: 0 0 0 660px;
}

#header ul.hnavi li {
	float: left;
	height: 30px;
}

#header ul.hnavi li a {
	display: block;
	height: 30px;
	text-indent:-9999px;
	text-decoration: none;
	overflow: hidden;
	background: url(images/hnavi.jpg) no-repeat;
}

#header ul.hnavi li.hnavi01 a {
	width: 105px;
	background-position: 0px 0px;
}

#header ul.hnavi li.hnavi02 a {
	width: 100px;
	background-position: -105px 0px;
}

#header ul.hnavi li.hnavi03 a {
	width: 95px;
	background-position: -205px 0px;
}


/*----------------------------------------------------
	gnavi
----------------------------------------------------*/
#gnavi {
	clear: both;
	width: 960px;
	height: 40px;
	padding: 0 0 20px 0;
}

#gnavi ul {
	list-style: none;
	width: 960px;
	height: 40px;
	margin: 0;
}

#gnavi li {
	float: left;
	height: 40px;
}

#gnavi li a {
	display: block;
	height: 40px;
	text-indent:-9999px;
	text-decoration: none;
	overflow: hidden;
	background: url(images/gnavi.jpg) no-repeat;
}

#gnavi li.gnavi01 a {
	width: 160px;
	background-position: 0px 0px;
}

#gnavi li.gnavi02 a {
	width: 160px;
	background-position: -160px 0px;
}

#gnavi li.gnavi03 a {
	width: 160px;
	background-position: -320px 0px;
}

#gnavi li.gnavi04 a {
	width: 160px;
	background-position: -480px 0px;
}

#gnavi li.gnavi05 a {
	width: 160px;
	background-position: -640px 0px;
}

#gnavi li.gnavi06 a {
	width: 160px;
	background-position: -800px 0px;
}

/* hover */

#gnavi li.gnavi01 a:hover {
	width: 160px;
	background-position: 0px -40px;
}

#gnavi li.gnavi02 a:hover {
	width: 160px;
	background-position: -160px -40px;
}

#gnavi li.gnavi03 a:hover {
	width: 160px;
	background-position: -320px -40px;
}

#gnavi li.gnavi04 a:hover {
	width: 160px;
	background-position: -480px -40px;
}

#gnavi li.gnavi05 a:hover {
	width: 160px;
	background-position: -640px -40px;
}

#gnavi li.gnavi06 a:hover {
	width: 160px;
	background-position: -800px -40px;
}


/*----------------------------------------------------
	contents
----------------------------------------------------*/
#contents {
	display: inline;
	float: left;
	width: 710px;
	margin: 0 30px 0 0;
}

#contents h2 {
	margin: 0 0 20px 0;
	padding: 0;
}

#contents h3 {
	clear: both;
	margin: 0 0 10px 0;
	/*padding: 0 0 0 50px; */
	padding: 0 0 0 10px;
	
	background: url(images/contents_h3_bg.gif) no-repeat;
	color: #371200;
	font-size: 100%;
	font-weight: bold;
	line-height: 40px;
	letter-spacing: 0.08em;
}

#contents h4 {
	clear: both;
	margin: 0 0 10px 0;
	padding: 0 0 0 48px;
	background: url(images/contents_h4_bg.gif) no-repeat;
	color: #371200;
	font-size: 94%;
	font-weight: bold;
	line-height: 30px;
	letter-spacing: 0.08em;
}

#contents p {
	margin: 0 15px 15px 15px;
	font-size: 82%;
	line-height: 1.7;
}

#contents p.button {
	line-height: 2.5;
	margin: 30px 0 0 0;
	text-align: center;
}

#contents ul {
	margin: -10px 15px 20px 20px;
}

#contents ul li {
	padding: 0 0 0 12px;
	background: url(images/bullet_orange.gif) no-repeat 0 9px;
	font-size: 82%;
	line-height: 1.7;
}

#contents ol {
	list-style-type: decimal;
	margin: 0 15px 20px 15px;
}

#contents ol li {
	list-style-type: decimal;
	list-style-position: inside;
	margin: 0 0 10px 0;
	padding: 0 0 0 0;
	font-size: 82%;
	line-height: 1.7;
}

#contents table {
	width: 680px;
	margin: 0 15px 20px 15px;
	border-top: 1px #cccccc solid;
	border-right: 1px #cccccc solid;
	font-size: 82%;
	line-height: 1.5;
}

#contents table th {
	width: 136px;
	padding: 10px 3px 10px 10px;
	border-bottom: 1px #cccccc solid;
	border-left: 1px #cccccc solid;
	font-weight: normal;
	background-color: #efefef;
}

#contents table td {
	width: 516px;
	padding: 10px 3px 10px 10px;
	border-bottom: 1px #cccccc solid;
	border-left: 1px #cccccc solid;
	background-color: #ffffff;
}


/*----------------------------------
	top page
----------------------------------*/
#top #contents #products {
	width: 960px;
	height: 450px;
	margin: 0 auto;
	text-align: left;
	background: url(images/top_products_bg.jpg) no-repeat;
}

#top #contents #products ul {
	margin: 0;
	padding: 20px 30px 0 30px;
}

#top #contents #products ul li{
	float: left;
	margin: 0;
	padding: 0;
	background: none;
}

#top #contents #products ul li.bottom {
	padding: 35px 0 0 0;
}

#top #contents #board {
	position: relative;
	width: 960px;
	height: 395px;
	margin: 0 auto -55px auto;
	padding: 0;
	text-align: left;
	background: url(images/top_board_bg.jpg) no-repeat 0 bottom;
}

#top #contents #board #news {
	display: inline;
	float: left;
	width: 350px;
	height: 340px;
	margin: 0 0 0 60px;
}

#top #contents #board #news dl {
	overflow: auto;
	margin: 40px 0 0 0;
	padding: 0;
	height: 240px;
}

#top #contents #board #news dl dt{
	margin: 0;
	padding: 0 0 0 20px;
	color: #990000;
	font-weight: bold;
	font-size: 75%;
}

#top #contents #board #news dl dt img{
	margin: 0 0 0 10px;
}

#top #contents #board #news dl dd{
	line-height: 1.7;
	margin: 0 0 15px 0;
	padding: 5px 10px 0 20px;
	font-size: 75%;
	letter-spacing: 0.1em;
}

#top #contents #board #slide {
	display: inline;
	position:relative;
	float: left;
	width: 400px;
	height: 250px;
	overflow: hidden;
	margin: 30px 0 0 80px;
	padding: 0;
}

#top #contents #board #slide div.bg {
	width: 400px;
	height: 250px;
	margin: 0 0 -250px 0;
}

#top #contents #board #slide div.bg p {
	margin: 0;
	padding: 0;
}

#top #contents #board #slide #sentence {
	z-index: 10;
}

#top #contents #board #slide #sentence div {
	margin: 0;
	padding: 0;
	width: 400px;
	height:1900px;
}

#top #contents #board #slide #sentence div p {
	margin: 0 0 8px 0;
	padding: 0 15px 0 15px;
	color: #ffffff;
	font-size: 94%;
	font-weight: bold;
	text-shadow:
	0 0 15px #666666,
	0 0 10px #666666,
	0 0 0.40px #333333,
	1px 1px 2px #000000;
	line-height: 1.5;
}

#top #contents #board #slide #sentence div p.key {
	font-size: 125%;
	text-shadow:
	0 0 15px #666666,
	0 0 10px #666666,
	0 0 2px #333333,
	0 0 1px #333333,
	0 0 1px #ffffff,
	0 0 2px #ffffff,
	0 0 3px #ffffff,
	2px 2px 4px #ffffff;
	letter-spacing: 0.04em;
}


/*----------------------------------
	products
----------------------------------*/
#products #contents p.catchcopy {
	margin: 30px 0 10px 0;
	font-size: 94%;
	line-height: 1.7;
	font-weight: bold;
}

#products #contents p.catchcopy span {
	margin: 0 10px 0 0;
	padding: 2px 4px;
	color: #ffffff;
	background: #ff8c00;
}

#products #contents p span.price {
	color: #cc0000;
	font-size: 180%;
	font-weight: bold;
}

#products #contents table {
	width: 690px;
	margin: 0 15px 15px 15px;
	border-top: 1px #cccccc solid;
	border-right: 1px #cccccc solid;
	font-size: 82%;
	line-height: 1.5;
}

#products #contents table th {
	padding: 10px;
	border-bottom: 1px #cccccc solid;
	border-left: 1px #cccccc solid;
	font-weight: normal;
	background-color: #efefef;
}

#products #contents table td.td1 {
	padding: 10px;
	border-bottom: 1px #cccccc solid;
	border-left: 1px #cccccc solid;
	background-color: #ffffff;
}

#products #contents table td.td2 {
	width: 129px;
	padding: 10px;
	border-bottom: 1px #cccccc solid;
	border-left: none;
	text-align: right;
	background-color: #ffffff;
}

#products #contents table td.td3 {
	width: 129px;
	padding: 10px;
	border-bottom: 1px #cccccc solid;
	border-left: 1px #cccccc solid;
	text-align: center;
	background-color: #ffffff;
}

/* 『罫線なし』の設定 */

#products #contents table.no-border,
#products #contents table.no-border th,
#products #contents table.no-border td {
	border: none;
}

#products #contents table.no-border p,
#products #contents table.no-border li {
	font-size: 100%;
}


/*----------------------------------
	order
----------------------------------*/
#order #contents {
	display: block;
	float: none;
	width: 710px;
	margin: 0 auto 0 auto;
}

#order #contents table th {
	width: 199px;
	padding: 10px;
	border-bottom: 1px #cccccc solid;
	border-left: 1px #cccccc solid;
	font-weight: normal;
	background-color: #efefef;
}

#order #contents table td {
	width: 439px;
	padding: 10px;
	border-bottom: 1px #cccccc solid;
	border-left: 1px #cccccc solid;
	background-color: #ffffff;
}

#order #contents table.list th,
#order #contents table.list02 th {
	text-align: center;
}

#order #contents table.list th.item,
#order #contents table.list td.item {
	width: 349px;
}

#order #contents table.list th.price,
#order #contents table.list td.price {
	width: 89px;
}

#order #contents table.list td.price,
#order #contents table.list02 td.price {
	text-align: right;
}

#order #contents table.list th.qty,
#order #contents table.list td.qty {
	width: 69px;
}

#order #contents table.list td.qty,
#order #contents table.list02 td.qty {
	text-align: center;
}

#order #contents table.list02 th.item,
#order #contents table.list02 td.item {
	width: 299px;
}

#order #contents table.list02 th.price,
#order #contents table.list02 td.price {
	width: 79px;
}

#order #contents table.list02 th.qty,
#order #contents table.list02 td.qty {
	width: 59px;
}

#order #contents table.list02 th.note,
#order #contents table.list02 td.note {
	width: 79px;
}

#order #contents p.note {
	width: 650px;
	padding: 10px;
	border: 4px double #b0c8c2;
}

#order #contents p.message {
	margin: 20px 15px;
	font-weight: bold;
	font-size: 108%;
	text-align: center;
}

#order #contents p.message-comp {
	margin: -80px 0 0 0;
	padding: 90px 15px 10px 180px;
	font-size: 94%;
	background: url(images/message_comp_bg.jpg) no-repeat 30px 0;
}

#order #contents ul.error {
	margin: 20px 15px;
	padding: 0 0 70px 0;
/*	background: url(images/message_error_bg.jpg) no-repeat 70px 0;*/

}

#order #contents ul.error li {
/*	margin: 0 15px 0 195px; */
	padding: 0 0 0 25px;
/*	background: url(images/icon_check.jpg) no-repeat left center;*/
	font-size: 94%;
	line-height: 2.0;
}

#order #footer p {
	padding: 90px 0 40px 0;
}


/*----------------------------------
	mypage
----------------------------------*/
#mypage #contents {
	display: block;
	float: none;
	width: 710px;
	margin: 0 auto 0 auto;
}

#mypage #contents table.login {
	width: 510px;
	margin: 0 100px 20px 100px;
}

#mypage #contents table.login th {
	width: 40%;
}


#mypage #contents table.login td {
	width: 60%;
}


/*----------------------------------
	sitemap
----------------------------------*/
#sitemap #contents ul {
	margin: 0 15px 20px 70px;
}

#sitemap #contents ul li {
	margin: 0 0 15px 0;
	padding: 0 0 0 22px;
	background: url(images/icon_folder.gif) no-repeat 0 3px;
	font-size: 82%;
	line-height: 1.8;
}

#sitemap #contents ul li ul {
	margin: 0 0 0 15px;
}

#sitemap #contents ul li ul li {
	margin: 0;
	padding: 0 0 0 12px;
	background: url(images/icon_sitemap_li.gif) no-repeat 0 2px;
	font-size: 100%;
}


/*----------------------------------------------------
	menu
----------------------------------------------------*/
#menu {
	display: inline;
	float: left;
	width: 220px;
	margin: 0 0 0 0;
}

#menu ul {
	width: 220px;
	margin: 0 0 0 0;
	padding: 0 0 0 0;
}

#menu ul li {
	padding: 0 0 0 0;
}

#menu ul li ul {
	margin: 10px 0 10px 0;
	padding: 0 0 10px 0;
}

#menu ul li ul li {
	line-height: 2.0;
	margin: 0 3px 0 3px;
	padding: 0 0 3px 5px;
	background: url(images/dot_line.gif) repeat-x left bottom;
	font-size: 82%;
}

#menu ul li ul li a {
	padding: 0 0 0 18px;
	text-decoration: none;
	background: url(images/arrow.gif) no-repeat 0 4px;
}


/*----------------------------------------------------
	footer
----------------------------------------------------*/
#footer {
	clear: both;
	background: url(images/footer_bg.jpg) repeat-x left top;
	margin: 0;
	padding: 0;
}

#footer p {
	padding: 5px 0 40px 0;
	color: #ffffff;
	font-size: 75%;
}

#footer ul {
	margin: 0;
	padding: 90px 0 30px 0;
	background: url(images/footer_ul_bg.jpg) no-repeat left bottom;
}

#footer ul li {
	display: inline;
	line-height: 2.5;
	padding: 0 8px 0 5px;
	border-right: 1px solid #ffffff;
	font-size: 75%;
	letter-spacing: 0.08em;
}

#footer ul li.last {
	border-right: none;
}

#footer ul li a {
	color: #ffffff;
}

#footer ul.banner {
	margin: 0;
	padding: 0 0 30px 0;
	letter-spacing: -0.4em;
}

#footer ul.banner li {
	display: inline;
	margin: 0;
	padding: 0 10px 0 0;
	border: none;
	letter-spacing: normal;
}


/*----------------------------------------------------
	window
----------------------------------------------------*/
body#window {
	background: #ffffff;
}

body#window #container {
	width: 710px;
	margin: 30px auto 0 auto;
}

body#window #container h2 {
	margin: 0 0 10px 0;
	padding: 0 0 0 50px;
	background: url(images/contents_h3_bg.gif) no-repeat;
	color: #371200;
	font-size: 100%;
	font-weight: bold;
	line-height: 40px;
	letter-spacing: 0.08em;
}

body#window #container p {
	margin: 0 15px 15px 15px;
	font-size: 82%;
	line-height: 1.7;
}
