@charset "utf-8";
/*-------------------------------------*/

* {margin:0;padding:0;}

a:hover img.hoverImg{
opacity:0.6;
filter:alpha(opacity=60);
-ms-filter: "alpha( opacity=60 )";
}

img {border-style:none; display:block;}

a { 
text-decoration:underline;
color: #333;}

p{
    margin: 0 0 25px 0;
    line-height: 1.8em;
    padding: 0;
}

html,
body,
article {
    margin: 0;
    padding: 0;
    -webkit-text-size-adjust: 100%;
}

html{
	width:100%;
    height:100%;
	min-width:100%;
	max-width: 100%;
}
body{
	font-family: "メイリオ", Meiryo,"KozGoPro-Light", "小塚ゴシック Pro L", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "游ゴシック", YuGothic,  sans-serif;
	color: #333;
    text-align: center;
    margin: 0;
    padding: 0;
    font-size: 12px;
    position: relative;
	background:#f9dce9;
	width:100%;
	min-width:100%;
	max-width: 100%;
}

#wrap {
    margin: auto;
    padding: 0;
	width:100%;
	min-width:100%;
	max-width: 100%;
	min-height: 100vh;
}


/* ------------------------
    ヘッダー
------------------------ */


header{
    height: 60px;
    position: relative;
    z-index: 10;
    margin: 0;
	/*box-shadow: 0px 1px 1px #ddd;*/
	border-bottom: 1px solid #000;
	background:#fff;
}

header nav{
    padding: 0 10px 0 10px;
    margin: 0 auto 0 auto;
    width: 1040px;
}

header nav ul{
    list-style: none;
    padding: 0;
    margin: 0;
}

header nav li{
    display: inline-block;
    float: left;
    margin: 0 0 0 20px;
    padding: 0;
}

header nav a{
    display: inline-block;
    float: left;
    padding: 22px 10px;
    margin: 0;
    position: relative;
    font-size: 16px;
    line-height: 1em;
    letter-spacing: 1px;
    color: #333;
    text-decoration: none;
}

header nav a em{
    display: block;
    position: relative;
    min-height: 20px;
    padding: 0 0 0 1px;
	font-style: normal;
}

header nav a em:after{
    content: '';
    position: absolute;
    bottom : 0;
    left: 0;
    width: 100%;
    height: 1px;
    -webkit-transform: scaleX(0);
    -ms-transform: scaleX(0);
    transform: scaleX(0);
    background: #333;
    -webkit-transition: all .3s ease;
    transition: all .3s ease;
    display: block;
}

header nav a:hover em:after{
    -webkit-transform: scaleX(1);
    -ms-transform: scaleX(1);
    transform: scaleX(1);
}

header nav #snslink {
	text-align:right;
	display:block;
	padding-top:14px;
    border-radius: 5px;        /* CSS3草案 */  
    -webkit-border-radius: 5px;    /* Safari,Google Chrome用 */  
    -moz-border-radius: 5px;   /* Firefox用 */  
}

header nav #snslink li {
	display:block;
	float:left;
	margin-right:0;
	margin-left:0;
	padding:0px;
	list-style-type:none;
	width:70px;
	overflow:hidden;
	padding:5px;
}
header nav #snslink li.tli{
	margin-left:30px;
}
header nav #snslink li.gli{
	width:56px;
}

#main{
	width:100%;
	height:100%;
	min-width:1040px;
	min-height:620px;
	background: url("../img/tokyo/tokyo_bg.jpg") repeat;
	/*
background: linear-gradient(358deg, #ff427b, #a1000d);
background-size: 400% 400%;

-webkit-animation: AnimationName 13s ease infinite;
animation: AnimationName 13s ease infinite;

@-webkit-keyframes AnimationName {
    0%{background-position:0% 54%}
    50%{background-position:100% 47%}
    100%{background-position:0% 54%}
}
@keyframes AnimationName { 
    0%{background-position:0% 54%}
    50%{background-position:100% 47%}
    100%{background-position:0% 54%}
}
	/*background: radial-gradient(#FFFFFF, #FFFFFF 50%, #E0E0E0);*/
}

h1{
    width: 970px;
    height: 600px;
    position: absolute;
    top: 0px;
    left: 35px;
    margin: 0 0 0 0px;
    z-index: 10;
    background: url(../img/tokyo.png) no-repeat 0 0;
    text-align: left;
    text-indent: 100%; /* テキスト画像置換 */
    white-space: nowrap; /* テキスト画像置換 */
    overflow: hidden; /* テキスト画像置換 */
}

/* ------------------------
    共通
------------------------ */

.inner{
	width:1040px;
	margin:0 auto;
	position: relative;
}
.inner:after {
  content: '';
  display: table;
  clear: both;
}
h2{
	font-size:240%;
	padding:60px 0;
	}
h4{
	font-size:180%;
	padding:20px 0 10px 0;
	text-align:left;
	color:#838383;
	clear: both;
    display: block;
	}

a.bt{
    width: 210px;
    height: 48px;
    line-height: 48px;
    position: absolute;
	text-decoration:none;
    left: 50%;
    margin: 20px 0 0 -105px;
    z-index: 10;
    text-align: center;
    color: #444;
    border: 1px solid #444;
}

a.bt{
    transition: 0.5s;
}

a.bt:after{
    content: '>';
    font-size: 15px;
    position: absolute;
    top: 0;
    right: 10px;
}

a.bt:hover{
    background: #fff;
    color: #444;
}

a.bt2a{
	position:absolute;
	bottom: 70px;
}

a.bt2{
	position:absolute;
	bottom: -70px;
}

a.bt2:hover{
    background: #ddd;
    color: #444;
}

a.bt3{
	position:absolute;
	bottom: -130px;
}

a.bt3:hover{
    background: #ddd;
    color: #444;
}

.tL{text-align:left;}
.txtb{
	font-size:150%;
	font-weight:bold;
}
.txts{
	font-size:85%;
}
.pB60{padding-bottom:60px;}

.txtrb{
	color:red;
	font-weight:bold;
}
/* ------------------------
   ワッツニュー
------------------------ */
#news{
	background:#c91b42;
	color: #fff;
	padding-bottom:60px;
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	/*box-shadow: 0px -2px 2px #ddd;*/
}
.scrinner{
	width:940px;
	margin:0 auto;
	display: table;
	clear: both;
	padding-top:50px;
	position:relative;
}
h3{
	width:226px;
	padding-right:24px;
	font-weight:400;
	text-align:right;
	position: absolute;
  top: 55%;
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  transform: translateY(-50%);
}
#scr{
	width:670px;
	overflow:auto;
	z-index: 2;
	text-align:left;
	margin:0 0 0 250px;
	border-left:1px solid #DDD;
	box-sizing:border-box;
}

#scr dl{
	padding:18px;
	}

#scr dl dt {
  clear: left;
  float: left;
  padding: 8px 0.5em;
  width: 7.5em;
}

#scr dl dd {
	padding: 8px 0.5em 8px 8em;
}

#scr dl dd a:hover{
	color:rgba(51,51,51,0.4);
}

/* ------------------------
   アバウト
------------------------ */
#about{
	width:100%;
	height:100%;
	min-width:1040px;
	min-height:500px;
	background: #f9dce9;
	padding-bottom:60px;
	border-bottom: 1px solid #000;
}

.movie{
	padding-top: 60px;
}
.aboutin{
	font-size:130%;
}

.aboutbox{
	width:400px;
	margin:30px auto 0 auto;
	background: rgba(255,255,255,0.6);
	padding:30px;
	margin-top: 80px;
}

.aboutbox img{
	width: 150px;
	margin: 15px auto 0 auto;
}

.aboutbox2{
	width:400px;
	margin:30px auto 0 auto;
	background: rgba(255,255,255,0.6);
	padding:30px;
}


.tL{
	text-align:left;
}



.aboutL{
	width: 270px;
	height: 650px;
	margin-right: 40px;
	float: left;
}

.aboutR{
	width: 640px;
	margin-left: 70px;
	float: left;
}

.clearfix {
    content: "";      /* ※Clearfix */
    clear: both;
    display: block;
}

/* ------------------------
   スケジュール
------------------------ */

#schedule{
	background:#fff;
	padding-bottom:60px;
	border-bottom: 1px solid #000;
}

.schedule_table {
    width:100%;
    height:100%;
    border:1px solid #000000;
    border-collapse:collapse;
	margin-bottom:20px;
	table-layout: fixed;
}

.table_last{
	width:14.3%;
}

.schedule_table tr th, .schedule_table tr td{
    border:1px solid #494949;
    padding:10px;
}
.schedule_table tr th {
    background:#808080;
	color:#fff;
}
.schedule_table td.nop {
    background:#d9d9d9;
}

.schedule_table td.late {
    background:#eaf0f6;
}
#schedule img{
	float:left;
}
#schedule p{
	text-align:left;
}
/* ------------------------
   チケット
------------------------ */

#ticket{
	background: #f9dce9;
	padding-bottom:120px;
	border-bottom: 1px solid #000;
}

.ticketp{
	width:70%;
	text-align:left;
	margin:0 auto 20px auto;
}

.ticketin{
	font-size:160%;
	text-align:center;
	font-weight:bold;
}

.ticketbox{
	margin:-30px 30px 120px 30px;
	float:left;
	position:relative;
}


/* ------------------------
   アクセス
------------------------ */
#access{
	background:#fff;
	padding-bottom:60px;
	border-bottom: 1px solid #000;
}

#map_canvas{
	float:left;
	height:500px;
}

#map_text{
	float:left;
	width:50%;
	position:relative;
}
#map_text p{
	padding-left:30px;
}
/* ------------------------
   グッズ
------------------------ */

#goods{
	padding-bottom:30px;
	background: #f9dce9;
}
figure {
    float: left;             /* 左に寄せて後続を右に回り込ませる */
    margin: 0px 12px 12px 0px; /* 外側に余白を加える */
    background-color: #ccc;  /* 背景色 */
}
figure img {
    display: block;          /* 余計な余白が出ないようにする */
    margin: 0px 0px 3px 0px; /* 下側にだけ3pxの余白を追加 */
	width:251px;
	height:251px;
}
figcaption {
    text-align: center;      /* 中身をセンタリング */
}
figure.last {
	margin-right:0;
}
div.imagearea:after {
    content: "";      /* ※Clearfix */
    clear: both;
    display: block;
}

a.figure{
    transition: 0.5s;
}

a:hover figure{
    opacity:0.6;
filter:alpha(opacity=60);
-ms-filter: "alpha( opacity=60 )";
}

.box{
	width:980px;
	margin:30px auto 0 auto;
	background: #fff;
	padding:30px;
	text-align:left;
}


/* ------------------------
   フッター
------------------------ */

footer{
	width: 100%;
	clear: both;
	position:relative;
	overflow:hidden;
	margin-top:60px;
	border-top:1px solid #000;
	background:#fff;
}

footer p{
	display:block;
	margin:0 auto;
	padding-top:30px;
	padding-bottom:30px;
	text-align:center;
	font-size:9px;
}

#pagetop{
	position:fixed;
	bottom:0;
	right:15px;
	z-index:99;
}

/* ------------------------
   フッター
------------------------ */

.slidetoggle_menu { background:url("../img/toggle_down.png") left center no-repeat;
					padding: 12px;
					width: 15%;
					border: solid 1px;
					cursor: pointer;
					cursor: hand;}
.slidetoggle_menu.active { background:url("../img/toggle_up.png") left center no-repeat;
					border: none;
					cursor: pointer;
					cursor: hand;}
.none { display:none; }

.pT50{
	padding-top: 50px;
}

.pT20{
	padding-top: 20px;
}