@charset "utf-8";

/* ---------------------------------------------------------------------------------------------------------------- */
/* Basic */
/* ---------------------------------------------------------------------------------------------------------------- */
*
{
	padding:0;
	margin:0;
}

html
{
	font-size:80%;
}

p, a, span, h1, h2, h3, h4, h5, h6, form, input, ul, li, td, th, dl, dd, dt
{
	font-family:'メイリオ', 'ＭＳ Ｐゴシック', Osaka, 'ヒラギノ角ゴ Pro W3', 'MS UI Gothic', sans-serif;
	color:#333333;
	letter-spacing:0.1em;
}

* html
{
	font-size:90%;
}

* html p, * html a, * html span, * html h1, * html h2, * html h3, * html h4, * html h5, * html h6, * html form, * html input, * html ul, * html li, * html td, * html th, * html dl, * html dd, * html dt
{
	font-family:'ＭＳ Ｐゴシック', sans-serif;
}

a img
{
	border:0;
	vertical-align:middle;
}

div, ul, dl
{
	zoom:1;
}

div:after, ul:after, dl:after
{
	height:0.1px;
	clear:both;
	display:block;
	visibility:hidden;
	font-size:0.1em;
	line-height:0;
	content:".";
}

/* ---------------------------------------------------------------------------------------------------------------- */
/* articles */
/* ---------------------------------------------------------------------------------------------------------------- */

a
{
	color:#a652ff;
	text-decoration:none;
}

a:visited
{
	color:#83007f;
}

a:hover
{
	text-decoration:underline;
}

p
{
	text-indent:12px;
	margin:0 0 10px 0;
}

p.left
{
	text-align:left;
}

p.center
{
	text-align:center;
	text-indent:0;
}

p.right
{
	text-align:right;
}

div.left, img.left
{
	float:left;
	margin:0 10px 0 0;
}

div.right, img.right
{
	float:right;
	margin:0 0 0 10px;
}

.red
{
	color:#ff0000;
}

.green
{
	color:#00ff00;
}

.blue
{
	color:#0000ff;
}

.gray
{
	color:#888888;
}

/* ---------------------------------------------------------------------------------------------------------------- */
/* Layout */
/* ---------------------------------------------------------------------------------------------------------------- */

body
{
	background-color:#ffffff;
	background-image:url(../img/bg_body.gif);
	background-position:center top;
}

.container
{
	background-image:url(../img/bg_container.gif);
	background-position:top;
	background-repeat:repeat-x;
	margin:0 0 40px 0;
	position:relative;
	z-index:1;
}

/* header */

.header
{
	width:980px;
	height:540px;
	background-image:url(../img/bg_header.gif);
	background-position:-140px 0;
	text-align:center;
	margin:0 auto;
}

.header .inner
{
	height:540px;
	width:980px;
	text-align:left;
	position:relative;
	margin:0px auto;
}

.header .left
{
	width:140px;
	height:540px;
	background-image:url(../img/bg_header.gif);
	background-position:0 0;
	position:absolute;
	top:0px;
	left:-140px;
}

.header .right
{
	width:140px;
	height:540px;
	background-image:url(../img/bg_header.gif);
	background-position:-1120px 0;
	position:absolute;
	top:0px;
	left:970px;
}

.header .inner h1
{
	width:700px;
	font-size:9px;
	line-height:20px;
	color:#ffffff;
	font-weight:normal;
	position:absolute;
	top:0px;
	left:0px;
}

.header .inner h1 a
{
	color:#ffffff;
}

.header .inner h1 a:hover
{
	text-decoration:none;
}

.header .inner ul.sub
{
	width:280px;
	height:20px;
	list-style:none;
	text-align:right;
	position:absolute;
	top:0px;
	left:700px;
}

.header .inner ul.sub li
{
	font-size:9px;
	line-height:20px;
	color:#ffffff;
	display:inline;
}

.header .inner ul.sub li a
{
	color:#ffffff;
}

.header .inner a.title
{
	width:530px;
	height:180px;
	display:block;
	text-indent:-9999px;
	overflow:hidden;
	position:absolute;
	top:110px;
	left:0;
}

.header .inner a.title:hover
{
	text-decoration:none;
}

.header .inner ul.navi
{
	width:940px;
	height:50px;
	list-style:none;
	position:absolute;
	top:470px;
	left:20px;
}

ul.navi li
{
	height:50px;
	font-size:9px;
	line-height:50px;
	color:#ffffff;
	float:left;
}

ul.navi li a
{
	height:50px;
	width:132px;
	display:block;
	text-indent:-9999px;
	overflow:hidden;
	background-image:url(../img/navi.gif);
}

ul.navi li a:hover
{
	text-decoration:none;
}

ul.navi li.top a, ul.navi li.top_h a, ul.navi li.club a, ul.navi li.club_h a
{
	width:140px;
}

ul.navi li.top a
{
	background-position:0 0;
}

ul.navi li.top_h a
{
	background-position:0 -100px;
}

ul.navi li.top a:hover
{
	background-position:0 -50px;
}

ul.navi li.touhaku a
{
	background-position:-140px 0;
}

ul.navi li.touhaku_h a
{
	background-position:-140px -100px;
}

ul.navi li.touhaku a:hover
{
	background-position:-140px -50px;
}

ul.navi li.profile a
{
	background-position:-272px 0;
}

ul.navi li.profile_h a
{
	background-position:-272px -100px;
}

ul.navi li.profile a:hover
{
	background-position:-272px -50px;
}

ul.navi li.blog a
{
	background-position:-404px 0;
}

ul.navi li.blog_h a
{
	background-position:-404px -100px;
}

ul.navi li.blog a:hover
{
	background-position:-404px -50px;
}

ul.navi li.tvcm a
{
	background-position:-536px 0;
}

ul.navi li.tvcm_h a
{
	background-position:-536px -100px;
}

ul.navi li.tvcm a:hover
{
	background-position:-536px -50px;
}

ul.navi li.shop a
{
	background-position:-668px 0;
}

ul.navi li.shop_h a
{
	background-position:-668px -100px;
}

ul.navi li.shop a:hover
{
	background-position:-668px -50px;
}

ul.navi li.club a
{
	background-position:-800px 0;
}

ul.navi li.club_h a
{
	background-position:-800px -100px;
}

ul.navi li.club a:hover
{
	background-position:-800px -50px;
}

/* main */

.main
{
	width:980px;
	background-image:url(../img/bg_main.gif);
	background-repeat:repeat-y;
	margin:0 auto;
}

.main .inner
{
	width:900px;
	background-image:url(../img/bg_main_inner.gif);
	background-position:bottom;
	background-repeat:no-repeat;
	padding:0 40px 60px 40px;
}

.main .inner .left_column
{
	width:600px;
	float:left;
}

.left_column .inner h2
{
	width:600px;
	height:45px;
}

.left_column .article
{
	width:580px;
	padding:15px 10px 20px 10px;
}

.main .inner .right_column
{
	width:280px;
	float:right;
}

.right_column .inner h2
{
	width:280px;
	height:45px;
}

.right_column .article
{
	width:270px;
	background-color:#f4f4f4;
	background-image:url(../img/bg_article_right_bottom.gif);
	background-position:bottom;
	background-repeat:no-repeat;
	padding:5px 5px 10px 5px;
	margin:0 0 15px 0;
}

/* footer */

.footer
{
	width:980px;
	height:230px;
	background-image:url(../img/bg_footer.gif);
	background-position:bottom;
	background-repeat:no-repeat;
	position:relative;
	margin:-1px auto 0px auto;
}

.footer a.top
{
	width:200px;
	height:50px;
	display:block;
	text-indent:-9999px;
	overflow:hidden;
	background-image:url(../img/btn_top.gif);
	background-repeat:no-repeat;
	position:absolute;
	top:110px;
	left:770px;
}

.footer a.top:hover
{
	text-decoration:none;
}

.footer p.copyright
{
	width:700px;
	height:18px;
	display:block;
	color:#aaaaaa;
	font-size:11px;
	text-align:right;
	position:absolute;
	top:164px;
	left:250px;
}

.footer ul.sub
{
	width:700px;
	height:18px;
	list-style:none;
	text-align:right;
	position:absolute;
	top:180px;
	left:250px;
}

.footer ul.sub li
{
	font-size:10px;
	line-height:20px;
	color:#aaaaaa;
	display:inline;
}

.footer ul.sub li a
{
	font-size:10px;
	color:#aaaaaa;
}

/* ---------------------------------------------------------------------------------------------------------------- */
/* Common */
/* ---------------------------------------------------------------------------------------------------------------- */

h3
{
	font-size:14px;
	color:#333333;
	font-weight:bold;
	margin:0 0 5px 0;
}

div.section
{
	margin:5px 0 10px 0;
}

div.section p
{
	text-indent:0;
}

p.refer
{
	height:20px;
	line-height:20px;
	text-indent:0;
	background-image:url(../img/article_refer_left.gif);
	background-position:left;
	background-repeat:no-repeat;
	background-color:#f0eee2;
	float:right;
	clear:both;
	padding:0 0 0 30px;
	margin:5px 0 0 0;
}

* html p.refer
{
	width:240px;
	text-align:center;
}

p.refer a
{
	height:20px;
	line-height:20px;
	display:block;
	font-size:11px;
	color:#ff9900;
	background-image:url(../img/article_refer_right.gif);
	background-position:right;
	background-repeat:no-repeat;
	padding:0 10px 0 0;
}

p.quote
{
	text-indent:0;
	padding:10px;
	border:1px #cccccc dotted;
}

/* ---------------------------------------------------------------------------------------------------------------- */
/* Left column contents */
/* ---------------------------------------------------------------------------------------------------------------- */

/* index */

div.tvcm
{
	width:600px;
	height:656px;
	background-image:url(../img/article_cm.gif);
	background-repeat:no-repeat;
	position:relative;
	margin:0 0 15px 0;
}

div.tvcm div#flash
{
	width:530px;
	height:320px;
	background-color:#000000;
	text-align:center;
	position:absolute;
	top:23px;
	left:35px;
	margin:0 0 15px 0;
}

div.tvcm div#flash p
{
	font-size:11px;
	color:#ffffff;
	line-height:320px;
}

div.tvcm a
{
	width:138px;
	height:38px;
	display:block;
	text-indent:-9999px;
	overflow:hidden;
	background-position:0 0;
	background-repeat:no-repeat;
	position:absolute;
	top:575px;
	left:295px;
}

div.tvcm a:hover
{
	text-decoration:none;
}

div.tvcm a.profile
{
	background-image:url(../img/btn_profile.gif);
}

div.tvcm a.profile:hover
{
	background-position:0 -38px;
}

div.tvcm a.contact
{
	background-image:url(../img/btn_contact.gif);
}

div.tvcm a.contact:hover
{
	background-position:0 -38px;
}

/* touhaku */

div.slideshow
{
	width:600px;
	height:320px;
	background-color:#000000;
	margin:0 0 20px 0;
}

div.slideshow p
{
	width:600px;
	height:320px;
	font-size:11px;
	color:#ffffff;
	text-align:center;
	line-height:320px;
	border:0;
	display:block;
	border:1px #eeeeee solid;
}

div#gallery img
{
	border:1px #dddddd solid;
	background-color:#ffffff;
	padding:2px;
}

div#gallery p
{
	font-size:11px;
}

div#gallery p.explan
{
	color:#666666;
}

div.gallery a
{
	padding:5px;
}

div#gallery .gallery
{
	text-align:center;
	margin:0 -5px 0 0;
}

div#gallery .gallery a
{
	width:135px;
	height:90px;
	display:block;
	border:1px #dddddd solid;
	background-color:#ffffff;
	padding:2px;
	margin:0px 5px 5px 0;
	float:left;
}

div#gallery .gallery img
{
	border:0;
	background-color:none;
}

div.credit
{
	padding:0 10px 20px 10px;
}

div.credit dl.section
{
	text-indent:0;
	font-size:11px;
	padding:10px;
	background-color:#f4f4f4;
	margin:0 0 10px 0;
}

div.credit dl.section dt.head
{
	float:none;
	clear:none;
	margin:0 0 5px 0;
}

div.credit dl.section dt
{
	float:left;
	clear:left;
}

div.credit dl.section dd
{
	padding-left:140px;
}

/* profile */

div.profile
{
	width:580px;
	padding:0 0 10px 0;
}

/* blog */

.main .inner div.blog h2
{
	background-image:url(../img/article_blog_header.gif);
	background-repeat:no-repeat;
	height:120px;
	position:relative;
}

.main .inner div.blog h2.normal
{
	background-image:none;
	width:600px;
	height:45px;
	
	margin:0 0 15px 0;
}

.main .inner div.blog h2.event
{
	background-position:0 0;
}

.main .inner div.blog h2.info
{
	background-position:0 -120px;
}

.main .inner div.blog h2.tvcm
{
	background-position:0 -240px;
}

.main .inner div.blog h2 span
{
	display:block;
	font-size:10px;
	line-height:18px;
	font-weight:normal;
	color:#8b2f1d;
	padding:60px 0 0 120px;
}

.main .inner div.blog h2 a
{
	font-size:14px;
	line-height:20px;
	color:#8b2f1d;
	padding:7px 0 0 120px;
}

.main .inner div.blog .article
{
	background-image:url(../img/article_blog_main.gif);
	background-repeat:repeat-y;
	width:600px;
	padding:0;
	margin:0 0 5px 0;
}

.main .inner div.blog .article .contents
{
	padding:10px 30px;
}

.main .inner div.blog .article .contents p
{
	text-indent:0;
	margin:0 0 15px 0;
}

.main .inner div.blog ul.reaction
{
	background-image:url(../img/article_blog_footer.gif);
	background-position:bottom;
	background-repeat:no-repeat;
	height:30px;
	width:580px;
	list-style:none;
	text-align:right;
	padding:20px 20px 0 0;
}

ul.reaction li
{
	display:inline;
	font-size:11px;
	line-height:15px;
	background-repeat:no-repeat;
	padding-left:85px;
}

ul.reaction li a
{
	display:inline;
	font-size:11px;
	line-height:15px;
	color:#8b2f1d;
}

* html ul.reaction li a
{
	font-size:12px;
	line-height:12px;
	padding:1px 0;
}

ul.reaction li.category
{
	background-image:url(../img/blog_category.gif);
}

ul.reaction li.comment
{
	background-image:url(../img/blog_comment.gif);
}

ul.reaction li.trackback
{
	background-image:url(../img/blog_trackback.gif);
}

.main .inner div.blog ul.page
{
	padding:10px;
	text-align:center;
	list-style:none;
}

ul.page li
{
	width:20px;
	height:20px;
	display:inline;
	line-height:20px;
	padding:0 2px;
}

.main .inner div.blog div.input
{
	width:600px;
	background-color:#f4f4f4;
	background-image:url(../img/input_footer.gif);
	background-position:bottom;
	background-repeat:no-repeat;
	margin:15px 0 15px 0;
}

.main .inner div.blog div.input h3
{
	width:560px;
	background-image:url(../img/input_header.gif);
	background-position:top;
	background-repeat:no-repeat;
	font-size:14px;
	line-height:14px;
	padding:20px 20px 10px 20px;
}

.main .inner div.blog div.input h3 a
{
	color:#8b2f1d;
}

.main .inner div.blog div.input dl.info
{
	padding:0 20px 15px 20px;
}

dl.info dd
{
	background-color:#ffffff;
	border-left:1px #cccccc solid;
	border-top:1px #cccccc solid;
	border-right:1px #dddddd solid;
	border-bottom:1px #dddddd solid;
	padding:2px;
}

.main .inner div.blog div.input dl.log
{
	background-image:url(../img/input_line.gif);
	background-position:bottom;
	background-repeat:no-repeat;
	padding:0px 15px 5px 15px;
	margin:0 0 20px 0;
}

dl.log dt
{
	background-image:url(../img/input_line.gif);
	background-position:top;
	background-repeat:no-repeat;
	padding:10px 5px 0 5px;
}

dl.log dt span.name
{
	font-weight:bold;
	color:#8b2f1d;
	padding:0 10px 0 0;
}

dl.log dt span.date
{
	padding:0 5px 0 0;
}

dl.log dd
{
	padding:5px 5px 10px 5px;
}

dl.log dd a
{
	padding:0 0 0 10px;
}

.main .inner div.blog div.input form.comment
{
	padding:5px 20px;
}

form.comment dt
{
	padding:5px 0 0 0;
}

form.comment dd input
{
	width:400px;
	border-left:1px #cccccc solid;
	border-top:1px #cccccc solid;
	border-right:1px #dddddd solid;
	border-bottom:1px #dddddd solid;
}

form.comment dd textarea
{
	width:400px;
	border-left:1px #cccccc solid;
	border-top:1px #cccccc solid;
	border-right:1px #dddddd solid;
	border-bottom:1px #dddddd solid;
}

form.comment p.caution
{
	font-size:10px;
	color:#999999;
	text-indent:0;
	padding:10px 0;
}

form.comment div.submit
{
	margin:10px 10px 10px 0;
}

form.comment div.submit input
{
	height:20px;
	width:100px;
	border:0;
	text-indent:-9999px;
}

form.comment div.submit .preview
{
	background-image:url(../img/btn_preview.gif);
}

form.comment div.submit .post
{
	background-image:url(../img/btn_submit.gif);
}

/* library */

div.library
{
	margin:10px -10px 15px 0px;
}

div.library .section
{
	width:295px;
	height:82px;
	position:relative;
	float:left;
	margin:0 10px 10px 0;
}

div.library .section h3
{
	width:145px;
	font-size:12px;
	font-weight:normal;
	padding:0 0 0 150px;
}

div.library .section a.play
{
	width:80px;
	height:20px;
	display:block;
	text-indent:-9999px;
	overflow:hidden;
	background-image:url(../img/library_play.gif);
	margin:0 0 0 150px;
}

div.library .section a.play:hover
{
	text-decoration:none;
}

div.library .section img
{
	width:145px;
	height:82px;
	position:absolute;
	top:0;
	left:0;
}

/* tvcm_view */

div.tvcm_view
{
	width:600px;
	height:370px;
	background-image:url(../img/article_cm_view.gif);
	background-repeat:no-repeat;
	position:relative;
	margin:0 0 15px 0;
}

div.tvcm_view div#flash
{
	width:530px;
	height:320px;
	background-color:#000000;
	text-align:center;
	position:absolute;
	top:23px;
	left:35px;
	margin:0 0 15px 0;
}

div.tvcm_view div#flash p
{
	font-size:11px;
	color:#ffffff;
	line-height:320px;
}

/* contact */

.main .inner div.contact
{
	padding:0;
}

form.contact
{
	width:600px;
	background-color:#f4f4f4;
	background-image:url(../img/input_footer.gif);
	background-position:bottom;
	background-repeat:no-repeat;
	position:relative;
	margin:15px 0 15px 0;
}

div.head
{
	width:600px;
	height:10px;
	background-image:url(../img/input_header.gif);
	background-position:top;
	background-repeat:no-repeat;
	position:absolute;
	top:0;
	left:0;
	z-index:0;
}

form.contact p
{
	background-image:url(../img/input_line.gif);
	background-position:bottom;
	background-repeat:no-repeat;
	padding:20px 10px 10px 10px;
	position:relative;
	z-index:1;
}

form.contact dl
{
	padding:0 20px 5px 20px;
	position:relative;
	z-index:1;
}

form.contact dt
{
	padding:5px 0 0 0;
}

form.contact dd input
{
	width:400px;
	border-left:1px #cccccc solid;
	border-top:1px #cccccc solid;
	border-right:1px #dddddd solid;
	border-bottom:1px #dddddd solid;
}
form.contact dd textarea
{
	width:560px;
	height:200px;
	border-left:1px #cccccc solid;
	border-top:1px #cccccc solid;
	border-right:1px #dddddd solid;
	border-bottom:1px #dddddd solid;
}

form.contact dd p
{
	width:400px;
	
	font-size:12px;
	text-indent:0;
	line-height:16px;
	
	background-color:#ffffff;
	background-image:none;
	
	border-left:1px #cccccc solid;
	border-top:1px #cccccc solid;
	border-right:1px #dddddd solid;
	border-bottom:1px #dddddd solid;
	
	padding:2px 0;
	margin:0;
}

form.contact dd.textarea p
{
	width:560px;
	height:200px;
	
	overflow:scroll;
}

form.contact div.submit
{
	padding:5px 20px 20px 20px;
}

form.contact div.submit input
{
	height:20px;
	width:100px;
	border:0;
	text-indent:-9999px;
}

form.contact div.submit .preview
{
	background-image:url(../img/btn_preview.gif);
}

form.contact div.submit .post
{
	background-image:url(../img/btn_submit.gif);
}

form.contact div.submit .back
{
	background-image:url(../img/btn_back.gif);
}

/* ---------------------------------------------------------------------------------------------------------------- */
/* Right column contents */
/* ---------------------------------------------------------------------------------------------------------------- */

/* common */

dl.recent
{
	list-style:none;
	padding:0 5px;
}

dl.recent dt
{
	font-size:11px;
	font-weight:bold;
	border-top:1px #000000 dotted;
	background-image:url(../img/mark_dot.gif);
	background-position:left;
	background-repeat:no-repeat;
	padding:5px 0 0 13px;
}

dl.recent dd
{
	height:45px;
	font-size:11px;
	line-height:15px;
	background-position:left;
	background-repeat:no-repeat;
	padding:0 0 0 52px;
	margin:0 0 5px 5px;
}

dl.recent dd a
{
	display:block;
	color:#003366;
	padding:8px 0 0 0;
}

dl.recent dd.event
{
	background-image:url(../img/recent_event.gif);
}

dl.recent dd.info
{
	background-image:url(../img/recent_info.gif);
}

dl.recent dd.tvcm
{
	background-image:url(../img/recent_tvcm.gif);
}

dl.recent dd.goods
{
	background-image:url(../img/recent_goods.gif);
}

ul.company
{
	list-style:none;
	font-size:11px;
	border-top:1px #000000 dotted;
	padding:10px 5px;
}

ul.company li
{
	display:inline;
	padding:2px 5px 2px 2px;
}

ul.company li a
{
	color:#003366;
}

/* blog */

ul.category
{
	list-style:none;
	font-size:11px;
	border-top:1px #000000 dotted;
	padding:10px 5px;
}

ul.category li
{
	width:115px;
	height:20px;
	float:left;
	background-image:url(../img/mark_dot.gif);
	background-position:left;
	background-repeat:no-repeat;
	padding:0 0 0 15px;
}

ul.category li a
{
	height:20px;
	line-height:20px;
	display:block;
}

ul.backnumber
{
	list-style:none;
	font-size:11px;
	border-top:1px #000000 dotted;
	padding:10px 5px;
}

ul.backnumber li
{
	width:115px;
	height:20px;
	float:left;
	background-image:url(../img/mark_dot.gif);
	background-position:left;
	background-repeat:no-repeat;
	padding:0 0 0 15px;
}

ul.backnumber li a
{
	height:20px;
	line-height:20px;
	display:block;
}
