/* 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; }

/* 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; }

@media print, screen and (min-width: 48em) {
  .hide-pc {
    display: none; } }

@media print, screen and (max-width: 47.99em) {
  .hide-sp {
    display: none; } }

* {
  box-sizing: border-box; }

body {
  position: relative;
  line-height: 2.0;
  font-family: 'Roboto','Hiragino Sans','Meiryo','Hiragino Kaku Gothic ProN',sans-serif;
  font-size: 15px;
  color: #ffffff;
  background-color: #000000; }

img {
  max-width: 100%;
  vertical-align: middle; }

hr {
  display: block;
  width: 100%;
  height: 1px;
  margin: 1.0rem 0;
  border-top: 1px solid #cbcbcb; }

.l-header {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  padding: 0.5rem 0;
  z-index: 1000;
  color: #ffffff;
  background: linear-gradient(rgba(0, 0, 0, 0.8) 0%, rgba(0, 0, 0, 0) 100%); }

.l-header-inner {
  width: 100%;
  display: flex;
  justify-content: space-between;
  align-items: center; }

.l-header-logo__link {
  display: block; }
.l-header-logo__img {
  padding: 0.5rem 0;
  width: 140px;
  max-width: 140px; }

.l-header-menu {
  display: flex;
  flex-wrap: nowrap; }
  .l-header-menu__link {
    position: relative;
    display: block;
    padding: 0.5rem 1.5rem;
    font-family: "Red Hat Display", sans-serif;
    font-weight: bold;
    color: #ffffff;
    text-decoration: none; }
    .l-header-menu__link::before {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 2px;
      background: #0014F0;
      margin: auto;
      transform-origin: center top;
      transform: scale(0, 1);
      transition: transform .3s; }
    .l-header-menu__link:hover::before {
      transform-origin: center top;
      transform: scale(1, 1); }
    .l-header-menu__link.-btn {
      background-color: #0014F0;
      border-radius: 50px;
      transition: 0.2s cubic-bezier(0.45, 0, 0.55, 1); }
      .l-header-menu__link.-btn::before {
        display: none; }
      .l-header-menu__link.-btn:hover {
        background: #FFFFFF;
        color: #0014F0; }

.l-drawer {
  padding: 5.0rem 0 0 3.0rem;
  background-color: #0014C8; }

.l-footer {
  background-color: #0014C8; }

.l-footer-inner {
  width: 100%;
  padding: 3.0rem 0 1.0rem;
  display: flex;
  justify-content: space-between; }

.l-footer-logo {
  display: block; }
  .l-footer-logo__img {
    width: 100px; }

.l-footer-menu {
  display: flex;
  flex-wrap: nowrap; }
  @media screen and (max-width: 767.98px) {
    .l-footer-menu {
      flex-wrap: wrap;
      width: 50%; } }
  @media screen and (max-width: 767.98px) {
    .l-footer-menu__item {
      width: 100%; } }
  .l-footer-menu__link {
    position: relative;
    display: block;
    padding: 0.5rem 1.0rem;
    font-family: "Red Hat Display", sans-serif;
    font-weight: bold;
    color: #ffffff;
    text-decoration: none; }
    .l-footer-menu__link::before {
      content: '';
      position: absolute;
      left: 0;
      bottom: 0;
      width: 100%;
      height: 2px;
      background: #FFFFFF;
      margin: auto;
      transform-origin: center top;
      transform: scale(0, 1);
      transition: transform .3s; }
    .l-footer-menu__link:hover::before {
      transform-origin: center top;
      transform: scale(1, 1); }

.l-footer-submenu__link {
  padding: 0.5rem 1.0rem;
  font-size: 0.8rem;
  color: #ffffff;
  text-decoration: none; }

.l-footer-bottom {
  padding: 1.5rem;
  background-color: #0014F0; }

.l-footer-bottom-inner {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center; }

.font-blue {
  color: #0014F0; }

.font-black {
  color: #000000; }

.font-white {
  color: #ffffff; }

.font-bold {
  font-weight: bold; }

.font-small {
  font-size: 0.8rem; }

.redhat-large {
  font-family: "Red Hat Display", sans-serif;
  font-weight: bold;
  font-size: 3.8rem;
  line-height: 1.5; }
  @media screen and (max-width: 767.98px) {
    .redhat-large {
      font-size: 2.8rem;
      align-self: end;
      padding-bottom: 10.0rem; } }

.redhat-medium {
  font-family: "Red Hat Display", sans-serif;
  font-weight: bold;
  font-size: 2.0rem;
  line-height: 1.5; }
  @media screen and (max-width: 767.98px) {
    .redhat-medium {
      font-size: 2.8rem;
      align-self: end;
      padding-bottom: 10.0rem; } }

.page-title {
  padding-top: 5.0rem;
  margin-bottom: 2.0rem;
  font-family: "Red Hat Display", sans-serif;
  font-size: 2.8rem;
  font-weight: bold; }
  @media screen and (max-width: 767.98px) {
    .page-title {
      font-size: 1.8rem; } }

.page-title-absolute {
  position: absolute;
  top: 3.0rem;
  left: 0;
  width: 100%; }

.heading-2 {
  margin: 2.0rem 0;
  font-family: "Red Hat Display", sans-serif;
  font-size: 2.8rem;
  font-weight: bold;
  line-height: 1.5; }
  @media screen and (max-width: 767.98px) {
    .heading-2 {
      font-size: 1.8rem; } }

.heading-3 {
  margin: 2.0rem 0 1.0rem;
  font-family: "Red Hat Display", sans-serif;
  font-size: 2.0rem;
  font-weight: bold;
  color: #0014F0;
  line-height: 1.5; }
  @media screen and (max-width: 767.98px) {
    .heading-3 {
      font-size: 1.5rem; } }

.heading-4 {
  font-family: "Red Hat Display", sans-serif;
  font-size: 1.8rem;
  font-weight: bold;
  line-height: 1.5; }
  @media screen and (max-width: 767.98px) {
    .heading-4 {
      font-size: 1.2rem; } }

.lead {
  font-size: 1.8rem; }

.sns-icons {
  display: flex;
  flex-wrap: nowrap; }
  .sns-icons__item:not(:last-child) {
    margin-right: 1.0rem; }

.link-index {
  position: relative;
  display: inline-block;
  color: #ffffff;
  text-decoration: none; }
  .link-index__img {
    margin-left: 1.0rem;
    height: 25px;
    vertical-align: middle; }
  .link-index::before {
    content: '';
    position: absolute;
    left: 0;
    bottom: -4px;
    width: 100%;
    height: 2px;
    background: #0014F0;
    margin: auto;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s; }
  .link-index:hover::before {
    transform-origin: left top;
    transform: scale(1, 1); }

.text-center {
  text-align: center; }

.text-right {
  text-align: right; }

.works {
  display: block;
  margin-bottom: 1.5rem;
  color: #ffffff;
  text-decoration: none; }
  .works:hover {
    text-decoration: underline;
    opacity: 0.9; }
  .works__img {
    width: 100%;
    aspect-ratio: 120/63;
    object-fit: cover; }
  .works__date {
    margin: 1.0rem 0;
    line-height: 1.0;
    font-family: "Red Hat Display", sans-serif;
    font-size: 1.0rem; }
  .works__title {
    font-weight: bold;
    line-height: 1.5; }

.member {
  position: relative;
  z-index: 0;
  color: #ffffff;
  text-decoration: none;
  margin-bottom: 1.5rem; }
  .member::before {
    position: absolute;
    content: "";
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000;
    opacity: 0.1; }
  .member__over {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
  .member__profile {
    width: 100%;
    text-align: center; }
  .member__role {
    width: 100%;
    font-family: "Red Hat Display", sans-serif;
    line-height: 1.2; }
  .member__name {
    width: 100%;
    font-family: "Red Hat Display", sans-serif;
    font-size: 2.0rem;
    font-weight: bold;
    line-height: 1.2; }
    @media screen and (max-width: 767.98px) {
      .member__name {
        font-size: 1.7rem; } }

.article-title {
  padding-top: 5.0rem;
  margin-bottom: 1.0rem;
  font-family: "Red Hat Display", sans-serif;
  font-size: 2.0rem;
  font-weight: bold;
  line-height: 1.5; }
  @media screen and (max-width: 767.98px) {
    .article-title {
      font-size: 1.5rem; } }

.article-date {
  margin: 1.0rem 0;
  font-family: "Red Hat Display", sans-serif;
  font-size: 1.0rem; }

.white-box {
  padding: 2.0rem;
  color: #000000;
  background-color: #ffffff; }

.article-kv {
  display: block;
  margin: 0 auto 1.0rem; }

.fr-view {
  /*
  h3{
    margin: 60px 0 40px;
    padding-bottom: 30px;
    font-size: 2.4rem;
    font-weight: 700;
    line-height: 1.5;
    text-align: center;
    position: relative;
    @include sp{
      margin: 50px 0 30px;
      padding-bottom: 20px;
      font-size: 2.0rem;
    }
    &::after{
      position: absolute;
      content: '';
      top: 100%;
      left: 50%;
      height: 3px;
      width: 60px;
      margin-left: -30px;
      background-color: $blue;
    }
  }
   */ }
  .fr-view h2 {
    font-size: 2.0rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 60px 0 40px;
    padding-bottom: 13px;
    border-bottom: 2px solid #000000;
    color: #000000; }
    @media print, screen and (max-width: 47.99em) {
      .fr-view h2 {
        padding-bottom: 10px;
        font-size: 2.4rem; } }
  .fr-view h3 {
    font-size: 1.8rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 60px 0 40px;
    padding-bottom: 13px;
    border-bottom: 2px solid #000000;
    color: #000000; }
    @media print, screen and (max-width: 47.99em) {
      .fr-view h3 {
        padding-bottom: 10px;
        font-size: 1.5rem; } }
  .fr-view h4 {
    font-size: 1.5rem;
    font-weight: 700;
    line-height: 1.5;
    margin: 60px 0 40px;
    padding-bottom: 13px;
    border-bottom: 2px solid #000000;
    color: #000000; }
    @media print, screen and (max-width: 47.99em) {
      .fr-view h4 {
        padding-bottom: 10px;
        font-size: 1.2rem; } }

.drawer--right .drawer-nav {
  right: -100vw; }

.drawer-nav {
  width: 100vw; }

.drawer-menu__item {
  display: block; }
.drawer-menu__link {
  display: inline-block;
  padding: 1.0rem 1.5rem;
  font-family: "Red Hat Display", sans-serif;
  font-size: 1.2rem;
  font-weight: bold;
  line-height: 1.0;
  color: #ffffff;
  text-decoration: none; }
  .drawer-menu__link.-btn {
    margin-top: 1.0rem;
    background-color: #0014F0;
    border-radius: 50px; }

.bg-yamauchi-sp {
  display: none;
  height: 100vw;
  background-image: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0) 50%, black 100%), url("/assets/img/service/bg_yamauchi_sp.jpg");
  background-size: cover;
  background-position: center center; }
  @media screen and (max-width: 767.98px) {
    .bg-yamauchi-sp {
      display: block; } }

.bg-yamauchi {
  padding: 10.0rem 0 3.0rem;
  background-image: linear-gradient(90deg, rgba(0, 0, 0, 0.9) 0%, rgba(0, 0, 0, 0.5) 50%, rgba(0, 0, 0, 0) 100%), url("/assets/img/service/bg_yamauchi.jpg");
  background-position: right center;
  background-size: cover;
  background-repeat: no-repeat; }
  @media screen and (max-width: 991.98px) {
    .bg-yamauchi {
      background-position: center center;
      background-size: contain; } }
  @media screen and (max-width: 767.98px) {
    .bg-yamauchi {
      background: none;
      padding: 3.0rem 0 3.0rem; } }

.bg-confetti {
  background-image: linear-gradient(rgba(0, 0, 0, 0.5) 0%, rgba(0, 0, 0, 0.5) 100%), url("/assets/img/common/bg2.png"), url("/assets/img/common/confetti.jpg");
  background-size: contain, 70%, contain;
  background-repeat: no-repeat; }

.bg-triangle {
  background-image: url("/assets/img/common/bg2.png");
  background-position: left top;
  background-size: 70%;
  background-repeat: no-repeat; }

.kv {
  position: relative;
  z-index: -1; }
  .kv::after {
    z-index: 8;
    position: absolute;
    content: "";
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(transparent, #000000); }
  .kv__img-sp {
    width: 100%; }
  .kv__bg-triangle {
    z-index: 9;
    position: absolute;
    top: 38%;
    right: 0;
    opacity: 0.7; }
  .kv__txt-over {
    z-index: 10;
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
  .kv__over-inner {
    align-self: center; }

.section-aboutus {
  position: relative;
  overflow-x: hidden;
  padding-bottom: 3.0rem; }

.bg-aboutus {
  padding-bottom: 15.0rem;
  background-image: url("/assets/img/top/aboutus.jpg");
  background-position: right center;
  background-repeat: no-repeat;
  background-size: auto; }
  @media screen and (max-width: 767.98px) {
    .bg-aboutus {
      padding-bottom: 2.0rem;
      background: none; } }

.about-us-heading-1 {
  margin: 2.0rem 0 1.5rem;
  font-family: "Red Hat Display", sans-serif;
  font-size: 3.8rem;
  font-weight: bold;
  line-height: 1.5; }
  @media screen and (max-width: 767.98px) {
    .about-us-heading-1 {
      font-size: 2.0rem; } }

.digital-sports-contents {
  position: absolute;
  left: 0;
  bottom: 0;
  white-space: nowrap; }
  .digital-sports-contents__img {
    min-width: 1000px;
    animation: marquee 18s linear infinite;
    padding-right: 10.0rem; }
@keyframes marquee {
  0% {
    translate: 0; }
  100% {
    translate: calc(-100%); } }
.top-service {
  display: block;
  position: relative;
  z-index: 0;
  color: #ffffff; }
  @media screen and (max-width: 991.98px) {
    .top-service {
      margin-bottom: 1.5rem; } }
  .top-service::before {
    position: absolute;
    content: "";
    z-index: 1;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000;
    opacity: 0.2; }
  .top-service__over {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    flex-wrap: wrap;
    align-items: center; }
  .top-service__over-inner {
    width: 100%;
    text-align: center;
    line-height: 1.5; }
  .top-service__txt {
    font-size: 2.4rem;
    font-weight: bold; }
  .top-service__arrow {
    margin-left: 1.0rem;
    height: 40px; }
  .top-service__img {
    width: 100%;
    transition: 0.6s cubic-bezier(0.33, 1, 0.68, 1); }
  .top-service:hover .top-service__img {
    transform: scale(0.9); }

.top-service-list {
  display: flex;
  flex-wrap: wrap;
  align-content: stretch;
  height: 100%; }
  .top-service-list__item {
    display: flex;
    width: 100%;
    justify-content: center;
    align-items: center;
    padding: 2.0rem 0;
    text-align: center;
    vertical-align: middle;
    font-family: "Red Hat Display", sans-serif;
    font-size: 2.4rem;
    font-weight: bold;
    color: #ffffff;
    background: linear-gradient(90deg, #0014F0 0%, #0014C8 100%);
    background-color: #0014F0; }
    .top-service-list__item:not(:last-child) {
      margin-bottom: 1.5rem; }

.company-table {
  width: 100%; }
  .company-table tr {
    vertical-align: top; }
    .company-table tr:not(:last-child) {
      border-bottom: 1px solid #ffffff; }
    .company-table tr > th, .company-table tr td {
      padding: 1.5rem 0;
      text-align: left; }
    .company-table tr > th {
      width: 120px;
      font-weight: bold; }

.owned-media-card {
  position: relative;
  display: block; }
  .owned-media-card img {
    transition: 0.6s cubic-bezier(0.33, 1, 0.68, 1); }
  .owned-media-card:hover img {
    transform: scale(0.9); }

.service-banner {
  position: relative;
  display: block; }
  .service-banner > img {
    transition: 0.6s cubic-bezier(0.33, 1, 0.68, 1); }
  .service-banner:hover > img {
    transform: scale(0.9); }

.animate {
  opacity: 0; }

.animated {
  animation-duration: 0.5s;
  animation-timing-function: ease-in;
  position: relative;
  opacity: 1; }
  .animated.-left {
    animation-name: left; }
  .animated.-right {
    animation-name: right; }
  .animated.-up {
    animation-name: up; }
  .animated.-absolute {
    position: absolute; }

@keyframes left {
  from {
    opacity: 0;
    left: -100px; }
  to {
    opacity: 1;
    left: 0; } }
@keyframes right {
  from {
    opacity: 0;
    right: -100px; }
  to {
    opacity: 1;
    right: 0; } }
@keyframes up {
  from {
    opacity: 0;
    bottom: -100px; }
  to {
    opacity: 1;
    bottom: 0; } }
.hamburger-menu {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  cursor: pointer;
  width: 60px;
  height: 60px;
  padding: 15px;
  z-index: 1200;
  background-color: transparent; }
  .hamburger-menu span {
    display: inline-block;
    transition: all .4s;
    position: absolute;
    left: 15px;
    width: 30px;
    height: 2px;
    background-color: #ffffff;
    border-radius: 0px; }
    .hamburger-menu span:nth-of-type(1) {
      top: 15px; }
    .hamburger-menu span:nth-of-type(2) {
      top: 29px; }
    .hamburger-menu span:nth-of-type(3) {
      bottom: 15px; }
  .hamburger-menu--normal.active span:nth-of-type(1) {
    -webkit-transform: translateY(14px) rotate(-45deg);
    transform: translateY(14px) rotate(-45deg); }
  .hamburger-menu--normal.active span:nth-of-type(2) {
    opacity: 0; }
  .hamburger-menu--normal.active span:nth-of-type(3) {
    -webkit-transform: translateY(-14px) rotate(45deg);
    transform: translateY(-14px) rotate(45deg); }

.drawer-open .hamburger-menu span:nth-of-type(1) {
  -webkit-transform: translateY(14px) rotate(-45deg);
  transform: translateY(14px) rotate(-45deg); }
.drawer-open .hamburger-menu span:nth-of-type(2) {
  opacity: 0; }
.drawer-open .hamburger-menu span:nth-of-type(3) {
  -webkit-transform: translateY(-14px) rotate(45deg);
  transform: translateY(-14px) rotate(45deg); }

/*# sourceMappingURL=style.css.map */
