@charset "UTF-8";
/*-------------------------------------------------------------------*/
/* Reset */
/*-------------------------------------------------------------------*/
/* 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; }

/*-------------------------------------------------------------------*/
/* Mixin */
/*-------------------------------------------------------------------*/
/*-------------------------------------------------------------------*/
/* Keyframe */
/*-------------------------------------------------------------------*/
@-webkit-keyframes curtainStart {
  0% {
    -webkit-transform: translateX(-101%);
            transform: translateX(-101%); }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0); } }
@keyframes curtainStart {
  0% {
    -webkit-transform: translateX(-101%);
            transform: translateX(-101%); }
  100% {
    -webkit-transform: translateX(0);
            transform: translateX(0); } }

@-webkit-keyframes curtainEnd {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  100% {
    -webkit-transform: translateX(101%);
            transform: translateX(101%); } }

@keyframes curtainEnd {
  0% {
    -webkit-transform: translateX(0);
            transform: translateX(0); }
  100% {
    -webkit-transform: translateX(101%);
            transform: translateX(101%); } }

@-webkit-keyframes fadeIn {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

@keyframes fadeIn {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }

@-webkit-keyframes fadeUpPC {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }
  30% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }
  60% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes fadeUpPC {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }
  30% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }
  60% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(20px);
            transform: translateY(20px); }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes fadeUpSP {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(10px);
            transform: translateY(10px); }
  30% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(10px);
            transform: translateY(10px); }
  60% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(10px);
            transform: translateY(10px); }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes fadeUpSP {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(10px);
            transform: translateY(10px); }
  30% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(10px);
            transform: translateY(10px); }
  60% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: translateY(10px);
            transform: translateY(10px); }
  100% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes slideDown {
  from {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@keyframes slideDown {
  from {
    -webkit-transform: translateY(-100%);
            transform: translateY(-100%); }
  to {
    -webkit-transform: translateY(0);
            transform: translateY(0); } }

@-webkit-keyframes bgAnime {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  15% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: scale(1.025);
            transform: scale(1.025);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out; }
  30% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: scale(1.05);
            transform: scale(1.05); }
  60% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: scale(1.05);
            transform: scale(1.05); }
  100% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }

@keyframes bgAnime {
  0% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-animation-timing-function: ease-in;
            animation-timing-function: ease-in; }
  15% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: scale(1.025);
            transform: scale(1.025);
    -webkit-animation-timing-function: ease-out;
            animation-timing-function: ease-out; }
  30% {
    opacity: 1;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
    -webkit-transform: scale(1.05);
            transform: scale(1.05); }
  60% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
    -webkit-transform: scale(1.05);
            transform: scale(1.05); }
  100% {
    opacity: 0;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }

@-webkit-keyframes Bounce {
  0% {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px); }
  100% {
    -webkit-transform: translateY(4px);
            transform: translateY(4px); } }

@keyframes Bounce {
  0% {
    -webkit-transform: translateY(-4px);
            transform: translateY(-4px); }
  100% {
    -webkit-transform: translateY(4px);
            transform: translateY(4px); } }

/*-------------------------------------------------------------------*/
/* Foundation */
/*-------------------------------------------------------------------*/
html {
  font-size: 62.5%; }

body {
  min-width: 1200px;
  margin: 0 auto;
  font-family: "Noto Sans Japanese", "Hiragino Kaku Gothic ProN", "Hiragino Kaku Gothic Pro", "ＭＳ ゴシック", sans-serif, "メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden; }
  @media print, screen and (max-width: 767px) {
    body {
      min-width: auto;
      -webkit-text-size-adjust: 100%;
      -webkit-overflow-scrolling: touch; } }

@media print, screen and (max-width: 767px) {
  img {
    width: 100%;
    height: auto; } }

* {
  box-sizing: border-box;
  zoom: 1; }

a {
  color: #000;
  text-decoration: none; }

.pc_b {
  display: block !important; }
  @media print, screen and (max-width: 767px) {
    .pc_b {
      display: none !important; } }

.pc_i {
  display: inline !important; }
  @media print, screen and (max-width: 767px) {
    .pc_i {
      display: none !important; } }

.sp_b {
  display: none !important; }
  @media print, screen and (max-width: 767px) {
    .sp_b {
      display: block !important; } }

.sp_i {
  display: none !important; }
  @media print, screen and (max-width: 767px) {
    .sp_i {
      display: inline !important; } }

.sp_ib {
  display: none !important; }
  @media print, screen and (max-width: 767px) {
    .sp_ib {
      display: inline-block !important; } }

/*-------------------------------------------------------------------*/
/* Module */
/*-------------------------------------------------------------------*/
/*-------------------------------------------------------------------*/
/* sw-Heading */
/*-------------------------------------------------------------------*/
.sw-Heading {
  padding: 59px 0 60px;
  background: #000;
  position: relative;
  overflow: hidden; }
  @media print, screen and (max-width: 767px) {
    .sw-Heading {
      padding: 5.47% 0;
      overflow: hidden; } }
  .sw-Heading:after {
    content: "";
    width: 62.5%;
    height: 100%;
    position: absolute;
    top: 0;
    right: -5%;
    background: #252525;
    -webkit-transform: skewX(-45deg);
        -ms-transform: skewX(-45deg);
            transform: skewX(-45deg); }
    @media print, screen and (max-width: 767px) {
      .sw-Heading:after {
        width: 55%;
        right: -10%; } }
  .sw-Heading_Inner {
    width: 1200px;
    margin: 0 auto;
    position: relative; }
    @media print, screen and (max-width: 767px) {
      .sw-Heading_Inner {
        width: 100%; } }
    .sw-Heading_Inner .heading {
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      font-weight: 600;
      color: #fff;
      letter-spacing: 2px;
      letter-spacing: 0.2rem;
      position: relative; }
      @media print, screen and (max-width: 767px) {
        .sw-Heading_Inner .heading {
          padding: 0 0 0 9.0625%;
          font-size: 4.6875vw; } }
      .sw-Heading_Inner .heading:before {
        content: "";
        width: 100px;
        height: 1px;
        background: #b50000;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        left: 0; }
        @media print, screen and (max-width: 767px) {
          .sw-Heading_Inner .heading:before {
            width: 6.25%;
            left: 0; } }
      .sw-Heading_Inner .heading span {
        padding: 0 0 0 130px; }
        @media print, screen and (max-width: 767px) {
          .sw-Heading_Inner .heading span {
            padding: 0; } }

/*-------------------------------------------------------------------*/
/* sw-pagenation */
/*-------------------------------------------------------------------*/
.sw-pagenation {
  margin: 60px auto 0;
  font-size: 0;
  text-align: center;
  position: relative; }
  @media print, screen and (max-width: 767px) {
    .sw-pagenation {
      margin: 15% 0 0; } }
  .sw-pagenation > p {
    font-size: 14px;
    font-size: 14px;
    font-size: 1.4rem;
    font-weight: 500;
    letter-spacing: 1px;
    letter-spacing: 0.1rem;
    display: inline-block;
    vertical-align: middle;
    position: relative; }
    @media print, screen and (min-width: 768px) {
      .sw-pagenation > p {
        transition: 0.3s; }
        .sw-pagenation > p:hover {
          opacity: 0.6;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; } }
    @media print, screen and (max-width: 767px) {
      .sw-pagenation > p {
        font-size: 3.59375vw; } }
  .sw-pagenation > p + p {
    margin: 0 0 0 60px; }
    @media print, screen and (max-width: 767px) {
      .sw-pagenation > p + p {
        margin: 0 0 0 13.46154%; } }
    .sw-pagenation > p + p:before {
      content: "";
      width: 1px;
      height: 100%;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: -30px;
      background: #e5e5e5; }
  .sw-pagenation .prev a, .sw-pagenation .next a {
    position: relative; }
    .sw-pagenation .prev a:after, .sw-pagenation .next a:after {
      content: "";
      width: 5px;
      height: 10px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%); }
  .sw-pagenation .prev a {
    padding: 0 0 0 25px; }
    @media print, screen and (max-width: 767px) {
      .sw-pagenation .prev a {
        padding: 0 0 0 15px; } }
    .sw-pagenation .prev a:after {
      left: 0;
      background: url(/assets/images/common/icon_left.png) 0 0 no-repeat;
      background-size: cover; }
  @media print, screen and (max-width: 767px) {
    .sw-pagenation .next:before {
      left: -41%; } }
  .sw-pagenation .next a {
    padding: 0 25px 0 0; }
    @media print, screen and (max-width: 767px) {
      .sw-pagenation .next a {
        padding: 0 15px 0 0; } }
    .sw-pagenation .next a:after {
      right: 0;
      background: url(/assets/images/common/icon_right.png) 0 0 no-repeat;
      background-size: cover; }
  @media print, screen and (max-width: 767px) {
    .sw-pagenation .list:before {
      left: -22%; } }
  .sw-pagenation .list a {
    padding: 0 0 0 28px; }
    @media print, screen and (max-width: 767px) {
      .sw-pagenation .list a {
        padding: 0 0 0 25px; } }
    .sw-pagenation .list a:after {
      content: "";
      width: 12px;
      height: 11px;
      position: absolute;
      top: 50%;
      -webkit-transform: translateY(-50%);
          -ms-transform: translateY(-50%);
              transform: translateY(-50%);
      left: 0;
      background: url(/assets/images/common/news/icon_hamburger.png) 0 0 no-repeat;
      background-size: cover; }
  .sw-pagenation.three-column {
    width: 356px; }
    @media print, screen and (max-width: 767px) {
      .sw-pagenation.three-column {
        width: 100%; } }
    .sw-pagenation.three-column p {
      margin: 0; }
    .sw-pagenation.three-column .prev, .sw-pagenation.three-column .next {
      position: absolute;
      top: 0; }
    .sw-pagenation.three-column .prev {
      left: 0; }
    .sw-pagenation.three-column .next {
      right: 0; }

/*-------------------------------------------------------------------*/
/* header */
/*-------------------------------------------------------------------*/
.st-Header {
  position: relative;
  z-index: 1000; }
  .st-Header_Inner {
    padding: 30px 60px 30px;
    background: #fff; }
    .st-Header_Inner:after {
      content: "";
      display: block;
      clear: both; }
    @media print, screen and (max-width: 767px) {
      .st-Header_Inner {
        margin: 0 auto;
        padding: 4.6875% 4.6875%; } }
  .st-Header_Logo {
    float: left; }
    @media print, screen and (max-width: 767px) {
      .st-Header_Logo {
        float: none; } }
    @media print, screen and (min-width: 768px) {
      .st-Header_Logo .logo.corporate {
        transition: 0.3s; }
        .st-Header_Logo .logo.corporate:hover {
          opacity: 0.6;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; } }
    .st-Header_Logo .logo.corporate img {
      width: 142px;
      height: 50px;
      vertical-align: middle; }
      @media print, screen and (max-width: 767px) {
        .st-Header_Logo .logo.corporate img {
          width: 27.24138%;
          height: auto; } }
    .st-Header_Logo .logo.corporate span {
      margin: 0 0 0 30px;
      vertical-align: middle;
      font-size: 16px;
      font-size: 16px;
      font-size: 1.6rem;
      font-weight: 500;
      letter-spacing: 0.12em; }
      @media print, screen and (max-width: 767px) {
        .st-Header_Logo .logo.corporate span {
          margin: 0 0 0 3%;
          font-size: 3.4375vw; } }
    .st-Header_Logo .logo.service {
      margin: 0 0 0 15px; }
      @media print, screen and (max-width: 767px) {
        .st-Header_Logo .logo.service {
          width: 22.41379%;
          margin: 0 0 0 1%; } }
  .st-Header_Trigger {
    width: 10.51724%;
    padding: 7.24138% 0 0;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
    right: 4.6875%; }
    .st-Header_Trigger:before {
      content: "MENU";
      margin: 0 auto;
      position: absolute;
      top: 0;
      left: 0;
      right: 0;
      color: #b50000;
      font-size: 3.125vw;
      font-weight: 600;
      text-align: center; }
    .st-Header_Trigger span {
      position: absolute;
      background: #b50000;
      right: 0; }
      .st-Header_Trigger span:nth-child(1) {
        width: 100%;
        height: 1px;
        bottom: 30%; }
      .st-Header_Trigger span:nth-child(2) {
        width: 65.57377%;
        height: 1px;
        bottom: 0; }
  .st-Header_Nav {
    margin: 17px 0 0;
    float: right; }
    @media print, screen and (max-width: 767px) {
      .st-Header_Nav {
        width: 100%;
        height: 100%;
        margin: 0;
        position: fixed;
        top: 0;
        left: 0;
        background: rgba(0, 0, 0, 0.9);
        z-index: -1;
        -webkit-transform: translateY(-100%);
            -ms-transform: translateY(-100%);
                transform: translateY(-100%); } }
    .st-Header_Nav ul {
      font-size: 0; }
      @media print, screen and (max-width: 767px) {
        .st-Header_Nav ul {
          width: 81.25%;
          margin: 0 auto;
          position: absolute;
          top: 17%;
          left: 0;
          right: 0;
          opacity: 0;
          -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)"; } }
      .st-Header_Nav ul li {
        display: inline-block;
        vertical-align: middle; }
        @media print, screen and (max-width: 767px) {
          .st-Header_Nav ul li {
            display: block; } }
        .st-Header_Nav ul li a {
          font-size: 14px;
          font-size: 14px;
          font-size: 1.4rem;
          font-weight: 600;
          letter-spacing: 0.2em;
          position: relative; }
          @media print, screen and (min-width: 768px) {
            .st-Header_Nav ul li a {
              transition: 0.3s; }
              .st-Header_Nav ul li a:before {
                content: "";
                width: 0;
                height: 1px;
                max-width: 100%;
                margin: 0 auto;
                position: absolute;
                bottom: 0;
                left: 0;
                right: 0;
                transition: 0.3s;
                background: #b50000; }
              .st-Header_Nav ul li a:hover {
                color: #b50000; }
                .st-Header_Nav ul li a:hover:before {
                  width: 100%; } }
          @media print, screen and (max-width: 767px) {
            .st-Header_Nav ul li a {
              font-size: 4.6875vw;
              color: #fff; } }
      .st-Header_Nav ul .recruit a:after {
        content: "";
        width: 13px;
        height: 12px;
        background: url(/assets/images/pc/header/icon_external.png) 0 0 no-repeat;
        position: absolute;
        top: 55%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        right: -15px; }
        @media print, screen and (max-width: 767px) {
          .st-Header_Nav ul .recruit a:after {
            width: 11.62791%;
            height: 0;
            padding: 3.46154% 0 0;
            background: url(/assets/images/sp/header/icon_external.png) 0 0 no-repeat;
            background-size: cover;
            right: -15%; } }
      @media print, screen and (max-width: 767px) {
        .st-Header_Nav ul .contact {
          display: inline-block;
          vertical-align: middle; } }
      .st-Header_Nav ul .entry {
        display: none; }
        @media print, screen and (max-width: 767px) {
          .st-Header_Nav ul .entry {
            margin: 11% 0 0 15%;
            position: relative;
            display: inline-block;
            vertical-align: middle; } }
        @media print, screen and (max-width: 767px) {
          .st-Header_Nav ul .entry:before {
            content: "";
            width: 8%;
            height: 2px;
            background: #fff;
            position: absolute;
            top: 50%;
            -webkit-transform: translateY(-50%);
                -ms-transform: translateY(-50%);
                    transform: translateY(-50%);
            left: -36%;
            font-size: 4.6875vw; } }
      .st-Header_Nav ul li + li {
        margin: 0 0 0 50px; }
        @media print, screen and (max-width: 767px) {
          .st-Header_Nav ul li + li {
            margin: 11% 0 0; } }

.st-Header.active .st-Header_Trigger:before {
  content: "CLOSE"; }

.st-Header.active .st-Header_Trigger span {
  position: absolute;
  background: #b50000;
  right: 0;
  transition: 0.3s; }
  .st-Header.active .st-Header_Trigger span:nth-child(1) {
    width: 50%;
    height: 1px;
    margin: 0 auto;
    bottom: 20%;
    right: 0;
    left: 0;
    -webkit-transform: rotate(135deg);
        -ms-transform: rotate(135deg);
            transform: rotate(135deg); }
  .st-Header.active .st-Header_Trigger span:nth-child(2) {
    width: 50%;
    height: 1px;
    margin: 0 auto;
    bottom: 20%;
    right: 0;
    left: 0;
    -webkit-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
            transform: rotate(-135deg); }

@media print, screen and (max-width: 767px) {
  .st-Header.active .st-Header_Nav {
    transition: 0.3s;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0); } }

@media print, screen and (max-width: 767px) {
  .st-Header.active .st-Header_Nav ul {
    -webkit-animation-name: fadeIn;
            animation-name: fadeIn;
    -webkit-animation-duration: .3s;
            animation-duration: .3s;
    -webkit-animation-timing-function: ease-in-out;
            animation-timing-function: ease-in-out;
    -webkit-animation-direction: alternate;
            animation-direction: alternate;
    -webkit-animation-fill-mode: forwards;
            animation-fill-mode: forwards;
    -webkit-animation-delay: 0.3s;
            animation-delay: 0.3s;
    -webkit-animation-iteration-count: 1;
            animation-iteration-count: 1; } }

/*-------------------------------------------------------------------*/
/* service-Content */
/*-------------------------------------------------------------------*/
.service-Content {
  background: #f9f9f9; }
  .service-Content_Body .content {
    width: 1200px;
    margin: 0 auto;
    padding: 60px 0 0; }
    .service-Content_Body .content + .content {
      padding: 60px 0 100px;
    }
    @media print, screen and (max-width: 767px) {
      .service-Content_Body .content {
        width: 81.25%;
        padding: 8% 0 0; }
        .service-Content_Body .content + .content {
          padding: 8% 0 10%; } }
    .service-Content_Body .content .heading {
      margin: 0 0 30px;
      font-size: 20px;
      font-size: 20px;
      font-size: 2rem;
      font-weight: 600;
      letter-spacing: 2px;
      letter-spacing: 0.2rem;
      /*position: relative;*/
      text-align: center;
    }
      @media print, screen and (max-width: 767px) {
        .service-Content_Body .content .heading {
          margin: 0 0 3%;
          padding: 0 0 0 6.84615%;
          font-size: 3.4375vw; } }
      .service-Content_Body .content .heading:before {
        content: "";
        width: 20px;
        height: 1px;
        background: #000;
        position: absolute;
        top: 50%;
        -webkit-transform: translateY(-50%);
            -ms-transform: translateY(-50%);
                transform: translateY(-50%);
        left: 0; }
        @media print, screen and (max-width: 767px) {
          .service-Content_Body .content .heading:before {
            width: 3.84615%; } }
      .service-Content_Body .content .heading span {
        padding: 0 0 0 37px; }
        @media print, screen and (max-width: 767px) {
          .service-Content_Body .content .heading span {
            padding: 0; } }
    .service-Content_Body .content .body {
      margin: 25px 0 0; }
      @media print, screen and (max-width: 767px) {
        .service-Content_Body .content .body {
          margin: 5% 0 0; } }
      .service-Content_Body .content .body .list > li {
        padding: 40px;
        background: #fff;
        font-size: 0; }
        @media print, screen and (max-width: 767px) {
          .service-Content_Body .content .body .list > li {
            padding: 8% 5%; } }
        .service-Content_Body .content .body .list > li .left {
          width: 714px;
          display: inline-block;
          vertical-align: top; }
          @media print, screen and (max-width: 767px) {
            .service-Content_Body .content .body .list > li .left {
              width: 100%;
              display: block; } }
              .service-Content_Body .content .body .list > li .left .anchor {
                margin: 30px 0 0; }
                .service-Content_Body .content .body .list > li .left .anchor a {
                  width: 402px;
                  margin: 0 auto;
                  padding: 22px 0 24px;
                  display: block;
                  text-align: center;
                  font-size: 16px;
                  font-size: 16px;
                  font-size: 1.6rem;
                  font-weight: 600;
                  letter-spacing: 0.15em;
                  color: #0e0e0e;
                  position: relative;
                  border: 1px solid #333; }
                  .service-Content_Body .content .body .list > li .left .anchor a span {
                    letter-spacing: 0.25em;
                  }
                  @media print, screen and (min-width: 768px) {
                    .service-Content_Body .content .body .list > li .left .anchor a {
                      transition: 0.3s; }
                      .service-Content_Body .content .body .list > li .left .anchor a:after {
                        transition: 0.3s; }
                      .service-Content_Body .content .body .list > li .left .anchor a:hover {
                        color: #fff;
                        border: 1px solid #d12d26;
                        background: #d12d26; }
                        .service-Content_Body .content .body .list > li .left .anchor a:hover:after {
                          border-top: 1px solid #fff;
                          border-right: 1px solid #fff; } }
                  @media print, screen and (max-width: 767px) {
                    .service-Content_Body .content .body .list > li .right .anchor a {
                      margin: 5% 0 0 0;
                      width: 100%;
                      font-size: 3.4375vw;
                      font-weight: 600;
                      letter-spacing: 0.15em;
                      padding: 5.6% 0;
                      display: block;
                      text-align: center;
                      position: relative;
                      border: 1px solid #333; }
                      .service-Content_Body .content .body .list > li .right .anchor a span {
                        letter-spacing: 0.25em;
                      } }
                  .service-Content_Body .content .body .list > li .left .anchor a:after {
                    content: "";
                    width: 7px;
                    height: 7px;
                    border-top: 1px solid #000;
                    border-right: 1px solid #000;
                    position: absolute;
                    top: 50%;
                    -webkit-transform: translateY(-50%) rotate(45deg);
                        -ms-transform: translateY(-50%) rotate(45deg);
                            transform: translateY(-50%) rotate(45deg);
                    right: 25px; }
                    @media print, screen and (max-width: 767px) {
                      .service-Content_Body .content .body .list > li .right .anchor a:after {
                        content: "";
                        width: 7px;
                        height: 7px;
                        border-top: 1px solid #000;
                        border-right: 1px solid #000;
                        position: absolute;
                        top: 50%;
                        -webkit-transform: translateY(-50%) rotate(45deg);
                        -ms-transform: translateY(-50%) rotate(45deg);
                        transform: translateY(-50%) rotate(45deg);
                        right: 5%; } }
          .service-Content_Body .content .body .list > li .left .title {
            max-width: 490px;
            display: inline-block;
            vertical-align: middle;
            font-size: 20px;
            font-size: 20px;
            font-size: 2rem;
            font-weight: 600; }
            @media print, screen and (max-width: 767px) {
              .service-Content_Body .content .body .list > li .left .title {
                max-width: 100%;
                display: block;
                font-size: 4.6875vw;
                line-height: 1.4;
                text-align: center; } }
          .service-Content_Body .content .body .list > li .left .release {
            margin: 0 0 0 30px;
            display: inline-block;
            vertical-align: middle; }
            @media print, screen and (max-width: 767px) {
              .service-Content_Body .content .body .list > li .left .release {
                margin: 4% 0 0;
                display: block;
                text-align: center; } }
            .service-Content_Body .content .body .list > li .left .release span {
              padding: 5px 20px;
              font-size: 13px;
              font-size: 13px;
              font-size: 1.3rem;
              background: #ededed;
              border-radius: 100px; }
              @media print, screen and (max-width: 767px) {
                .service-Content_Body .content .body .list > li .left .release span {
                  display: inline-block;
                  font-size: 3.125vw; } }
          .service-Content_Body .content .body .list > li .left .paragraph {
            margin: 25px 0 15px;
            font-size: 14px;
            font-size: 14px;
            font-size: 1.4rem;
            line-height: 2.14286; }
          .service-Content_Body .content .body .list > li .left .paragraph-mt0 {
            margin: -5px 0 15px; }
            @media print, screen and (max-width: 767px) {
              .service-Content_Body .content .body .list > li .left .paragraph {
                margin: 5% 0 0;
                font-size: 3.4375vw;
                line-height: 1.81818; }
              .service-Content_Body .content .body .list > li .left .paragraph-mt0 {
                margin: -1% 0 0; } }
          .service-Content_Body .content .body .list > li .left .screenshot {
            font-size: 0; }
            @media print, screen and (max-width: 767px) {
              .service-Content_Body .content .body .list > li .left .screenshot {
                margin: 5% 0 0; } }
            @media print, screen and (max-width: 767px) {
              .service-Content_Body .content .body .list > li .left .screenshot ul {
                text-align: center; } }
            .service-Content_Body .content .body .list > li .left .screenshot ul li {
              display: inline-block;
              vertical-align: top; }
              @media print, screen and (max-width: 767px) {
                .service-Content_Body .content .body .list > li .left .screenshot ul li {
                  width: 33.333%; } }
        .service-Content_Body .content .body .list > li .right {
          width: 372px;
          display: inline-block;
          vertical-align: top;
          margin: 0 0 0 30px; }
          @media print, screen and (max-width: 767px) {
            .service-Content_Body .content .body .list > li .right {
              width: 100%;
              margin: 4% 0 0;
              display: block; } }
          .service-Content_Body .content .body .list > li .right .board {
            width: 228px;
            display: inline-block;
            vertical-align: top; }
            .service-Content_Body .content .body .list > li .right .board-kingyo {
              width: 180px; }
            @media print, screen and (max-width: 767px) {
              .service-Content_Body .content .body .list > li .right .board {
                width: 60.86957%; }
                .service-Content_Body .content .body .list > li .right .board-kingyo {
                  width: 48%; } }
            .service-Content_Body .content .body .list > li .right .board img {
              width: 100%;
              height: auto; }
          .service-Content_Body .content .body .list > li .right .slotmachine {
            width: 130px;
            margin: 0 0 0 14px;
            display: inline-block;
            vertical-align: top; }
            .service-Content_Body .content .body .list > li .right .slotmachine-kingyo {
              width: 182px;
              margin: 0 0 0 10px; }
            @media print, screen and (max-width: 767px) {
              .service-Content_Body .content .body .list > li .right .slotmachine {
                width: 34.78261%;
                margin: 0 0 0 4%; }
                .service-Content_Body .content .body .list > li .right .slotmachine-kingyo {
                  width: 48%; } }
            .service-Content_Body .content .body .list > li .right .slotmachine img {
              width: 100%;
              height: auto; }
          .service-Content_Body .content .body .list > li .right .pv {
            width: 372px;
            margin: 20px 0 0; }
            .service-Content_Body .content .body .list > li .right .pv-kingyo {
              margin: 65px 0 0; }
             .service-Content_Body .content .body .list > li .right .pv-korou {
              margin: 65px 0 0; }
             .service-Content_Body .content .body .list > li .right .pv-nca {
              margin: 35px 0 0; }

           @media print, screen and (max-width: 767px) {
              .service-Content_Body .content .body .list > li .right .pv {
                width: 100%;
                margin: 6% 0 0; } }
            .service-Content_Body .content .body .list > li .right .pv a {
              display: block;
              width: 100%;
              padding: 21.5px 0 25.5px;
              font-size: 21px;
              font-size: 21px;
              font-size: 2.1rem;
              text-align: center;
              color: #fff;
              background: rgba(181, 0, 0, 0.9);
              text-align: center;
              letter-spacing: 2.6px;
              letter-spacing: 0.26rem;
              font-weight: 500;
              position: relative; }
              @media print, screen and (min-width: 768px) {
                .service-Content_Body .content .body .list > li .right .pv a {
                  transition: 0.3s; }
                  .service-Content_Body .content .body .list > li .right .pv a:after {
                    transition: 0.3s; }
                  .service-Content_Body .content .body .list > li .right .pv a:hover {
                    color: #fff;
                    background: #000; }
                    .service-Content_Body .content .body .list > li .right .pv a:hover:after {
                      border-top: 1px solid #fff;
                      border-right: 1px solid #fff; } }
              @media print, screen and (max-width: 767px) {
                .service-Content_Body .content .body .list > li .right .pv a {
                  font-size: 3.75vw;
                  padding: 5.685% 0 6.285%; } }
              .service-Content_Body .content .body .list > li .right .pv a:after {
                content: "";
                width: 7px;
                height: 7px;
                border-top: 1px solid #fff;
                border-right: 1px solid #fff;
                position: absolute;
                top: 50%;
                -webkit-transform: translateY(-50%) rotate(45deg);
                    -ms-transform: translateY(-50%) rotate(45deg);
                        transform: translateY(-50%) rotate(45deg);
                right: 25px; }
      .service-Content_Body .content .body .list > li + li {
        margin: 20px 0 0; }
        @media print, screen and (max-width: 767px) {
          .service-Content_Body .content .body .list > li + li {
            margin: 5% 0 0; } }

/*-------------------------------------------------------------------*/
/* footer */
/*-------------------------------------------------------------------*/
.st-Footer {
  padding: 80px 60px 75px;
  background: #000;
  position: relative; }
  @media print, screen and (max-width: 767px) {
    .st-Footer {
      padding: 16% 0 8%; } }
  @media print, screen and (max-width: 767px) {
    .st-Footer_Inner {
      width: 81.25%;
      margin: 0 auto;
      font-size: 0; } }
  .st-Footer_PageTop {
    margin: 0 0 59px;
    text-align: center; }
    @media print, screen and (max-width: 767px) {
      .st-Footer_PageTop {
        margin: 0 0 10%; } }
    .st-Footer_PageTop p a {
      padding: 20px 0 0;
      font-size: 12px;
      font-size: 12px;
      font-size: 1.2rem;
      color: #fff;
      letter-spacing: 0.2em;
      position: relative; }
      @media print, screen and (min-width: 768px) {
        .st-Footer_PageTop p a {
          transition: 0.3s; }
          .st-Footer_PageTop p a:before {
            transition: 0.3s; }
          .st-Footer_PageTop p a:hover {
            color: #b50000; }
            .st-Footer_PageTop p a:hover:before {
              border-top: 1px solid #b50000;
              border-right: 1px solid #b50000;
              top: -5px; } }
      @media print, screen and (max-width: 767px) {
        .st-Footer_PageTop p a {
          font-size: 2.5vw; } }
      .st-Footer_PageTop p a:before {
        content: "";
        width: 10px;
        height: 10px;
        margin: 0 auto;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        -webkit-transform: rotate(-45deg);
            -ms-transform: rotate(-45deg);
                transform: rotate(-45deg); }
  @media print, screen and (max-width: 767px) {
    .st-Footer_Share {
      margin: 0 0 10%; } }
  .st-Footer_Share ul {
    font-size: 0; }
    @media print, screen and (max-width: 767px) {
      .st-Footer_Share ul {
        text-align: center; } }
    .st-Footer_Share ul li {
      display: inline-block;
      vertical-align: middle; }
      @media print, screen and (min-width: 768px) {
        .st-Footer_Share ul li {
          transition: 0.3s; }
          .st-Footer_Share ul li:hover {
            opacity: 0.6;
            -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=60)"; } }
      @media print, screen and (max-width: 767px) {
        .st-Footer_Share ul li:nth-child(1), .st-Footer_Share ul li:nth-child(3) {
          width: 6.09375%; } }
      @media print, screen and (max-width: 767px) {
        .st-Footer_Share ul li:nth-child(2) {
          width: 2.96875%; } }
    .st-Footer_Share ul li + li {
      margin: 0 0 0 30px; }
      @media print, screen and (max-width: 767px) {
        .st-Footer_Share ul li + li {
          margin: 0 0 0 8.46154%; } }
  .st-Footer_Nav {
    margin: 30px 0 0; }
    @media print, screen and (max-width: 767px) {
      .st-Footer_Nav {
        width: 50%;
        margin: 0;
        display: inline-block;
        vertical-align: top; } }
    .st-Footer_Nav ul {
      font-size: 0; }
      .st-Footer_Nav ul li {
        display: inline-block;
        vertical-align: middle; }
        @media print, screen and (max-width: 767px) {
          .st-Footer_Nav ul li {
            display: block; } }
        .st-Footer_Nav ul li a {
          font-size: 13px;
          font-size: 13px;
          font-size: 1.3rem;
          color: #a3a3a3; }
          @media print, screen and (min-width: 768px) {
            .st-Footer_Nav ul li a:hover {
              text-decoration: underline; } }
          @media print, screen and (max-width: 767px) {
            .st-Footer_Nav ul li a {
              font-size: 2.8125vw; } }
      .st-Footer_Nav ul li + li {
        margin: 0 0 0 40px; }
        @media print, screen and (max-width: 767px) {
          .st-Footer_Nav ul li + li {
            margin: 8% 0 0; } }
  .st-Footer_Copyright {
    text-align: right;
    position: absolute;
    right: 60px;
    bottom: 74px; }
    @media print, screen and (max-width: 767px) {
      .st-Footer_Copyright {
        width: 50%;
        margin: 0;
        padding: 3% 0 2%;
        display: inline-block;
        vertical-align: top;
        position: static;
        border-left: 1px solid #404040; } }
    .st-Footer_Copyright a img {
      width: 130px;
      height: auto; }
      @media print, screen and (max-width: 767px) {
        .st-Footer_Copyright a img {
          width: 63.07692%; } }
    .st-Footer_Copyright p {
      margin: 30px 0 0;
      font-size: 13px;
      font-size: 13px;
      font-size: 1.3rem;
      color: #a3a3a3; }
      @media print, screen and (max-width: 767px) {
        .st-Footer_Copyright p {
          margin: 8% 0 0;
          font-size: 2.5vw; } }

/*-------------------------------------------------------------------*/
/* print */
/*-------------------------------------------------------------------*/
@media print {
  * {
    -webkit-print-color-adjust: exact;
    opacity: 1 !important;
    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)"; } }
