#contents {
  padding-top: 0; }

body:not(.scrolled) #head nav .navi .navi_btn .a {
  color: #FFF; }

@media (min-width: 1280px) {
  .block.head_fixed {
    display: flex;
    flex-direction: row;
    grid-gap: var(--space4);
    --headWidth: 360px; }
    .block.head_fixed .head {
      width: var(--headWidth); }
      .block.head_fixed .head .title {
        letter-spacing: 0.3rem;
        line-height: 1.75; }
    .block.head_fixed .body {
      width: calc(100% - (var(--headWidth) + var(--space4))); } }

#mv {
  height: 100dvh;
  display: flex;
  align-items: flex-end; }
  #mv .bg_wrap {
    height: 100%; }
    #mv .bg_wrap img,
    #mv .bg_wrap source,
    #mv .bg_wrap sourceset {
      object-fit: cover;
      width: 100%;
      height: 100%; }
  #mv .mv_main {
    display: flex;
    flex-direction: column;
    grid-gap: var(--space3);
    padding-bottom: var(--space4);
    color: #FFF; }
    #mv .mv_main .copy {
      font-size: 3rem;
      line-height: 1.25; }
    #mv .mv_main .thesaurus {
      width: 180px;
      aspect-ratio: 365/72; }
      #mv .mv_main .thesaurus .icon {
        background-image: url(../images/home/thesaurus.png);
        width: 100%;
        height: 100%; }
    #mv .mv_main .mv_text {
      font-size: var(--fontSize_s);
      line-height: 2; }
    #mv .mv_main .mv_upper {
      display: flex;
      grid-gap: var(--space3);
      flex-direction: column; }
    #mv .mv_main .mv_bottom {
      display: flex;
      flex-direction: column;
      grid-gap: var(--space2) var(--space3);
      padding-top: var(--space3);
      border-top: 1px solid #FFF; }
      #mv .mv_main .mv_bottom .by {
        display: flex;
        flex-direction: row;
        grid-gap: 0px var(--space1);
        align-items: center; }
        #mv .mv_main .mv_bottom .by::before {
          content: "by";
          font-size: var(--fontSize_s); }
        #mv .mv_main .mv_bottom .by .icon {
          width: 135px;
          aspect-ratio: 269/37;
          background-image: url("../images/common/logo_foot.png"); }
  @media (min-width: 768px) {
    #mv .mv_main .copy {
      font-size: 5rem; }
    #mv .mv_main .thesaurus {
      width: 365px; } }
  @media (min-width: 1280px) {
    #mv .mv_main .mv_bottom {
      width: 100%;
      justify-content: space-between;
      flex-direction: row-reverse; }
    #mv .mv_main .mv_text {
      text-align: right;
      font-size: var(--fontSize_n); } }

#system {
  background: var(--primaryColor);
  color: #FFF; }
  #system .list_wrap {
    grid-gap: 0px; }
    #system .list_wrap .list {
      border-top: 1px solid #FFF; }
      #system .list_wrap .list .a {
        color: #FFF;
        flex-direction: row;
        justify-content: flex-start;
        transition: var(--animationDuration) padding-left;
        padding-left: 0;
        padding-top: var(--space3);
        padding-bottom: var(--space3); }
        #system .list_wrap .list .a::before {
          content: "";
          display: flex;
          align-items: center;
          justify-content: center;
          width: 48px;
          height: 48px;
          background: url("../images/common/icon_arrow.png") no-repeat center center;
          background-size: 20px 20px;
          position: absolute;
          top: 0;
          bottom: 0;
          margin: auto;
          left: 0px;
          transition: var(--animationDuration) opacity, var(--animationDuration) transform; }
        #system .list_wrap .list .a:hover {
          opacity: 1;
          filter: Alpha(opacity=100);
          padding-left: calc( 48px + var(--space2) ); }
        #system .list_wrap .list .a:not(:hover)::before {
          transform: translateX(-48px);
          opacity: 0;
          filter: Alpha(opacity=0); }
        #system .list_wrap .list .a .txt {
          font-size: 3rem; }

@media (min-width: 1280px) {
  #event .to_link {
    margin-top: calc( -1 * var(--space5) * 1.5 ); } }
