@charset "utf-8";

@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
@import url(https://fonts.googleapis.com/css?family=Modern+Antiqua);

/* 横スクロールを防ぐ
----------------------------------------------------*/
html{
	overflow:auto;
}
body{
	overflow: hidden;
	min-width:1140px;
}

/*--- reset */
html {
	overflow-y: scroll;
}
body {
	font: 16px/1.8 'Noto Sans JP', Arial, Verdana, 游ゴシック, YuGothic,'ヒラギノ角ゴ ProN W3', 'Hiragino Kaku Gothic ProN', メイリオ, Meiryo,sans-serif;
}
body,div,dl,dt,dd,ul,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td {
	margin: 0;
	padding: 0;
}
address,caption,cite,code,dfn,em,strong,th,var {
	font-style: normal;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
caption,th {
	text-align: left;
}
q:before,q:after {
	content: '';
}
object,
embed {
	vertical-align: top;
}
legend {
	display: none;
}
h1,h2,h3,h4,h5,h6 {
	font-size: 100%;
}
img,abbr,acronym,fieldset {
	border: 0;
}
li {
	list-style-type: none;
}

/*--- default */
body {
	background: #FFF;
	color: #333;
	font-size:15px;
	line-height: 1.9;
	letter-spacing: 0.1em;
}
* html body {	/* for IF6 */
	font-size:x-small;
}

img {
	vertical-align: bottom;
}


/*--- css ロールオーバー */
.ov a {
    -webkit-transition: 0.3s ease-in-out;  
       -moz-transition: 0.3s ease-in-out;  
         -o-transition: 0.3s ease-in-out;  
            transition: 0.3s ease-in-out; 
}
.ov a:hover {
    opacity:0.7;
    filter: alpha(opacity=70);
    -ms-filter: "alpha( opacity=70 )";
}

/*--- iframe */
iframe {
    vertical-align: bottom;
}


/* ===================================================================
 style info : ヘッダーやフッターなどサイト内共通
=================================================================== */

/*----------------------------------------------------
	基本設定、リンクカラーなど
----------------------------------------------------*/
a:link {
	color:#0088cc;
	text-decoration: underline;
}
a:visited {
	color:#0088cc;
	text-decoration: underline;
}
a:hover {
	color:#0088cc;
	text-decoration: none;
}

.red{
	color:#c00;
}

.strong {
	font-weight: bolder;
}
.textSize110 {
	font-size: 110% !important;
}
.kome {
	color: #666;
	font-size: 90%;
	margin-top: 10px;
}


/*----------------------------------------------------
	右固定ナビ
----------------------------------------------------*/
ul#navi {
	position: fixed;
	padding: 0px;
	top: 110px;
	list-style: none;
	z-index:500;
	right: -86px;/* 伸びた箇所の幅（JSも合わせる） */
}
* html ul#navi {
  position: absolute;
  top: expression(eval(document.documentElement.scrollTop+30));
 }
ul#navi li {
	margin-bottom: 0px;
	text-indent:-9999px;
}
ul#navi li a {
    display: block;
    width: 151px;/* 画像全体の幅 */
	height: 65px;
}
ul#navi .r_navi01 a {
    background-image: url(common/img/rnav_twitter.png);
}
ul#navi .r_navi02 a {
    background-image: url(common/img/rnav_facebook.png);
}
ul#navi .r_navi03 a {
    background-image: url(common/img/rnav_instagram.png);
}

/* 言語
----------------------------------------------------*/

#langBtn {
	z-index:9999;
	position: absolute;
	top: 9px;
	right: 0px;
}

#langBtn img {
	vertical-align: top;
}

#lang{
	overflow: hidden;
	margin: 0 auto;
}

#lang li a.langOn {
	width: 169px;
	height: 25px;
	padding: 0px !important;
}

#lang li a {
	height: 30px;
	font-size: 12px;
	display: block;
	padding: 1px 2px 1px 10px;
	line-height: 2.8;
	color: #333;
	text-align: left;
	text-decoration: none;
}
#lang li a:hover {
}
#lang li ul {
	display: none;
	position: absolute;
	right: 0px;
}
#lang li ul li {
	width: 150px;
}
#lang li ul li a {
	background: #eee;
	padding-left: 10px;
}
#lang li ul li a:hover {
	background: #ccc;
}


/*----------------------------------------------------
	header#globalHeader
----------------------------------------------------*/
header#globalHeader {
	height: 130px;
	position: relative;
}

#tophead {
	height: 80px;
}

#logo h1,#logo p {
	text-align: center;
	padding-top: 10px;
}

#headerRight {
	position: absolute;
	top: 0px;
	right: 0px;
	float: right;
}


/* グローバルナビゲーション
----------------------------------------------------*/
.gnav {
	height: 50px;
}
.gnav a {
	color: #333;
	text-decoration: none;
}
.gnav a:hover {
	color: #666;
}

ul#menu-nav a {
	padding-top: 5px;
	height: 45px;
	background-image: url(common/img/headerBG.png);
	background-repeat: no-repeat;
}

ul#menu-nav li {
	float: left;
	font-size: 110%;
	text-align: center;
	padding-top: 5px;
}
ul#menu-nav li.long {
	line-height: 1em;
}
ul#menu-nav li a {
	display: block;
}

ul#menu-nav li.menu_1,
ul#menu-nav li.menu_2,
ul#menu-nav li.menu_3,
ul#menu-nav li.menu_5,
ul#menu-nav li.menu_6,
ul#menu-nav li.menu_7
 {
	width: 160px;
}
ul#menu-nav li.menu_4 {
	width: 180px;
}

.menu_1 a { background-position: 0 0; }
.menu_2 a { background-position: -160px 0; }
.menu_3 a { background-position: -320px 0; }
.menu_4 a { background-position: -480px 0; }
.menu_5 a { background-position: -660px 0; }
.menu_6 a { background-position: -820px 0; }
.menu_7 a { background-position: -980px 0; }

.menu_1 a:hover { background-position: 0 -50px; }
.menu_2 a:hover { background-position: -160px -50px; }
.menu_3 a:hover{ background-position: -320px -50px; }
.menu_4 a:hover { background-position: -480px -50px; }
.menu_5 a:hover { background-position: -660px -50px; }
.menu_6 a:hover { background-position: -820px -50px; }
.menu_7 a:hover { background-position: -980px -50px; }

.home .menu_1 a { background-position: 0 -50px; }
.access .menu_2 a { background-position: -160px -50px; }
.about .menu_3 a{ background-position: -320px -50px; }
.join .menu_4 a { background-position: -480px -50px; }
.gallery .menu_5 a { background-position: -660px -50px; }
.movie .menu_6 a { background-position: -820px -50px; }
.past .menu_7 a { background-position: -980px -50px; }


/*----------------------------------------------------
	footer
----------------------------------------------------*/
#footer {
	background-color: #FFF;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #CCC;
}
#footer .support {
	margin-bottom: 20px;
	text-align: left;
	font-size: 90%;
}
#bnr {
	padding-top: 20px;
	padding-bottom: 20px;
	float: left;
}
 
#bnr ul {
	float:left;
	position:relative;
}
 
#bnr li {
	float:left;
	position:relative;
	margin-right: 10px;
}

#bnrR {
	padding-top: 20px;
	padding-bottom: 20px;
	float: right;
}
#bnrR ul li {
	float: left;
	margin-left:20px;
}

ul.footnav {
	margin-top: 30px;
	margin-bottom: 30px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #CCC;
	padding-bottom: 30px;
}

ul.footnav li {
	float:left;
	padding-right: 20px;
	padding-left: 20px;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #999;
	line-height: 1em;
	font-size: 90%;
}
ul.footnav li:last-child {
	border-right-style: none;
}
ul.footnav li a {
	color: #333;
	text-decoration: none;
}
ul.footnav li a:hover {
	text-decoration: underline;
}


/*----------------------------------------------------
	汎用
----------------------------------------------------*/

/* float */
.floatLeft{
	float:left;
	margin-right: 20px;
	margin-bottom: 20px;
}
.floatRight{
	float:right;
	margin-left: 20px;
	margin-bottom: 20px;
}
.floatRight2{
	float:right;
}

.w50 {
	width: 460px;
}

/* clearfix */
.clear{
	clear:both;
}
.clearfix {zoom:1;}
.clearfix:after {
  content: ""; 
  display: block; 
  clear: both;
}


/* マージン関連 */
.mgb05{
	margin-bottom:5px;
}
.mgb10{
	margin-bottom:10px;
}
.mgb15{
	margin-bottom:15px;
}
.mgb20{
	margin-bottom:20px;
}
.mgb25{
	margin-bottom:25px;
}
.mgb30{
	margin-bottom:30px;
}
.mgb35{
	margin-bottom:35px;
}
.mgb40{
	margin-bottom:40px;
}
.mgb50{
	margin-bottom:50px;
}
.mgb60{
	margin-bottom:60px;
}
.mgb70{
	margin-bottom:70px;
}

.mgt05{
	margin-top:5px;
}
.mgt10{
	margin-top:10px;
}
.mgt20{
	margin-top:20px;
}
.mgt25 {
	margin-top: 25px;
}
.mgt30{
	margin-top:30px;
}
.mgt35{
	margin-top:35px;
}
.mgt40{
	margin-top:40px;
}
.mgt50{
	margin-top:50px;
}
.mgt60{
	margin-top:60px;
}
.mgt80{
	margin-top:80px;
}
.mgl05{
	margin-left:5px;
}
.mgl10{
	margin-left:10px;
}
.mgl15{
	margin-left:15px;
}
.mgl20{
	margin-left:20px;
}
.mgl30{
	margin-left:30px;
}
.mgr10{
	margin-right:10px;
}
.mgr15{
	margin-right:15px;
}
.mgr20{
	margin-right:20px;
}
.mgr30{
	margin-right:30px;
}
.mgr40{
	margin-right:40px;
}

/* 行ぞろえ */
.alignCenter{
	text-align: center;	
}
.alignLeft{
	text-align: left;	
}
.alignRight{
	text-align: right;	
}

/* ライン */
hr.hr01 {
	border-top-width: 4px;
	border-top-style: solid;
	border-top-color: #195242;
}


/* ページリンク
----------------------------------------------------*/
#p1,#p2 {
	padding:100px 0 0;
    margin:-100px 0 0;
}



/* ===================================================================
共通
=================================================================== */

/*----------------------------------------------------
	inner（ページ全体）
----------------------------------------------------*/
#inner {
	width: 1140px;
	margin: 0 auto;
	position: relative;
}


/*----------------------------------------------------
	contents
----------------------------------------------------*/
#contents {
	/zoom: 1;
	background-image: url(common/img/bg.png);
	background-repeat: repeat;
	background-position: center top;
	padding-bottom: 40px;
}
#contentsAbout {
	/zoom: 1;
	background-image: url(common/img/bg_contentsAbout.png);
	background-repeat: repeat;
	background-position: center top;
	padding-top: 50px;
	padding-bottom: 50px;
}
#contentsHistory {
	/zoom: 1;
	background-image: url(common/img/bg_contentsHistory.png);
	background-repeat: repeat;
	background-position: center top;
	padding-top: 50px;
	padding-bottom: 50px;
}
#contentsBtn {
	/zoom: 1;
	background-image: url(common/img/bg.png);
	background-repeat: repeat;
	background-position: center top;
	padding-top: 50px;
	padding-bottom: 50px;
}



/* ページトップ
----------------------------------------------------*/
#page-top {
    position: fixed;
    bottom: 20px;
    right: 0px;
    font-size: 77%;
}
#page-top a {
    background: #666;
    text-decoration: none;
    color: #fff;
    width: 100px;
    padding: 30px 0;
    text-align: center;
    display: block;
    border-radius: 5px;
}
#page-top a:hover {
    text-decoration: none;
    background: #999;
}
#pagetop {
    position: fixed;
    bottom: 10px;
    right: 10px;
}


/* ===================================================================
内容
=================================================================== */

/* 見出し
----------------------------------------------------*/
h1 {
	font-size: 180%;
	font-weight: 500;
}

h2 {
	font-size: 24px;
	text-align: center;
	margin-bottom: 30px;
	letter-spacing: 0.1em;
	line-height: 1.2em;
}
h2.top {
	font-size: 30px !important;
}


h3 {
	font-size: 20px;
	margin-bottom: 10px;
	color: #e61773;
}

.midashi01 {
	font-size: 110%;
	margin-bottom: 10px;
}



/* ライン
----------------------------------------------------*/
hr {
	height: 0;
	margin: 0;
	padding: 0;
	border: 0;
}
hr.style1 {
	border-top: 1px solid #333;
	margin-top: 30px;
	margin-bottom: 30px;
}


/* ===================================================================
トップページ
=================================================================== */

#mainv {
	background-color: #000;
}

.topBoxArea {
}
.topBox {
	width: 380px;
	float: left;
	background-repeat: no-repeat;
	background-position: right bottom;
	padding-bottom: 20px;
	position: relative;
}
.topBoxAccess {
	background-image: url(common/img/bgAccess.gif);
}
.topBoxAbout {
	background-image: url(common/img/bgAbout.gif);
}
.topBoxJoin {
	background-image: url(common/img/bgJoin.gif);
}
.topBoxGallery {
	background-image: url(common/img/bgGallery.gif);
}
.topBoxMovie {
	background-image: url(common/img/bgMovie.gif);
}
.topBoxPast {
	background-image: url(common/img/bgPast.gif);
}
.play {
	margin: auto;
	position: absolute;
	left: 0px;
	top: 120px;
	right: 0px;
	z-index:1;
	text-align: center;
}

.topBox a {
	color: #333;
	text-decoration: none;
}
.topBox p.image {
	margin: 20px 20px 0px 20px;
}
.topBox p.caption {
	background-color: #FFF;
	padding: 10px 60px 10px 10px;
	margin-top: 0px;
	margin-right: 20px;
	margin-bottom: 0px;
	margin-left: 20px;
	background-image: url(common/img/arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
}


.scale_up {
	width: 340px;
	height: 250px;
	overflow: hidden;
}
.scale_up img {
    -moz-transition: -moz-transform 0.5s linear;
    -webkit-transition: -webkit-transform 0.5s linear;
    -o-transition: -o-transform 0.5s linear;
    -ms-transition: -ms-transform 0.5s linear;
    transition: transform 0.5s linear;
}
.scale_up img:hover {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}

/* 最新情報
----------------------------------------------------*/
.informationArea {
	margin-bottom:40px;
	background-color: #FFF;
	padding: 40px 40px 30px 40px;
}
ul.information li {
	margin-bottom:10px;
	padding-bottom: 10px;
	border-bottom-width: 1px;
	border-bottom-style: dotted;
	border-bottom-color: #999;
}
ul.information li a {
	color: #056391;
	text-decoration: none;
}
ul.information li a:hover {
	text-decoration: underline;
}