#wrapper section.mainvisual {
    position: relative;
  }
  
  #wrapper section.mainvisual div.bg {
    background-image: url("../img/top/mv.jpg");
    background-size: 1400px 684px;
    background-repeat: no-repeat;
    background-position: center top;
    width: 100%;
    height: 684px;
    display: block;
    position: relative;
    background-size: cover;
    background-position: center;
    height: calc(100vh - 100px);
    min-height: 680px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.mainvisual div.bg {
      background-image: url("../img/top/mv-sp.jpg");
      background-size: 100vw 137.2vw;
      background-repeat: no-repeat;
      background-position: center top;
      width: 100%;
      height: 137.2vw;
      display: block;
      position: relative;
      min-height: auto;
    }
  }
  
  #wrapper section.mainvisual p.lead {
    background-image: url("../img/top/lead.png");
    background-size: 668px 19px;
    background-repeat: no-repeat;
    background-position: center top;
    width: 668px;
    height: 19px;
    display: block;
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    text-indent: -9999px;
    position: absolute;
    top: 225px;
    left: 50%;
    transform: translateX(-50%);
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.mainvisual p.lead {
      background-image: url("../img/top/lead-sp.png");
      background-size: 70.533vw 7.466vw;
      background-repeat: no-repeat;
      background-position: center top;
      width: 70.533vw;
      height: 7.466vw;
      display: block;
      position: relative;
      position: absolute;
      top: 32.533vw;
    }
  }
  
  #wrapper section.mainvisual h2 {
    background-image: url("../img/top/h2.png");
    background-size: 868px 59px;
    background-repeat: no-repeat;
    background-position: center top;
    width: 868px;
    height: 59px;
    display: block;
    position: relative;
    overflow: hidden;
    white-space: nowrap;
    text-indent: -9999px;
    position: absolute;
    top: 275px;
    left: 50%;
    transform: translateX(-50%);
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.mainvisual h2 {
      background-image: url("../img/top/h2-sp.png");
      background-size: 70.666vw 20.666vw;
      background-repeat: no-repeat;
      background-position: center top;
      width: 70.666vw;
      height: 20.666vw;
      display: block;
      position: relative;
      position: absolute;
      top: 45.533vw;
    }
  }
  
  #wrapper section.news {
    background-color: #eff0f5;
    padding-top: 100px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news {
      padding-top: 12.666vw;
    }
  }
  
  #wrapper section.news::after {
    background-image: url("../img/top/news-bottom.png");
    background-size: 2000px 282px;
    background-repeat: no-repeat;
    background-position: center top;
    width: 100%;
    height: 282px;
    display: block;
    position: relative;
    content: " ";
    background-color: white;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news::after {
      background-image: url("../img/top/news-bottom-sp.png");
      background-size: 100vw 13.733vw;
      background-repeat: no-repeat;
      background-position: center top;
      width: 100%;
      height: 13.733vw;
      display: block;
      position: relative;
      content: " ";
      background-color: white;
    }
  }
  
  #wrapper section.news h3 {
    font-size: 30px;
    margin-bottom: 60px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news h3 {
      text-align: center;
      font-size: 5.6vw;
    }
  }
  
  #wrapper section.news ul li {
    border-bottom: 1px solid #cccccc;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news ul li {
      padding-bottom: 13.333vw;
      margin-bottom: 13.333vw;
    }
  }
  
  #wrapper section.news ul li a {
    display: flex;
    color: black;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news ul li a {
      flex-wrap: wrap;
      justify-content: space-between;
    }
  }
  
  #wrapper section.news ul li a time {
    font-size: 18px;
    width: 145px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news ul li a time {
      width: auto;
      font-size: 4vw;
    }
  }
  
  #wrapper section.news ul li a span.category {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 130px;
    height: 20px;
    margin-left: 30px;
    background-color: #dedede;
    font-size: 15px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news ul li a span.category {
      width: 26.666vw;
      font-size: 3.6vw;
    }
  }
  
  #wrapper section.news ul li a p.text {
    margin-left: 30px;
    width: 673px;
    font-size: 18px;
  }
  
  #wrapper section.news ul li a p.text.en {
    letter-spacing: 0;
  }
  
  @media screen and (min-width: 813px) {
    #wrapper section.news ul li a p.text.en {
      font-size: 20px;
    }
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news ul li a p.text {
      width: 100%;
      margin-left: 0;
      margin-top: 5vw;
      font-size: 4vw;
    }
  }
  
  #wrapper section.news div.buttons-row {
    display: flex;
    justify-content: center;
    margin-top: 50px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news div.buttons-row {
      margin-top: 10.666vw;
    }
  }
  
  #wrapper section.news div.buttons-row a {
    background-image: url("../img/top/contents-row-button.png");
    background-size: 260px 52px;
    background-repeat: no-repeat;
    background-position: center top;
    width: 260px;
    height: 52px;
    display: block;
    position: relative;
    font-size: 18px;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news div.buttons-row a {
      background-image: url("../img/top/contents-row-button.png");
      background-size: 69.3333vw 13.866vw;
      background-repeat: no-repeat;
      background-position: center top;
      width: 69.3333vw;
      height: 13.866vw;
      display: block;
      position: relative;
      display: flex;
    }
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.news div.buttons-row a {
      margin-bottom: 10.666vw;
      font-size: 4.26667vw;
    }
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list {
      margin-top: 25.333vw;
    }
  }
  
  #wrapper section.contents-list div.inner {
    padding-bottom: 191px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner {
      padding-bottom: 26.666vw;
    }
  }
  
  #wrapper section.contents-list div.inner div.row:nth-of-type(n+2) {
    margin-top: 190px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner div.row:nth-of-type(n+2) {
      margin-top: 26.666vw;
    }
  }
  
  #wrapper section.contents-list div.inner div.row h3 {
    font-size: 30px;
    margin-bottom: 35px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner div.row h3 {
      text-align: center;
      font-size: 5.6vw;
    }
  }
  
  #wrapper section.contents-list div.inner div.row p.sub-title {
    font-size: 11px;
    color: #999999;
    margin-bottom: 35px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner div.row p.sub-title {
      text-align: center;
      font-size: 2.6666vw;
    }
  }
  
  #wrapper section.contents-list div.inner div.row div.contents-row {
    display: flex;
    justify-content: space-between;
    width: 100%;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner div.row div.contents-row {
      flex-direction: column;
      align-items: center;
    }
  }
  
  #wrapper section.contents-list div.inner div.row div.contents-row p.text {
    width: 730px;
    font-size: 18px;
    line-height: 36px;
  }
  
  #wrapper section.contents-list div.inner div.row div.contents-row p.text.en {
    letter-spacing: 0;
  }
  
  @media screen and (min-width: 813px) {
    #wrapper section.contents-list div.inner div.row div.contents-row p.text.en {
      font-size: 20px;
    }
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner div.row div.contents-row p.text {
      width: 100%;
      line-height: 8vw;
      font-size: 4vw;
    }
  }
  
  #wrapper section.contents-list div.inner div.row div.contents-row div.buttons-row {
    display: flex;
    flex-direction: column;
  }
  
  #wrapper section.contents-list div.inner div.row div.contents-row div.buttons-row a:nth-child(2) {
    margin-top: 50px;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner div.row div.contents-row div.buttons-row a:nth-child(2) {
      margin-top: 8vw;
    }
  }
  
  #wrapper section.contents-list div.inner div.row div.contents-row a {
    background-image: url("../img/top/contents-row-button.png");
    background-size: 260px 52px;
    background-repeat: no-repeat;
    background-position: center top;
    width: 260px;
    height: 52px;
    display: block;
    position: relative;
    font-size: 18px;
    color: white;
    display: flex;
    justify-content: center;
    align-items: center;
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner div.row div.contents-row a {
      background-image: url("../img/top/contents-row-button.png");
      background-size: 69.3333vw 13.866vw;
      background-repeat: no-repeat;
      background-position: center top;
      width: 69.3333vw;
      height: 13.866vw;
      display: block;
      position: relative;
      display: flex;
    }
  }
  
  @media screen and (max-width: 812px) {
    #wrapper section.contents-list div.inner div.row div.contents-row a {
      margin-top: 10.666vw;
      font-size: 4.26667vw;
    }
  }
  
  /*# sourceMappingURL=top.css.map */