@charset "utf-8";

/*

http://meyerweb.com/eric/tools/css/reset/
v2.0 | 20110126
License: none (public domain)

*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */

article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

* {
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	-o-box-sizing: border-box;
	-ms-box-sizing: border-box;
}

/* COMMON */

body {
	color: #000000;
	font-size: 21px;
	font-family: 'Nippo-Variable', 'IBM Plex Sans JP', sans-serif;
  font-weight: 500;
	line-height: 1.6;
	letter-spacing: 0.05em;
	-webkit-font-smoothing: antialiased;
	font-feature-settings: "palt";
	background: #ffffff;
	background: url(../images/bg.svg) no-repeat center top;
	background-size: 100%;
}

section {
	background: url(../images/bg_B.svg) no-repeat center bottom;
	background-size: 100%;
}

a { color: #000000; font-weight: 700; text-decoration: underline; }
a:hover { color: #000000; text-decoration: none; }

img {
	width: 100%;
	height: auto;
	line-height: 0;
	vertical-align: top;
}

h1, h2, h3, h4, h5, h6 {
 color: #000000;
}

input,
select,
textarea {

}

.fl { float: left; }
.fr { float: right; }

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

.fadeinup {
  opacity: 0;
  transform: translate(0px, 30px);
}

.fadeindown {
  opacity: 0;
  transform: translate(0px, -30px);
}

.fadeinleft {
  opacity: 0;
  transform: translate(-30px, 0);
}

.fadeinright {
  opacity: 0;
  transform: translate(30px, 0);
}

.is-active .fadeinup,
.is-active .fadeindown,
.is-active .fadeinleft,
.is-active .fadeinright {
	opacity: 1;
	transform: translate(0px, 0px);
	transition: opacity 0.6s linear, transform 0.8s cubic-bezier(.1,1,.5,1);
}

.is-active .delay2000ms { transition-delay: 2s; }
.is-active .delay1800ms { transition-delay: 1.8s; }
.is-active .delay1600ms { transition-delay: 1.6s; }
.is-active .delay1400ms { transition-delay: 1.4s; }
.is-active .delay1200ms { transition-delay: 1.2s; }
.is-active .delay1000ms { transition-delay: 1s; }
.is-active .delay800ms { transition-delay: 0.8s; }
.is-active .delay600ms { transition-delay: 0.6s; }
.is-active .delay400ms { transition-delay: 0.4s; }
.is-active .delay200ms { transition-delay: 0.2s; }

.header-inner,
.article-inner,
.footer-inner {
	position: relative;
	width: 100%;
	margin: 0 auto;
}

.show-pc { display: inline-block; }
.show-sp { display: none; }

#loader {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: #000000;
}

#loader .loader,
#loader .loader:after {
	border-radius: 50%;
	width: 100px;
	height: 100px;
}

#loader .loader {
	position: absolute;
	top: 50%;
	left: 50%;
	margin: -50px 0 0 -50px;
 	font-size: 10px;
 	position: relative;
 	text-indent: -9999em;
 	border-top: 0.1em solid rgba(255, 255, 255, 0.2);
 	border-right: 0.1em solid rgba(255, 255, 255, 0.2);
 	border-bottom: 0.1em solid rgba(255, 255, 255, 0.2);
 	border-left: 0.1em solid #ffffff;
 	-webkit-transform: translateZ(0);
 	-ms-transform: translateZ(0);
 	transform: translateZ(0);
 	-webkit-animation: load 1.1s infinite linear;
 	animation: load 1.1s infinite linear;
}

@-webkit-keyframes load {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

@keyframes load {
  0% {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
  }
  100% {
    -webkit-transform: rotate(360deg);
    transform: rotate(360deg);
  }
}

h3 {
	padding: 0 0 30px 0;
	font-size: 42px;
}

/* HEADER, NAV, FOOTER */

.header-inner,
.footer-inner {
	position: relative;
	max-width: 1280px;
	margin: 0 auto;
}

.header-inner { padding: 0 0 125px 0; }

header h1 { padding: 60px 0 0 0; }

header h1 img {
	width: auto;
	height: 45px;
}

header h2 { padding: 150px 0 30px 0; }
header p { text-align: right; }

footer {
	padding: 60px 0;
	text-align: center;
}

.share ul {
	padding: 0 0 45px 0;
	text-align: center;
}

.share ul li {
	display: inline-block;
	padding: 0 0 0 20px;
}

.share ul li a img {
	width: 60px;
	height: 60px;
	transition: transform 0.3s cubic-bezier(.1,1,.5,1);
}

.share ul li a img:hover {
	transform: scale(0.9);
}

/* MAIN */

article { padding: 0 0 120px 0; }

.article-inner {
	position: relative;
	max-width: 1280px;
	margin: 0 auto;
}

.anthem .fl {
	width: 20%;
	padding: 30px 0;
}

.anthem .fr {
	padding: 30px 0 0 30px;
}

.anthem ul li {
	float: left;
	padding: 0 0 0 35px;
	color: #c0c0c0;
	text-align: right;
}

.anthem p {
	font-size: 15px;
	text-align: right;
}

.anthem p span { color: #808080; }

.anthem .profile {
	padding: 30px 0 0 0;
	line-height: 160px;
	text-align: right;
}

.anthem .profile img.thumb {
	width: 160px;
	margin: 0 15px 0 0;
	border-radius: 50%;
}

.anthem .profile b { font-weight: 700;}

.anthem .profile a {
	display: inline-block;
	padding: 0 0 0 15px;
	font-weight: normal;
}

.anthem .profile a.tw img {
	vertical-align: middle;
	width: 27px;
	margin: 0 10px 0 0;
}

.anthem .profile a.yt img {
	vertical-align: middle;
	width: 24px;
	margin: 0 10px 0 0;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

.attention .article-inner {
	width: 1160px;
	margin: 0 auto;
	padding: 60px;
	border-left: 10px solid #000000;
	border-right: 10px solid #000000;
}

.attention h3 {
	color: #cc0000;
	font-size: 36px;
	font-weight: 700;
	text-align: center;
}

.attention p { text-align: justify; }

.attention p b {
	color: #cc0000;
	font-weight: 700;
}

.lineup h3 { text-align: center; }

.lineup ul {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
}

.lineup ul li {
	flex-basis:calc((100% - 150px) / 6);
  max-width:calc((100% - 150px) / 6);
	padding: 0 0 30px 0;
	font-size: 15px;
	text-align: center;
}


.lineup ul li img {
	padding: 0 0 10px 0;
	border-radius: 50%;
}

.information .wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
	width: 100%;
}

.information .article-inner .wrap div {
	position: relative;
	width: 33.33%;
	padding: 45px 0 160px 0;
	text-align: center;
}

.information .article-inner div h4 {
	padding: 0 0 40px 0;
	color: #FFFFFF;
}

.information .article-inner div p {
	width: 100%;
	padding: 0 30px 20px;
}

.information .article-inner div p.vj {
	position: absolute;
	bottom: 15px;
	font-size: 15px;

}

.nagoya { background-color: #E60014; }
.osaka { background-color: #8CC31E; }
.tokyo { background-color: #00A0E6; }

.goods .wrap {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
	width: 100%;
}

.goods img, .goods a {
	width: 33.33%;
	height: auto;
}

.goods a {
	position: relative;
	display: block;
	width: 33.33%;
	color: #FFFFFF;
	text-align: center;
	background-color: #6400E6;
}

.goods a span {
	position: absolute;
	display: block;
	top: 50%;
	left: 50%;
	margin-right: -50%;
	transform: translate(-50%, -50%);
}

.goods a:hover { background-color: #000000; }

/* MEDIA QUERIES */

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

	.show-pc { display: none; }
	.show-sp { display: block; }

	body {
		font-size: 15px;
		line-height: 1.5;
		background-size: 200%;
	}

	section { background: none; }

	h3 {
		padding: 0 15px 15px;
		font-size: 21px;
	}

	/* HEADER, NAV, FOOTER */

	.header-inner,
	.footer-inner {
		max-width: 100%;
	}

	.header-inner { padding: 15px 15px 60px; }

	header h1 { padding: 15px 0 0 0; }

	header h1 img {
		height: 33px;
	}

	header h2 { padding: 60px 0 30px 0; }

	header h2 img {
		width: 85%;
		height: auto;
	}

	header p {
		font-size: 10px;
		text-align: left;
	}

	footer {
		padding: 30px 15px;
		font-size: 10px;
		text-align: center;
	}

	.share ul {
		padding: 0 0 30px 0;
		text-align: center;
	}

	.share ul li {
		display: inline-block;
		padding: 0 0 0 20px;
	}

	.share ul li a img {
		width: 60px;
		height: 60px;
		transition: transform 0.3s cubic-bezier(.1,1,.5,1);
	}

	.share ul li a img:hover {
		transform: scale(0.9);
	}

	/* MAIN */

	.article-inner {
		position: relative;
		max-width: 100%;
		margin: 0 auto;
	}

	article { padding: 0 0 60px 0; }
	.article-inner { max-width: 100%; }

	.anthem .fl { padding: 20px 0 0 15px; }
	.anthem .fr { padding: 15px 0 30px 0; }

	.anthem ul li {
		float: none;
		padding: 0 15px 0 5px;
		font-size: 27px;
	}

	.anthem p {
		padding: 0 15px;
		font-size: 12px;
		text-align: justify;
	}

	.anthem .profile {
		padding: 54px 15px 5px;
		line-height: 2;
		text-align: left;
	}

	.anthem .profile img.thumb {
		float: left;
		margin: -24px 15px 0 0;
		width: 120px;
	}

	.anthem .profile a {
		padding: 0 15px 0 0;
	}

	.anthem .profile a.tw img {
		vertical-align: middle;
		width: 27px;
		margin: 0 10px 0 0;
	}

	.anthem .profile a.yt img {
		vertical-align: middle;
		width: 24px;
		margin: 0 10px 0 0;
	}

	.attention .article-inner {
		width: 100%;
		padding: 60px 15px 0;
		border-top: 10px solid #000000;
		border-left: none;
		border-right: none;
	}

	.attention h3 {	font-size: 24px; }

	.lineup {
		padding-bottom: 20px;
		background: url(../images/bg_B.svg) no-repeat center bottom -120px;
		background-size: 200%;
	}

	.lineup ul {
		padding: 10px 15px 0;
	  display: flex;
	  flex-direction: row;
	  flex-wrap: wrap;
	  justify-content: space-between;
	}

	.lineup ul li {
		flex-basis:calc((100% - 15px) / 2);
	  max-width:calc((100% - 15px) / 2);
		font-size: 12px;
	}

	.information {
		padding: 60px 0 45px; background-color: #000000; }

	.information h3 {
		color: #FFFFFF;
		text-align: center;
	}

	.information .wrap {
	  display: block;
	  flex-direction: column;
	  justify-content: center;
		width: 100%;
	}

	.information .article-inner .wrap div {
		position: relative;
		width: 100%;
		padding: 30px 15px 0;
		text-align: center;
	}

	.information .article-inner div h4 {
		padding: 0 0 20px 0;
		font-size: 18px;
	}

	.information .article-inner div p {
		width: 100%;
		padding: 0 30px 20px;
		color: #FFFFFF;
	}

	.information .article-inner div p.vj {
		position: relative;
		bottom: auto;
	}

	.nagoya h4 { color: #E60014 !important; }
	.osaka h4 { color: #8CC31E !important; }
	.tokyo h4 { color: #00A0E6 !important; }

	.nagoya, .osaka, .tokyo { background-color: transparent; }

	.goods {
		padding-top: 60px;
		background: url(../images/bg.svg) no-repeat center top -120px;
		background-size: 200%;
	}

	.goods .wrap {
	  display: flex;
	  flex-direction: column;
	  justify-content: center;
		width: 100%;
		padding: 0 15px;
	}

	.goods h3 { text-align: center; }

	.goods img, .goods a {
		width: 100%;
		height: auto;
		margin: 0 0 15px 0;
		border-radius: 10px;
	}

	.goods a {
		order: 3;
		position: relative;
		display: block;
		width: 100%;
		height: 120px;
		color: #FFFFFF;
		text-align: center;
		background-color: #6400E6;
	}

	.goods a span {
		position: absolute;
		display: block;
		top: 50%;
		left: 50%;
		margin-right: -50%;
		transform: translate(-50%, -50%);
	}

	.goods a:hover { background-color: #000000; }

	.goods p { padding: 0 0 15px; text-align: center; }

}

#container { opacity: 0; }
