@charset "euc-jp";

* {
	margin: 0;
	padding: 0;
/*	line-break: strict; */
}
body {
	margin: 0pt 0px 0px 0px;
	padding: 0px 24px 0px 24px; 
	letter-spacing:0px;

	color: #000000;
	font-size: 1em;

	background-color: white;
	padding: 0px 8px 0px 8px;
}

div {
	line-height: 1.6em;
}

table {
	border-collapse: collapse;
}

em {
	font-weight: bold;
	font-style: normal;
}
strong {
	font-weight: normal;
	color: #DC143C;
}
	

img {
	margin: 0px;
	padding: 0px;
	border: 0px none;
}

p {
	text-indent: 1em;
	font-size: 100%;
	padding: 8px 0px 7px 0px;
	font-family: Verdana, Arial, Helvetica, sans-serif;
	letter-spacing: 0.1em;
}

dl {
	margin: 3px 3px 3px 10px;
	font-size: 100%;
}

dd {
	margin: 0px 0px 0px 1em;
	font-size: 100%;
}

dt {
	padding: 8px 0px 0px 0px;
	font-weight: bolder;
	font-size: 100%;
}

ol {
	padding: 8px 0px 0px 1em;
}
li ol {
	padding: 0px;
}

ul {
	padding: 8px 0px 0px 32px;
}

li {
	margin-top: 0.2em;
	margin-bottom: 0.2em;
	font-size: 100%;
}

caption {
	font-size: 100%;
}
th {
	font-size: 100%;
}
table td {
	font-size: 100%;
	vertical-align: text-top;
}

address {
	font-weight: normal;
	font-style: normal;
}

.clear {
	clear: both;
}
.nowrap {
	white-space: nowrap;
}
.hidden {
	display: none;
}

.center {
	text-align: center;
	width: 100%;
	margin-left: auto;
	margin-right: auto;
}

img.right {
	clear: right;
	float: right;
	margin: 10px 10px 0px 10px;
}

img.left {
	clear: left;
	float: left;
	margin: 10px;
	padding: 0px;
}


#layoutmain td#mainarea {
	vertical-align: top;
	margin: 0;
	padding: 0;
	width: 100%;
}

/* main contents ======================================*/

#layoutmain {
/*div#copyright {*/
	width: 100%;
/*		border-left: 1px solid #999999;
	border-right: 1px solid #999999;*/
}
#layoutmain {
	border-spacing: 0px;
	border-collapse: collapse;
}

#layoutmain {
	color: black;
	background-color: white;
	margin: 0px;
	padding: 0px;

	border-bottom: 1px solid #999999;
}



/*== topnav ==============================================*/

#layoutmain .topnav,
#layoutmain .topnav a,
#layoutmain .topnav p {
	color: white;
	font-size: 80%;
	line-height: 1em;
}

#layoutmain .topnav {
	background-color: black;
	margin: 0;
	padding: 0px 1em 0px 1em;
	text-align: right;

	border-top: 0px solid black;
	border-left: 0px solid black;
	border-right: 0px solid black;
	border-bottom: 1px solid red;
}

#layoutmain .topnav a {
	padding: 0 16px 0 16px;
}

#layoutmain .topnav p {
	display: block;
	padding: 0;
	margin: 0;
}
#layoutmain .topbanner2 span.hidden {
	display: none;
}
#layoutmain .topbanner2 span {
	line-height: 1.1em;
}




#layoutmain div {
	text-align: left;
/*		padding: 10px;*/
	margin: 0;
}


/* main contents ======================================*/

div#maincontent {
	padding: 0px;
	margin: 0px;
	border: 0px;
}

/* section ----------------------------------------------*/

#maincontent .section {
	width: auto;
	clear: both;
	padding: 0px;
/*	margin: 10px 5px 15px 12px; */
	margin: 10px 0.5em 15px 0px;
	border-top: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC; /*double #CCCCCC;*/
	border-right: 0px none #CCCCCC;
	border-bottom: 0px none #CCCCCC;
}

#maincontent .section p {
	margin: 2px 5px 2px 10px;
}

#maincontent .section ol {
	margin: 2px 5px 2px 30px;
}

#maincontent .section ul {
	margin: 2px 5px 2px 20px;
}

#maincontent .section H4 {
	margin: 28px 5px 6px 1em;
}

#maincontent .section H5 {
	margin: 10px 1px 2px 1.5em;
}


#maincontent .section div#news {
	clear: both;
	text-align: left;
	margin: 2px 0px 2px 3px;
	padding: 2px;
}
div#news span {
	display: block;
	margin: 0px;
	white-space: nowrap;
	padding: 2px 6px 2px 6px;
	border-left: 1em solid #DDDDDD;
	border-right: 3.4em solid #DDDDDD; 
	border-bottom: 1px solid #CCCCCC;
	line-height: 1.2em;
	height: 100%;
}
div#news  p {
	margin: 0px;
	padding: 2px 6px 4px 0px;
}
div#news div.topic {
	margin: 0px;
	padding: 2px 6px 4px 6px;
	border: 0px;
}
div#news dl {
    margin: 10px 0px 0px 0px;
    padding: 0px;
}
div#news dt,
div#news dd {
    text-indent: 0px;
    padding: 0px;
    margin: 0px;
}
div#news dd {
    margin-bottom: 2em;
}
div#news h4 {
	display: block;
	clear: none;
    color: #660033;
	background: none;
	padding:  0px 0px 0px 0px;
	margin: 0px 0px 0px 0px;
	border-color: #660033;
	border-width: 0px 0px 1px 0px;
    border-style: solid;
	text-align: left;
	width: 90%;
    font-size:100%;
    line-height: 130%;
}


/*       ----------------------------------------------*/

#maincontent div.supplement {
	clear: both;
	margin: 0px 1em 0px 1em;
}

#maincontent div.tips {
	margin: 0.2em;
	background-color: #FF9900;
	color: #FFFFFF;
	font-weight: bolder;
	font-size: 130%;
	text-align: center;
	width: 10em;
	line-height: 1.4em;
}

#maincontent div.strongsale {
	margin: 0.2em;
	padding: 0.5em 1em 0.3em 1em;
	background-color: #FF9900;
	color: #FFFFFF;
	font-weight: bolder;
	font-size: 130%;
	text-align: center;
	width: auto;
	font-family: fantasy;
}

/*
#maincontent .sitemage img {
	margin: 10px 0px 10px 0px;
	border: 1px solid black;
	align: center;
}
*/

#maincontent div.fmessage {
	margin: 0;
	padding: 0;
	background-color: #EEEEEE;
	border-top: 1px solid white;
	border-bottom: 1px solid #CCCCCC;
	line-height: 1.2em;
}
#maincontent .fmessage p {
	margin: 0;
	padding: 5px 3px 5px 3px;
}
/* delivery ---------------------------------------------*/

#maincontent table.delivery {
	background-color: #EEEEEE;
	margin: 10px 10px 10px 10px;
	vertical-align: top;
}

#maincontent caption.delivery {
	background-color: #DDDDDD;
	text-align:left;
	padding: 5px;
}

#maincontent table.delivery td {
	background-color: #EEEEEE;
	text-align:left;
	padding: 5px;
}
#maincontent table.delivery th {
	background-color: #DDDDDD;
	text-align:left;
	padding: 5px;
	white-space: nowrap;
}

/* hangermessages ---------------------------------------------*/

#maincontent div#hangermessages {
	text-align: center;
	vertical-align: top;
}
#maincontent #hangermessages table {
	width: 100%;
}
#maincontent #hangermessages table td{
	width: 50%;
	padding: 0;
	vertical-align: top;
	text-align: center;
/*
	border-top: 1px solid red;
	border-left: 1px solid red;
	border-right: 1px solid red;
	border-bottom: 1px solid red;
*/
}
#maincontent #hangermessages div.hanmsg {
	background-color: #EEEEEE;
	text-align: left;
}
/*	#maincontent #hangermessages div.hanimage {
	float: left;
}
*/	#maincontent #hangermessages div.hanimage table {
	width: 250px;
	background-color: blue;
}
#maincontent #hangermessages div.hanimage div {
	text-align: center;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
}
#maincontent #hangermessages .hanimage div.hantype {
	text-align: center;
	vertical-align: top;
	white-space: nowrap;
	font-weight: bolder;
	width: 11em;

	margin: 0px;
	padding: 3px 0px 3px 0px;

	background-color: #FFCC33;
	border-top: 1px solid #FF9900;
	border-left: 3px solid #FF9900;
	border-right: 3px solid #FF9900;
	border-bottom: 1px solid #FF6600;
}
#maincontent #hangermessages .hanimage div.handesc {
	text-align: center;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
}
#maincontent #hangersample .hansmp {
	text-align: center;
	vertical-align: top;
	margin: 0px;
	padding: 0px;
	float: left;
	width: 240px;
}
#maincontent #hangersample .hansmp div {
	text-align: center;
	vertical-align: top;
}
#maincontent #hangersample .hanfotter {
	clear: both;
}

#maincontent div.spsale {
	margin: 0.2em;
	padding: 4px 3px 3px 10px;
	background-color: #FF0000;
	color: #FFFFFF;
	text-align: center;
	font-size: 130%;
}
table.reference {
	margin: 20pt;
}
.reference td {
	padding: 6px 4px 3px 4px;
	vertical-align: top;
	border-bottom: 1px solid #DDDDDD;
}



/* nowpos =============================================*/

div#nowpos {
	color: white;
	background-color: #3399CC; /*#000066;*/
	margin: 0px;
	padding: 3px 1em 2px 1em;
	text-align: left;
	line-height: 1.3em;

	border-top: 0px solid black;
	border-left: 0px solid black;
	border-right: 0px solid black;
	border-bottom: 1px solid #999999;
}

#nowpos a {
/*	font-size: 90%; */
	color: white;
	background-color: #3399CC;
	text-decoration: underline;
}
#nowpos a:visited {
	color: #DDDDDD;
}
#nowpos a:hover {
	color: white;
	background-color: #0000FF;
}

/* copyright =============================================*/

div#pagefooter {
	margin: 0px;
/*	width: 100%;*/
	vertical-align: baseline;
	font-size: x-small;
	border-bottom: 1px solid black;
	color: black;
}

div#pagefooter div#copyright {
	background-color: #336699;
	margin: 0px -1px 0px -1px;
	font-size: x-small;
	text-align: center;

	border-top: 0px solid black;
	border-bottom: 1px solid #999999;		
}
div#pagefooter div#copyright * {
	font-size: x-small;
	padding: 0;
	margin: 0;
	text-indent: 0em;
}

div#pagefooter a {
/*	color: white;*/
}

div#pagefooter a:hover {
	color: red;
}

div#siteinfo {
	text-align: left;
}

div#siteinfo ul {
	list-style-type: disc;
	margin: 0px;
	padding: 0px;
}
div#siteinfo li {
	display: inline;
	margin: 0px 5px 0px 5px;
}
div#pagefooter #siteinfo  {
	height: 5.5em;
}

/* plistmain =============================================*/

table#plistmain {
	margin: 0; /* 1eX 10px 1eX 10px; */
	background-color: #EEEEEE;
	width: 100%;
	padding: 0;
	border-collapse: collapse;

/*		border: 2px solid red; */
}

table#plistmain td {
	vertical-align: top;
	padding: 10px;
	width: auto;
}

table#plistmain table.plist {
	background-color: #FFFFFF;
	padding: 0; /*4px 2px 4px 2px;*/
	margin:  10px 0px 10px 0px;
	width: 100%;
	border: 1px solid #999999;
}


table#plistmain table.plist caption,
table#plistmain table.plist th,
table#plistmain table.plist td {
	margin: 0;
	padding: 3px 4px;
	width: auto;
	vertical-align: top;
	white-space: nowrap;
}
#plistmain table.plist caption {
	background-color: #0000CC;
	color: white;
	font-weight: bolder;
	margin: 0;
}
#plistmain table.plist td {
	text-align: right;
}
#plistmain table.plist td,
#plistmain table.plist th {
	white-space: nowrap;
	border-bottom: 1px solid #EEEEEE;
}



/* schedule =============================================*/

table#schedule {
	width: 90%;
	border-top: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
	padding: 4px;
	margin: 3px 8px;
}
table#schedule caption {
	background-color: #CCCCCC;
	color: black;
	text-align: left;
	font-weight: bold;
	padding: 3px 3px 2px 1em;
	margin: 0px 8px 0px 8px;
}
table#schedule td {
	text-align: center;
}

#schedule table.calender {
	background-color: white;
	border-top: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
	border-right: 1px solid #CCCCCC;
	border-bottom: 1px solid #CCCCCC;
/*		eIpty-cells: show; */
	border-collapse: collapse;
	margin: 0px;
	line-height: 1.2em;
}

#schedule table.calender td {
	padding: 3px;
	text-align: right;
	border-top: 1px solid #CCCCCC;
	border-left: 1px solid #CCCCCC;
	border-right: 0px solid #CCCCCC;
	border-bottom: 0px solid #CCCCCC;
}
#schedule table.calender caption {
	background-color: #000099;
	color: white;
	text-align: center;
	margin: 0px 0px 0px 0px;
}
#schedule table.calender th {
	text-align: center;
	color: #666666;
	background-color: #C7D8ED;
}
#schedule table.calender th.sun {
	color: white;
	background-color: red;
}
#schedule table.calender th.sat {
	color: blue;
}
#schedule table.calender td.holiday {
	color: white;
	background-color: red;
}
#schedule table.calender td.sunday {
	background-color: #FFCC99;
}
table#schedule div.schedulelist {
	clear: both;
	border-top: 1px solid #999999;
	text-align: left;
	margin: 2px 6px 2px 6px;
	padding: 2px;
}
table#schedule .schedulelist span {
	display: block;
/*	width: 9em; */
	margin: 0px;
	
	white-space: nowrap;
	padding: 2px 6px 2px 6px;
	border-left: 1em solid #DDDDDD;
	border-right: 5em solid #DDDDDD;
	border-bottom: 1px solid #CCCCCC;
}
table#schedule .schedulelist p {
	margin: 0px;
	padding: 2px 6px 4px 6px;
}

#schedule div.calframe {
	float: left;
	width: auto;
	margin: 7px;
}



/*- section ---------------------------------------------*/

#maincontent .section div.step1,
#maincontent .section div.step2,
#maincontent .section div.step3 {
	margin: 12px 8px 12px 8px;
	padding: 2px 1px 18px 1px;
}

#maincontent .section div.step1 {
	background-color: #EEEEEE;

	border-style: solid;
	border-color: white;
	border-top:    1px solid white;
	border-left:   1px solid white;
	border-bottom: 1px solid #CCCCCC;
	border-right:  1px solid #CCCCCC;
}

#maincontent .section div.step2 {
	background-color: #EEEEEE;

	border-top:    1px solid white;
	border-left:   1px solid white;
	border-bottom: 1px solid #CCCCCC;
	border-right:  1px solid #CCCCCC;
}

#maincontent .section div.step3 {
	background-color: #EEEEEE;

	border-top:    1px solid white;
	border-left:   1px solid white;
	border-bottom: 1px solid #CCCCCC;
	border-right:  1px solid #CCCCCC;
}

#maincontent .section .storeinfo {
	vertical-align: top;
	width: auto;
	margin: 12px 8px 12px 8px;
}

#maincontent .section .storeinfo td {
	vertical-align: top;
	margin: 0px;
	padding: 0px;
}

#maincontent .section .storeinfo tr {
	vertical-align: text-top;
	margin: 0px;
	padding: 0px;
}
#maincontent .section .storeinfo dl {
    margin: 0px;
    padding: 0px;
}
#maincontent .section .storeinfo dd {
	vertical-align: top;
	white-space: normal;
	font-weight: normal;
/*	display: list-item;*/
	text-indent: 0em;
}
maincontent .section .storeinfo p {
	vertical-align: top;
	white-space: normal;
	font-weight: normal;
	display: inline;
	text-indent: 0em;
    margin:0px;
    padding:0px;
    background-color: red;
}


#maincontent div#deliveryform {
	padding: 4px;
	margin: 0 0 20px 0;
}


#maincontent #deliveryform dt {
	border-top:   1px solid #d5dcf2;
	border-left:  10px solid #e8ecf8;
	padding: 6px 1px 1px 15px;
}
#maincontent #deliveryform dd {
	margin: 1px 1px 15px 15px;
}
#maincontent #deliveryform strong {
	color: red;
}
#maincontent div.inputerr {
	margin: 10px;
	border-top:    1px solid black; 
	border-bottom: 1px solid black; 
	border-left:   1px solid black;
	border-right:  1px solid black; /*#FFCC99;*/
	background-color: #FFCC66;
}
#maincontent div.inputerr strong {
	display: block; 
	background-color: red;
	color: white;
	padding: 8px;
}

#maincontent div.writer {
	padding: 12px 8px 12px 8px;
	text-align:right;
}

/*
#maincontent .section .storeinfo a {
	display: block; 

	border-top:    1px solid #6699FF; 
	border-bottom: 1px solid #6699FF; 
	border-left:   1px solid #6699FF;
	border-right:  1px solid #6699FF;
	background-color: #CCFFFF;

	text-decoration: underline;

	color: black;

	width: 15em;
	height: 1.5em;

	margin: 3px 3px;
	padding: 10px 10px 3px 10px;

	text-align: center;
	vertical-align: middle;
}
#maincontent .section .storeinfo a:hover { 
	display: block; 

	border-bottom: 1px solid #6699FF; 
	border-top:    1px solid #6699FF; 
	border-left:   1px solid #6699FF;
	border-right:  1px solid #6699FF;
	background-color: #66CCCC;

	text-decoration: underline;

	color: red;

	width: 15em;
	height: 1.5em;

	margin: 3px 3px;
	padding: 10px 10px 3px 10px;

	text-align: center;
	vertical-align: middle;
}
*/


#maincontent div.section address.storeimage {
	vertical-align: top;
}

#maincontent .section .storeimage img {
    text-aling: center;
/*	margin: 3em 0em 0em 1em;*/
    margin: 1em 0px 0px 0px;
    paddin: 0px;
	border: 1px solid black;
}

#maincontent div.deliverystep {
	padding: 8px;
}

#maincontent .deliverystep .delstepnow,
#maincontent .deliverystep .delstepdone,
#maincontent .deliverystep .delsteppending {
	display: block;
	float: left;

	margin: 0px 3px 0px 3px;
	padding: 0px 10px 0px 10px;
	width: 10em;

	text-align: center;
	font-size: 90%;
	line-height: 1.4em;
}
#maincontent .deliverystep .delstepnow{
	background-color: #CCCCFF;
	border: 1px solid red;
}
#maincontent .deliverystep .delstepdone {
	background-color: #DDDDDD;
	border: 1px solid 999999;
	color: #999999;
}

#maincontent .deliverystep .delsteppending {
	border: 1px dotted #DDDDDD;
	color: #999999;
}

#maincontent input {
	font-size: 100%;
	line-height: 1.4em;
}

#maincontent .supplement p.clearfloat {
	clear: both;
}



#maincontent div.quest {
	color: black;
	margin: 10px 20px 0px 20px;
}
#maincontent .section .quest p.ptitle {
	color: black;

	border-left: 4px solid red;
	border-bottom: 1px solid red;

	padding: 3px 6px 2px 6px;

	display: block;

	font-size: 100%;
}

#maincontent .section .quest a {
	margin: 2px 10px 10px 20px;
	padding: 4px 10px 4px 10px;
	width: 8em;
	display: block;
	float: left;
}
#maincontent .section .quest p {
	clear: both;
	font-size: 90%;
}

#maincontent .section table.useragents {
	margin: 10px;
	padding: 4px;
	width: auto;
	border-top: 1px solid blue;
	border-bottom: 1px solid blue;
}
#maincontent .section table.useragents th,
#maincontent .section table.useragents td
 {
	padding: 3px 0px 0px 2em;
}

#maincontent .section table.useragents th {
	background-color: #e8ecf8;
}

#maincontent .step1 table.jismark {
	margin: 4px 8px 4px 32px;
	border: 1px solid black;
	background-color: white;
}
#maincontent .step1 .jismark td{
	padding: 10px;
}


/*= mainFooter ============================== */

table#mainFooter {
	margin: 0px;
	width: 100%;
	text-align: center;
	vertical-align: baseline;
	font-size: 90%;
	background-color: #000099;
	border-bottom: 1px solid black;
}

#mainFooter div.pguidehome,
#mainFooter div.pguideprev,
#mainFooter div.pguidenext {
	padding: 4px;
	margin: 0px;
}
/*
#mainFooter div.pguidehome {
	background-color: #0000DD;

	width:25%;

	position: relative ;
	top: 0px;
	left: 0px;
	float: left;
	text-align: center;
}
#mainFooter div.pguideprev {
	background-color: #000099;

	width: 35%;

	position: relative ;
	top: 0px;
	left: 0px;
	float: left;
}
#mainFooter div.pguidenext {
	background-color: #000099;

	width:35%;

	float: right;

	text-align: right;

}
*/
div#mainFooter {
	background-color: #FFFFFF;
	text-align: center;
	height: 100%;
	color: black;
	border-top: 1px solid black;
	padding: 10px;
}

table#mainFooter {
	color: white; 
}

table#mainFooter td.pguidehome,
table#mainFooter td.pguideprev,
table#mainFooter td.pguidenext {
	padding: 4px;
	margin: 1px;
/*	color: white; */
}
table#mainFooter td.pguidehome {
	width: 22%;
	background-color: #000099;
}
table#mainFooter td.pguideprev,
table#mainFooter td.pguidenext {
	width: 35%;
	background-color: #0000DD;
}

table#mainFooter a {
	color: white;
	letter-spacing: 0.1em;
}

table#mainFooter a:hover {
	color: red;
	letter-spacing: 0.1em;
}

table.data {
	border-top: 1px solid #999999;
	border-bottom: 1px solid #999999;
}

table.data caption {
	background-color: #aaaaff;
	text-align: left;
	padding: 0.5em 1em 0px 1em;
	font-weight: bold;
}

table.data tr.uneven {
	background-color: #CCFFFF;
}
table.data tr.uneven {
	background-color: #CCFFFF;
}
table.data td {
	padding: 0.5em 1em 0px 1em;
}

.idxbody {
}

.idxnews {
	float: left;
	width: 60%;
	maring: 0px;
	padding: 0px;
}

.idxtopic {
	float: left;
	padding: 0px;
	margin: 0% 0% 0% 61%;
	width: 39%;
}


