@charset "utf-8";


/* ResetCSSの読み込み */
@import url("reset.css");

/*(c) 2012 スミレ All rights reserved.*/

/*** 全体の設定 ***/
html, body{
	margin: 0;
	padding: 0;
	height: 100%;
	color: #000;
	font-size: 13px;
	line-height: 1.6;
}
body.index { background: #fff url(../images/index_body.png) 0 0 repeat-x;}
body.normal{ background: #fff url(../images/normal_body.png) 0 0 repeat-x;}
#container {
	margin: 0 auto;
	padding: 0;
	width: 990px;
    height: 100%;
    min-height: 100%;
	position: relative;
}

body > #container { height: auto;}
a:link { color: #0044CC;}
a:visited { color: #663399;}
a:hover { color: #ff6600;}

img {border:none; vertical-align: bottom;}
/*--ヘッダー設定--*/
.logo a {
	margin: 5px 15px;
	padding-top: 55px;
	width: 103px;
	height: 0;
	display: block;
	overflow: hidden;
	position: absolute;
	top: 0;
	background: url(../images/smile_logo.png) no-repeat;
	z-index: 7;
}

#header {
	margin: 0 auto;
	padding: 150px 0 0 0;
	background: url(../images/header.png) no-repeat;
}

#topImage {
	margin: 0 auto;
	padding: 0 5px;
	width: 980px;
	height: 546px;
	position: relative;
	background: url(../images/top_back.png) repeat-y;
	z-index: 0;
}
#topImage img {	display: none;}
.disnon { display: none ;}
.top00 {
	margin: 0 auto;
	padding: 550px 0 0 0;
	width: 980px;
	background: url(../images/index_0405.jpg) 0 0 no-repeat;
	position: absolute;
	z-index: 1;
}
.top0228 {
	margin: 0 auto;
	padding: 550px 0 0 0;
	width: 980px;
	background: url(../images/index_new.jpg) 0 0 no-repeat;
	position: absolute;
	z-index: 1;
}
.top0329 {
	margin: 0 auto;
	padding: 550px 0 0 0;
	width: 980px;
	background: url(../images/index_new2.jpg) 0 0 no-repeat;
	position: absolute;
	z-index: 1;
}

.top_event {
	top: 220px;
	left: 645px;
	margin: 0;
	padding: 0;
	width: 310px;
	height: 160px;
	position: absolute;
	z-index: 3;
}

.top_event img{ display: inline !important;}
/*画像マウスオーバー解除*/
.top_event a:hover img {
	opacity:1.0;
	background: none;
	/*IE7.8対応用*/
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
}
#superbox .close a{
	width: 40px;
	height: 0;
	margin: -40px 0 0 640px;
	padding-top: 40px;
	background: #f90 url(../gallery/images/close.png);
	overflow:hidden;
	display: block;
	position: absolute;
	z-index: 3;
	cursor: pointer;
	border-radius: 0.5em;
}

#superbox .close a:hover{	background-color: #c00;	}

.top01 {
	margin: 0 auto;
	padding: 546px 0 0 0;
	width: 980px;
	background: url(../images/index_top_01.png) 336px 0 no-repeat;
	position: absolute;
	z-index: 1;
}

.top02 {
	margin: 0 auto;
	padding: 546px 0 0 0;
	width: 980px;
	background: url(../images/index_top_02.png) 0 0 no-repeat;
	position: absolute;
	z-index: 2;
}
.top03 {
	margin: 0 auto;
	padding: 546px 0 0 0;
	width: 980px;
	background: url(../images/index_top_03.png) right 0 no-repeat;
	position: absolute;
	z-index: 3;
}
.top04 {
	margin: 0 auto;
	padding: 546px 0 0 0;
	width: 980px;
	background: url(../images/index_top_04.png) 100px 217px no-repeat;
	position: absolute;
	z-index: 4;
}
.top05 {
	margin: 0 auto;
	padding: 546px 0 0 0;
	width: 980px;
	background: url(../images/index_top.jpg) no-repeat;
	position: absolute;
	z-index: 5;
}

/*** ナビゲーション設定 ***/

/*--グローバルナビ--*/
.nav {
	margin: 0;
	padding: 0 5px;
	width: 980px;
	height: 50px;
	display:inline-block;
	position: relative;
}
.nav li { display:inline; float:left;}
.nav li a{
	height: 0;
	padding-top: 50px;
	display: block;
	overflow: hidden;
}
/*--ロールオーバー設定--*/

.nav li.home a{width: 88px; background: url(../images/nav.png) 0 0 no-repeat;}
.nav li.story a{width: 112px; background: url(../images/nav.png) -88px 0 no-repeat;}
.nav li.character a{width: 117px; background: url(../images/nav.png) -200px 0 no-repeat;}
.nav li.concept a{width: 131px; background: url(../images/nav.png) -317px 0 no-repeat;}
.nav li.gallery a{width: 132px; background: url(../images/nav.png) -448px 0 no-repeat;}
.nav li.download a{width: 155px; background: url(../images/nav.png) -580px 0 no-repeat;}
.nav li.extra a{width: 130px; background: url(../images/nav.png) -735px 0 no-repeat;}
.nav li.outline a{width: 115px; background: url(../images/nav.png) -865px 0 no-repeat;}

.nav li.home a:hover{width: 88px; background: url(../images/nav.png) 0 -50px no-repeat;}
.nav li.story a:hover{width: 112px; background: url(../images/nav.png) -88px -50px no-repeat;}
.nav li.character a:hover{width: 117px; background: url(../images/nav.png) -200px -50px no-repeat;}
.nav li.concept a:hover{width: 131px; background: url(../images/nav.png) -317px -50px no-repeat;}
.nav li.gallery a:hover{width: 132px; background: url(../images/nav.png) -448px -50px no-repeat;}
.nav li.download a:hover{width: 155px; background: url(../images/nav.png) -580px -50px no-repeat;}
.nav li.extra a:hover{width: 130px; background: url(../images/nav.png) -735px -50px no-repeat;}
.nav li.outline a:hover{width: 115px; background: url(../images/nav.png) -865px -50px no-repeat;}
/*** コンテンツカラム ***/

#wrapper {
	margin: 0;
	padding: 1em 5px 2em 5px;
	width: auto;
	height: auto;
	float: left;
	overflow: hidden;
}
/*トップ告知バナー*/
.topBanner{ margin-top: -10px; width: 980px; clear: both; float: left;}
.topBanner img{ margin:5px; box-shadow: 0 0 3px #666; float:left;}
/*index_left*/
.section {
	margin: 0;
	padding: 0 30px 0 0;
	width: 580px;
	float: left;
}
/*index_right*/
.aside {
	margin: 0;
	padding: 0;
	width: 370px;
	float: right;
}
.nicolive {
	margin: 1em 0 0 0;
	padding: 42px 28px 10px 28px;
	width: 314px;
	height:178px;
	background: url(../images/nicolive.jpg);
}
/*--共通--*/
h2 {
	margin: 1em 0;
	padding: 35px 0 0 0;
	height: 0;
	display: block;
	overflow: hidden;
}
h3{
	margin: 1em 0.5em;
	padding: 0.3em 2em;
	width: auto;
	font-size: 20px;
	font-weight: bold;
	color: #cc3300;
	text-shadow: 1px 1px #fff;
    background: url(../images/galleryN_back.png);
	border: 1px solid #fff;
	border-radius: 0.5em;
	box-shadow: 0 0 2px 0 #300;
	clear: both;
}
p { clear:both;}
/*--h2設定--*/
h2.updata {
	width: 580px;
	background: url(../images/h2_sprite.png) 0 0 no-repeat;
}
h2.twit {
	padding: 0;
	width: 370px;
	height: 35px;
	background: url(../images/h2_sprite.png) -610px 0 no-repeat;
}
h2.publicity {
	width: 580px;
	background: url(../images/h2_sprite.png) 0 -35px no-repeat;
}
h2.story {
	width: 980px;
	background: url(../images/h2_sprite.png) 0 -70px no-repeat;
}
h2.character {
	width: 980px;
	background: url(../images/h2_sprite.png) 0 -105px no-repeat;
}
h2.concept {
	width: 980px;
	background: url(../images/h2_sprite.png) 0 -140px no-repeat;
}
h2.gallery {
	width: 980px;
	background: url(../images/h2_sprite.png) 0 -175px no-repeat;
}
h2.download {
	width: 980px;
	background: url(../images/h2_sprite.png) 0 -210px no-repeat;
}
h2.extra {
	width: 980px;
	background: url(../images/h2_sprite.png) 0 -245px no-repeat;
}
h2.outline {
	width: 980px;
	background: url(../images/h2_sprite.png) 0 -280px no-repeat;
}


/*--更新情報--*/
.article{
	margin: 0;
	padding: 10px;
	min-height: 70px;
	clear: both;
	display: block;
	border-bottom: 1px dotted #ccc;
}

.article div {
	width: 118px;
	height: 68px;
	margin: 0;
	padding: 0;
	border: 1px solid #ccc;
	display: block;
}

.article ul {
	margin-top: -70px;
	margin-left: 130px;
}
.article ul li{
	margin: 0;
	padding: 0 0 0 12px;
}
.article ul li span{
	margin: 0 0 0 -12px;
	padding: 0 0 0 12px;
	color: #666;
	background: url(../images/topics_data.png) center left no-repeat;
	display: block;
}

.publicity dl{
	margin: 0;
	padding: 0;
	width: 145px;
	text-align: center;
	float: left;
}
.publicity dt{
	line-height: 1.2;
}
.publicity dt a{
	font-weight: bold;
	color: #990099;
	text-decoration: none;
}
.publicity dt a:hover{
	color: #f90;
	text-decoration: underline;
}
.publicity dd{
	margin: 0;
	padding: 0;
	font-size: 11px;
}
/*--応援バナー*/
.ouen {
	text-align: center;
	padding: 0.5em 0;
	clear:both;
}
.ouen h3{
	margin: 0.5em 0;
	padding: 0.3em 2em;
	font-size: 20px;
	font-weight: bold;
	color: #cc3300;
	text-shadow: 1px 1px #fff;
	background: url(../images/galleryN_back.png);
	border: 1px solid #fff;
	border-radius: 0.5em;
	box-shadow: 0 0 2px 0 #300;
}
/*--ツイッター設定--*/
h2.twit a{
	padding-top: 35px;
	width: 370px;
	height: 0;
	display: block;
	overflow: hidden;
}
h2.twit a:hover{
	padding-top: 35px;
	width: 370px;
	height: 0;
	display: block;
	overflow: hidden;
	background: url(../images/h2_sprite.png) -610px -35px no-repeat;
}
ul#twitter_update_list {
	margin: -1em 0 10px 0;
	padding: 0;
}

ul#twitter_update_list li{
	margin: 0;
	padding: 5px 1em;
	font-size: 12px;
	border-bottom: 1px dotted #ccc;
}
ul#twitter_update_list li:hover {
	background: #f5f5f5 url(../images/column_back.gif);
}
ul#twitter_update_list li span{
	display: block;
}
/*--ストーリー--*/
#story{
	margin:0;
	padding: 118px 100px;
	width: 780px;
	height: 534px;
	background : url(../images/story_back.jpg);
}
/*--製品概要--*/
#outline{
	margin:0;
	padding: 0;
	width: 980px;
	height: 940px;
	background : url(../images/outline_back.jpg);
}
/*画像マウスオーバー*/
a:hover img {
	opacity:0.8;
	background: #fff;
	/*IE7.8対応用*/
	filter: alpha(opacity=80);
	-ms-filter: "alpha( opacity=80 )";
}
/*--ページリターン--*/
.pageTop {
	margin: 0 auto;
	padding: 0;
	width: 980px;
	height: 43px;
	background: url(../images/pagetop_back.png) no-repeat;
	clear: both;
}
.pageTop a{
	margin: 0 0 0 800px;
	padding: 43px 0 0 0;
	width: 176px;
	height: 0;
	background: url(../images/h2_sprite.png) 0 -317px no-repeat;
	display: block;
	overflow: hidden;
}
.pageTop a:hover{	margin: 0 0 0 800px;
	padding: 43px 0 0 0;
	width: 176px;
	height: 0;
	background: url(../images/h2_sprite.png) -176px -317px no-repeat;
	display: block;
	overflow: hidden;
}
.footer {
	clear: both;
	margin: 0;
	padding: 0;
	width: 100%;
	background: #EEBB66;
	position: relative;
	color: #fff;
}
.footerNav {
	margin: 0 auto;
	padding: 1em 0;
	width: 980px;
	text-align: center;
	text-shadow: 1px 1px 0px #b60;
}
.footerNav a{color: #fff;
}
.footerNav a:hover{	color: #663333;	text-shadow:none;}
.footerNav ul {
	margin: 0 auto;
	padding: 0;
	width: auto;
	border-right: 1px solid #fff;
	display:inline-block;
}
.footerNav li {
	display:inline;
	float:left;
	padding: 0 1em;
	border-left: 1px solid #fff;
}
.copy {
	clear: both;
}

/*** 汎用クラスの設定 ***/
.clear { clear: both;}
.strike { text-decoration: line-through;}
.text_center { text-align: center;}
.text_right { text-align: right;}
