/* 全体的なルール*/
* {
	margin: 0;
	padding: 0;
	font-size: 100%;
}

body {
	color: #333;
	font-family: "ＭＳ ゴシック",sans-serif;
	line-height: 1;
	background: #fff url(../images/frame/back.png) repeat-x;
}

ul {
	list-style: disc;
}


/* リンク全般 */
a {
	text-decoration: none;
	overflow: hidden;
	outline: none;
}

a:link {
	color: #0000FF;
}

a:visited {
	color: #788273;
}

a:hover {
	color: #57c0FF;
}

a:active {
	color: #00c0c0;
}

img {
	margin: 0;
	padding: 0;
	border-style: none;
}

/* ヘッダー */

div#page {
	background: url(../images/frame/1280back.png) center repeat-y;
}

div#topinformaition {
	background: #880029;
	padding: 3px 0px;
	height: 9px;
}

div#topinformaition p{
	width: 1240px;
	margin: 0px auto;
	color: #fff;
	font-size: 70%;
}

div#header {
	height: 85px;
	width: 1120px;
	padding: 5px 20px;
	margin: 0px auto 0px;
}

div#logo {
	height: 75px;
	width: 286px;
	padding: 5px 0px;
	float: left;
}

div#topbanner {
	height: 81px;
	width: 548px;
	padding: 2px 0px;
	text-align: center;
	margin: 0px auto;
	float: left;
}

div#topmenu {
	height: 75px;
	width: 286px;
	padding: 5px 0px;
	position: relative;
	float: left;
}

div#searchform {
	height: 33px;
	width: 286px;
	margin: 0px auto;
	background: url(../images/frame/topmenu.png) center center no-repeat;
	position: relative;
	font-size: 13px;
}

form#searchform {
	height: 20px;
	width: 195px;
	display: block;
	position: relative;
}

input#keywords {
	width: 180px;
	position: absolute;
	top: 8px;
	left: 33px;
	border: 1px solid #FFF;
}

input#searchBtn {
	position: absolute;
	top: 6px;
	left: 230px;
}

div#rss {
	height: 32px;
	width: 286px;
	margin: 8px auto;
	padding: 5px 0px;
	position: relative;
	text-align: right;
	float: left;
}

/* メインメニュー */

div#mainmenu {
	height: 43px;
	margin-bottom: 20px;
	background: url(../images/frame/mainmenu.png) center center repeat-x;
	position: relative;
	clear: left;
}

ul#mainmenu {
	width: 1152px;
	margin: 0px auto;
	list-style: none;
}

ul#mainmenu li {
	list-style: none;
	float: left;
	width: 144px;
}
ul#mainmenu a {
	display: block;
	width: 144px;
	height: 43px;
}

ul#mainmenu a span {
	display: none;
} 

a.top {
	background-image: url(../images/frame/top.png);
}
a:hover.top {
	background-image: url(../images/frame/top2.png);
}

a.product {
	background-image: url(../images/frame/product.png);
}
a:hover.product {
	background-image: url(../images/frame/product2.png);
}

a.event {
	background-image: url(../images/frame/event.png);
}
a:hover.event {
	background-image: url(../images/frame/event2.png);
}

a.staff {
	background-image: url(../images/frame/staff.png);
}
a:hover.staff {
	background-image: url(../images/frame/staff2.png);
}

a.mail {
	background-image: url(../images/frame/mail.png);
}
a:hover.mail {
	background-image: url(../images/frame/mail2.png);
}

a.link {
	background-image: url(../images/frame/link.png);
}
a:hover.link {
	background-image: url(../images/frame/link2.png);
}

a.support {
	background-image: url(../images/frame/support.png);
}
a:hover.support {
	background-image: url(../images/frame/support2.png);
}

a.special {
	background-image: url(../images/frame/special.png);
}
a:hover.special {
	background-image: url(../images/frame/special2.png);
}

/* スライドショー */

div#topics {
	height: 290px;
	width: 1128px;
	margin: 0px auto 13px;
	background: url(../images/main/home/topic.png) center no-repeat;
	position: relative;
}

/* トップページ */

div#contents-page {
	width: 1174px;
	margin: 0px auto;
	position: relative;
}

div#contents-main {
	width: 577px;
	font-size: 0.9em;
	padding: 0px 5px 30px 5px;
	position: relative;
	float: left;
}

div#contents-widemain {
	width: 841px;
	font-size: 0.9em;
	padding: 0px 10px 30px 0px;
	position: relative;
	float: left;
}

div#contents-side {
	width: 271px;
	padding-bottom: 30px;
	position: relative;
	float: left;
}

div#contents-wideside {
	width: 316px;
	padding-bottom: 30px;
	position: relative;
	float: left;
}

p.subtitle {
	text-align: center;
	padding-top: 5px;
}

div.subsentence {
	padding: 5px 15px;
}

div.subdirections {
	padding: 15px 5px 5px;
	font-size: 0.8em;
	text-align: right;
}

div#maincontents_apology_header {
	background: url(../images/main/home/apology.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_information_header {
	background: url(../images/main/home/information.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_backnumber_header {
	background: url(../images/main/home/backnumber.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_product_header {
	background: url(../images/main/product/product.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_event_header {
	background: url(../images/main/event/event.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_eventlog_header {
	background: url(../images/main/event/eventlog.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_mail_header {
	background: url(../images/main/mail/mail.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_link_header {
	background: url(../images/main/link/link.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_creater_header {
	background: url(../images/main/link/creater.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_circle_header {
	background: url(../images/main/link/circle.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_distribution_header {
	background: url(../images/main/link/distribution.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_support_header {
	background: url(../images/main/support/support.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_supportform_header {
	background: url(../images/main/support/supportform.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_download_header {
	background: url(../images/main/support/download.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_special_header {
	background: url(../images/main/special/special.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_wrecruit_header {
	background: url(../images/main/recruit/wrecruit.png) no-repeat top;
	padding-top: 45px;
}

div#maincontents_recruit_header {
	background: url(../images/main/recruit/recruit.png) no-repeat top;
	padding-top: 45px;
}

div.maincontents_inner {
	background: url(../images/main/maincontents_c.png) repeat-y;
	padding-top: 5px;
	padding-bottom: 1px;
}

div.maincontents_wideinner {
	background: url(../images/main/maincontents_wide_c.png) repeat-y;
	padding-top: 10px;
}

div.maincontents_footer {
	width: 577px;
	background: url(../images/main/maincontents_f.png) no-repeat bottom;
	padding-bottom: 20px;
	margin-bottom: 5px;
}

div.maincontents_widefooter {
	width: 841px;
	background: url(../images/main/maincontents_wide_f.png) no-repeat bottom;
	padding-bottom: 20px;
	margin-bottom: 5px;
}

div#sidecontents_news_header {
	background: url(../images/side/sidenews.png) no-repeat top;
	padding-top: 47px;
}

div#sidecontents_event_header {
	background: url(../images/side/sideevent.png) no-repeat top;
	padding-top: 47px;
}

div#sidecontents_blog_header {
	background: url(../images/side/sideblog.png) no-repeat top;
	padding-top: 47px;
}

div#sidecontents_product_header {
	background: url(../images/side/sideproduct.png) no-repeat top;
	padding-top: 47px;
}

div#sidecontents_twitter_header {
	background: url(../images/side/sidetwitter.png) no-repeat top;
	padding-top: 47px;
}

div.sidecontents_wide_inner {
	background: url(../images/side/sidecontents_wide_c.png) repeat-y;
	padding-top: 10px;
}

div.sidecontents_inner {
	background: url(../images/side/sidecontents_c.png) repeat-y;
	padding-top: 10px;
}

div.sidecontents_wide_footer {
	width: 316px;
	background: url(../images/side/sidecontents_wide_f.png) no-repeat bottom;
	padding-bottom: 20px;
	margin-bottom: 5px;
}

div.sidecontents_footer {
	width: 271px;
	background: url(../images/side/sidecontents_f.png) no-repeat bottom;
	padding-bottom: 20px;
	margin-bottom: 5px;
}

/* メインコンテンツ */
/* Home */
div.maincontents {
	width: 559px;
	margin: 0px auto;
	padding: 10px 0px 0px;
	position: relative;
}

div.widemaincontents {
	width: 823px;
	margin: 0px auto;
	padding-bottom: 10px;
	position: relative;
}

div.maincolumn {
	width: 549px;
	background: url(../images/main/maincolumn.png) repeat-y;
	margin: 0px auto 5px;
	padding: 15px 0px;
}

div.maincolumn_wide {
	width: 813px;
	background: url(../images/main/maincolumn_wide.png) repeat-y;
	margin: 0px auto 10px;
	padding: 15px 0px;
	overflow: hidden;
}

table.information {
	width: 539px;
	margin: 0px auto;
	background: url(../images/main/home/pointline.png) no-repeat bottom center;
}

table.information td.title_info{
	width: 539px;
	height: 30px;
	background: url(../images/main/home/columuntitle_info.png) no-repeat;
	margin: 0px auto;
	padding-left: 30px;
	font-size: 1.2em;
	font-weight: bold;
	color: #fff;
}

table.information td.title_game{
	width: 539px;
	height: 30px;
	background: url(../images/main/home/columuntitle_game.png) no-repeat;
	margin: 0px auto;
	padding-left: 30px;
	font-size: 1.2em;
	font-weight: bold;
	color: #fff;
}

table.information td.title_link{
	width: 539px;
	height: 30px;
	background: url(../images/main/home/columuntitle_link.png) no-repeat;
	margin: 0px auto;
	padding-left: 30px;
	font-size: 1.2em;
	font-weight: bold;
	color: #fff;
}

table.information td.title_event{
	width: 539px;
	height: 30px;
	background: url(../images/main/home/columuntitle_event.png) no-repeat;
	margin: 0px auto;
	padding-left: 30px;
	font-size: 1.2em;
	font-weight: bold;
	color: #fff;
}

table.information td.title_apology{
	width: 539px;
	height: 30px;
	background: url(../images/main/home/columuntitle_apology.png) no-repeat;
	margin: 0px auto;
	padding-left: 30px;
	font-size: 1.2em;
	font-weight: bold;
	color: #fff;
}

table.information td.image{
	width: 200px;
	margin: 0px auto;
	text-align: center;
}

table.information td.description{
	width: 339px;
	vertical-align: top;
	text-align: left;
}

p.sns {
	margin-top: 5px;
	text-align: right;
}

p.backnumber {
	margin-right: 20px;
	text-align: right;
}

/* BackuNumber */

table.backnumber {
	width: 542px;
	margin: 0px auto;
	background: url(../images/main/home/backnumberline.png) no-repeat bottom center;
}

table.backnumber td.day {
	width: 76px;
	color: #fff;
	padding: 0px 1px 0px 3px;
	text-align: left;
}

table.backnumber td.image {
	width: 60px;
	text-align: center;
}

table.backnumber td.title {
	width: 402px;
	text-align: left;
}

/* PRODUCT */

table.product {
	font-size: 95%;
	padding: 5px;
}

table.product td.title {
	width: 335px;
	height: 40px;
}

table.product td.subtitle {
	width: 471px;
	height: 40px;
	text-align: center;
}

table.product td.image {
	height: 165px;
	width: 335px;
}

table.product td.caption {
	height: 128px;
	width: 471px;
	vertical-align: top;
	padding: 15px 5px 5px;
}

table.product td.official {
	width: 471px;
	height: 27px;
	padding-left: 380px;
}

table.product td.official a {
	display: block;
	width: 85px;
	height: 27px;
}

table.product td.official span {
	display: none;
} 

table.product a.official {
	background-image: url(../images/main/product/official.png);
}

table.product a:hover.official {
	background-image: url(../images/main/product/official2.png);
}

/* EVENT */

table.newevent {
	width: 520px;
	border: 2px #03BFF2 ridge;
	margin: 0px auto 5px;
}

table.newevent td.date{
	width: 150px;
	background: #03BFF2;
	color: #ffffff;
	text-align: center;
}

table.newevent td.title{
	color: #000000;
}

table.newevent td.other{
	padding-left: 15px;
}

table.event {
	width: 520px;
	border: 2px #ffbbcb ridge;
	margin: 0px auto 5px;
}

table.event td.date{
	width: 150px;
	background: #ff88a4;
	color: #ffffff;
	text-align: center;
}

table.event td.title{
	color: #000000;
}

table.event td.other{
	padding-left: 15px;
}

/* Mail */

table.form {
	width: 520px;
	margin: 10px auto 5px;
	text-align: center;
}

table.form th{
	width: 30%;
	border: 2px #000000 ridge;
}

table.form td{
	padding: 2px 0px;
	border: 2px #000000 ridge;
}

table.form td.pull{
	padding-left: 10px; 
	text-align: left;
}

table.formreceive {
	width: 520px;
	margin: 10px auto 5px;
	text-align: center;
}

table.formreceive th{
	width: 30%;
	border: 2px #000000 ridge;
	background: #bbb;
}

table.formreceive td{
	padding: 2px 3px;
	border: 2px #000000 ridge;
	text-align: left;
	vertical-align: top;
}

table.formreceive td.pull{
	padding-left: 10px;
	text-align: left;
}

table.form_submit {
	width: 200px;
	margin: 0px auto;
	text-align: center;
}

table.form_submit td{
	width: 50%;
}

table.form input.text {
	width: 95%;
}

table.form textarea{
	width: 95%;
}

/* Support */

table.support {
	width: 520px;
	margin: 10px auto 5px;
}

table.support th {
	width: 30%;
	border: 2px #000000 ridge;
}

table.support td {
	width: 252px;
	padding: 2px 0px;
	border: 2px #000000 ridge;
}

table.support p.title {
	padding: 2px 5px;
	font-weight: bold;
}

table.support p.image {
	margin: 0px auto;
	text-align: center;
}

table.support p.link {
	padding: 2px 5px;
}

/* LINK */

table.link_top {
	width: 520px;
	border: 1px groove;
	border-collapse: collapse;
	margin: 0px auto;
}

table.link_top td.small{
	width: 120px;
	background: #e2e6e9;
	border: 1px groove;
	font-weight: bold;
	padding: 5px;
}

table.link_top td.big{
	width: 400px;
	border: 1px groove;
	padding: 5px;
}

table.link {
	font-size: 80%;
	text-align: center;
	border: 1px groove;
	margin: 0px auto;
}

table.link td {
	height: 60px;
	width: 260px;
	border: 1px groove;
}

span.author-name {
	color: green;
}

span.site-name {
	color: red;
}

/* Special */

p#special{
	height: 1150px;
	margin: 0px auto;
	text-align: center;
}

table#special {
	width: 549px;
	margin: 10px auto 5px;
	text-align: center;
}

table#special td{
	width: 84px;
	padding: 5px;
	text-align: center;
}

table#special image{
	cursor: pointer;
}

/* Recruit */

div#work {
	width: 375px;
	padding: 7px 0px 5px 15px;
	float: left;
}

div#work h2 {
	font-size: 80%;
	font-weight: normal;
}

div#work ul {
	list-style-type: none;
}

div#work li {
	font-size: 80%;
	padding-left: 20px;
}

div#work_top {
	border: 2px #000000 solid;
	padding: 2px;
}

div#work_follow {
	border-left: 2px #000000 solid;
	border-right: 2px #000000 solid;
	border-bottom: 2px #000000 solid;
	padding: 2px;
}

div#work_attention {
	border-left: 2px #000000 solid;
	border-right: 2px #000000 solid;
	border-bottom: 2px #000000 solid;
	padding: 2px;
}

div#work_attention p{
	font-size: 80%;
}

div#recruitform{
	margin-left: 13px;
}

table.recruit {
	width: 400px;
	margin: 5px auto 5px;
	font-size: 80%;
}

table.recruit td,th{
	padding: 5px 0px;
}

table.recruit th{
	width: 30%;
	border: 2px #d61193 ridge;
	text-align: center;
	background: #fc4893;
	color: #ffffff;
}

table.recruit td{
	border: 2px #888888 ridge;
	text-align: center;
}

table.recruit td.pull{
	padding-left: 10px;
	text-align: left;
}

table.recruit input{
	width: 95%;
}

table.recruit textarea{
	width: 95%;
}

table.recruit td.borderhide {
	border: none;
}

/* サイドコンテンツ */

table.sidetable {
	width: 285px;
	padding: 4px 0px;
	font-size: 0.74em;
}

table.sidetable td.day {
	width: 285px;
	font-weight: bold;
}

table.sidetable td.caption-news {
	width: 285px;
	height: 13px;
	font-weight: bold;
	background: url(../images/side/sidecolumuntitle_news.png) no-repeat;
}

table.sidetable td.caption-event {
	width: 285px;
	height: 13px;
	font-weight: bold;
	background: url(../images/side/sidecolumuntitle_event.png) no-repeat;
}

table.sidetable td.caption-blog {
	width: 285px;
	height: 13px;
	font-weight: bold;
	background: url(../images/side/sidecolumuntitle_blog.png) no-repeat;
}

table.sidetable td.image{
	width: 90px;
}

table.sidetable td.description {
	width: 195px;
	vertical-align: top;
}

div.sidecontents-wide {
	width: 298px;
	margin: 0px auto;
	padding-bottom: 1px;
	position: relative;
}

div.sidecontents {
	width: 253px;
	margin: 0px auto;
	padding-bottom: 1px;
	position: relative;
}

div.sidecontents p.sideproduct{
	width: 200px;
	margin: 10px auto 5px;
}

div.sidecontents div#sidetwitter{
	width: 240px;
	margin: 0px auto;
}

div.subcolumn {
	width: 288px;
	background: url(../images/side/subcolumn.png) repeat-y;
	margin: 10px auto 10px;
}

/* フッター */

div#footer {
	height: 38px;
	width: 1146px;
	margin: 0px auto;
	background: url(../images/frame/footer.png) no-repeat center bottom;
	clear: left;
}

/* 以下プラグイン */
/* CSS for jQuery Orbit Plugin 1.2.3 */

#featured { 
	width: 1128px;
	height: 270px;
	background: url(../images/orbit/loading.gif) no-repeat center center;
	overflow: hidden; }
#featured>img,
#featured>div,
#featured>a { display: none; }

/* CONTAINER
   ================================================== */

div.orbit-wrapper {
    width: 1px;
    height: 1px;
    margin: 0px auto;
    padding: 10px 0px;
    position: relative; }

div.orbit {
    width: 1px;
    height: 1px;
    position: relative;
    overflow: hidden }

div.orbit>img {
    position: absolute;
    top: 0;
    left: 0;
    display: none; }

div.orbit>a {
    border: none;
    position: absolute;
    top: 0;
    left: 0;
    line-height: 0; 
    display: none; }

.orbit>div {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

/* Note: If your slider only uses content or anchors, you're going to want to put the width and height declarations on the ".orbit>div" and "div.orbit>a" tags in addition to just the .orbit-wrapper */


/* TIMER
   ================================================== */

div.timer {
    width: 40px;
    height: 40px;
    overflow: hidden;
    position: absolute;
    top: 10px;
    right: 10px;
    opacity: .6;
    cursor: pointer;
    z-index: 1001; }

span.rotator {
    display: block;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    left: -20px;
    background: url(../images/orbit/rotator-black.png) no-repeat;
    z-index: 3; }

span.mask {
    display: block;
    width: 20px;
    height: 40px;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    overflow: hidden; }

span.rotator.move {
    left: 0 }

span.mask.move {
    width: 40px;
    left: 0;
    background: url(../images/orbit/timer-black.png) repeat 0 0; }

span.pause {
    display: block;
    width: 40px;
    height: 40px;
    position: absolute;
    top: 0;
    left: 0;
    background: url(../images/orbit/pause-black.png) no-repeat;
    z-index: 4;
    opacity: 0; }

span.pause.active {
    background: url(../images/orbit/pause-black.png) no-repeat 0 -40px }

div.timer:hover span.pause,
span.pause.active {
    opacity: 1 }


/* CAPTIONS
   ================================================== */

.orbit-caption {
    display: none;
    font-family: "HelveticaNeue", "Helvetica-Neue", Helvetica, Arial, sans-serif; }

.orbit-wrapper .orbit-caption {
    background: #000;
    background: rgba(0,0,0,.6);
    z-index: 1000;
    color: #fff;
	text-align: center;
	padding: 7px 0;
    font-size: 13px;
    position: absolute;
    right: 0;
    bottom: 0;
    width: 100%; }

/* DIRECTIONAL NAV
   ================================================== */

div.slider-nav {
    display: block }

div.slider-nav span {
    width: 78px;
    height: 100px;
    text-indent: -9999px;
    position: absolute;
    z-index: 1000;
    top: 50%;
    margin-top: -50px;
    cursor: pointer; }

div.slider-nav span.right {
    background: url(../images/orbit/right-arrow.png);
    right: 0; }

div.slider-nav span.left {
    background: url(../images/orbit/left-arrow.png);
    left: 0; }

/* BULLET NAV
   ================================================== */

.orbit-bullets {
    position: absolute;
    z-index: 1000;
    list-style: none;
    bottom: -13px;
    left: 50%;
	margin-left: -39px;
    padding: 0; }

.orbit-bullets li {
    float: left;
    margin-left: 5px;
    cursor: pointer;
    color: #999;
    text-indent: -9999px;
    background: url(../images/orbit/bullets.png) no-repeat 4px 0;
    width: 13px;
    height: 12px;
    overflow: hidden; }

.orbit-bullets li.active {
    color: #222;
    background-position: -8px 0; }
    
.orbit-bullets li.has-thumb {
    background: none;
    width: 100px;
    height: 75px; }

.orbit-bullets li.active.has-thumb {
    background-position: 0 0;
    border-top: 2px solid #000; }


/* validator CSS Styles */

div.baloon {
   font-size: 11px;
   color: #900;
   position: absolute;
   padding-left: 5px;
   background: url("../images/frame/baloon_left.gif") no-repeat top left;
   z-index: 1;
}

div.baloon a {
   color: blue;
   text-decoration: none;
   padding: 2px;
   margin-right: 2px;
}

div.baloon a:hover {
   background-color: #eef;
}

div.baloon div {
   background: url("../images/frame/baloon_right.gif") no-repeat top right;
   padding: 7px 7px 14px 0;
   white-space: nowrap;
}

div.baloon span {
	background: url("../images/frame/baloon_span.gif") no-repeat top left;
	padding: 7px 7px 14px 0px;
}
