﻿@charset "utf-8";

body{
	background-color: #FFFFFF;
	/*font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;*/
	font-size: 1.1em;
	line-height: 1.6;
	color: #444444;
	}

@font-face {
  font-family: 'typicons';
  src: url('../../fonts/typicons.eot');
  src: url('../../fonts/typicons.eot?#iefix') format('embedded-opentype'),
url('../../fonts/typicons.woff') format('woff'),
url('../../fonts/typicons.ttf') format('truetype'),
url('../../fonts/typicons.svg#typicons') format('svg');
  font-weight: normal;
  font-style: normal;
}

img {max-width: 100%;}

a {
	color: #00AAFF;
	text-decoration: none;
	cursor: pointer;
	}
	
a:visited	{color: #00AAFF;}
a:hover		{color: #66C6FC;}
a:focus		{outline: thin dotted;}

ul {padding-left: 1.5em;}
li {margin-bottom: 1em; line-height: 1.6em;}

ul.readme {
	float: right;
	font-size: 0.9em;
	}

ul.readme li {
	margin-bottom: 0.5em;
	line-height: 1.4em;
	}

.itemSam {
	width: 20%;
	float: left;
}

strong, .errorTxt {color:#FF0000;}

/*フェード*/
#mainMenu li, #pageTop a, #mobileMenu {
    -webkit-transition: all 0.5s ease;
    -moz-transition: all 0.5s ease;
    -o-transition: all 0.5s ease;
    transition: all  0.5s ease;
	}

/*メニュー全体　※ID名が変なのはタイトー公式サイト全体に設定されているmain.jsを利用しているからだお*/
#pageTop {
	position: fixed;
	bottom: 0px;
	left: 0px;
	padding: 0;
	margin: 0;
	width: 100%;
	background-color: rgba(180,24,63,1);
	z-index: 999;
	border-top: 1px #fff solid;
	/*background-image: -moz-linear-gradient( 90deg, rgb(118,20,23) 0%, rgb(187,0,7) 100%);
	background-image: -webkit-linear-gradient( 90deg, rgb(118,20,23) 0%, rgb(187,0,7) 100%);
	background-image: -ms-linear-gradient( 90deg, rgb(118,20,23) 0%, rgb(187,0,7) 100%);
	box-shadow: 3px 3px 10px 2.73px rgba(0, 0, 0, 0.35);*/
	}

/*スマホ用メニュー（最初は非表示）*/
#mobileMenu {display: none;}

/*グローバルナビゲーション*/
nav ul {
	margin: 0;
	}

nav ul li {
	width: 20%;
	margin: 0;
	float: left;
	}

nav ul li a {
	display: block;
	padding: 10px 0;
	text-align:  center;
	font-size: 1.1em;
	color: #fff;
	}


nav ul li a:hover {
	color: #fff;
	background-color: #000;
	}



/*汎用ボタン*/
.button a {
	display: block;
	background-color: rgb(255,255,255);
	border: 1px solid #9daca9;
	-webkit-border-radius: 4px;
	border-radius: 4px;
	box-shadow: inset 0 1px #fff;
	box-shadow: outset rgba(0,0,0,0.20);
	font: inherit;
	letter-spacing: inherit;
	text-indent: inherit;
	color: inherit;
	text-align: center;
	padding-top: 3px;
	padding-bottom: 3px;
	color: rgb(0,0,0);
	}



.button a:hover {background-color: rgb(233,233,233);}
.button a:active {background-color: #d2d6d6; border: 1px solid #9daca9;}

/*2017/4/17*/

.button.play a{
	font-weight: bold;
	font-size: 1.2em;
	padding: 0.5em 0 0.5em;
	}
.button.play a:before {
	font-family: "typicons";
	content: '\e0b0';
	font-weight: normal;
	font-size: 1.4em;
	margin-right: 0.25em;
	}

/*記事用*/
.small	{font-size: 0.9em;}
.large	{font-size: 1.2em;}
.big	{font-weight: bold;font-size: 1.4em;}
.center	{text-align: center;}
.spaced {padding: 1em;}
.left	{float: left;}
.right	{float: right;}
.attention {color: #FF0000;}
.clear {clear: both;}
.url{color: #FF0308;font-style: italic;}
.bold{font-weight: bold;}
.yellow {color: #FFED00;}
.hyde {display: none;}


/*ボタン用*/
.common {margin: 2.5% 2% 2.5% 2%;}

/*記事の関連URLリンク用大型ボタン*/
.big a {
	padding: 10px;
	margin: 2.5% 2% 2.5% 2%;
	}

.oldVersion {
	text-align: center;
	color: rgb(255,0,4);
	padding: 10px;
	}

/*大枠*/
.primaryContainer {
	height: auto;
	margin-left: auto;
	margin-right: auto;
	min-height: 100%;
	width: 100%;
	position: relative;
	background: #FFF url(../images/enterbox/town_of_mirage_bg_01.jpg);
	background-position: top center;
	background-attachment: scroll;
	background-size: contain;
	}

header {
	width: 100%;
	max-width: 1280px;
	height: 0;
	padding: 720px 0 0;
	margin: 0 auto 0%;
	position: relative;
	background-image: url(../images/enterbox/town_of_mirage_bg_02.png);
	background-size: 100%;
	background-position: bottom center;
	background-repeat: no-repeat;
	z-index: 50;
	}

@media only screen and (max-width: 1280px) {

header {padding: 56.25% 0 0;}

}

@media only screen and (max-width: 768px) {
	
header {
	padding: 135% 0 0;
	background-image: url(../images/enterbox/town_of_mirage_bg_03.png);
	}

}

@media only screen and (max-width: 480px) {
	
header {padding: 150% 0 0;}

}


.creatorNmae {
	width: 12%;
	max-width: 150px;
	margin: 0% auto 0;
	position: absolute;
	top: 4%;
	right: 4%;
	}

h1{
	width: 50%;
	max-width: 640px;
	margin: 0% auto 0;
	position: absolute;
	top: 4%;
	left: 4%;
	}

h1 img {
	max-width: 100%;
	}

.catchCopy {
	display: block;
	height: 84%;
	max-width: 37px;
	margin: auto;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 22%;
	}

.catchCopy img {
	max-width: 100%;
	}

.catchWord {
	display: block;
	position: absolute;
	width: 25%;
	margin: auto;
	top: 0;
	bottom: 0;
	left: 8%;
	}

.topInfo {
	margin-top: -10%;
	font-size: 1.6em;
	/*letter-spacing: 0.25em;*/
	text-align: center;
	line-height: 1.4;
	color: #FF4444;
	font-weight: bold;
	text-shadow: rgba(255,255,255,1.00) 2px 2px 3px, rgba(255,255,255,1.00) -2px -2px 3px;
	}

.topInfo span {
	font-size: 1.4em;
	font-weight: bold;
	}

.topInfo span.sun {
	color: #f00;
	font-size: 1em;
	font-weight: normal;
	}

.topInfo span.sat {
	color: #008FEB;
	}

.topInfo span.stage {
	display: inline-block;
	font-size: 0.7em;
	color: #fff;
	background-color: #b7183f;
	text-shadow: none;
	line-height: 1.6;
	width: 110px;
	margin-right: 0.25em;
	border-radius: 2px;
	vertical-align:text-bottom;
}

@media only screen and (max-width: 1280px) {

.topInfo {font-size: 2.2vw;}

}

@media only screen and (max-width: 768px) {

.creatorNmae {
	top: 2%;
	right: 2%;
	}

h1{
	width: 80%;
	max-width: 640px;
	top: 3%;
	left: 0;
	right: 0;
	}

.catchCopy {
	height: 25%;
	top: 0;
	bottom: 21%;
	right: 0;
	left: 0;
	}

.topInfo {
	margin-top: -20%;
	font-size: 4vw;
	}

.catchWord {
	width: 30%;
	margin: auto;
	top: 0;
	bottom: 20%;
	left: 8%;
	transform: rotate(-15deg);
	}

}

@media only screen and (max-width: 480px) {
	

h1{
	width: 90%;
	}

.catchCopy {
	height: 30%;
	top: 0;
	bottom: 17%;
	right: 0;
	left: 0;
	}

.catchWord {
	width: 38%;
	margin: auto;
	top: 0;
	bottom: 20%;
	left: 4%;
	transform: rotate(-15deg);
	}

}


/*コンテンツ全体をラップ*/
main {
    float: none;
    height: auto;
    margin-left: auto;
    margin-top: 0px;
    clear: none;
    width: 100%;
	max-width: 1200px;
    display: block;
    margin-right: auto;
	}
main p {line-height: 1.6em;}
main p.small {font-size: 0.8em;}

/*各記事*/
section {
	box-sizing: border-box;
	width: 80%;
	margin: 0 auto 60px;
	}

h2 {
	display: block;
	width: 100%;
	text-shadow: rgba(255,255,255,0.50) -3px -3px 0px, rgba(255,255,255,0.50) 3px 3px 0px;
	font-size: 2em;
	/*letter-spacing: 0.25em;*/
	line-height: 1.2em;
	padding: 30px 0 0;
	margin: 0;
	text-align: center;
	}

h3 {
	font-size: 1.4em;
	color: #fff;
	font-weight: bold;
	padding: 0;
	margin: 0 0 0.5em;
	border-bottom: 1px #fff solid;
	}

.eventStory {
	font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
	padding: 10% 5% 15%;
	background-color:rgba(238,17,0,0.70);
	text-align: center;
	color: #FFFFFF;
	font-size: 1.2em;
	position: relative;
}

.srOry {
	width: 50%;
	max-width: 450px;
	margin-bottom: 2%;
}

.eventStory p {
	line-height: 2.2em;
}

.topL, .topR, .bottomL, .bottomR {
	width: 20%;
	position: absolute;
}

.topL {
	transform: rotate(0deg);
	top: 4%;
	left: 4%;
}
.topR {
	transform: rotate(90deg);
	top: 4%;
	right: 4%;
}
.bottomL {
	transform: rotate(270deg);
	bottom: 4%;
	left: 4%;
}
.bottomR {
	transform: rotate(180deg);
	bottom: 4%;
	right: 4%;
}

@media only screen and (max-width: 1280px) {

.eventStory {font-size: 1.7vw;}

}

@media only screen and (max-width: 768px) {
	
section {
	width: 90%;
	margin: 0 auto 60px;
	}

.eventStory {
	font-size: 2.5vw;
	padding: 10% 5% 20%;
}

.topL, .topR {
	top: 3%;
}
.bottomL, .bottomR {
	bottom: 3%;
}

}

@media only screen and (max-width: 480px) {
	
h2 {font-size: 1.4em;}
th, td {font-size: 0.8em;}

.eventStory {
	font-size: 3.2vw;
	padding: 15% 5% 20%;
}

.eventStory p span {
	display: block;
}

.topL, .topR {
	top: 2%;
}
.bottomL, .bottomR {
	bottom: 2%;
}

}


/*SNSシェアボタン*/
.shareBox {
	float: none;
	width: auto;
	height: auto;
	margin: 0px auto;
	clear: both;
	padding: 2%;
	text-align: center;
	}

	.shareButtons {
		width: auto;
		height: auto;
		margin: 0px auto;
		clear: none;
		display: inline-block;
		}

	.shareButtons div {
		line-height: 1;
		margin-right: 20px;
		margin-bottom: 10px;
		}

	.shareButtons div:last-child {
		margin-right: 0;
		}

		.fb-like {
			float: left;
			}

		.googleBtn {
			float: left;
			width: 52px;
			overflow: hidden;
			}

/*オリジナルボタン化*/
		.tweetBtn, .lineBtn {
			float: left;
			border-radius: 2px;
			}

		.tweetBtn {
			background: url(../images/ico_sns_twitter.png) left top no-repeat #1b95e0;
			background-size: contain;
			}

		.lineBtn {
			background: url(../images/ico_sns_line.png) left top no-repeat #00C300;
			background-size: contain;
			display: none;
			}

		.tweetBtn a, .lineBtn a {
				display: inline-block;
				color: #fff;
				line-height: 20px;
				text-align: right;
				vertical-align: middle;
				}

		.tweetBtn a {
				width: 57px;
				padding: 0 5px 0 5px;
				font-size: 0.6em;
				}

		.lineBtn a {
			width: 67px;
			padding: 0 5px 0 5px;
			font-size: 0.5em;
			}



footer {
	margin: 100px auto 100px;
	text-shadow: rgba(255,255,255, 1.0) 0px -3px 6px;
	/*background: url(../images/ft_nazo_corner_bottom.png) no-repeat center bottom;*/
	/*background-size: contain;*/
	text-align: center;
	}

footer p {
	font-size: 0.9em;
	color: #444;
	line-height: 1.6;
	}

footer img {
	display: inline-block;
	margin-bottom: 20px;
	}



footer ul {
	display: inline-flex;
	padding: 0;
	margin: 20px auto 0;
	}

footer ul li {
	list-style-type: none;
	border-right: 1px #ddd solid;
	padding: 0 20px;
	font-size: 0.9em;
	text-align: center;
	line-height: 1em;
	}

footer ul li:last-child {
	border: none;
	}

.yodaka {
	width: 150px;
}

.taitologo {
	max-width: 200px;
	margin: 0 auto 1em;
	}

.copyright {
	font-family: helvetica, arial,"lucida grande", verdana, "メイリオ", "ＭＳ Ｐゴシック", sans-serif;
	color: #444;
	font-size: 0.8em;
    line-height: 2em;
	margin-bottom: 0px;
	}


.lastMessage {
	margin:  200px 0 0;
	font-size: 1.6em;
	/*letter-spacing: 0.25em;*/
	text-align: center;
	line-height: 1.2em;
	text-shadow: rgba(0,0,0, 1.0) 2px 2px 3px;
}



/*ラヂオとチェックボックス*/
input[type="radio"], input[type="checkbox"] {
	display: inline;
	width: auto;
	height: auto;
	vertical-align: baseline;
	font-size: 1.8em;
	margin-right: 0.2em;
	}


@media only screen and (max-width: 768px) {
	
section {
	width: 96%;
	}

.lineBtn {display: block;}

footer p {
	font-size: 0.8em;
	}

}


@media only screen and (max-width: 480px) {
	
/*th, td {
	display: block;
	text-align: left;
	padding: 0;
	border: none;
	}

th {
	border-bottom: 1px #fff solid;
	}

td {
	padding: 10px 0 10px 0;
	margin-bottom: 20px;
	}*/

footer ul li {
	font-size: 0.8em;
	padding-left: 10px;
	padding-right: 10px;
}

.shareBox {padding: 2% 1%;}

.shareButtons div {
	margin-right: 4px;
	}

.tweetBtn a {
	width: 50px;
	padding: 0 4px 0 4px;
	font-size: 0.5em;
	}

.lineBtn a {
	width: 62px;
	padding: 0 4px 0 4px;
	font-size: 0.5em;
	}

}

dl.accordion {
	line-height: 1.6em;
	box-shadow: 4px 4px 8px 2px rgba(0,0,0,0.5);
}
dt {
	font-weight: bold;
	padding: 2%;
	margin: 0px;
	cursor: pointer;
	font-size: 1.2em;
	background-color:rgba(238,17,0,0.20);
	border: 1px #000000 solid;
}
dd {
	margin: 0px;
	margin-bottom: 1em;
}

table {
	border-collapse: collapse;
	width: 100%;
	margin: -1px 0 0;
	}
th, td {
	box-sizing: border-box;
	background-color:rgba(238,17,0,0.20);
	border: 1px #000000 solid;
	padding: 20px 10px;
	}
th {
	width: 20%;
	word-break: keep-all;
	text-align: center;
	min-width: 50px;
	}
td {width: 80%;}
th span {display: block;}

.flexBox {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: stretch;
	align-content: flex-start;
	border: none;
	margin: 1% 0;
}

div.small {margin-top: 2%;}

@media only screen and (max-width: 768px) {
	
dt>.small {display: block;}

}

@media only screen and (max-width: 480px) {
	
dt {font-size: 1em;}
th {word-break: normal; min-width: 30%;}
th span {display: inline;}

}


dl.FAQ {
	line-height: 1.4em;
}
.FAQ dt {
	font-weight: bold;
	padding: 0;
	margin: 0;
	cursor: none;
	font-size: 0.9em;
	background-color: transparent;
	border: none;
	padding-left: 1.5em;
}
.FAQ dt::before {
	content: "Q: ";
	margin-left: -1.5em;
}

.FAQ dd {
	margin: 0px;
	font-size: 0.9em;
	margin-bottom: 1em;
	padding-left: 1.4em;
}
.FAQ dd::before {
	content: "A: ";
	margin-left: -1.3em;
}
