@charset "UTF-8";
/* --------------------------------------------------------------
NIGHT STRIKER GEAR Website CSS
2025/3/14 ver. 
--------------------------------------------------------------  */
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:wght@300;400;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Russo+One&family=Sofia+Sans+Condensed:wght@800;1000&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Goldman:wght@400;700&family=Noto+Serif+JP:wght@200..900&family=Russo+One&family=Sofia+Sans+Condensed:wght@800;1000&display=swap");
@font-face {
  font-family: "shump_squareregular";
  src: url("../../../assets/font/shumpsquare-regular-webfont.eot");
  src: url("../../../assets/font/shumpsquare-regular-webfont.eot?#iefix") format("embedded-opentype"), url("../../../assets/font/shumpsquare-regular-webfont.woff") format("woff"), url("../../../assets/font/shumpsquare-regular-webfont.ttf") format("truetype"), url("../../../assets/font/shumpsquare-regular-webfont.svg#shump_squareregular") format("svg");
  font-weight: normal;
  font-style: normal;
}
/* = Clear fix
-------------------------------------------------------------- */
.cf:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}

.cf {
  display: inline-table;
  zoom: 1;
}

/* ¥*/
* html .cf {
  height: 1%;
}

.cf {
  display: block;
}

/* */
/* =Basic
-------------------------------------------------------------- */
* {
  box-sizing: border-box;
}

html, body {
  margin: 0;
  padding: 0;
  height: 100%;
}

html {
  color: #98aaa4;
  font-family: "Noto Serif JP", Georgia, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
  font-size: 16px;
  font-weight: 400;
  letter-spacing: 0.085em;
  -webkit-font-smoothing: antialiased;
  text-rendering: geometricPrecision;
}

body {
  -webkit-text-size-adjust: 120%;
  background-color: #000;
  word-break: break-all;
}

.dark {
  animation: bg-color 3s ease 1s forwards normal;
}

@keyframes bg-color {
  0% {
    background-color: rgba(0, 0, 0, 0);
  }
  100% {
    background-color: rgba(0, 0, 0, 0.7);
  }
}
h1, h2, h3, h4, h5, h6, p, ul, ol, li, dl, dd, figure {
  margin: 0;
  padding: 0;
}

h2 {
  width: 100%;
  text-align: center;
  margin: 0;
  padding: 0;
  font-size: 1.8em;
  letter-spacing: 0.25em;
  font-family: "Goldman", serif;
  font-weight: 400;
  font-style: normal;
}
h2 span {
  display: inline-block;
}

img {
  border: none;
}

a {
  outline: none;
  text-decoration: none;
  color: #00ff90;
}
a:hover {
  color: #ff3131;
  transition: 0.5s;
}

a, a:before, a:after, input {
  -webkit-transition-property: background color;
  -webkit-transition-duration: 0.2s;
  -webkit-transition-timing-function: ease;
  -moz-transition-property: background color;
  -moz-transition-duration: 0.2s;
  -moz-transition-timing-function: ease;
  -o-transition-property: background color;
  -o-transition-duration: 0.2s;
  -o-transition-timing-function: ease;
}

a:focus, *:focus {
  outline: none;
}

strong {
  font-weight: 500;
}

video {
  display: block;
  margin: 0;
  padding: 0;
}

.hdn {
  display: none;
}

.nowrap {
  white-space: nowrap;
}

.pc {
  display: block;
}

.sp {
  display: none;
}

.notice {
  font-size: 0.75em;
}

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

/* =Loading
-------------------------------------------------------------- */
#loading {
  display: grid;
  place-items: center;
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #000;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
  opacity: 1;
  visibility: visible;
}
#loading .spinner {
  margin: 100px auto;
  width: 50px;
  height: 40px;
  text-align: center;
  font-size: 10px;
}
#loading .spinner > div {
  background-color: #98aaa4;
  height: 100%;
  width: 6px;
  display: inline-block;
  animation: sk-stretchdelay 1.2s infinite ease-in-out;
}
#loading .spinner .rect2 {
  animation-delay: -1.1s;
}
#loading .spinner .rect3 {
  animation-delay: -1s;
}
#loading .spinner .rect4 {
  animation-delay: -0.9s;
}
#loading .spinner .rect5 {
  animation-delay: -0.8s;
}
@keyframes sk-stretchdelay {
  0%, 40%, 100% {
    transform: scaleY(0.4);
    -webkit-transform: scaleY(0.4);
  }
  20% {
    transform: scaleY(1);
    -webkit-transform: scaleY(1);
  }
}
#loading.loaded {
  opacity: 0;
  visibility: hidden;
}

/* =Top page
-------------------------------------------------------------- */
body.home article.contents {
  position: relative;
  z-index: 3;
}
body.home #mainheader {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding-bottom: 3vw;
  position: relative;
  background: url("../img/bg_mainheader.jpg");
  background-position: top center;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #040f0b;
  top: 0;
  left: 0;
  z-index: 3;
}
body.home #mainheader .inner {
  width: 100%;
  margin: 0 auto;
  text-align: center;
}
body.home #mainheader .inner #brandmark {
  width: 100%;
  max-width: 1920px;
  margin: 0 auto;
  padding: 0;
  position: relative;
  z-index: 2;
}
body.home #mainheader .inner #brandmark .inner {
  width: 100%;
  margin: 0;
  padding: 15px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: nowrap;
}
body.home #mainheader .inner #brandmark .inner #gn-pflogo {
  width: auto;
  text-align: left;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
}
body.home #mainheader .inner #brandmark .inner #gn-pflogo a {
  padding: 0;
}
body.home #mainheader .inner #brandmark .inner #gn-pflogo .ns {
  width: 25%;
  display: block;
  max-width: 90px;
}
body.home #mainheader .inner #brandmark .inner #gn-pflogo .steam {
  width: 60%;
  display: block;
  max-width: 180px;
}
body.home #mainheader .inner #brandmark .inner #gn_ac {
  width: auto;
  text-align: right;
}
body.home #mainheader .inner #brandmark .inner #gn_ac a {
  width: 100%;
  display: block;
}
body.home #mainheader .inner #brandmark .inner #gn_ac a img {
  max-width: 280px;
}
body.home #mainheader .inner #mainheader-info {
  max-width: 1000px;
  width: 56%;
  padding: 0 4%;
  margin: 0 0 0 auto;
  position: relative;
  top: 2vw;
}
body.home #mainheader .inner #mainheader-info h1 {
  width: 100%;
  margin: 0 auto 4vh auto;
  position: relative;
  z-index: 2;
  animation: slidein 0.4s linear 1s 1 normal forwards;
  opacity: 0;
}
body.home #mainheader .inner #mainheader-info h1 img {
  width: 100%;
  height: auto;
}
body.home #mainheader .inner #mainheader-info .genre {
  font-size: 1em;
  line-height: 1.3;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #fff;
  text-shadow: 0 0 0.25em #fff;
  letter-spacing: 0.2em;
  opacity: 0;
  animation: fadein 0.4s linear 1.4s 1 normal forwards;
}
body.home #mainheader .inner #mainheader-info .genre span {
  display: inline-block;
}
body.home #mainheader .inner #mainheader-info .release {
  width: 100%;
  margin: 5% auto;
  padding: 4% 0;
  text-align: center;
  line-height: 1;
  position: relative;
  z-index: 2;
  opacity: 0;
  animation: slidein 0.4s linear 1.8s 1 normal forwards;
}
body.home #mainheader .inner #mainheader-info .release img {
  width: 80%;
  height: auto;
  margin: 0 auto;
}
body.home #mainheader .inner #mainheader-info .storelink {
  opacity: 0;
  animation: fadein 1s linear 2.2s 1 normal forwards;
}
@keyframes slidein {
  0% {
    opacity: 0;
    transform: translateY(-20px);
  }
  100% {
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
body.home #top-news {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  background: #cbd3cf;
  z-index: 3;
}
body.home #top-news .inner {
  width: 100%;
  padding: 3em 0;
  max-width: 1400px;
  background-image: radial-gradient(circle, rgb(255, 255, 255), rgb(214, 222, 217));
}
body.home #top-news .inner section {
  width: 80%;
  margin: 0 auto;
}
body.home #top-news .inner section h2 {
  color: #4f6159;
}
body.home #top-news .inner section dl {
  width: 100%;
  padding: 1em 0;
  text-align: left;
  border-bottom: solid 1px #d8dce7;
  font-size: 1.1em;
}
body.home #top-news .inner section dl dt {
  min-width: 6em;
  margin-right: 1em;
  padding: 0.25em 0;
  font-family: "Goldman", serif;
  font-weight: 400;
  font-style: normal;
  color: #4f6159;
  white-space: nowrap;
  font-size: 0.75em;
}
body.home #top-news .inner section dl dd {
  width: auto;
  padding: 0.25em 0;
  color: #4f6159;
}
body.home #top-news .inner section dl dd a {
  color: #00a55d;
  border-bottom: dotted 1px #00a55d;
}
body.home #top-news .inner section dl dd a:hover {
  color: #fff;
  background: #ff3131;
  border: none;
}
body.home #top-news .inner section dl:last-child {
  border-bottom: none;
  padding-bottom: 0;
}
body.home #top-news .inner section .newslink a {
  display: inline-block;
  margin: 1em auto;
  padding: 0.5em 2em;
  text-align: center;
  border: solid 1px #41444e;
  font-size: 0.8em;
  color: #41444e;
  background: #000;
  font-weight: bold;
}
body.home #top-news .inner section .newslink a:hover {
  background: #41444e;
  color: #000;
  border: solid 1px #000;
}

#top-movie {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  background: #1b1d22;
  z-index: 3;
}
#top-movie .inner {
  width: 100%;
  padding: 3em 0;
  max-width: 1400px;
  background: radial-gradient(#41444e, #1b1d22);
}
#top-movie .inner section {
  width: 80%;
  margin: 2em auto;
}
#top-movie .inner .movie {
  max-width: 1000px;
  margin: 2em auto;
}
#top-movie .inner .movie div {
  width: 100%;
  margin: 2em auto;
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  box-shadow: 0px 0px 15px -5px #000000;
  border-radius: 12px;
}
#top-movie .inner .movie div iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
#top-movie .inner .ss {
  margin: 2em auto;
}
#top-movie .inner .ss div {
  margin: 2em auto;
}
#top-movie .inner .notice {
  text-align: center;
}

#top-about {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  background: #1a1513;
  color: #fff;
  text-shadow: 0 0 0.5em #ccc;
  z-index: 3;
}
#top-about .inner:before {
  content: "";
}
#top-about .inner {
  width: 100%;
  padding: 3em 0;
  max-width: 1400px;
  background-image: url("../img/about_bg_20250710.png"), linear-gradient(to bottom, rgb(17, 4, 0), rgba(54, 31, 0, 0)), radial-gradient(circle, rgb(71, 52, 48), rgb(83, 6, 0));
  background-repeat: no-repeat, no-repeat, no-repeat;
  background-position: center top, center top, center center;
}
#top-about .inner section {
  width: 70%;
  margin: 0 auto;
}
#top-about .inner section h2 {
  margin: 0 auto 2em auto;
}
#top-about .inner section h2 span {
  display: inline-block;
}
#top-about .inner section h2 .jp {
  display: block;
  font-size: 0.7rem;
  line-height: 1.3;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}
#top-about .inner section article {
  margin: 0 auto 8em auto;
  text-align: center;
}
#top-about .inner section article h3 {
  font-size: 1.6em;
}
#top-about .inner section article h3 span {
  display: inline-block;
}
#top-about .inner section article p {
  font-size: 1.2em;
  line-height: 1.6;
  padding: 1em 0;
}
#top-about .inner section article p span {
  display: inline-block;
}
#top-about .inner section article .staff_prof {
  font-size: 0.8em;
}
#top-about .inner section article .prof_urita {
  display: block;
  max-width: 150px;
  margin: 1em auto;
}

#top-product {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  background: #c1c9c6;
  color: #000000;
  z-index: 3;
}
#top-product .inner {
  width: 100%;
  padding: 3em 0;
  max-width: 1400px;
  background-image: radial-gradient(circle, rgb(236, 234, 234), rgb(201, 212, 207));
}
#top-product .inner section {
  width: 80%;
  margin: 0 auto;
}
#top-product .inner section h2 {
  margin: 0 auto 2em auto;
  color: #000000;
}
#top-product .inner section h2 span {
  display: inline-block;
}
#top-product .inner section h2 .jp {
  display: block;
  font-size: 0.7rem;
  line-height: 1.3;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
}
#top-product .inner section .carousel {
  width: var(--carousel-slide-width, 100%);
}
#top-product .inner section .carousel__nav button {
  background: transparent;
}
#top-product .inner section .carousel__nav button.is-prev {
  left: -5%;
}
#top-product .inner section .carousel__nav button.is-next {
  right: -5%;
}
#top-product .inner section .carousel__slide {
  width: var(--carousel-slide-width, 100%);
  min-height: 600px;
  margin-right: 1px;
  display: flex;
  align-items: flex-start;
  flex-wrap: wrap;
  justify-content: space-between;
  align-content: flex-start;
  transition: background 0.2s, color 0.2s;
}
#top-product .inner section .carousel__slide .copy {
  font-size: 0.6rem;
}
#top-product .inner section div article {
  margin: 0 auto 4em auto;
  padding: 2em;
  background: radial-gradient(#f7fbfa, #b0b9b6);
  color: #4f6159;
}
#top-product .inner section div article h3 {
  width: 100%;
  display: block;
  font-size: 1.6em;
  line-height: 1.3;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  text-align: center;
  margin: 0 auto 1em auto;
  padding: 0 0 0.5em 0;
  color: #000;
  border-bottom: solid 1px #000;
  position: relative;
}
#top-product .inner section div article h3 span {
  display: inline-block;
}
#top-product .inner section div article figure {
  width: 60%;
  margin: 0 auto;
}
#top-product .inner section div article p {
  width: 60%;
  display: block;
  margin: 1em auto;
  line-height: 1.6;
  font-size: 1.2em;
}
#top-product .inner section div article p:last-child {
  margin-bottom: 0;
}
#top-product .inner section div article p a {
  font-size: 1em;
}
#top-product .inner section div article .btn {
  margin: 1em auto;
}

/* =Bottun
-------------------------------------------------------------- */
dl.btn dd {
  width: 90%;
  margin: 0 auto;
  padding: 0 0.5em;
  --neon-border-color: #00964b;
  --neon-border-hover-color: #960000;
}
dl.btn dd a {
  display: block;
  position: relative;
  border: solid 1px;
  padding: 1em;
  font-size: 1em;
  line-height: 1.3;
  text-align: center;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #00ff90;
  text-shadow: 0 0 0.25em #00ff90;
  -o-border-image: linear-gradient(to bottom, #00964b, #00ff90, #00964b) 1;
     border-image: linear-gradient(to bottom, #00964b, #00ff90, #00964b) 1;
  background: rgb(0, 63, 26);
  box-shadow: inset 0 0 0.5em #fff, inset 0 0 0.5em var(--neon-border-color), inset 0 0 0.5em var(--neon-border-color);
}
dl.btn dd a span {
  display: inline-block;
}
dl.btn dd a:hover {
  opacity: 1;
  color: #fff;
  text-shadow: 0 0 0.25em #fff;
  -o-border-image: linear-gradient(to bottom, #ff3131, #ffb0b0, #ff3131) 1;
     border-image: linear-gradient(to bottom, #ff3131, #ffb0b0, #ff3131) 1;
  background: rgb(153, 0, 0);
  box-shadow: inset 0 0 0.5em #ffb0b0, inset 0 0 0.5em var(--neon-border-hover-color), inset 0 0 0.5em var(--neon-border-hover-color);
}

/* =Storelink
-------------------------------------------------------------- */
.storelink {
  width: 100%;
  max-width: 1000px;
  height: auto;
  margin: 2em auto;
  padding: 1em 0;
  display: flex;
  justify-content: space-evenly;
  flex-wrap: nowrap;
}
.storelink dd {
  width: 90%;
  padding: 0 0.5em;
  --neon-border-color: #00964b;
  --neon-border-hover-color: #960000;
}
.storelink dd a {
  display: block;
  position: relative;
  border: solid 1px;
  padding: 1.2em;
  font-size: 1.4em;
  line-height: 1.3;
  font-weight: 700;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  color: #00ff90;
  text-shadow: 0 0 0.25em #00ff90;
  -o-border-image: linear-gradient(to bottom, #00964b, #00ff90, #00964b) 1;
     border-image: linear-gradient(to bottom, #00964b, #00ff90, #00964b) 1;
  background: rgba(0, 0, 0, 0.7);
  box-shadow: inset 0 0 0.5rem #fff, inset 0 0 2rem var(--neon-border-color), 0 0 6rem var(--neon-border-color), inset 0 0 4rem var(--neon-border-color);
}
.storelink dd a span {
  display: inline-block;
}
.storelink dd a:hover {
  opacity: 1;
  color: #fff;
  text-shadow: 0 0 0.25em #fff;
  -o-border-image: linear-gradient(to bottom, #ff3131, #fff, #ff3131) 1;
     border-image: linear-gradient(to bottom, #ff3131, #fff, #ff3131) 1;
  background: radial-gradient(#ff3131 1%, rgba(153, 0, 0, 0.7), transparent 100%);
  box-shadow: inset 0 0 0.5rem #fff, inset 0 0 2rem var(--neon-border-hover-color), 0 0 6rem var(--neon-border-hover-color), inset 0 0 4rem var(--neon-border-hover-color);
}

/* =Fancybox
-------------------------------------------------------------- */
.fbox > div {
  display: flex;
  align-content: center;
  justify-content: center;
}
.fbox > div figure {
  position: relative;
  width: 50%;
  padding: 0.5em;
  margin: 0 0.5%;
  margin-bottom: 0.75%;
  background: rgba(0, 0, 0, 0.5);
  text-align: center;
  border: solid 1px #000;
}
.fbox > div figure .fancybox {
  display: inline-block;
  position: relative;
}
.fbox > div figure .fancybox:before {
  position: absolute;
  bottom: 10px;
  right: 5px;
  content: "\f00e";
  font-family: FontAwesome;
  color: rgba(255, 255, 255, 0.7);
}
.fbox > div figure .fancybox:hover:before {
  color: #fff;
}
.fbox > div figcaption {
  font-size: 0.75em;
  line-height: 1.2;
  color: #fff;
  padding: 0.5em;
  text-align: left;
}

/* =Spec
-------------------------------------------------------------- */
#spec {
  width: 100%;
  margin: 0 auto;
  padding: 0;
  position: relative;
  background: #1b1d22;
  z-index: 3;
}
#spec .inner {
  width: 100%;
  padding: 3em 0;
  max-width: 1400px;
  background: radial-gradient(#41444e, #1b1d22);
}
#spec .inner table {
  width: 80%;
  margin: 2em auto;
  border-top: solid 1px #41444e;
  font-size: 1.2em;
}
#spec .inner table th {
  font-weight: normal;
  text-align: center;
  border-bottom: solid 1px #41444e;
  padding: 0.5em;
  white-space: nowrap;
}
#spec .inner table td {
  color: #fff;
  border-bottom: solid 1px #41444e;
  text-align: left;
  padding: 0.5em;
}

/* =Footer
-------------------------------------------------------------- */
.footer {
  background: #fff;
  box-sizing: border-box;
  text-align: center;
  line-height: 1.5;
  padding-top: 1em;
  padding-bottom: 4em;
  position: relative;
  z-index: 3;
}
.footer a {
  color: #686868;
}
.footer .copy {
  font-family: "shump_squareregular", arial, helvetica, sans-serif;
  color: #686868;
  font-size: 1em;
  letter-spacing: 0.1em;
  padding: 0 1em;
}
.footer .copyreg {
  font-size: 0.75em;
  color: #6c6c6c;
  padding: 0 1em;
}
.footer .sns-btns {
  margin: 1em 0;
  width: auto;
  float: none;
}
.footer .sns-btns ul {
  text-align: center;
}
.footer .sns-btns ul li {
  width: 32px;
  display: inline-block;
}
.footer .footer-logos {
  text-align: center;
  margin: 0 auto;
}
.footer .footer-logos .footer-corplogo ul li {
  display: inline-block;
}
.footer .footer-logos .footer-logo1 {
  margin-right: 1em;
}
.footer .link {
  width: 100%;
  margin: 0;
  padding: 1em 0;
  text-align: left;
  display: flex;
  justify-content: center;
  align-items: stretch;
  flex-wrap: wrap;
}
.footer .link li {
  margin: 0 1em;
  padding: 0;
  text-align: center;
  list-style-type: none;
}
.footer .link li a {
  display: inline-block;
  font-family: "Oswald", sans-serif;
  margin: 0 auto;
  padding: 0.7em 2em;
  text-align: center;
  color: #000;
  border: solid 1px #000;
  font-size: 0.8em;
}
.footer .link li a:hover {
  opacity: 1;
  color: #fff;
  background: #ff3131;
}

#page-top {
  width: 78px;
  display: block;
  position: fixed;
  right: 0;
  z-index: 11;
}

a#page-top-link {
  display: block;
  width: 54px;
  height: 91px;
  margin: 0;
  padding: 0;
}/*# sourceMappingURL=common_202500710.css.map */