@charset "UTF-8";

/* *********************************************************
 *
 *	This stylesheet provides default styles.
 *	Assumed for PC screens, projectors, and TVs.
 *
 *	Checked and valided by W3C(R) Validator.
 *      http://jigsaw.w3.org/css-validator/
 *
 * *********************************************************
 */


/* *********************************************************
 *
 *	The following styles are for general pages.
 *
 * *********************************************************
 */

html { min-width: 780px; } /* For Mozilla's bug */

body {
	margin: 0 auto;
	padding: 0;
	font-family: Verdana, Arial, "ヒラギノ角ゴ Pro W3", "Osaka", "ＭＳ Ｐゴシック", sans-serif;
}
.style1 {
	color: #666666;
	font-size: 12px;
	line-height: 16px;
}
.style2 {
	color: #333333;
	font-size: 13px;
}
.style3 {
	color: #FFFFFF;
	font-size: 12px;
}
.style4 {
	color: #333333;
	font-size: 13px;
}
a:link {
	color: #666666;
}
a:hover {
	color: #cc3333;
}
a:active {
	color: #000000;
}
a:visited {
	color: #666666;
}

/* For Container */

div#container {
	width: 760px;
	margin: 0 auto;
	padding: 0 0 20px;
	text-align: left;
	}


/* For Title */

div#title {
	position: relative;
	left: 17px;
	width: 725px;
	height: 50px;
	margin: 0;
	padding: 0;
	background: #699 url(/images/title.png) no-repeat left top;
	text-align: left;
	}
div#title h1,
div#title p {
	width: 725px;
	height: 50px;
	overflow: hidden;
	margin: 0;
	padding: 26px 0 0;
	border: 0;
	color: white;
	font-size: 25px;
	font-weight: bold;
	text-indent: -4px;
	letter-spacing: 0.05em;
	}
html>body div#title h1,
html>body div#title p { padding-top: 26px; }

html:lang(ja) div#title h1,
html:lang(ja) div#title p { padding-top: 29px; }

div#title a { color: white; text-decoration: none; outline-width: 0; }
div#title ul, div#title dl { display: none; }


/* For Footer */

address#copyright {
	position: relative;
	left: 17px;
	clear: both;
	width: 725px;
	margin: 0;
	padding: 5px 0;
	border-top: 1px solid #366;
	border-bottom: 1px solid #366;
	background: white url(/images/copy_bcg.gif) no-repeat top left;
	font-size: xx-small;
	font-style: normal;
	text-align: right;
	line-height: 1.5;
	}
html>body address#copyright { margin-top: 2em; font-size: x-small; line-height: 1.6; }


/* For Content Area */

div#content {
	position: relative;
	left: 17px;
	float: left;
	width: 529px;
	margin: 0 0 2em;
	padding: 0;
	background: #fff;
	text-align: left;
	line-height: 1.5;
	overflow: hidden;
	}
html>body div#content { width: 527px; }

div#content h1#contentstart,
div#content h2#contentstart {
	margin: 1em 0 0.5em;
	padding: 15px 0 0;
	background: url(/images/h1_bcg.gif) no-repeat center right;
	color: #366;
	font-weight: bold;
	font-size: 150%;
	}

/* For Main Visual */

div#visual, div#visualcreating, div#visualreferences, div#visualselected, div#visualforum,
div#visualblog, div#visualabout, div#visualsitemap {
	width: 527px;
	height: 120px;
	margin: 0;
	padding: 0;
	border: 1px solid silver;
	}
html>body div#visual, html>body div#visualcreating, html>body div#visualreferences,
html>body div#visualselected, html>body div#visualforum,
html>body div#visualblog, html>body div#visualsitemap {
	width: 525px;
	}

div#visual           { background: silver url(/images/visual.jpg) repeat-x; }
div#visualcreating   { background: silver url(/images/visual_creating.jpg) repeat-x; }
div#visualreferences { background: silver url(/images/visual_references.jpg) repeat-x; }
div#visualselected   { background: silver url(/images/visual_selected.jpg) repeat-x; }
div#visualforum      { background: silver url(/images/visual_forum.jpg) repeat-x; }
div#visualblog       { background: silver url(/images/visual_blog.jpg) repeat-x; }
div#visualabout      { background: silver url(/images/visual_about.jpg) repeat-x; }
div#visualsitemap    { background: silver url(/images/visual_sitemap.jpg) repeat-x; }

div#visual dl, div#visualcreating dl, div#visualreferences dl, div#visualselected dl,
div#visualforum dl, div#visualblog dl, div#visualabout dl, div#visualsitemap dl {
	display: none;
	}


/* For Ad Area */

div#ad {
	width: 527px;
	margin: 0 0 15px;
	padding: 5px;
	border-left: 1px solid silver;
	border-right: 1px solid silver;
	border-bottom: 1px solid silver;
	background: white;
	font-size: x-small;
	line-height: 1.1;
	}
html>body div#ad { font-size: small; width: 515px; }
div#ad p   { margin: 0; padding: 0; }
div#ad p a {
	padding-left: 25px;
	background: url(/images/ad_head.gif) no-repeat center left;
	text-decoration: none;
	}
div#ad p#adnoscript { color: gray; }


/* For Episode */

div#episode {
	float: right;
	width: 300px;
	margin: 1.5em 0;
	border-top: 2px dotted #699;
	border-left: 2px dotted #699;
	background: url(/images/topstory_bcg.gif) no-repeat top left;
	font-size: x-small;
	}
html>body div#episode { font-size: small; }
div#episode h2       { display: none; }
div#episode p        { margin: 1.2em 0 1.2em 1.5em; }
div#episode span     { color: #366; font-weight: bold; }
div#episode p#author { text-align: right; color: #366; font-weight: bold; }


/* Other */

div.samples, div.note, div.case {
	clear: both;
	margin: 1.5em 0;
	padding: 0 15px;
	border: 1px solid silver;
	}
div.samples { overflow: auto; }
div.note    { background: url(/images/note_bcg.gif) no-repeat top right; }
div.case    { background: url(/images/case_bcg.gif) no-repeat top right; }

div.note h3, div.case h3 { margin: 1em 0; padding-left: 22px; border: 0; font-size: 100%; }
div.note h3 { background: url(/images/note_icon_bcg.gif) no-repeat center left; }
div.case h3 { background: url(/images/case_icon_bcg.gif) no-repeat center left; }
div.note span, div.case span { display: none; }

h2 span, h3 span, dt span, legend span { font-weight: normal; }

.feedtitleh1 { padding-left: 30px; background: url(/images/feed24x24.gif) no-repeat bottom left; }
.feedtitleh2 { padding-left: 22px; background: url(/images/feed16x16.gif) no-repeat center left; }

p.ex, pre.ex, p.expoor, pre.expoor, p.exgood, pre.exgood {
	margin: 1.5em 0;
	padding: 8px;
	border: 1px solid silver;
	background: #efefef;
	font-family: monospace;
	}
p.expoor, pre.expoor {
	border: 1px solid silver;
	background: white url(/images/expoor_bcg.gif) no-repeat top right;
	}
p.exgood, pre.exgood {
	border: 1px solid #f9f;
	background: white url(/images/exgood_bcg.gif) no-repeat top right;
	}
p.expoor span, pre.expoor span, p.exgood span, pre.exgood span { display: none; }

p.goto, p.powered { text-align: right; font-size: 85%; }

dl.uri dt { color: gray; }
dl.uri dd {
	margin-top: 0;
	margin-left: 20px;
	padding-left: 20px;
	background: url(/images/dd_uri.gif) no-repeat top left;
	}

dl#rss dd {     /* In XSLT for RSS */
	padding: 1em;
	border-top: 1px solid silver;
	border-left: 1px solid silver;
	border-right: 1px solid gray;
	border-bottom: 1px solid gray;
	background-color: #efefef;
	}

html>body a.external {
	padding-right: 23px;
	background: url(/images/link_other.gif) no-repeat center right;
	}
html>body a.mailto {
	padding-right: 18px;
	background: url(/images/mailto.gif) no-repeat center right;
	}
a.foaf {
	padding-right: 30px;
	background: url(/about/images/foafTiny.gif) no-repeat center right;
	}
a.feed {
	padding-left: 16px;
	background: url(/images/feed.gif) no-repeat center left;
	}
a.feedlong {
	padding-right: 16px;
	background: url(/images/feed.gif) no-repeat center right;
	}
img.flrt { float: right; margin: 0 0 0 10px; }
input.solid, textarea.solid { width: 80%; }

span.letteruppercase { text-transform: uppercase; }
span.letterlowercase { text-transform: lowercase; }

div#content h2:first-letter {
	margin-right: 0.1em;
	padding: 0.3em;
	background: #366 url(/images/h2_bcg_firstletter.png) repeat-x bottom;
	color: white;
	font-size: 150%;
	}
div#content h2#contentstart:first-letter {
	margin-right: 0;
	padding: 0;
	background: none;
	color: #366;
	font-size: 150%;
	}
div#content h2#contentstart:first-letter {
	font-size: 100%;
	}
* html div#content h2#contentstart:first-letter {
	font-size: 130%;
	}
*+html div#content h2#contentstart:first-letter {
	font-size: 130%;
	}

/* For Sidebar */

div#sidebar {
	position: relative;
	left: 33px;
	float: left;
	width: 180px;
	margin: 0 0 3em;
	padding: 0;
	background-color: #cdd;
	color: #221;
	font-size: 78%;
	line-height: 1.5;
	overflow: hidden;
	}
html>body div#sidebar { left: 35px; font-size: 85%; line-height: 1.3; }

div#sidebar a { text-decoration: none; }
div#sidebar a:hover, div#sidebar a:active { text-decoration: underline; }

div#sidebar h2 {
	margin: 0;
	padding: 6px;
	border: 0;
	background: #699 url(/images/sidebar_h2_bcg.gif) repeat-x bottom;
	color: white;
	font-weight: normal;
	font-size: 78%;
	text-transform: uppercase;
	letter-spacing: 0.2em;
	}
html>body div#sidebar h2 { font-size: 72%; }
div#sidebar p, div#sidebar ul, div#sidebar ol, div#sidebar dl { margin: 1em; padding: 0; }
div#sidebar li { list-style-type: none; margin: 0.5em 0; }

div#sidebar dl dt { font-weight: normal; }
div#sidebar dl dt img {
	float: left;
	margin: 0 0.8em 0.3em 0;
	}
div#sidebar dl dd {
	margin-left: 0;
	clear: both;
	padding: 0.5em;
	background-color: #bcc;
	}

div#sidebar dl#events {
	margin: 0;
	}
div#sidebar dl#events dt {
	margin: 1em 0;
	text-align: center;
	}
div#sidebar dl#events dt img {
	float: none;
	margin: 0;
	}
div#sidebar dl#events dd {
	margin: 0;
	padding: 0;
	background-color: transparent;
	}
div#sidebar dl#events dd p { margin: 1em; }

div#sidebar input       { font-size: 100%; }
div#sidebar input.solid { width: 55%; }

div#sidebar p#adsense, div#sidebar p#amazon {
	margin: 1.5em 10px;
	padding: 1.5em 0 0;
	background: url(/images/h2_bcg2.gif) repeat-x top left;
	text-align: center;
	}
div#sidebar p#adsenseip, div#sidebar p#firefoxip, div#sidebar p#trackfeed {
	margin: 1.5em 0;
	text-align: center;
	}
div#sidebar div#trackword {
	margin: 1.5em 10px;
	border: 1px solid #699;
	font-size: xx-small;
	text-align: center;
	}
html>body div#sidebar div#trackword { font-size: x-small; }
div#sidebar div#trackword p  { margin: 0.8em 0.5em; }
div#sidebar div#trackword ol { margin: 0.5em; font-size: x-small; }
html>body div#sidebar div#trackword ol { margin: 0.5em; font-size: small; }


/* *********************************************************
 *
 *	The following styles are for specific categories.
 *
 * *********************************************************
 */


/* For [creating] categories */

div#sectiontoc { padding: 1.5em 0; background-color: #eee; border: 1px solid silver; }

p.centered   { text-align: center; }
img.bordered { border: 1px solid gray; }

ul.docstr, ul.tblstr { margin: 0; padding: 0; }
ul.docstr li, ul.tblstr li {
	list-style-type: none;
	margin-left: 0;
	padding: 0.5em;
	border: 1px solid silver;
	background-color: #eee;
	}
ul.docstr li li, ul.tblstr li li { background-color: #ddd; }
ul.docstr li li li    { background-color: #ccc; }
ul.docstr li li li li { display: inline; background-color: #bbb; }
ul.tblstr li li li    { display: inline; background-color: #ccc; }


/* For [about] */

div#mashikophoto { padding-right: 110px; background: url(/images/mashiko.png) no-repeat right; }
dl#articles { font-size: x-small; }				/* In /about/xsl/articles.xsl */
html>body dl#articles	{ font-size: small; }			/* In /about/xsl/articles.xsl */
dl#articles dt		{ margin-bottom: 1em; }			/* In /about/xsl/articles.xsl */
dl#articles dd		{ margin: 1em 1em 2em 2em; }		/* In /about/xsl/articles.xsl */
dl#articles dd dl	{ margin-top: 0; margin-left: 0; }	/* In /about/xsl/articles.xsl */
dl#articles dd dl dt	{ margin: 0; }				/* In /about/xsl/articles.xsl */
dl#articles dd dl dd	{ margin: 0 0 0.2em 2em; }		/* In /about/xsl/articles.xsl */

p.adsimage		{ text-align: center; }
p.adsimage img		{ border: 1px solid gray; }


/* For [sitemap] */

ul.map    { margin: 0; padding: 0; font-size: x-small; }
html>body ul.map { font-size: small; }
ul.map ul { margin: 0; padding: 0; }
ul.map li {
	list-style-type: none;
	margin: 0 0 0 2em;
	padding: 5px 0 0 15px;
	background: url(/images/map_marker.gif) no-repeat;
	}
ul.map li.joint  { background: url(/images/map_marker_joint.gif) repeat-y top left; }
ul.map li.bottom { background: url(/images/map_marker_bottom.gif) no-repeat bottom left; }
ul.map span      { display: none; }

ul.othercontents {
	margin-top: 2em;
	margin-bottom: 2em;
	padding-top: 1.5em;
	background: url(/images/h2_bcg2.gif) repeat-x;
	}
	
/* For shop */

.contentArea {
	width: 760px;
	margin: 0 auto;
	padding: 25px 0 20px;
}

.categoryTitle {
	width: 752px;
	margin: 15px 0 0 0;
	padding: 0 0 0 5px;
	border-left: #cc3333 solid 3px;
	text-align: left;
	color: #333333;
	font-size: 13px;
}

.contentArea ul {
	width: 760px;
	margin: 0;
	padding: 20px 0 15px 0;
}

.contentArea li {
	display: block;
	width: 730px;
	margin: 0;
	padding: 0 0 20px 30px;
	text-align: left;
	list-style-type: none;
	color: #333333;
	font-size: 13px;
	clear:both;
}

.shoplistName {
	float: left;
	width: 170px;
	margin: 0px;
	padding: 0 10px 0 0;
}

.shoplistAdd {
	float: left;
	width: 360px;
	margin: 0;
	padding: 0 10px 0 10px;
	border-left: #d9dcdc solid 2px;
	color: #666666;
	font-size: 12px;
	line-height: 16px;
}
.shoplistAdd img {
	margin: 2px;
}

.shoplistTell {
	float: right;
	width: 160px;
	margin: 0;
	padding: 0;
	color: #666666;
	font-size: 12px;
	line-height: 16px;
}

/* topmenu */
div#topmenu {
	width:770px;
	align:auto;
	background-image:url(/images/bk_h.gif);
	text-align:left;
}
div#topmenu ul {
	margin:0;
	padding:0;
	list-style:none;
	height:53px;
}
div#topmenu li {
	margin:0;
	padding:0;
	list-style:none;
	display:block;
	float:left;
	overflow:hidden;
	_width:129px;
}
div#topmenu li a {
	display:block;
	float:left;
	width:110px;
	height:41px;
	margin:12px 10px 0px 10px;
}
div#topmenu li#menu_store a { background-image:url(/images/bt_online_on.gif); }
div#topmenu li#menu_product a { background-image:url(/images/bt_product_on.gif); }
div#topmenu li#menu_info a { background-image:url(/images/bt_info_on.gif); }
div#topmenu li#menu_shop a { background-image:url(/images/bt_shop_on.gif); }
div#topmenu li#menu_support a { background-image:url(/images/bt_support_on.gif);
	margin-right:0px;
}
div#topmenu img {
	border:none;
}
div#topmenu ul li a:active img ,
div#topmenu ul li a:hover img {
	display:none;
}

body.product div#topmenu li#menu_product a img { display:none; }
body.info div#topmenu li#menu_info a img { display:none; }
body.shop div#topmenu li#menu_shop a img { display:none; }
body.support div#topmenu li#menu_support a img { display:none; }

/* leftmenu */
ul#leftmenu {
	float:left;
	border:1px solid #cccccc;
	margin:0;
	padding:0;
}
ul#leftmenu img {
	border:none;
}
ul#leftmenu li {
	list-style:none;
	margin:0;
	padding:0;
	display:block;
	height:35px;
	float:left;
}
ul#leftmenu li.line {
	height:36px;
	background:transparent url(/images/im_line.gif) repeat-x center bottom;
}
ul#leftmenu li a {
	width:158px;
	height:35px;
	display:block;
}
ul#leftmenu li#bt_corporate a { background-image:url(/info/images/bt_corporate_on.gif); }
ul#leftmenu li#bt_cav a { background-image:url(/info/images/bt_cav_on.gif); }
ul#leftmenu li#bt_group a { background-image:url(/info/images/bt_group_on.gif); }
ul#leftmenu li#bt_map a { background-image:url(/info/images/bt_map_on.gif); }
ul#leftmenu li#bt_recruit a { background-image:url(/info/images/bt_recruit_on.gif); }
ul#leftmenu a:active img ,
ul#leftmenu a:hover img {
	display:none;
}
body.corporate ul#leftmenu li#bt_corporate a img { display:none; }
body.cav ul#leftmenu li#bt_cav a img { display:none; }
body.group ul#leftmenu li#bt_group a img { display:none; }
body.map ul#leftmenu li#bt_map a img { display:none; }
body.recruit ul#leftmenu li#bt_recruit a img { display:none; }

/* footmenu */
div#footmenu {
	width:760px;
	align:auto;
}
div#footmenu div.copyr {
	text-align:right;
	font-size:9pt;
	color:#666;
	margin-top:0.3em;
	margin-bottom:1em;
}
div#footmenu ul {
	background:#bd1327 url(/images/im_f_03.gif) no-repeat scroll right bottom;
	text-align:left;
	padding:0;
	margin:0;
	height:20px;
}
div#footmenu ul li {
	margin:0;
	padding:0;
	list-stype:none;
	display:inline;
}
div#footmenu ul li a {
	display:block;
	height:20px;
	float:left;
}
div#footmenu ul li#menu_sitemap a {
	background-image:url(/images/bt_sitemap_on.gif);
	width:92px;
}
div#footmenu ul li#menu_privacy a {
	margin-left:3px;
	background-image:url(/images/bt_privacy_on.gif);
	width:121px;
}
div#footmenu ul li#menu_terms a {
	margin-left:4px;
	background-image:url(/images/bt_terms_on.gif);
	width:80px;
}
div#footmenu ul li a:active img ,
div#footmenu ul li a:hover img {
	display:none;
}
body.sitemap div#footmenu li#menu_sitemap a img { display:none; }
body.privacy div#footmenu li#menu_privacy a img { display:none; }
body.terms div#footmenu li#menu_terms a img { display:none; }

/* for IE6 */
a.noview img {
	display:none;
}
* html div#topmenu ul li a ,
* html ul#leftmenu li a ,
* html div#footmenu ul li a {
	behavior: expression(
		this.onmouseover=new Function("this.className='noview'"),
		this.onmouseout=new Function("this.className=''"),
		this.style.behavior='none'
	);
}

