@charset "utf-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);

/*block*/
h1, h2, h3, h4, h5, h6, ul ,ol , p , fieldset, hr {display:block; margin: 0; padding: 0; border: 0; outline: 0;}

video::-internal-media-controls-download-button { display:none;}
video::-webkit-media-controls-enclosure { overflow:hidden;}
video::-webkit-media-controls-panel { width: calc(100% + 30px);}

img {
font:0%/1 sans-serif !important;
-ms-interpolation-mode: bicubic;
user-select:none;
-moz-user-select: none;
-ms-user-select: none;
-webkit-user-select: none;
-webkit-user-drag:none;
-khtml-user-select:none;
-khtml-user-drag:none;
}

/* --------- 汎用クラス設定 --------- */

/*hx && font-size*/
.size-10 {font-size:300%;}
.size-9 {font-size:300%;}
.size-8 {font-size:250%;}
.size-7 {font-size:210%;}
h1, .size-6 {font-size:200%;}
h2, .size-5 {font-size:160%;}
h3, .size-4 {font-size:120%;}
h4, .size-3 {font-size:93%;}
h5, .size-2 {font-size:85%;}
h6, .size-1 {font-size:77%;}

h2 img ,h3 img { width:100%;}

/*any*/
dfn, em, address {font-style:normal;}
ins {text-decoration:none;}
ul, ol {list-style:none;}
:focus {outline:0;}

textarea,pre {
overflow: visible;
white-space: pre-wrap;
word-wrap: break-word;
}

/*link*/
a{ color:#00A2FF;
	-moz-transition: color 0.15s linear , background 0.3s linear;
	-webkit-transition: color 0.15s linear , background 0.3s linear;
	transition: color 0.15s linear , background 0.3s linear;
}
a:visited{color:#9900FF;}
a:hover{color:#E80;}

/*table*/
table.A-type { width:100%; border-collapse:collapse; border:5px #876 solid; margin-bottom:1.5em;}
table.A-type th{ border:1px #654 solid; padding:0.3em; white-space: nowrap;}
table.A-type td{ border:1px #654 solid; padding:0.3em;}

.imgreplace {position: relative;}
.imgreplace span{ position:absolute; width:0; height:0; overflow:hidden;}
.imgreplace img { visibility:hidden; width:100%;}
.clear {display:block; clear:both; content:" "; font:0/0 sans-serif; height:0;}
.clearfix:after,.adjuster:after,#gnavi ul:after
 {font:0/0 sans-serif; content:"&nbsp;"; display: block; clear: both; height: 0; visibility: hidden;}
.clearfix,.adjuster,#gnavi ul
 { min-height: 0px; }
* html .clearfix { height: 0px; /*¥*//*/ height: auto; overflow: hidden; /**/}
.alignleft { float: left; margin: 0 1em 0.2em 0; }
.alignright { float: right; margin: 0 0 0.2em 1em; }
.aligncenter { clear: both; display: block; margin-left: auto; margin-right: auto; }
.flexwrap{display: flex; flex-wrap: wrap; justify-content: space-between;}

.opacity:hover {opacity:0.8;}
.center {text-align:center;}
.bold {font-weight:bold;}
.right {text-align:right;}
.imgbox {margin-top:1.8em;}
.nowrap {white-space: nowrap; word-break:normal;}
.red {color:#D00;}
.del {color: #f00;text-decoration : line-through;}
.del span {color: #000;}
.domain::before { content: '@';}

/* プラグイン用設定（Mediabox） */
#lbOverlay {z-index:1; position: fixed; top:0; left: 0; width:100%; height:100%; background: rgba(0, 0, 0, 0.85); opacity:0;}
#lbCenter {z-index:1; position:absolute; overflow:hidden;}
#lbImage {background:rgba(255, 255, 255, 1.0); color:#333; padding:0.75em; clear:right; border-radius:0.5em;}
#lbImage img { font:0/0 sans-serif; vertical-align:top; display:block; margin:auto;}
#lbCaption {color:#333; margin-bottom:0.25em; font:100%/1.1 sans-serif; text-align:left;}
#lbBottom {display:block; width:24px; height:24px; float:right; margin-top:-30px; margin-right:6px; position:relative; background:url(../img/common/btn_close.png) no-repeat 50% 50%; background-size:cover;}
#lbCloseLink {display:block; width:24px; height:24px;}
#lbCloseLink:hover {cursor: pointer;}
.mb:hover {cursor: url(../img/common/btn_enlarge.png), zoom-in;}
#gnavi_btn {cursor: auto;}
.inline-content {display:none;}
.inline-content-show {display:block !important;}

/*gmap*/
#gmap { height:240px; border:1px #999 solid;}
.imageDefault { width: 60px !important; margin-top:-40px; }
.imageDefault p { margin:0 !important; }

/* --------- GLOBAL デザイン＆レイアウト --------- */

/*html+body*/
html,body {width:100%; height:100%; margin:0; padding:0; word-wrap: break-all;}
body , textarea, input {font-family:"Noto Sans CJK JP","Noto Sans JP", sans-serif; font-display: swap;}
*:first-child+html body {font-size:small; line-height:1.4; letter-spacing:1px; /* IE7 */}
*html body {font-size:83%; line-height:1.4; letter-spacing:1px; /* IE6 */}


/* ==============デバイス共通レイアウト設定[END]============== */
body {
width: 100%;
height:100%;
-moz-user-select: none;
-khtml-user-select: none;
user-select: none;
position: relative;
background: #FFF;
}

#background {
  z-index: 0;
  position: fixed;
  inset:0;
  width: 100%;
  height:100%;
  background: #FFF url(../img/common/background.jpg) 25% 0 no-repeat;
  background-size:cover;
  overflow:hidden;
}

#container {
position:absolute;
	top:0;
	left:0;
	width:100%;
	height:100%;
	z-index:1;
}

#body {
 position: relative;
 	z-index:10;
opacity:1;
}

.adjuster{ max-width:1280px; margin:auto; position: relative;
 	z-index:100;}


#contents { opacity:1; max-width:1280px; margin:auto;
color: #222;
background:rgba(255,255,255, 1);
background-size:cover;
}
/* mainvisual */
#mainvisual {background-size:contain !important;
opacity:1;
overflow: hidden;
text-indent: 100%;
white-space: nowrap;
background: url(../img/common/mainvisual-2025-2400x1350.jpg) 50% 0 no-repeat;
height:56.25vw;
max-height:720px;
}
#mainvisual img { width:100%; visibility:hidden;float:left;}

h1 {
text-indent:-9999px;
position: absolute;
z-index: 0;
font-size: 77%;
line-height:1.6;
color: #DDEBFF;
}

#gnavi {

}
#gnavi ul {
background: #013;
background: linear-gradient(180deg, rgba(188, 66, 245,1) 0%, rgba(41, 176, 255,1) 100%);
display: flex;
align-items: center;
justify-content: center;
flex-wrap: wrap;
padding:5px;
}
#gnavi li {
width:16.666667%;
}

#gnavi li a {
	font-size: 125%;
	font-family: 'Arial', sans-serif;
	font-weight:BOLD;
	line-height:1;
	text-align:center;
	text-decoration: none;
	color:#FFF;
	padding:25px 0;
	display:block;
	background:rgba(188, 66, 245,.9);
	margin: 5px;
	border: 1px solid #ddd;
}
#gnavi li a:hover {
	background:rgba(41, 176, 255,1);
}

#gnavi li.current a {
	color:rgb(188, 66, 245);
	background:rgba(255, 230, 0,1);
}

@media only screen and (max-width: 960px) {
#gnavi li {
width:33.333334%;
}
#gnavi li a {
	font-size: 110%;
	padding:20px 0;
}
#gnavi li .button:before{
	padding:20px 0;
}
}

@media only screen and (max-width: 640px) {
#gnavi li {
width:33.333334%;
}
#gnavi li a {
	font-size: 90%;
	text-shadow: 0 0 1px #fff;
	padding:10px 0;
	margin: 3px;
}
#gnavi li .button:before{
	padding:10px 0;
}


#lbImage { padding:0.75em; clear:right; }
#lbImage img { font:0/0 sans-serif; vertical-align:top; display:block; margin:auto;
width:100% !important;
}

}

.button {
	position: relative;
	top:0;
	left: 0;
	overflow: hidden;
}

.button span {
	-webkit-transition: 0.3s;
	-moz-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	-webkit-transition-delay: 0.1s;
	-moz-transition-delay: 0.1s;
	-o-transition-delay: 0.1s;
	transition-delay: 0.1s;
}

.button:before{
	content: '';
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	opacity: 0;
	-webkit-transition: .4s,opacity .6s;
	-moz-transition: .4s,opacity .6s;
	-o-transition: .4s,opacity .6s;
	transition: .4s,opacity .6s;
	line-height:1;
	padding:25px 0;
}
.button:after{
	background:rgba(255,255,255,.5);
	-webkit-transform:transform: translateX(75px) translateY(75px) rotateZ(45deg);
	-moz-transform:transform: translateX(75px) translateY(75px) rotateZ(45deg);
	-ms-transform:transform: translateX(75px) translateY(75px) rotateZ(45deg);
	-o-transform:transform: translateX(75px) translateY(75px) rotateZ(45deg);
	transform: translateX(75px) translateY(75px) rotateZ(45deg);
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	width: 100px;
	height: 100px;
	-webkit-transition: .4s,opacity .6s;
	-moz-transition: .4s,opacity .6s;
	-o-transition: .4s,opacity .6s;
	transition: .4s,opacity .6s;
}

.button:before {
	content: attr(data-hover);
	-webkit-transform: translate(0,-150%);
	-moz-transform: translate(0,-150%);
	-ms-transform: translate(0,-150%);
	-o-transform: translate(0,-150%);
	transform: translate(0,-150%);
}
.button:hover span{
	opacity: 0;
	-webkit-transform: scale(0.3);
	-moz-transform: scale(0.3);
	-ms-transform: scale(0.3);
	-o-transform: scale(0.3);
	transform: scale(0.3);
}
.button:hover:before{
	opacity: 1;
	-webkit-transform: translate(0,0);
	-moz-transform: translate(0,0);
	-ms-transform: translate(0,0);
	-o-transform: translate(0,0);
	transform: translate(0,0);
	-webkit-transition-delay: .1s;
	-moz-transition-delay: .1s;
	-o-transition-delay: .1s;
	transition-delay: .1s;
}
.button:hover:after{
	background:rgba(255,255,255,.5);
	-webkit-transform:transform: translateX(60px) translateY(60px) rotateZ(45deg);
	-moz-transform:transform: translateX(60px) translateY(60px) rotateZ(45deg);
	-ms-transform:transform: translateX(60px) translateY(60px) rotateZ(45deg);
	-o-transform:transform: translateX(60px) translateY(60px) rotateZ(45deg);
	transform: translateX(60px) translateY(60px) rotateZ(45deg);
	-webkit-transition-delay: .1s;
	-moz-transition-delay: .1s;
	-o-transition-delay: .1s;
	transition-delay: .1s;
}


#news{
	background: url(../img/home/news_bg.gif) repeat 0 0;
	padding:0.8em 0.8em 0.65em;
	margin-bottom:1px;
	font-size:93%;
}
#news div{
	font:50%/1sans-serif;
	margin-bottom:8px;
}
#news ul li{
	font:85%/1.2 sans-serif;
	background: #fff;
	border-radius:5px;
	margin:0.5em 0;
	padding:0.75em 0.5em;
}
#news ul li span:first-child{
	display:inline-block;
	border-right:1px green solid;
	padding-right:0.5em;
}
#news ul li span:last-child{
	display:inline-block;
	margin-left:0.5em;
	border-right:none;
}
#wrapper { max-width:1280px; width: 96%; margin: 0 auto; padding:1.7em 0 0; }
#mainLeft { width:67%; float:left; }
#sidebar { width:30.5%; float:right; margin-bottom:1em;}
#sidebar img { width:100%; height:auto;}
#sidebar p:nth-of-type(2){margin-top:10px;}

/*PRV*/
#prv1 img,#prv1 video {width:100%; }
#prv2 img,#prv2 video {width:100%; }
#cmv2 img,#cmv2 video {width:100%; }
#prv img,#prv video {width:100%; }
#cmv img,#cmv video {width:100%; }
.mb img{width:100%; }
.video {margin-bottom:1em;}

/*commingup*/
#comming_up {height:auto; min-height:100px; margin-top:10px;}

#comming_up h3 {font-size:125%; line-height:1; color:#FFF; margin-top:0; text-align:left; padding:10px 20px; width:auto;
letter-spacing:2px;
  background: #0AD;
  background:
    linear-gradient(135deg, transparent 0px, rgb(188, 66, 245) 0) top left,
    linear-gradient(225deg, transparent 50%, rgb(188, 66, 245) 0) top right,
    linear-gradient(315deg, transparent 0px, rgb(188, 66, 245) 0) bottom right,
    linear-gradient(45deg,  transparent 0px, rgb(188, 66, 245) 0) bottom left;
  background-size: 51% 51%;
  background-repeat: no-repeat;
}
#comming_up h3 span{display:inline-block; transform: skewX(-0.05turn); margin-right:15px; }
#comming_up h3 span:nth-of-type(1){
         text-align: center;
         font-weight: bold;
         position: relative;
         z-index: 1;
         }
#comming_up h3 span:nth-of-type(1)::before {
         content: '開催情報＆チケット';
         position: absolute;
         top: 0;
         left: 0;
         text-align: center;
         font-weight: bold;
         text-stroke: #111 4px;
         -webkit-text-stroke: #111 4px;
         z-index: -1;
       }

#comming_up div:nth-child(1) {background-color: rgba(255,0,0,1); font:0/1 sans-serif;}
#comming_up p { font:150%/1.4 sans-serif; color:#fff; text-align:center;
-moz-animation: anime1 1s ease 1s infinite alternate;
-webkit-animation: anime1 1s ease 1s infinite alternate;
-o-animation: anime1 1s ease 1s infinite alternate;
-ms-animation: anime1 1s ease 1s infinite alternate;
}
@-moz-keyframes anime1 {
0% { background-color: rgba(255,0,0,0.0);}
100% { background-color: rgba(255,0,0,0.9);}
}
@-webkit-keyframes anime1 {
0% { background-color: rgba(255,0,0,0.0);}
100% { background-color: rgba(255,0,0,0.9);}
}
@-o-keyframes anime1 {
0% { background-color: rgba(255,0,0,0.0);}
100% { background-color: rgba(255,0,0,0.9);}
}
@-ms-keyframes anime1 {
0% { background-color: rgba(255,0,0,0.0);}
100% { background-color: rgba(255,0,0,0.9);}
}
#comming_up table { width:100%; margin:0 auto; border-spacing:0;border-collapse:collapse; border:none;background:#999;}
#comming_up th { background:rgba(41, 176, 255,1); color:#FFF; padding:5px 0; border-top:1px #ddd solid; font-size:85%; line-height:1.1;border-left:1px #ddd solid; }
#comming_up td { background:#FF5100; color:#FFF; padding:2px 5px; border-top:1px #ddd solid; border-bottom:1px #ddd solid; text-align:center;border-left:1px #ddd solid;}
#comming_up th:nth-of-type(1),#comming_up td:nth-of-type(1){border-left:none;}
#comming_up td.onsale { background:#0C9;}
#comming_up td.showclose { background:#333;}
#comming_up td.soldout { background:#C0518C;}
#comming_up td.cancelled { background:red;}
#comming_up td.delay { background:#ccc;}
#comming_up td.newday { background:#FB0;}
#comming_up td:nth-child(1) { background:#FFF; color:#555; width:35%; font-size:95%;}
#comming_up td:nth-child(2) { background:#FFF;}
#comming_up td:nth-child(3) { width:30%; font-size:95%;}
#comingup-announce {padding:0.5em .75em; background:#f3f3f3; color:#111; }
#comingup-announce h4 {font-size:85%;line-height:1.7;font-weight:600;background:rgb(188, 66, 245);color:#FFF; margin-top:0;margin-bottom:6px;text-align: center;border-width:0 10px; border-color:rgb(41, 176, 255); border-style:solid;box-sizing:border-box;}
#comingup-announce p {font-size:80%;line-height:1.4;color:#555; text-align:left; animation: none;transform: none;}

#archive p {margin-bottom:1.5em;}

#contentFooter {
padding-bottom:.5em;
}


/* =====Footer===== */
footer {
opacity:1;
background:#000;
}
#footer {
position:relative;opacity:1;z-index:1;}
footer img {width:100%;vertical-align:middle;}
#footer:before { font: normal 0/0 sans-serif; display:block; content:" "; width:100%;clear:both;}
#linksWrapper{
max-width:1280px; margin:auto;
background-size:100%;
padding:10px 0;
}
#links_inner{	width:96%;	margin: 0 auto;	overflow:hidden;}
#External-links { display: flex;justify-content: center;flex-wrap: wrap;align-content: space-between;}
#External-links li {width:15%; margin:.75%;}

@media only screen and (max-width: 960px) {
#External-links li {width:19%; margin:.5%;}
}




/* バナーが4枠の時
#links li {float: left; width:13.5%; margin:0 0.5%;}
*/
#External-links li a { display:block; background:none; }

#copytermWrapper {
background:rgb(188, 66, 245);
padding:2em 2em 4em;
font:80%/2 sans-serif;
}
#copyterm ul { width:70%; float:right;}
#copyterm li {display:inline-block; width:31%; margin-left:1%; border:1px #fff solid; }
#copyterm li a { color:#fff; background:transparent;display:block; text-align:center; text-decoration:none; font-weight:800; padding:2px 0;}
#copyterm li a:hover { background:#000; }
#copyterm p { width:25%; float:left; font:100%/1.1 sans-serif; color:#FFF; padding-left:5%; padding-top:5px;}
#copyterm p span { font-size:115%; vertical-align:-1px;}

/* スマホ・タブレット(750) */
@media only screen and (max-width: 750px) {
#External-links li {width:30.5%;}
#copyterm p { width:100%; float:none; font:85%/3 sans-serif; text-align:center;padding-left:0;}
}

/* ==============個別ページ設定[START]============== */

/*pageheader*/
#description {font:125%/1.6 sans-serif; margin:0.5em 0 2em;}

/*news*/
#newstopics {height:auto; margin-bottom:0.5em;}
#newstopics h4 {font-size:125%; line-height:1.2; background:rgb(188, 66, 245); color:#FFF; margin-top:0; text-align:left; padding:10px 20px; width:auto;
  background: rgb(188, 66, 245);
  background:
    linear-gradient(135deg, transparent 0px, rgb(188, 66, 245) 0) top left,
    linear-gradient(225deg, transparent 80%, rgb(188, 66, 245) 0) top right,
    linear-gradient(225deg, transparent 18px, rgb(188, 66, 245) 0) bottom right,
    linear-gradient(45deg,  transparent 0px, rgb(188, 66, 245) 0) bottom left;
  background-size: 51% 51%;
  background-repeat: no-repeat;
}
#newstopics h4 span{display:inline-block; font-size:26px; transform: skewX(-0.05turn); margin-right:15px; }
#newstopics h4 span:nth-of-type(1){
         text-align: center;
         font-weight: bold;
         position: relative;
         text-stroke: white 1px;
         -webkit-text-stroke: white 1px;
         z-index: 1;
         }
#newstopics h4 span:nth-of-type(1)::before {
         content: 'NEWS TOPICS';
         position: absolute;
         top: 0;
         left: 0;
         text-align: center;
         font-weight: bold;
         text-stroke: #111 5px;
         -webkit-text-stroke: #111 5px;
         z-index: -1;
       }
#newstopics h4 span:nth-of-type(2){  background: rgb(41, 176, 255);font-size:13px; margin-right:0; border: 1px #FFF solid; border-width:1px 0; padding:3px; vertical-align:.3em;padding:2px 10px;}
#newstopics ul { background:#fff; margin:0; color:#211;border:1px #ccc solid;}
#newstopics li:after {font:0/0 sans-serif; content:"&nbsp;"; display: block; clear: both; height: 0; visibility: hidden;}
#newstopics li { min-height: 0px; border-bottom:1px #ccc solid; padding:0.5em; margin:0;}
#newstopics li:last-child { border:none; }
#newstopics .day {display:block; float:left; min-width:22%; margin-right: 1%; color:#211;}
#newstopics .topic {display:block; float:right; width:73.5%; border-left:1px solid #554; padding-left: 2.5%; font:90%/1.3 sans-serif;}
#newstopics .topic a { font:120%/1.6 sans-serif;}
#newstopics .loading{margin-top:50px;}

/* rider */
#rider h2 {text-align:center; margin-bottom: .25em;}
#rider img {width:100%;}
.rider-data {display:inline-block; vertical-align:top; margin:1% 1%; background:#ddd; color:#fff; padding:5px;}
.rider-data:after  {font:0/0 sans-serif; content:"&nbsp;"; display: block; clear: both; height: 0; visibility: hidden;}
.rider-data + .last { min-height:0; }
.rider-data h3 {font-size: 150%;line-height:1.3; background:rgb(188, 66, 245); text-align:center; padding:0.5em 0 0.3em;}
.rider-data h3 span { font: 800 75%/1.1 "Arial",sans-serif; border:1px #fff solid; border-width:1px 0; display:block;
 background:#000; padding:.15em 0; vertical-align:bottom; }
.rider-data h4 {text-align:left; color:#FFF; padding:3px 5px; background:#000;}
.rider-data p:nth-of-type(2) {font-size:100%; padding:0.5em;background:#666;}
.riderimg {text-align:center; }
.rider-data .alignright {margin-left:20px;}
.riders {font-size:85%; border-spacing:1px; width:100%;}
.riders th { background: rgb(188, 66, 245); color:#FFF; padding:0 0.25em; width:20%; width:6em; text-align:center;}
.riders td { background:#FFF; color:#211; text-align:left; padding:0.5em; line-height:1.4;}
.more { text-align:center; margin-top:2em;}
h2 img{max-width:760px;}
h2 {width:100%; text-align:center;}
#rider {display: flex;flex-wrap: wrap;justify-content: space-between;}
.rider-data{width: 30%;display: flex;flex-direction: column;}
.rider-data p.text {height: 100%;}
.rider-data table {margin-top: auto; border:none; border-collapse: collapse;}
.rider-data th,.rider-data td {border:1px #ddd solid; border-width:1px 0;}
#rider .more{width: 100%;}

@media screen and (min-width: 491px) and (max-width: 959px) {
.rider-data{width: 46%;}
.rider-data p:nth-of-type(2) {font-size: 90%;}
}

@media screen and (max-width: 490px) {
.rider-data{width: 100%;}
.rider-data p:nth-of-type(2) {font-size: 90%;}
}

/* goods */
#goods h2 {text-align:center; margin-bottom:1em;}
#goods {margin:0.5em auto;}
#goods #announce {font: 175%/1.2 sans-serif; background:#e20; padding:0.2em;  border:3px solid #fff; text-align:center;}
#goods ul{
display: flex;
align-items: stretch;
justify-content: stretch;
flex-wrap: wrap;
}
#goodsList li{width:30.5%; margin:.75%;
 background:#dbdadb; padding:0.5%;
}
#goodsList li img {width:100%; height:auto;}
#goodsList h3{
font: 800 110%/1.2 sans-serif;
padding:0.5em 0.25em;
color:#fff;
background: rgb(188, 66, 245);
}
#goodsList p{ background:#000; color:#FFF; text-align:right;}
#goodsList a {display:block;}
#goodsList img {display:block;}
p.goods-price{font:125%/1.2 normal sans-serif; padding:0.3em 0;}
#goodsList span{font:70%/1.1 normal sans-serif;  padding-right:0.5em;}
li#goods-notice{width:auto; clear:left; padding:0;}
li#goods-notice,#goods-notice li {background:transparent; border:none; }
#goods-notice li {float:none; width:auto; margin:0; padding:0;}



/* story */
.storySec-01 img {width:100%;}
.storySec-01 {font-size:125%; padding:0 0 2em;}
.storySec-01 h2 {font-size:125%; line-height:1.2; color:#FFF; margin-top:0; text-align:left; padding:10px 20px; width:auto;
  background: rgb(188, 66, 245);
  background:
    linear-gradient(135deg, transparent 0px, rgb(188, 66, 245) 0) top left,
    linear-gradient(225deg, transparent 80%, rgb(188, 66, 245) 0) top right,
    linear-gradient(225deg, transparent 18px, rgb(188, 66, 245) 0) bottom right,
    linear-gradient(45deg,  transparent 0px, rgb(188, 66, 245) 0) bottom left;
  background-size: 51% 51%;
  background-repeat: no-repeat;
}
.storySec-01 h2 span{display:block; font-size:26px; transform: skewX(-0.05turn); margin-right:15px;}
.storySec-01 h2 span:nth-of-type(1){
         font-weight: bold;
         position: relative;
         text-stroke: white 1px;
         -webkit-text-stroke: white 1px;
         z-index: 1;
         }
.storySec-01 h2 span:nth-of-type(1)::before {
         content: '\3042\3089\3059\3058';
         position: absolute;
         top: 0;
         left: 0;
         font-weight: bold;
         text-stroke: #045 5px;;
         -webkit-text-stroke: #045 5px;;
         z-index: -1;
       }
.storySec-01 h2 span:nth-of-type(1)::after {
         content: '';
         position: absolute;
         bottom: 0;
         left: 0;
         z-index: -2;
         background:rgba(255,200,200,.3);
         width:100%;
         height:20%;
          transform: skewX(+0.15turn);
       }


.storySec-01 p {margin-top:1em;}
.storySec-02 p {font-size:150%;margin-top:0.4em;}
.storySec-02 h3 {margin-top:1.5em;}
.story:after  {font:0/0 sans-serif; content:"&nbsp;"; display: block; clear: both; height: 0; visibility: hidden;}
.catch {border:none !important; padding:0 !important;}
#story-p4 {width:25%;}

/*links*/
#aboutlinks h2 img {max-width:100%;}
#aboutlinks .announce {margin:0 auto 1.5em; font-size:120%; padding:1em 0 1em;}
.linksection:nth-of-type(1){margin-top:0em;}
#links { position:relative; background-size:100%; }
#links:before { content:sans-serif; position:relative; display: block; background: url(../img/common/tech-border.svg) no-repeat center top;
 background-size:100%; width:100%; padding-top: 8.4%;}
 #links:after { content:sans-serif; position:relative; display: block; background: url(../img/common/tech-border.svg) no-repeat center top;
 background-size:100%; width:100%; padding-bottom: 8.4%;transform: scaleY(-1);}
 #links > div{
 padding:0 15px 35px;
  border-width:0  2px ;
 border-color:#1EA1DB;
 border-style:solid;}
 #links > div:last-child{
 padding:0 15px 0;}
#links img {max-width: 100%;height: auto;}
#links table {
    background: #2B0054;
    margin: 0 auto;
    border-spacing: 1px;
    line-height: 1.3;
    width: 100%;
    max-width: 100%;
    white-space: normal;
    word-break: break-all;
}
#links th { color:#fff; background:rgb(41, 176, 255); padding:3px; width:16%; font-size:85%;}
#links td { background:#fff; color:#000; padding:8px 8px 8px 10px; }

/*policy*/
#policy {margin:0 auto; padding:0 0 1.5em;}
#policy h2 { margin-bottom:1.5em;}
#policy h2 img {max-width:100%;}
#policy p{margin-bottom: 3em; line-height:1.6;}
#policy p:nth-last-child(1){margin-bottom: 0;}

/*inquiry*/
#inquiry {margin:0 auto; padding:0 0 1.5em;}
#inquiry h2 { margin-bottom:1.5em;}
#inquiry h2 img {max-width:100%;}
#inquiry p{margin-bottom: 3em; line-height:1.6;}
#inquiry p:nth-last-child(1){margin-bottom: 0;}

/* links・inquiry・policy 共通 */
#policy h3,#inquiry h3,#links h3{ 
font-weight: 700;
font-size:110%;
line-height:1.3;
color:rgb(188, 66, 245); 
clear: both;
border-bottom: 1px #000 solid;
border-left: 8px rgb(188, 66, 245) solid;
padding-left: 8px;
padding-bottom: 4px;
margin-bottom:0.5em;
}

/*archive*/
#archive {margin-top:15px;}
#archive p {border:1px #ccc solid;}
#archive p {margin-bottom:0.5em;}
#archive p:last-child {margin-bottom:0;}
#archive p a{display:block; font-size:90%; line-height:1.4; color:#fff; text-decoration:none; padding:0.5em; background-color: rgb(188, 66, 245); text-align:center;}
#archive p a:hover{ font-weight:bold; color:rgb(41, 176, 255); background-color: rgba(255,255,255,1); }


/* タブレット＆PC(481-960) */
@media only screen and (min-width: 751px) and (max-width: 960px) {
#wrapper { padding:1em 0 0; }
#story-p4 {width:35%;}
.rider-data {width:45%;}
}

@media only screen and (max-width: 1280px) {
body {
background: none;
background-color:#000;
}
}

@media only screen and (max-width: 750px) {
#wrapper { padding:1em 0 0; }
#mainvisual {
background: url(../img/common/mainvisual-2025-640x640.jpg) 50% 0 no-repeat;
background-size:contain !important;
width:100vw;
height:100vw;
}
#gnavi li a { background-position:50% 50%;background-repeat: no-repeat;background-size:contain;}
#gnavi li a:hover { background-position:92.5% 50%; }
#newstopics .day {display:inline; float:none; min-width:auto; margin-right: 0; font-size:80%;}
#newstopics .topic {display:block; float:none; width:100%; border-left:none; padding-left: 0%;}
#newstopics .topic a { font:100%/1.6 sans-serif;}
#mainLeft { width:96%; float:none; margin:auto;}
#sidebar { width:96%; float:none; padding-left:0; margin:auto; margin-top:10px;}
#contentFooter {
padding-bottom:0em;
}
#contentFooter h4 {
width:94%;
margin: 0px auto;
}
.rider-data+.last{margin-bottom:0;}
#goodsList {margin:auto;width:96%;}
#goodsList li{width:47%; margin:1%;}
#goodsList li#goods-notice {width:96%; padding:4%; margin:1em auto;}
#goodsList li#goods-notice li {margin:0; padding:0;}
li#goods-notice {width:auto;}
#story-p4 {width:40%;}
.video {margin-bottom:1em;}
#copyterm ul { width:94%; float:none; margin:auto;}
#copyterm p { width:94%; float:none; margin:auto; text-align:center; padding:1em 0 0 0; }
#archive {display:flex;flex-wrap: wrap;justify-content: space-between;}
#archive p{width:48.5%;border:1px #ccc solid;}
#archive p:first-child {margin-top: 10px;}
#archive p:last-child {margin-bottom:auto;}
}

/* モバイル(-640) */
@media only screen and (max-width: 640px) {
#attention {
padding: 1em !important;
font-size:80%;
}
#attention h3 {
font-size:100% !important;
text-align:center;
width:auto;
}
.storySec-01 {font-size:80%;}
#description {
font: 85%/1.6 sans-serif;
margin: 0.5em 0 2em;
}
#goodsList li{width:100%; margin:1em 0;}
#copyterm ul{width:96%;}
#copyterm li {display:block; width:100%; margin-left:0; margin-bottom:.25em; }
#links{margin:0 0;}
.rider-data {width:96%; margin-bottom:1em;}
hr.bg-links_before { height:20px; }
hr.bg-links_after { height:20px; }
#aboutlinks {font-size: 80%;}
#links {padding: .3em;}
#links th {padding: 2px;width: 25%;font-size: 75%;}
}

.comingsoon{ font: bold 300%/1.2 sans-serif; text-align:center;}
#announce{text-align:right; font:85%/1.6 sans-serif; padding:0 1em 1em 0; color:#347;}

/*点滅*/
.blink, .today {
-moz-animation: blink 0.6s ease 0.6s infinite alternate;
-webkit-animation: blink 1s ease 0.6s infinite alternate;
-o-animation: blink 0.6s ease 0.6s infinite alternate;
-ms-animation: blink 0.6s ease 0.6s infinite alternate;
}
@-moz-keyframes blink {
0% { background-color: rgba(255,102,0,0.0);}
100% { background-color: rgba(255,102,0,0.9);}
}
@-webkit-keyframes blink {
0% { background-color: rgba(255,102,0,0.0);}
100% { background-color: rgba(255,102,0,0.9);}
}
@-o-keyframes blink {
0% { background-color: rgba(255,102,0,0.0);}
100% { background-color: rgba(255,102,0,0.9);}
}
@-ms-keyframes blink {
0% { background-color: rgba(255,102,0,0.0);}
100% { background-color: rgba(255,102,0,0.9);}
}

/* LOADING(CSS3) */
#preloader{
position: relative;
top: 45%;
left: 50%;
margin-top:-40px;
margin-left:-40px;
width: 80px;
height: 80px;
}

/*------------------------------------------------------------------------------
 Loader  /
---------------------------------------------------------------------------------*/

#preloader {
  color: white;
  position: absolute;
  text-align: center;
  top: 50%;
  left: 50%;
  width:410px;
  margin-left:-205px;
}

#preloader span {
display:block;
  overflow: hidden;
  border-right: .3em solid orange; 
  white-space: nowrap; 
  margin: 0 auto; 
  letter-spacing: .35em;
  animation: 
    typing 1s steps(50, end),
    blink-caret .5s step-end infinite;
font-size:14px;
text-shadow: 0 0 5px #0ff,0 0 5px #0ff;
color:#0ff;
}

/* The typing effect */
@keyframes typing {
  from { width: 0 }
  to { width: 100% }
}

/* The typewriter cursor effect */
@keyframes blink-caret {
  from, to { border-color: transparent }
  50% { border-color: #0ff; }
}


@keyframes bggradient{
	0% {
		background-position: 0% 50%;
	}
	50% {
		background-position: 100% 50%;
	}
	100% {
		background-position: 0% 50%;
	}
}

