@charset "UTF-8";
/* reset
============================================ */
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p,
em, img, small, strong,
dl, dt, dd, ol, ul, li,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, dialog, figure, footer, header,
hgroup, menu, nav, section  {
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-size: 100%;
	font-style: normal;
	font-weight: normal;
}
body {
	line-height: 1;
}
article, aside, dialog, figure, footer, header,
hgroup, nav, section {
	display: block;
}
nav ul {
	list-style: none;
}
li {
	list-style-type: none;
}
ol li {
	list-style-type: none;
}
a {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	background: transparent;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}
p, em, span {
	font-weight: inherit;
}

/* default
============================================ */
html, body {
	width: 100%;
	height: 100%;
}
html {
	font-size: 62.5%;
}
body {
	color: #000;
	font-size: 1.0rem;
	font-family: YuGothic, "Yu Gothic", sans-serif;
	line-height: 1.7;
	background: #06001a url(../img/bg.jpg) no-repeat center top;
	background-size: 100% auto;
	background-attachment: fixed;
}
@media screen and (max-width: 640px) {
	body {
		position: relative;
		left: 0;
		background: #000 url(../img/bg_sp.jpg) no-repeat center 10px;
		background-size: 100% auto;
		background-attachment: fixed;
		transition: .6s all;
	}
	body:before {
		content: "";
		display: block;
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 0;
		background: #000 url(../img/bg_sp.jpg) no-repeat center 10px;
		background-size: 100% auto;
	}
	body.open {
		left: -210px;
	}
}

/* layout
============================================ */
header {
	width: 100%;
	height: 70px;
	position: fixed;
	top: 0;
	z-index: 100;
	background: #ff0859;
	background: rgba(0, 0, 0, .8);
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, .8);
}
header .inner,
header .inner:before,
header .inner:after {
	height: 68px;
}
header:before {
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	position: absolute;
	bottom: 0;
	background: #ff0859;
	background: linear-gradient(to right, rgba(255, 8, 89, .8) 0%, rgba(45, 29, 255, .8) 50%, rgba(0, 240, 119, .8) 100%);
}
header .inner {
	width: 100%;
	position: relative;
	background: linear-gradient(to right, rgba(255, 8, 89, .1) 0%, rgba(45, 29, 255, .1) 50%, rgba(0, 240, 119, .1) 100%);
}
header .inner:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	background: linear-gradient(to bottom, rgba(0, 0, 0, 1) 0%, rgba(0, 0, 0, .2) 100% );
}
header .inner:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	background: linear-gradient(to right, rgba(255, 8, 89, .2) 0%, rgba(45, 29, 255, .2) 50%, rgba(0, 240, 119, .2) 100%);
}
header h1 {
	float: left;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}
header .status {
	padding: 3px 8px;
	color: #fff;
	font-size: 1.4rem;
	text-shadow: 0 1px 0 rgba(0, 0, 0, .4);
	background: #ff0859;
	border-radius: 3px;
	z-index: 1;
}
header .status a:hover {
	color: #fba9c4;
}
header .more {
	margin: 0 20px;
	width: 100px;
	height: 70px;
	z-index: 1;
	transition: .3s all;
}
nav {
	width: 871px;
	position: absolute;
	top: 15px;
	left: 170px;
	z-index: 1;
}
nav a {
	padding: 0 15px;
	display: block;
	color: #fff;
	font-size: 2.0rem;
	text-decoration: none;
	line-height: 2.0rem;
	transition: .3s all;
}
nav a:link {
	text-decoration: none;
}
nav a:visited {
	text-decoration: none;
}
nav a:hover {
	text-decoration: none;
}
nav a:hover {
	color: #ff0859;
}
nav em {
	display: block;
	font-family: "Ubuntu Condensed", sans-serif;
	text-shadow:
		0 1px 0 rgba(0, 0, 0, .4),
		1px 1px 0 rgba(0, 0, 0, .4),
		-1px 1px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		1px 2px 0 rgba(0, 0, 0, .4),
		-1px 2px 0 rgba(0, 0, 0, .4),
		0 3px 0 rgba(0, 0, 0, .4);
}
nav span {
	font-size: 1.2rem;
	line-height: 1.2rem;
	text-shadow:
		0 1px 0 rgba(0, 0, 0, .4),
		1px 1px 0 rgba(0, 0, 0, .4),
		-1px 1px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		1px 2px 0 rgba(0, 0, 0, .4),
		-1px 2px 0 rgba(0, 0, 0, .4),
		0 3px 0 rgba(0, 0, 0, .4);
}
.pagetop {
	width: 50px;
	height: 40px;
	position: fixed;
	right: 20px;
	bottom: 65px;
	background: #000;
	border: 1px solid #fff;
	z-index: 1;
	cursor: pointer;
	box-shadow: 0 0 20px 0 rgba(0, 0, 0, .5);
	transition: .3s all;
}
.pagetop span {
	width: 15px;
	height: 1px;
	position: absolute;
	top: 20px;
	background: #fff;
}
.pagetop span:nth-of-type(1) {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
	left: 12px;
}
.pagetop span:nth-of-type(2) {
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	right: 12px;
}
footer {
	margin-top: 75px;
	position: relative;
	background: url(../img/footer_bg.jpg) no-repeat;
	background-size: cover;
}
footer:before {
	content: "";
	width: 100%;
	height: 1px;
	display: block;
	position: absolute;
	top: -1px;
	background: #ff0859;
	background: linear-gradient(to right, rgba(255, 8, 89, .8) 0%, rgba(45, 29, 255, .8) 50%, rgba(0, 240, 119, .8) 100%);
}
footer .inner {
	width: 100%;
	height: 167px;
	background: linear-gradient(to right, rgba(255, 8, 89, .1) 0%, rgba(45, 29, 255, .1) 50%, rgba(0, 240, 119, .1) 100%);
}
footer .inner:before {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to top, rgba(0, 0, 0, .5) 50%, rgba(0, 0, 0, 0) 100% );
}
footer .inner:after {
	content: "";
	display: block;
	position: absolute;
	top: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(to right, rgba(255, 8, 89, .2) 0%, rgba(45, 29, 255, .2) 50%, rgba(0, 240, 119, .2) 100%);
}
footer h1 {
	margin: 51px 0 89px 18px;
	width: 154px;
	height: 24px;
	position: relative;
	z-index: 1;
}
footer .sns {
	position: relative;
	z-index: 1;
}
footer .sns li {
	margin: 0 5px;
	float: left;
	color: #fff;
}
.fb_iframe_widget > span {
	vertical-align: baseline !important;
}
footer .copy {
	color: #fff;
	position: relative;
	z-index: 1;
}
section {
	margin-top: 70px;
	padding-top: 50px;
}
@media screen and (min-width: 639px) {
	header h1 {
		margin: 10px 20px;
		width: 130px;
		height: 48px;
	}
	header .status {
		position: absolute;
		bottom: -20px;
		left: 20.5%;
		color: #fff;
		transform: translateX(-37%);
		-webkit-transform: translateX(-37%);
	}
	header .status:before {
		content: "";
		position: absolute;
		top: -10px;
		left: 50%;
		border-top: 5px solid transparent;
		border-right: 5px solid transparent;
		border-left: 5px solid transparent;
		border-bottom: 5px solid #ff0859;
		transform: translateX(-5px);
		-webkit-transform: translateX(-5px);
	}
	header .status a {
		padding: 0;
		font-size: 1.4rem;
	}
	header .more {
		position: absolute;
		top: 0;
		right: 10px;
	}
	header .more:hover {
		opacity: .7;
	}
	nav li {
		float: left;
		text-align: center;
	}
	nav .mmd {
		margin-left: 10px;
		position: relative;
		top: 2px;
	}
	nav .mmd:before {
		content: '';
		width: 2px;
		height: 30px;
		background: #1c3f96;
		display: block;
		position: absolute;
		top: 5px;
		left: 0;
	}
	nav .mmd img {
		width: 132px;
		height: 54px;
	}
	nav .mmd:hover {
		background: url(../img/nav_mmg_hv.png) no-repeat center bottom;
		background-size: 132px 54px;
	}
	.pagetop:hover {
		opacity: .7;
	}
	footer h1 {
		float: left;
	}
	footer .sns {
		float: left;
		position: absolute;
		top: 91px;
		left: 21px;
		z-index: 1;
	}
	footer .copy {
		margin: 72px 89px 72px 0;
		float: right;
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 640px) {
	header {
		height: 40px;
		left: 0;
		transition: .6s all;
	}
	header .inner,
	header .inner:before,
	header .inner:after {
		height: 38px;
	}
	header h1 {
		margin: 5px 10px;
		width: 80px;
		height: 30px;
	}
	header .status {
		max-width: 140px;
		max-height: 1.5em;
		position: absolute;
		right: 45px;
		bottom: 8px;
		overflow: hidden;
		font-size: 1.1rem;
	}
	header .status a {
		color: #fff;
		font-size: 1rem;
		text-decoration: none;
	}
	header .more {
		margin: 0;
		width: 210px;
		height: 40px;
	}
	header .menu {
		width: 25px;
		height: 25px;
		position: absolute;
		top: 10px;
		right: 10px;
		z-index: 1;
		transition: .3s all;
	}
	header .menu span {
		width: 25px;
		height: 2px;
		position: absolute;
		background: #fff;
		border-bottom: 1px solid #000;
		transition: .3s all;
	}
	header .menu span:nth-of-type(1) { top: 0; }
	header .menu span:nth-of-type(2) { top: 8px; }
	header .menu span:nth-of-type(3) { top: 16px; }
	.open header {
		left: -210px;
	}
	.open header .menu span:nth-of-type(1) {
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
		transform-origin: right top;
		-webkit-transform-origin: right top;
	}
	.open header .menu span:nth-of-type(2) {
		opacity: 0;
	}
	.open header .menu span:nth-of-type(3) {
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
		transform-origin: right bottom;
		-webkit-transform-origin: right bottom;
	}
	.open header,
	.open section,
	.open footer {
		opacity: .7;
	}
	.open nav {
		right: 0;
	}
	nav {
		margin: 0;
		height: 100%;
		width: 210px;
		position: fixed;
		top: 0;
		left: auto;
		right: -210px;
		background: #0d0032 url(../img/menu_bg.png) no-repeat left bottom;
		background-size: cover;
		transition: .6s all;
	}
	nav .logo {
		width: 150px;
		height: 32px;
	}
	nav ul {
		border-top: 1px solid rgba(255, 255, 255, .1);
	}
	nav li {
		border-bottom: 1px solid rgba(255, 255, 255, .1);
	}
	nav a {
		padding: 10px 20px;
		position: relative;
		font-size: 1.7rem;
		line-height: 1.7rem;
	}
	nav li a:before,
	nav li a:after {
		content: "";
		display: block;
		width: 8px;
		height: 1px;
		position: absolute;
		right: 15px;
		background: #fff;
	}
	nav a:before {
		top: 15px;
		transform: rotate(45deg);
		-webkit-transform: rotate(45deg);
	}
	nav a:after {
		top: 20px;
		transform: rotate(-45deg);
		-webkit-transform: rotate(-45deg);
	}
	nav em {
		display: inline;
		vertical-align: middle;
	}
	nav span {
		font-size: .9rem;
		line-height: .9rem;
		vertical-align: middle;
	}
	nav .mmd img {
		width: 109px;
		height: 16px;
	}
	nav .mmd a {
		background: url(../img/ico_blank.png) no-repeat 94% center;
		background-size: 10px 10px;
	}
	nav .mmd a:before,
	nav .mmd a:after {
		display: none;
	}
	.pagetop {
		display: none;
	}
	footer {
		transition: .6s all;
	}
	footer .inner {
		padding: 25px 0;
		height: auto;
	}
	footer h1 {
		margin: 0 auto 20px;
		width: 120px;
		height: 19px;
	}
	footer .sns {
		text-align: center;
	}
	footer .sns li {
		float: none;
		display: inline-block;
	}
	footer .copy {
		font-size: 1rem;
		text-align: center;
	}
	section {
		margin-top: 30px;
		padding: 40px 10px 0;
		transition: .6s all;
		position: relative;
	}
}

/* module
============================================ */
.noPc { display: none !important; }
.noSp { display: block !important; }
@media screen and (max-width: 640px) {
	.noPc { display: block !important; }
	.noSp { display: none !important; }
}
.cf {
	zoom: 1;
}
.cf:after {
	height: 0;
	visibility: hidden;
	content: "";
	display: block;
	clear: both;
}
.inner {
	position: relative;
}
.wfUC {
	font-family: 'Ubuntu Condensed', sans-serif;
}
.wfLato {
	font-family: 'Lato', sans-serif;
}
img {
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
.icoExternal:after {
	content: " \f08e";
	display: inline;
	font-family: FontAwesome;
}
.icoChevronRight:after {
	content: " \f054";
	display: inline;
	font-family: FontAwesome;
}
.marker {
	font-weight: bold;
	background: #e0ff00;
}
.emphasis {
	display: block;
	font-weight: bold;
	color: #4005cb;
}
.btn {
	padding: 10px 14px;
	display: inline-block;
	color: #fff;
	font-size: 1.7rem;
	line-height: 1.7rem;
	text-shadow: 0 2px rgba(0, 0, 0, .5);
	text-align: center;
	text-decoration: none;
	background: #9b40ff;
	background: linear-gradient(to bottom, #9b40ff 0%, #4b00ff 100% );
	border: 1px solid #2900aa;
	border-radius: 3px;
	box-shadow: 0 0 10px 0 rgba(0, 0, 0, .3);
	transition: .3s all;
	box-sizing: border-box;
}
.btn.large {
	padding: 17px 100px;
	font-size: 2.4rem;
	font-weight: bold;
	line-height: 2.4rem;
}
.btn.red {
	border: 1px solid #ad052b;
	background: #ff256d;
	background: linear-gradient(to bottom, #ff256d 0%, #d50046 100% );
}
.btn.nolink,
.btn.nolink:hover {
	text-shadow: none;
	background: #b3b3b3;
	box-shadow: none;
	border: none;
	opacity: 1;
}
.ttl {
	margin-bottom: 62px;
	height: 55px;
	text-align: center;
}
.ttl img {
	width: auto;
	height: 100%;
}
.tab01 {
	margin: 0 auto 44px;
	width: 476px;
	position: relative;
}
.tab01:before,
.tab01:after {
	content: "";
	display: block;
	width: 40px;
	height: 1px;
	background: #fff;
	position: absolute;
	bottom: 0;
}
.tab01:before {
	left: -40px;
}
.tab01:after {
	right: -40px;
}
.tab01 ul:before {
	content: "";
	display: block;
	width: 16px;
	height: 1px;
	background: #fff;
	position: absolute;
	left: 230px;
	bottom: 0;
}
.tab01 li {
	float: left;
	text-align: center;
	background: rgba(45, 29, 255, .2);
	border: 1px solid #fff;
	transition: .3s all;
	cursor: pointer;
}
.tab01 li.cr,
.tab01 li:hover {
	background: rgba(45, 29, 255, .5);
	border-bottom: 1px solid rgba(45, 29, 255, .1);
}
.tab01 li:not(:first-child) {
	margin-left: 16px;
}
.tab01 li a,
.tab01 li span {
	width: 228px;
	height: 50px;
	display: block;
	box-sizing: border-box;
	font-size: 1.8rem;
	line-height: 50px;
	text-decoration: none;
	color: #fff;
	text-shadow:
		0 1px 0 rgba(0, 0, 0, .4),
		1px 1px 0 rgba(0, 0, 0, .4),
		-1px 1px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		1px 2px 0 rgba(0, 0, 0, .4),
		-1px 2px 0 rgba(0, 0, 0, .4),
		0 3px 0 rgba(0, 0, 0, .4);
}
.tab02 {
	margin-bottom: 40px;
}
.tab02 li {
	float: left;
	text-align: center;
	background: rgba(45, 29, 255, .2);
	border: 1px solid #fff;
	transition: .3s all;
}
.tab02 li.cr,
.tab02 li:hover {
	background: rgba(45, 29, 255, .6);
}
.tab02 li:not(:first-child) {
	margin-left: 10px;
}
.tab02 li a {
	width: 138px;
	height: 50px;
	display: block;
	box-sizing: border-box;
	font-family: 'Ubuntu Condensed', sans-serif;
	font-size: 1.8rem;
	line-height: 50px;
	text-decoration: none;
	color: #fff;
	text-shadow:
		0 1px 0 rgba(0, 0, 0, .4),
		1px 1px 0 rgba(0, 0, 0, .4),
		-1px 1px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		1px 2px 0 rgba(0, 0, 0, .4),
		-1px 2px 0 rgba(0, 0, 0, .4),
		0 3px 0 rgba(0, 0, 0, .4);
}
.block {
	margin:0 auto 40px;
	max-width: 1200px;
	min-width: 1040px;
	font-size: 1.7rem;
}
h2 {
	color: #fff;
	text-align: center;
	text-shadow:
		0 1px 0 rgba(0, 0, 0, .4),
		1px 1px 0 rgba(0, 0, 0, .4),
		-1px 1px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		0 2px 0 rgba(0, 0, 0, .4),
		1px 2px 0 rgba(0, 0, 0, .4),
		-1px 2px 0 rgba(0, 0, 0, .4),
		0 3px 0 rgba(0, 0, 0, .4);
}
.block h2 {
	font-size: 2.8rem;
	line-height: 2.8rem;
	padding: 30px;
	position: relative;
	background: rgba(75, 0, 255, .3);
}
.block h2:before {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: rgba(75, 0, 255, 1);
	position: absolute;
	top: 0;
	left: 0;
}
.block h2.red {
	background: rgba(255, 8, 89, .3);
}
.block h2.red:before {
	background: rgba(255, 8, 89, 1);
}
.block h2 em {
	display: block;
	font-size: 3.2rem;
	line-height: 3.2rem;
}
.block h2 span {
	font-size: 1.8rem;
	line-height: 1.8rem;
}
.block .inner {
	padding: 40px;
	background: #fff;
}
.block .cell {
	margin: 0 auto 50px;
	width: 960px;
}
.block h3.sttl {
	padding-bottom: 30px;
	color: #4005cb;
	font-size: 2.1rem;
	font-weight: bold;
	text-align: left;
}
.block h3.sttl:after {
	content: "";
	display: block;
	width: 100%;
	height: 2px;
	background: #ff0859;
	background: linear-gradient(to right, rgba(255, 8, 89, .8) 0%, rgba(45, 29, 255, .8) 50%, rgba(0, 240, 119, .8) 100%);
}
.block h4 {
	margin-bottom: 20px;
	font-size: 1.8rem;
	font-weight: bold;
}
.block p {
	margin: 10px 0;
}
.unit {
	margin-bottom: 30px;
}
.new figure:before {
	content: "NEW";
	padding: 16px 26px 5px;
	display: inline;
	position: absolute;
	top: -6px;
	left: -25px;
	color: #fff;
	font-family: 'Lato', sans-serif;
	font-size: 1.1rem;
	background: #ff0859;
	z-index: 1;
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
#cboxContent {
	background: #fff;
}
.modalBox figure {
	padding: 20px 0;
	overflow: hidden;
	position: relative;
}
.modalBox .description {
	padding: 35px 10px 45px;
	background: #dedde5;
	position: relative;
}
.modalBox .category {
	padding: 3px;
	position: absolute;
	top: 4px;
	left: 4px;
	line-height: 1;
	font-size: 1.7rem;
	font-weight: bold;
}
.modalBox .official {
	color: #657302;
	background: #e0ff00;
}
.modalBox .user {
	color: #716e89;
}
.modalBox .txt {
	overflow: hidden;
	font-size: 2.3rem;
}
.modalBox .price {
	position: absolute;
	right: 10px;
	bottom: 5px;
	color: #2d2c37;
	font-size: 2.4rem;
}
.modalBox a {
	color: #000;
}
.modalBox.new figure:before {
	font-size: 20px;
	padding: 20px 40px 10px;
	top: -10px;
	left: -41px;
}
#cboxClose {
	width: 40px;
	height: 40px;
	background: url(../img/goods/btn_close.png) no-repeat 0 0;
	background-size: 40px 40px;
}

@media screen and (min-width: 639px) {
	.btn:hover {
		opacity: .7;
	}
	.notice {
		font-size: 1.4rem;
	}
	.pattern01 dt {
		clear: both;
		margin-bottom: 40px;
		width: 150px;
		float: left;
		text-align: right;
		font-weight: bold;
	}
	.pattern01 dd {
		margin: 0 0 40px 30px;
		padding-left: 30px;
		width: 700px;
		float: left;
		border-left: 1px solid #4b00ff;
	}
	.modalBox {
		width: 550px;
		height: 590px;
	}
	.modalBox .txt {
		height: 120px;
		font-size: 18px;
	}
}
@media screen and (max-width: 640px) {
	.btn {
		padding: 10px 14px;
		width: 100%;
		font-size: 1.3rem;
		line-height: 1.3rem;
	}
	.btn.large {
		padding: 17px 14px;
		font-size: 2.3rem;
		font-weight: bold;
		line-height: 2.3rem;
	}
	.ttl {
		margin-bottom: 30px;
		height: 30px;
	}
	.tab01 {
		margin: 0 auto 25px;
		width: 258px;
	}
	.tab01:before,
	.tab01:after {
		width: 20px;
	}
	.tab01:before {
		left: -20px;
	}
	.tab01:after {
		right: -20px;
	}
	.tab01 ul:before {
		width: 10px;
		left: 124px;
	}
	.tab01 li:not(:first-child) {
		margin-left: 8px;
	}
	.tab01 li a,
	.tab01 li span {
		padding: 5px;
		width: 123px;
		height: auto;
		font-size: 1.4rem;
	}
	.tab02 ul {
		margin: 0 auto;
		width: 300px;
	}
	.tab02 li:not(:first-child) {
		margin-left: 0;
	}
	.tab02 li {
		margin-bottom: 10px;
	}
	.tab02 li:nth-of-type(even) {
		margin-left: 10px;
	}
	.tab02 li a {
		width: 143px;
	}
	.notice {
		font-size: 1.2rem;
	}
	.block {
		margin: 0 0 20px;
		width: 100%;
		min-width: 100%;
		font-size: 1.3rem;
	}
	.block h2 {
		padding: 15px;
		font-size: 2.5rem;
		line-height: 2.5rem;
	}
	.block h2 span {
		font-size: 1.2rem;
		line-height: 1.2rem;
	}
	.block .inner {
		padding: 20px;
	}
	.block .cell {
		width: auto;
	}
	.block h3 {
		font-size: 1.5rem;
	}
	.block h4 {
		margin-bottom: 10px;
		font-size: 1.3rem;
	}
	.block p {
		margin-bottom: 15px;
	}
	.pattern01 dt {
		margin-bottom: 10px;
		padding-left: 20px;
		font-weight: bold;
		border-left: 1px solid #4b00ff;
	}
	.pattern01 dd {
		margin-bottom: 30px;
	}
	.new figure:before {
		padding: 10px 15px 0;
		font-size: .88rem;
		top: -6px;
		left: -19px;
	}
	.modalBox {
		width: 280px;
	}
	.modalBox .category {
		font-size: 1rem;
	}
	.modalBox .txt {
		height: 60px;
		font-size: 1.1rem;
	}
	.modalBox .price {
		font-size: 1.2rem;
	}
}


/* style
============================================ */
.index {
	padding-top: 0;
}
.index .inner {
	position: relative;
}
.index .countdown {
	margin-bottom: 100px;
	color: #fff;
	text-align: center;
}
.index .countdown dt {
	display: inline;
	font-size: 2rem;
	font-weight: bold;
	text-shadow: 0 0 10px rgba(0, 0, 0, .8);
}
.index .countdown dd {
	display: inline;
	font-size: 1.6rem;
	line-height: 1.6rem;
}
.index .countdown dd div {
	display: inline-block;
}
.index .countdown dd span {
	vertical-align: middle;
}
.index .countdown .yyc-day,
.index .countdown .yyc-hou,
.index .countdown .yyc-min {
	margin: 0 -5px 0 8px;
	padding-left: 13px;
	display: inline-block;
	letter-spacing: 2.4rem;
	font-family: 'Ubuntu Condensed', sans-serif;
	color: #000;
	font-size: 3.9rem;
	line-height: 4.4rem;
	background-repeat: no-repeat;
	background-position: left center;
}
.index .countdown .yyc-day {
	background-image: url(../img/index/cd_01_bg.png);
	background-size: 46px 53px;
}
.index .countdown .yyc-hou,
.index .countdown .yyc-min {
	background-image: url(../img/index/cd_02_bg.png);
	background-size: 85px 53px;
}
.index .countdown .yyc-sec {
	display: none;
}
.index .countdown .yyc-day-text,
.index .countdown .yyc-hou-text,
.index .countdown .yyc-min-text,
.index .countdown .yyc-sec-text {
	font-family: 'Lato', sans-serif;
}
.index .chopapv {
	margin: 0 auto 20px;
	padding: 10px 30px 30px;
	width: 540px;
	background: rgba(72, 0, 247, .3);
	box-sizing: border-box;
}
.index .chopapv h2 {
	width: 100%;
	border-bottom: 2px solid #ff0859;
}
.index .chopapv embed {
	width: 100%;
}
.index .bnrArea {
	margin-bottom: 40px;
	text-align: center;
}
.index .bnrArea a {
	display: block;
	border: 1px solid #fff;
}
.index .carousel {
	text-align: center;
}
.index .carousel .slider {
	height: 160px;
}
.index .carousel li {
	margin: 0 10px;
	width: 310px;
	height: 150px;
	float: left;
}
.index .carousel img {
	display: block;
	border: 1px solid #fff;
}
.index .carousel a {
	color: #fff;
	text-decoration: none;
	font-size: 1.7rem;
}
.index .cell {
	margin-top: 35px;
	margin-bottom: 20px;
	text-align: center;
}
.index .cell h2 {
	margin-bottom: 20px;
	display: inline-block;
	font-size: 3rem;
}
.index .public {
	padding: 50px 0;
	background-color: #0c0042;
	background-image: url(../img/index/public_bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: contain;
}
.index .public h2 {
	border-bottom: 2px solid #ff0859;
}
.index .timeline iframe {
	width: 100%;
}
.index .share .hash {
	margin-bottom: 17px;
}
.index .share .hash li {
	margin: 0 10px;
	display: inline;
	color: #fff;
	font-size: 1.8rem;
	line-height: 1.8rem;
}
.index .share .snsbtn li {
	margin: 0 10px;
	width: 80px;
	height: 80px;
	display: inline-block;
	position: relative;
	top: 0;
	border-radius: 50%;
	text-align: center;
	transition: .1s all;
	box-shadow: 0 5px 0 0 rgba(0, 0, 0, .6);
}
.index .share .snsbtn li:hover {
	top: 2px;
	box-shadow: 0 3px 0 0 rgba(0, 0, 0, .6);
}
.index .share .snsbtn .fb { background: #3b579d; }
.index .share .snsbtn .tw { background: #1da1f3; }
.index .share .snsbtn .line { background: #2cbf13; }
.index .share .snsbtn li img {
	width: 80px;
	height: 80px;
}
.index .movie {
	background-image: url(../img/index/movie_bg.jpg);
	background-repeat: no-repeat;
	background-position: center top;
	background-size: cover;
}
.index .movie h2 {
	font-size: 3rem;
	border-bottom: 2px solid #00f077;
}
.index .movie p {
	margin-bottom: 20px;
	color: #fff;
	font-size: 1.8rem;
}
.index .sponsor {
	margin-top: 60px;
	margin-bottom: 45px;
}
.index .sponsor h2 {
	font-size: 2rem;
}
.index .sponsor ul {
	margin: 0 auto;
	/*width: 502px;*/
	width: 520px;
}
.index .sponsor li {
	margin: 0 5px;
	width: 250px;
	float: left;
}
/*.index .sponsor li:nth-of-type(1) {
	margin-bottom: 1px;
	width: 502px;
	height: auto;
}
.index .sponsor li:nth-of-type(2) {
	width: 250px;
	height: 80px;
	float: left;
}
.index .sponsor li:nth-of-type(3) {
	width: 250px;
	height: 80px;
	float: right;
}*/
.index .cooperate {
	margin-bottom: 45px;
	text-align: center;
}
.index .cooperate h2 {
	font-size: 2rem;
}
.index .cooperate ul {
	margin: 0 auto;
	/*width: 756px;*/
	width: 250px;
}
.index .cooperate li {
	margin: 1px;
	width: 250px;
	height: 80px;
	float: left;
}
.index .production {
	margin-bottom: 62px;
}
.index .production h2 {
	font-size: 2rem;
}
.index .production ul {
	margin: 0 auto;
	width: 715px;
	background: #fff;
	text-align: center;
}
.index .production li {
	padding: 15px 10px;
	display: inline-block;
}
.index .production li a {
	color: #000;
	font-size: 1.4rem;
	font-weight: bold;
	text-decoration: none;
}
.index .other ul {
	margin: 0 auto;
	width: 250px;
}
.index .other li {
	margin: 0 5px;
	width: 252px;
	height: 78px;
}
.index .other li a {
	display: block;
	border: 1px solid #fff;
}
.trailer {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 9999;
	display: none;
}
.trailer .overlay {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0, 0, 0, .8);
}
.trailer .close {
	width: 70px;
	height: 70px;
	position: absolute;
	top: 0;
	right: 5%;
	z-index: 100;
	cursor: pointer;
}
.trailer iframe {
	width: 90%;
	height: 80%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%); /* Safari用 */
	z-index: 9999;
}
@media screen and (min-width: 639px) {
	.indexbg,
	.overlay,
	.bgmovie {
		width: 100%;
		height: 100%;
		position: fixed;
		top: 0;
		left: 0;
		z-index: -1;
	}
	.overlay {
		background: rgba(0, 0, 0, .5);
		z-index: 10;
	}
	.bgmovie {
		z-index: -1;
	}
	.index {
		position: relative;
	}
	.index .inner {
		margin: 0 auto;
		width: 1040px;
	}
	.index .killer .inner {
		padding: 247px 0 120px;
	}
	.index .killer .catchPc01 {
		width: 131px;
		height: 436px;
		position: absolute;
		top: 97px;
		right: 0;
	}
	.index .killer .catchPc02 {
		width: 133px;
		height: 526px;
		position: absolute;
		top: 96px;
		left: 0;
	}
	.index .killer .catchSp {
		display: none;
	}
	.index .killer .whatsBtn {
		width: 268px;
		height: 258px;
		position: absolute;
		top: 14px;
		left: 128px;
	}
	.index .killer .ticketBtn {
		width: 264px;
		height: 226px;
		position: absolute;
		top: 22px;
		right: 128px;
	}
	.index .killer h1 {
		margin: 0 auto;
		width: 677px;
		height: 244px;
	}
	.index .carousel {
		margin: auto;
		width: 686px;
	}
	.index .public .rightBlock {
		width: 620px;
		float: left;
	}
	.index .public .leftBlock {
		width: 360px;
		float: right;
	}
	.index .movie {
		padding: 50px 0;
	}
	.index .movie ul {
		margin: 0 auto;
		width: 960px;
	}
	.index .movie li {
		margin: 0 8px;
		padding: 2px;
		width: 300px;
		float: left;
		background: #000;
	}
	.index .movie li:hover {
		background: linear-gradient(135deg, #ff0859 0%, #5634fa 50%, #00f077 100%);
	}
	.index .movie li iframe {
		display: block;
		height: 200px;
	}
	.index .channel h2 {
		display: none;
	}
	.index .other li {
		float: left;
	}
}
@media screen and (max-width: 640px) {
	.index {
		margin-top: 40px;
		padding: 0;
	}
	.index .killer {
		padding-bottom: 60px;
	}
	.index .killer .catchPc01,
	.index .killer .catchPc02 { display: none; }
	.index .killer .catchSp {
		position: absolute;
		top: 70px;
		left: 50%;
		width: 60px;
		height: 136px;
		transform: translateX(-50%);
		-webkit-transform: translateX(-50%);
	}
	.index .killer .whatsBtn {
		margin-top: 90px;
		width: 132px;
		height: 125px;
		float: left;
	}
	.index .killer .ticketBtn {
		margin-top: 90px;
		width: 129px;
		height: 110px;
		float: right;
	}
	.index .killer h1 {
		clear: both;
		margin: 0 auto 10px;
		width: 278px;
		height: 101px;
	}
	.index .countdown {
		margin-bottom: 30px;
	}
	.index .countdown dt {
		display: block;
		font-size: 1.2rem;
	}
	.index .countdown dd {
		font-size: .9rem;
		line-height: .9rem;
	}
	.index .countdown .num {
		width: 19px;
		height: 23px;
		font-size: 2rem;
		line-height: 2.3rem;
		border: 1px solid #fff;
	}
	.index .countdown .yyc-day {
		margin: 0;
		padding-left: 7px;
		letter-spacing: 1rem;
		font-size: 2rem;
		line-height: 2rem;
	}
	.index .countdown .yyc-hou,
	.index .countdown .yyc-min {
		margin: 0;
		padding-left: 8px;
		letter-spacing: 1rem;
		font-size: 2rem;
		line-height: 2rem;
	}
	.index .countdown .yyc-day {
		background-size: 23px 26px;
	}
	.index .countdown .yyc-hou,
	.index .countdown .yyc-min {
		background-size: 42px 26px;
	}
	.index .chopapv {
		margin: 0 auto 20px;
		padding: 10px 20px 20px;
		width: 280px;
	}
	.index .chopapv iframe {
		height: 160px;
	}
	.index .carousel {
		margin: auto;
		width: 300px;
	}
	.index .bnrArea {
		margin: 0 auto 20px;
		width: 220px;
		height: auto;
	}
	.index .carousel .slider {
		height: 63px;
	}
	.index .carousel li {
		width: 130px;
		height: 63px;
	}
	.index .carousel a {
		font-size: 1rem;
	}
	.index .cell h2 {
		font-size: 2rem;
	}
	.index .public {
		padding: 20px 0;
		background-size: 100% auto;
	}
	.index .tweet {
		margin-top: 10px;
	}
	.index .timeline {
		margin: 0 auto;
		width: 85%;
	}
	.index .timeline iframe {
	}
	.index .share .hash li {
		font-size: 1.2rem;
		line-height: 1.2rem;
	}
	.index .share .snsbtn li {
		width: 60px;
		height: 60px;
	}
	.index .share .snsbtn li img {
		width: 60px;
		height: 60px;
	}
	.index .onair {
		margin: 0 auto;
		width: 280px;
		height: auto;
	}
	.index .onair iframe {
		width: 100%;
	}
	.index .channel {
		margin: 0 auto;
		width: 280px;
	}
	.index .movie {
		padding: 25px 40px 40px;
		background-image: url(../img/index/movie_bg_sp.jpg);
		background-size: cover;
	}
	.index .movie h2 {
		font-size: 2rem;
	}
	.index .movie p {
		font-size: 1.1rem;
	}
	.index .movie li iframe {
		height: 160px;
	}
	.index .sponsor {
		margin: 30px 20px;
		width: auto;
	}
	.index .sponsor h2 {
		font-size: 1.4rem;
	}
	.index .sponsor ul {
		width: 100%;
	}
	.index .sponsor li {
		margin: 0 1%;
		width: 48%;
		height: auto;
		float: left;
	}
/*	.index .sponsor li:nth-of-type(1) {
		width: 280px;
		height: auto;
	}
	.index .sponsor li:nth-of-type(2),
	.index .sponsor li:nth-of-type(3) {
		width: 139px;
		height: auto;
	}*/
	.index .cooperate {
		margin: 0 auto 30px;
		/*width: 280px;*/
		width: 40%;
	}
	.index .cooperate ul {
		width: 100%;
	}
	.index .cooperate h2 {
		font-size: 1.4rem;
	}
	.index .cooperate li {
		margin: 0 0 2px;
		/*width: 139px;*/
		width: 100%;
		height: auto;
		float: none;
		display: inline-block;
	}
	.index .cooperate li:nth-of-type(1) { float: left; }
	.index .cooperate li:nth-of-type(2) { float: right; }
	.index .cooperate li:nth-of-type(3) { clear: both; }
	.index .production {
		margin: 0 auto 30px;
		width: 90%;
	}
	.index .production li {
		display: block;
	}
	.index .production h2 {
		font-size: 1.4rem;
	}
	.index .production ul {
		width: 100%;
	}
	.index .production li {
		padding: 0;
		font-size: 1.2rem;
	}
	.index .production li a {
		padding: 5px;
		font-size: 1.2rem;
		display: block;
	}
	.index .other ul {
		margin: 0 auto;
		width: 200px;
	}
	.index .other li {
		width: 100%;
	}
	.trailer .close {
		width: 35px;
		height: 35px;
	}
}

@media screen and (min-width: 639px) {
	.about .block p {
		font-size: 1.6rem;
	}
	.about .copy {
		margin: 0 auto 40px;
		width: 629px;
		height: 74px;
	}
	.about .description {
		width: 540px;
		float: left;
	}
	.about .pattern01 dt {
		width: 100px;
	}
	.about .pattern01 dd {
		width: 350px;
	}
	.about .map {
		width: 400px;
		float: right;
	}
}
@media screen and (max-width: 640px) {
	.about .copy {
		margin: 0 auto 20px;
		width: 297px;
		height: 68px;
	}
	.about .map {
		width: 100%;
	}
	.about .map iframe {
		width: 100%;
		height: 260px;
	}
}

@media screen and (min-width: 639px) {
	.whats .what {
		text-align: center;
	}
	.whats .where dt {
		width: 178px;
	}
	.whats .where dd {
		width: 721px;
	}
	.whats .want dl {
		padding-right: 240px;
		background: url(../img/about/whats_want_img01.png) no-repeat right top;
		background-size: 220px 165px;
	}
	.whats .want dt {
		width: 145px;
	}
	.whats .want dd {
		width: 514px;
	}
	.whats .how dt {
		width: 115px;
	}
	.whats .how dd {
		width: 784px;
	}
	.whats .property dl {
		padding-right: 240px;
		background: url(../img/about/whats_property_img01.png) no-repeat right top;
		background-size: 220px 165px;
	}
	.whats .property dt {
		width: 65px;
	}
	.whats .property dd {
		width: 594px;
	}
	.whats .lastyear {
		text-align: center;
	}
}

.artist .card {
	overflow: hidden;
	position: relative;
}
.artist .card a {
	text-decoration: none;
}
.artist .card figure {
	position: relative;
}
.artist .card figcaption {
	padding: 4px 8px;
	width: 245px;
	position: absolute;
	bottom: 0;
	box-sizing: border-box;
	font-size: 1.2rem;
	line-height: 1.2rem;
	text-align: center;
	color: #fff;
	text-shadow: 0 1px 0 rgba(0, 0, 0, .5);
	background: rgba(0, 0, 0, .5);
}
.artist .card figcaption.long {
	text-align: left;
}
.artist .card .description {
	width: 245px;
	height: 72px;
	/*height: 130px;*/
	display: table;
	color: #fff;
	text-align: center;
	background: #000;
}
.artist .card .description p {
	display: table-cell;
	font-size: 1.6rem;
	vertical-align: middle;
	font-weight: bold;
}
.artist .card .description span {
	display: block;
	font-size: 1.2rem;
	/*font-size: 1rem;*/
}
.artist .card .ico {
	position: absolute;
	border-radius: 50%;
	box-shadow: 0 4px 2px 0 rgba(0, 0, 0, .3);
	z-index: 10;
	transition: .3s all;
	box-sizing: border-box;
}
.artist .movie .ico {
	background: #2d1dff;
	background: linear-gradient(to right top, #2d1dff 0%, #ad1dff 100% );
}
.artist .official .ico {
	background: #ff0859;
	background: linear-gradient(to right top, #ff0859 0%, #ff9908 100% );
}
.artist .user .ico {
	background: #00bca8;
	background: linear-gradient(to right top, #00bca8 0%, #bdce00 100% );
}
.artist .card .ico:after {
	display: inline;
	height: 20px;
	padding-left: 30px;
	position: absolute;
	color: #fff;
	text-align: center;
	font-size: 0;
	text-indent: 9999px;
	font-weight: bold;
	text-shadow: 0 2px rgba(0, 0, 0, .3);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 20px;
	transition: .3s all;
}
.artist .movie .ico:after {
	content: "";
	background-image: url(../img/artist/ico_movie.png);
}
.artist .official .ico:after {
	content: "";
	background-image: url(../img/artist/ico_official.png);
}
.artist .user .ico:after {
	content: "";
	background-image: url(../img/artist/ico_user.png);
}
@media screen and (min-width: 639px) {
	.artist {
		margin: 0 auto;
		width: 1040px;
	}
	.artist h2 {
		margin-bottom: 30px;
		font-size: 3.2rem;
	}
	.artist .tab02 li a {
		width: 138px;
	}
	.artist .tab02 li:nth-child(6) a {
		font-size: 14px;
		line-height: 1.2;
	}
	.artist .card {
		margin-left: 20px;
		margin-bottom: 20px;
		float: left;
		width: 245px;
		height: 227px;
		/*height: 280px;*/
	}
	.artist .card:nth-of-type(4n+1) {
		margin-left: 0;
	}
	.artist .card figure img {
		transition: .6s all;
	}
	.artist .card[class*="movie"]:hover figure img,
	.artist .card[class*="official"]:hover figure img,
	.artist .card[class*="user"]:hover figure img {
		transform: scale(1.3);
		-webkit-transform: scale(1.3);
	}
	.artist .card .ico {
		padding: 7px;
		width: 35px;
		height: 35px;
		top: 128px;
		left: 206px;
	}
	.artist .card .txt {
		width: 100%;
		position: absolute;
		top: 80px;
		/*top: 100px;*/
		opacity: 0;
		color: #fff;
		text-align: center;
		font-size: 1.6rem;
		z-index: 50;
		transition: .6s all;
	}
	.artist .card:hover .txt {
		top: 100px;
		/*top: 120px;*/
		opacity: 1;
	}
	.artist .card .txt img {
		margin-right: 10px;
		width: 30px;
		height: 30px;
	}
	.artist .card[class*="movie"] a:after,
	.artist .card[class*="official"] a:after,
	.artist .card[class*="user"] a:after {
		content: '';
		width: 245px;
		height: 227px;
		/*height: 280px;*/
		display: block;
		top: 0;
		left: 0;
		opacity: 0;
		position: absolute;
		border-radius: 0;
		z-index: 10;
		background: #ff011f;
		background: linear-gradient(to right top, #ff011f 0%, #1100f4 100% );
		transition: .6s all;
	}
	.artist .card a:hover:after {
		opacity: .8;
	}
	.artist .card figure {
		width: 245px;
		height: 155px;
		overflow: hidden;
	}
}
@media screen and (max-width: 640px) {
	.artist h2 {
		font-size: 2.5rem;
	}
	.artist .tab02 li:nth-child(6) a {
		font-size: 14px;
		line-height: 1.2;
	}
	.artist .list {
		margin: 0 1%;
		width: 98%;
	}
	.artist .list li {
		margin: 0 1% 10px;
		width: 48%;
	}
	.artist .list li:nth-of-type(odd) {
		float: left;
	}
	.artist .list li:nth-of-type(even) {
		float: right;
	}
	.artist .card figcaption {
		padding: 4px 30px 4px 8px;
		width: 100%;
		font-size: .8rem;
		line-height: .8rem;
	}
	.artist .card .txt {
		display: none;
	}
	.artist .card .description {
		width: 100%;
		height: 70px;
		/*height: 160px;*/
	}
	.artist .card .description p {
		font-size: 1rem;
	}
	.artist .card .description span {
		font-size: .6rem;
	}
	.artist .card .ico {
		padding: 6px;
		width: 27px;
		height: 27px;
		right: 5px;
		bottom: 67px;
		/*bottom: 154px;*/
	}
	.artist .card .ico:after {
		background-size: 15px;
	}
}

.ticket .info {
	text-align: center;
	font-weight: bold;
}
.ticket .price {
	vertical-align: middle;
}
.ticket .price em {
	vertical-align: middle;
}
.ticket .date {
	color: #4005cb;
}
.ticket .notice li {
	padding-left: 22px;
	background: url(../img/ico_list01.png) no-repeat 3px 6px;
	background-size: 6px;
}
.ticket .entry {
	color: #4005cb;
}
.ticket.net {
	text-align: center;
}
.ticket th,
.ticket td {
	padding: 10px;
	text-align: left;
	border: 5px solid #fff;
}
.ticket th {
	color: #fff;
	background: #4b00ff;
}
.ticket td {
	background: #ebeaf3;
}
.ticket .linkarea {
	color: #808080;
}
@media screen and (min-width: 639px) {
	.ticket .price {
		margin-bottom: 60px;
		font-size: 3rem;
		line-height: 3rem;
	}
	.ticket .price em {
		margin-left: 40px;
		font-size: 7rem;
		line-height: 7rem;
	}
	.ticket .price .unit {
		font-size: 6rem;
	}
	.ticket .date {
		font-size: 3.4rem;
		line-height: 3.4rem;
	}
	.ticket .entry {
		font-size: 2.4rem;
		line-height: 2.4rem;
	}
	.ticket .step {
		margin: 40px 0;
		text-align: center;
	}
	.ticket .step img {
		width: 339px;
		height: 130px;
	}
	.ticket .step img:not(:first-child) {
		margin-left: -43px;
	}
	.ticket .notice {
		margin: 0 auto;
		width: 945px;
	}
	.ticket table {
		margin: 0 auto;
		width: 960px;
	}
	.ticket th {
		width: 220px;
	}
}
@media screen and (max-width: 640px) {
	.ticket .price {
		font-size: 1.5rem;
		line-height: 1.5rem;
	}
	.ticket .price em {
		margin-left: 20px;
		font-size: 4rem;
		line-height: 4rem;
	}
	.ticket .price .unit {
		font-size: 3rem;
	}
	.ticket .date {
		margin-bottom: 10px !important;
		font-size: 2rem;
		line-height: 2rem;
	}
	.ticket .entry {
		font-size: 1.6rem;
		line-height: 1.6rem;
	}
	.ticket .step {
		margin: 30px 0;
		text-align: center;
	}
	.ticket .step img {
		width: 95px;
		height: 98px;
	}
	.ticket .step img:not(:first-child) {
		margin-left: -17px;
	}
	.ticket .notice li {
		padding-left: 12px;
		background: url(../img/ico_list01.png) no-repeat 2px 6px;
		background-size: 4px;
	}
	.ticket tr,
	.ticket th,
	.ticket td {
		display: block;
	}
	.ticket th,
	.ticket td {
		padding: 10px;
		border: 2px solid #fff;
	}
	.ticket th,
	.ticket .linkarea {
		text-align: center;
	}
	.ticket td a {
		display: block;
	}
}

.goods .card {
	overflow: hidden;
	position: relative;
}
.goods .card a {
	text-decoration: none;
}
.goods .card figure {
	position: relative;
}
.goods .card .description {
	padding: 25px 10px 30px;
	width: 245px;
	position: relative;
	color: #fff;
	background: #2d2d37;
	box-sizing: border-box;
}
.goods .card .description p {
	font-size: 1.6rem;
}
.goods .card p.category {
	padding: 3px;
	position: absolute;
	top: 4px;
	left: 4px;
	line-height: 1;
	font-size: 1.1rem;
	font-weight: bold;
}
.goods .card .official {
	color: #e0ff00;
	background: #4e5900;
}
.goods .card .user {
	color: #a0b4c9;
}
.goods .card .txt {
	overflow: hidden;
	font-weight: bold;
}
.goods .card .price {
	position: absolute;
	right: 10px;
	bottom: 5px;
	color: #e0ff00;
}
@media screen and (min-width: 639px) {
	.goods {
		margin: 0 auto;
		width: 1040px;
	}
	.goods .card {
		margin-left: 20px;
		margin-bottom: 20px;
		float: left;
		width: 245px;
	}
	.goods .card:nth-of-type(4n+1) {
		margin-left: 0;
	}
	.goods .card a:after {
		content: '';
		width: 245px;
		height: 100%;
		/*height: 280px;*/
		display: block;
		top: 0;
		left: 0;
		opacity: 0;
		position: absolute;
		border-radius: 0;
		z-index: 10;
		background: #ff011f;
		background: linear-gradient(to right top, #ff011f 0%, #1100f4 100% );
		transition: .6s all;
	}
	.goods .card a:hover:after {
		opacity: .8;
	}
	.goods .card figure img {
		transition: .6s all;
	}
	.goods .card figure {
		width: 245px;
		height: 155px;
		overflow: hidden;
	}
	.goods .card .txt {
		height: 85px;
	}
}
@media screen and (max-width: 640px) {
	.goods .list {
		margin: 0 1%;
		width: 98%;
	}
	.goods .list li {
		margin: 0 1% 10px;
		width: 48%;
	}
	.goods .list li:nth-of-type(odd) {
		float: left;
	}
	.goods .list li:nth-of-type(even) {
		float: right;
	}
	.goods .card .description {
		width: 100%;
	}
	.goods .card .description p {
		font-size: 1rem;
	}
	.goods .card .txt {
		height: 50px;
	}
}

.entry ul li {
	margin-left: 20px;
	list-style: disc;
}
@media screen and (min-width: 639px) {
	.entry .intro {
		margin-bottom: 30px;
		text-align: center;
	}
	.entry .info dt {
		width: 145px;
	}
	.entry .info dd {
		width: 754px;
	}
	.entry .info .btn {
		margin: 0 auto;
		width: 200px;
		display: block;
	}
}
@media screen and (max-width: 640px) {
	.entry ul li iframe {
		height: 160px;
	}
}

.onair {
	text-align: center;
}
.onair .intro {
	font-size: 2.8rem;
	font-weight: bold;
}
.onair .box {
	margin: 0 auto 30px;
	padding: 4px;
	width: 640px;
	background: #000;
	background: linear-gradient(-30deg, rgba(75, 0, 255, 1) 0%, rgba(247, 25, 89, 1) 100%);
}
.onair .boxInner {
	background-image: url(../img/onair/box_bg_pc.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 640px 300px;
	box-sizing: border-box;
}
.onair .box .nama {
	padding: 38px 0;
}
.onair .box .nama iframe {
	width: 300px;
	height: 162px;
}
.onair .box h3 {
	color: #fff;
	font-size: 3rem;
	font-weight: bold;
	background: #4b00ff;
	background: linear-gradient(-20deg, rgba(75, 0, 255, .5) 0%, rgba(247, 25, 89, .5) 100%);
}
.onair .later {
	margin: 0 auto;
	padding: 15px;
	width: 962px;
	color: #fff;
	text-align: center;
	font-size: 2.8rem;
	background: linear-gradient(-30deg, rgba(75, 0, 255, .3) 0%, rgba(247, 25, 89, .3) 100%);
	box-sizing: border-box;
}
.real {
	text-align: center;
}
.real .box {
	margin: 0 auto 30px;
	padding: 4px;
	width: 640px;
	background: #000;
	background: linear-gradient(-30deg, rgba(75, 0, 255, 1) 0%, rgba(247, 25, 89, 1) 100%);
}
.real .boxInner {
	color: #fff;
	background-image: url(../img/onair/box_bg_pc.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;
	box-sizing: border-box;
}
.real .box .direction {
	padding: 10px;
}
.real .box h3 {
	color: #fff;
	font-size: 3rem;
	font-weight: bold;
	background: #4b00ff;
	background: linear-gradient(-20deg, rgba(75, 0, 255, .5) 0%, rgba(247, 25, 89, .5) 100%);
}
.real .later {
	margin: 0 auto;
	padding: 15px;
	width: 962px;
	color: #fff;
	text-align: center;
	font-size: 2.8rem;
	background: linear-gradient(-30deg, rgba(75, 0, 255, .3) 0%, rgba(247, 25, 89, .3) 100%);
	box-sizing: border-box;
}
.timetable .inner {
	text-align: center;
}
.timetable .notice {
	margin-top: 0;
	text-align: right;
	font-size: 14px;
	font-weight: bold;
}
@media screen and (min-width: 639px) {
	.real .box {
		width: 48%;
	}
	.real .box:nth-child(1) { float: left; }
	.real .box:nth-child(2) { float: right; }
	.real .box:nth-child(2) p {
		margin-bottom: 36px;
	}
}
@media screen and (max-width: 640px) {
	.onair .intro {
		font-size: 1.5rem;
	}
	.onair .box {
		padding: 2px;
		width: auto;
	}
	.onair .boxInner {
		background-image: url(../img/onair/box_bg_sp.png);
		background-size: cover;
	}
	.onair .box h3 {
		font-size: 1.5rem;
	}
	.onair .box .nama {
		padding: 10px;
	}
	.onair .box .nama iframe {
		width: 100%;
	}
	.onair .btn {
		padding: 10px 14px;
		font-size: 1.3rem;
	}
	.onair .later {
		margin: 0 auto;
		padding: 27px 10px;
		width: 90%;
		font-size: 1.5rem;
	}
	.real .box {
		width: auto;
	}
	.timetable .notice {
		font-size: 10px;
	}
}
.notice .cell {
	margin: 0 auto 30px;
}
.notice .block p {
	margin: 20px 0;
}
.notice strong {
	display: block;
	color: #4b00ff;
	font-size: 2.1rem;
	font-weight: bold;
}
.notice em {
	display: block;
	font-weight: bold;
}

@media screen and (min-width: 639px) {
	.now {
		margin: 0 auto;
		width: 1000px;
	}
	.now .logoArea {
		padding: 150px 0 80px;
		position: relative;
	}
	.now .logoArea h2 {
		position: absolute;
		right: -10px;
		bottom: 53px;
	}
	.now .logoArea h1 img {
		width: 516px;
		height: 145px;
	}
	.now .logoArea h2 img {
		width: 523px;
		height: 158px;
	}
	.now .live {
		margin-bottom: 60px;
		width: 673px;
		float: left;
		position: relative;
	}
}
.now .live h3 img {
	width: auto;
	height: 27px;
	position: absolute;
	top: -15px;
	left: 15px;
	z-index: 1;
}
.now .live .frame {
	padding: 2px;
	background: linear-gradient(135deg, #ff0859 0%, #5634fa 50%, #00f077 100%);
	position: relative;
}
@media screen and (min-width: 639px) {
	.now .live .thumb {
		width: 669px;
		height: 383px;
		transition: .3s all;
	}
	.now .live .startBtn {
		width: 140px;
		height: 140px;
		transition: .3s all;
	}
}
.now .live .startBtn {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
@media screen and (min-width: 639px) {
	.now .live .morebtn {
		width: 708px;
		transform: translateX(-17px);
		transition: .3s all;
	}
	.now .live:hover .thumb,
	.now .live:hover .morebtn {
		opacity: .7;
	}
	.now .live:hover .startBtn {
		width: 153px;
		height: 153px;
	}
	.now .twitter {
		margin-bottom: 60px;
		width: 271px;
		float: right;
		position: relative;
	}
}
.now .twitter h3 img {
	width: auto;
	height: 27px;
	position: absolute;
	top: -15px;
	left: 15px;
	z-index: 1;
}
.now .twitter .frame {
	padding: 2px;
	background: #ff0859 linear-gradient(135deg, #ff0859 0%, #5634fa 50%, #00f077 100%);
}
.now .twitter .frame iframe {
	vertical-align: bottom;
}
.now .gakuya {
	background-image: url(../img/index/now_gakuya_bg.png);
}
.now .net {
	background-image: url(../img/index/now_net_bg.png);
}
@media screen and (min-width: 639px) {
	.now .gakuya {
		float: left;
	}
	.now .net {
		float: right;
	}
}
.now .gakuya,
.now .net {
	margin-bottom: 60px;
	padding: 60px 50px;
	box-sizing: border-box;
	position: relative;
	background-repeat: no-repeat;
	background-position: 0 0;
}
@media screen and (min-width: 639px) {
	.now .gakuya,
	.now .net {
		width: 437px;
		height: 340px;
		background-size: 437px 340px;
		transition: .3s all;
	}
	.now .gakuya {
		margin-left: 40px;
	}
	.now .net {
		margin-right: 40px;
	}
}
.now .gakuya h3 {
	position: absolute;
	top: -26px;
	left: 30px;
}
.now .net h3 {
	position: absolute;
	top: 5px;
	left: 30px;
}
@media screen and (min-width: 639px) {
	.now .gakuya h3 img {
		width: 272px;
		height: 60px;
	}
	.now .net h3 img {
		width: 222px;
		height: 30px;
	}
	.now .gakuya .label,
	.now .net .label {
		position: absolute;
		top: -35px;
		right: -38px;
		z-index: 10;
	}
	.now .gakuya .label {
		width: 143px;
		height: 125px;
	}
	.now .net .label {
		width: 143px;
		height: 126px;
	}
}
.now .gakuya,
.now .net {
	text-align: center;
}
.now .gakuya .frame,
.now .net .frame {
	margin-bottom: 20px;
	padding: 1px;
	width: 340px;
	height: 190px;
	box-sizing: border-box;
	overflow: hidden;
	position: relative;
	background: #ff0859 linear-gradient(135deg, #ff0859 0%, #5634fa 50%, #00f077 100%);
}
.now .gakuya .frame .thumb,
.now .net .frame .thumb {
	width: 338px;
	height: 188px;
}
.now .gakuya .startBtn,
.now .net .startBtn {
	width: 80px;
	height: 80px;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	transition: .3s all;
}
@media screen and (min-width: 639px) {
	.now .gakuya:hover,
	.now .net:hover {
		opacity: .7;
	}
	.now .gakuya:hover .startBtn,
	.now .net:hover .startBtn {
		width: 90px;
		height: 90px;
	}
}
.now .gakuya .link,
.now .net .link {
	position: relative;
	color: #fff;
	text-decoration: none;
	font-size: 17px;
}
.now .gakuya .link:after,
.now .net .link:after {
	content: "";
	display: inline-block;
	width: 11px;
	height: 19px;
	position: relative;
	top: 5px;
	left: 5px;
	overflow: hidden;
	background-image: url(../img/index/now_more_arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size: 11px 19px;
	transition: .3s all;
}
@media screen and (min-width: 639px) {
	.now .gakuya:hover .link:after,
	.now .net:hover .link:after {
		left: 8px;
	}
}
.now .gakuya .link span {
	border-bottom: 2px solid #4b00ff;
}
.now .net .link span {
	border-bottom: 2px solid #ff0859;
}
.now .timetable h3 {
	margin-bottom: 30px;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
}
.now .timetable h3 .en {
	padding-bottom: 5px;
	border-bottom: 2px solid #ff0859;
}
.now .timetable h3 .jp {
	font-size: 16px;
	display: block;
}
.now .timetable .frame {
	padding: 2px;
	box-sizing: border-box;
	background: #ff0859 linear-gradient(135deg, #ff0859 0%, #5634fa 50%, #00f077 100%);
}
.now .timetable .frameinner {
	padding: 20px;
	background: #19005b;
}
.now .timetable .frameinner .schedule {
	padding: 20px;
	background: #fff;
}
@media screen and (max-width: 640px) {
	.now .logoArea {
		text-align: center;
	}
	.now .logoArea h1 {
		margin: 0 auto 10px;
		width: 90%;
	}
	.now .logoArea h2 {
		margin: 0 auto;
		width: 90%;
	}
	.now .live {
		margin: 0 10px 60px;
		position: relative;
	}
	.now .live .startBtn {
		width: 80px;
		height: 80px;
		transition: .3s all;
	}
	.now .live .morebtn {
		width: 104%;
		transform: translateX(-2%);
	}
	.now .twitter {
		margin: 0 10px 60px;
		position: relative;
	}
	.now .twitter iframe {
		height: 300px !important;
	}
	.now .gakuya,
	.now .net {
		padding: 30px 30px;
	}
	.now .gakuya h3 {
		top: -18px;
		left: 20px;
	}
	.now .net h3 {
		top: 3px;
		left: 20px;
	}
	.now .gakuya h3 img {
		width: 192px;
		height: auto;
	}
	.now .net h3 img {
		width: 156px;
		height: auto;
	}
	.now .gakuya .label,
	.now .net .label {
		width: 77px;
		height: auto;
		position: absolute;
		top: -20px;
		right: -10px;
		z-index: 10;
	}
	.now .gakuya,
	.now .net {
		margin: 0 auto 20px;
		width: 281px;
		height: 232px;
		background-size: 281px 232px;
	}
	.now .gakuya .frame,
	.now .net .frame {
		margin-bottom: 10px;
		width: 223px;
		height: 136px;
	}
	.now .gakuya .frame .thumb,
	.now .net .frame .thumb {
		width: 221px;
		height: 134px;
	}
	.now .timetable {
		margin: 0 10px;
	}
}
@media screen and (min-width: 639px) {
	.after .logoArea {
		margin: 0 auto;
		width: 1000px;
		height: 725px;
		position: relative;
	}
	.after .logoArea .catch {
		width: 103px;
		height: 266px;
		position: absolute;
		top: 20px;
		left: 50%;
		transform: translateX(-50%);
	}
	.after .logoArea .logo {
		width: 836px;
		height: 277px;
		position: absolute;
		top: 356px;
		left: 50%;
		transform: translateX(-50%);
	}
}
.after .timeshift {
	margin: 0 auto 80px;
	padding: 40px;
	width: 1039px;
	text-align: center;
	background-color: #020009;
	background-image: url(../img/index/after_timeshift_bg_pc.jpg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 1039px auto;
	border: 1px solid rgba(253, 253, 89, .6);
	box-sizing: border-box;
	position: relative;
}
.after .timeshift h2 {
	margin-bottom: 40px;
}
.after .timeshift .ttl01 img {
	width: 699px;
	height: 86px;
}
.after .timeshift .ttl02 img {
	width: 572px;
	height: 100px;
}
.after .timeshift .balloon {
	width: 218px;
	height: 212px;
	position: absolute;
	top: -80px;
	left: -40px;
}
.after .timeshift .frame {
	margin: 0 auto 40px;
	width: 314px;
	height: 178px;
	border: 5px solid #ff5374;
	border-radius: 5px;
}
.after .timeshift .frame iframe {
	vertical-align: bottom;
}
.after .timeshift .btn {
	padding: 17px;
	width: 320px;
}
.after .timeshift .btn span {
	padding-right: 18px;
	position: relative;
}
.after .timeshift .btn span:after {
	content: "";
	width: 8px;
	height: 15px;
	position: absolute;
	top: 8px;
	right: 0;
	display: block;
	background: url(../img/index/after_btn_arrow.png) no-repeat 0 0;
	background-size: 8px 15px;
}
.after .timeshift .free {
	margin-top: 70px;
	padding-top: 30px;
	border-top: 1px solid rgba(253, 253, 89, .6);
}
.after .timeshift .lead {
	margin-bottom: 30px;
}
.after .timeshift .backstage {
	font-size: 16px;
	color: #fff;
	text-decoration: none;
}
.after .timeshift .backstage span:before {
	content: "▶";
	color: #ff0064;
}
.after .setlist {
	margin: 0 auto;
	width: 1044px;
	text-align: center;
}
.after .setlist h3 {
	margin-bottom: 30px;
	color: #fff;
	font-size: 30px;
	font-weight: bold;
	text-align: center;
}
.after .setlist h3 .en {
	padding-bottom: 5px;
	border-bottom: 2px solid #00f077;
}
.after .setlist h3 .jp {
	font-size: 16px;
	display: block;
}
@media screen and (max-width: 640px) {
	.after .logoArea {
		position: relative;
		width: 100%;
		height: 344px;
	}
	.after .logoArea .catch {
		width: 61px;
		height: auto;
		position: absolute;
		top: 20px;
		left: 50%;
		transform: translateX(-50%);
	}
	.after .logoArea .logo {
		width: 305px;
		height: auto;
		position: absolute;
		top: 216px;
		left: 50%;
		transform: translateX(-50%);
	}
	.after .timeshift {
		margin: 0 auto 40px;
		padding: 20px;
		width: 95%;
		background-image: url(../img/index/after_timeshift_bg_sp.jpg);
		background-size: cover;
	}
	.after .timeshift .ttl01 {
		margin-left: 70px;
	}
	.after .timeshift .ttl01 img {
		width: 206px;
		height: 64px;
	}
	.after .timeshift .ttl02 {
		margin-left: -15px;
	}
	.after .timeshift .ttl02 img {
		width: 290px;
		height: 60px;
	}
	.after .timeshift .balloon {
		width: 90px;
		height: auto;
		position: absolute;
		top: 0;
		left: 0;
	}
	.after .timeshift .frame {
		margin: 0 auto 20px;
		width: 250px;
		height: auto;
		border: 5px solid #ff5374;
		border-radius: 5px;
	}
	.after .timeshift .frame iframe {
		width: 100%;
	}
	.after .timeshift .btn {
		width: auto;
		font-size: 20px;
	}
	.after .timeshift .btn span:after {
		top: 4px;
		right: 0;
		display: block;
		background: url(../img/index/after_btn_arrow.png) no-repeat 0 0;
		background-size: 8px 15px;
	}
	.after .setlist {
		margin: 0 auto;
		width: 95%;
		text-align: center;
	}
	.after .setlist h3 {
		margin-bottom: 10px;
		font-size: 20px;
	}
	.after .setlist h3 .jp {
		font-size: 11px;
	}
	.setlistFrame {
		width: 100%;
		height: 180px;
		position: relative;
		background: url(../img/index/setlist_bg_sp.png) no-repeat 0 0;
		background-size: cover;
	}
	.setlistFrame a {
		width: 90%;
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
}