@charset "UTF-8";
html {
  font-size: 62.5%; }

body {
  color: #313131;
  overflow-scrolling: none;
  width: 100vw;
  height: 100vh;
  font-size: 16px;
  font-size: 1.6em;
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Noto Sans Japanese", "ヒラギノ角ゴ ProN W3", Meiryo, sans-serif; }

.Grobal_wrapper {
  width: 100%;
  height: 100%; }

.Side-navigation {
  width: 40px;
  height: 200px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  position: fixed;
  z-index: 2;
  top: 50%;
  -webkit-transform: translate(0, -50%);
          transform: translate(0, -50%);
  left: 100%; }
  .Side-navigation__lists {
    width: 100%;
    height: 100%; }
  .Side-navigation__list {
    width: 100%;
    height: 20%;
    display: inline-block; }
  .Side-navigation__link {
    width: 100%;
    height: 100%;
    display: -ms-flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
    .Side-navigation__link:hover .Side-navigation__circle {
      background-color: #FF9100; }
      .Side-navigation__link:hover .Side-navigation__circle::after {
        opacity: 1;
        right: 155%;
        display: block; }
  .Side-navigation__circle {
    width: 10px;
    height: 10px;
    background-color: #FFD180;
    border-radius: 50%;
    position: relative; }
    .Side-navigation__circle::after {
      position: absolute;
      top: -100%;
      right: 280%;
      font-size: 1.6rem;
      font-family: helvetica, sans-serif;
      text-decoration: none;
      color: #f57a00;
      -webkit-transition: .2s;
      transition: .2s;
      opacity: 0;
      background-color: #fafafa;
      border-color: #f57a00;
      border: 1px solid;
      border-radius: 50px;
      padding: 5px; }
    .Side-navigation__circle--top::after {
      content: "Top"; }
    .Side-navigation__circle--about::after {
      content: "About"; }
    .Side-navigation__circle--active::after {
      content: "Activities"; }
    .Side-navigation__circle--detail::after {
      content: "Details"; }
    .Side-navigation__circle--genre::after {
      content: "Genre"; }

.top {
  position: fixed !important;
  width: 100vw;
  height: 100vh; }
  .top-filter {
    position: absolute;
    left: 0;
    height: 100%;
    width: 100%;
    background-color: black;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column; }
  .top-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-image: url("../img/overlay.png");
    opacity: .15; }
  .top-overlay2 {
    position: absolute;
    left: 0%;
    z-index: 1;
    width: 100%;
    height: 100%;
    background-color: #f57a00; }
    .top-overlay2-wrapper {
      position: absolute;
      overflow: hidden;
      width: 95%;
      height: 95%; }
  .top-border {
    position: absolute;
    fill: none;
    width: 95%;
    height: 95%;
    stroke: #fafafa;
    stroke-width: 2px;
    z-index: 1;
    pointer-events: none; }
  .top-links {
    position: absolute;
    top: 50px;
    left: 4%;
    width: 110px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between; }
  .top-title {
    color: #fafafa;
    font-size: 8rem;
    position: absolute;
    bottom: 13%;
    right: 3%;
    letter-spacing: 1px;
    text-align: right;
    font-family: 'Alfa Slab One', cursive; }
    .top-title span {
      color: #f57a00;
      font-size: 10rem;
      display: block; }
  .top-subtitle {
    color: #fafafa;
    position: absolute;
    top: 50px;
    left: 5%;
    font-size: 3.5rem;
    line-height: 5.5rem;
    text-align: left;
    font-weight: 600; }
  .top-opening {
    color: #fafafa;
    font-size: 7rem;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    z-index: 1;
    width: 500px;
    height: 7rem;
    overflow: hidden;
    font-family: 'Alfa Slab One', cursive; }
    .top-opening ul {
      position: relative;
      width: 100%;
      height: 100%;
      margin: 0 auto;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -webkit-box-orient: vertical;
      -webkit-box-direction: normal;
          -ms-flex-direction: column;
              flex-direction: column;
      -webkit-box-pack: center;
          -ms-flex-pack: center;
              justify-content: center;
      top: 200%; }
    .top-opening li {
      text-align: center; }
  .top-scrollButton {
    -webkit-transform: rotate(45deg) translate(0, 0);
            transform: rotate(45deg) translate(0, 0);
    width: 30px;
    height: 30px;
    position: absolute;
    bottom: 50px;
    border-right: 4px solid #969696;
    border-bottom: 4px solid #969696;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-transition: .2s;
    transition: .2s;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    cursor: pointer; }
    .top-scrollButton:hover {
      border-color: #fafafa; }

.logo {
  width: 7%;
  top: 10px;
  fill: transparent;
  stroke: #fafafa;
  stroke-width: .8px;
  position: absolute;
  right: 0;
  z-index: 2; }

.twitter-link,
.youtube-link {
  font-size: 3rem;
  color: #fafafa;
  padding: 10px;
  -webkit-transition: .3s;
  transition: .3s; }

.twitter-link:hover {
  color: #55acee;
  border-color: #55acee; }

.youtube-link:hover {
  color: #cd201f;
  border-color: #cd201f; }

main {
  position: relative;
  width: 100%;
  top: 100vh;
  padding-bottom: 20px;
  padding-right: 7%;
  -webkit-transition: .5s;
  transition: .5s;
  z-index: 1;
  background: #f57a00;
  -webkit-box-sizing: border-box;
          box-sizing: border-box; }

.about {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  background: #f9f3f0;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 830px;
  margin-bottom: 20px;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  overflow: hidden;
  padding: 50px; }
  .about-down, .about-up {
    width: 100%;
    height: 45%;
    margin: 10px;
    min-height: 330px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex; }
  .about-down {
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end; }
  .about-left {
    width: 500px;
    height: 100%;
    padding: 50px;
    opacity: 0;
    -webkit-transform: translate(0, 50px);
            transform: translate(0, 50px);
    -webkit-box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.5);
            box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.5);
    z-index: 1;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    background-color: #fafafa; }
  .about-right, .about-right2 {
    width: 50%;
    height: 100%;
    position: relative;
    overflow: hidden;
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center;
    position: relative; }
    .about-right-filter, .about-right2-filter {
      width: 100%;
      height: 100%;
      background-color: #f57a00;
      position: absolute;
      left: -100%;
      opacity: 0; }
  .about-right {
    top: -30px;
    right: 30px; }
  .about-right2 {
    top: -30px;
    right: -30px; }
  .about-title span:first-child {
    position: relative;
    font-size: 2.2rem;
    display: block;
    font-weight: 600; }
    .about-title span:first-child::after {
      content: "";
      display: block;
      width: 100%;
      height: 1px;
      position: absolute;
      bottom: -3px;
      background: -webkit-gradient(linear, left top, right top, from(#f57a00), to(transparent));
      background: linear-gradient(90deg, #f57a00, transparent); }
  .about-title span:nth-child(2) {
    font-size: 1.2rem;
    font-weight: 400; }
  .about-dancing {
    font-size: 3.4rem; }
  .about-content {
    margin-top: 20px;
    font-size: 1.6rem;
    line-height: 2.8rem; }
    .about-content span {
      font-size: 2.2rem;
      font-weight: 600;
      line-height: 5rem; }

.detail {
  background: #f9f3f0;
  height: 500px;
  width: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-bottom: 20px;
  padding: 20px; }
  .detail-title {
    font-size: 4.5rem;
    line-height: 4.5rem;
    font-weight: 600;
    position: relative; }
    .detail-title > span {
      font-size: 1.4rem;
      margin-left: 10px; }
  .detail-content {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    width: 100%;
    font-size: 1.6rem;
    height: calc(100% - 4.5rem - 20px); }
  .detail-left {
    width: 50%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    height: 100%;
    padding: 20px; }
  .detail-right {
    width: 50%;
    height: 100%;
    position: relative;
    overflow: hidden; }
  .detail-img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
    display: none; }
  .detail-filter {
    background-color: #f57a00;
    position: absolute;
    opacity: 0;
    top: 0;
    left: -100%;
    width: 100%;
    height: 100%; }
  .detail-lists {
    height: 370px; }
    .detail-lists > li {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      height: 6.5rem;
      -webkit-box-align: center;
          -ms-flex-align: center;
              align-items: center;
      border-top: 1px solid #d4d4d4; }
      .detail-lists > li:last-child {
        border-bottom: 1px solid #d4d4d4;
        height: 16rem;
        line-height: 2.5rem; }
  .detail-inner {
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    margin-left: 20px; }
    .detail-inner span {
      margin-right: 15px;
      margin-left: 5px; }
  .detail-topicwrapper {
    height: 100%;
    width: 150px;
    min-width: 150px;
    background-color: #ececec;
    font-weight: 600;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding-left: 20px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }

.news {
  position: relative;
  font-size: 1.4rem;
  line-height: 2rem;
  margin-bottom: 20px;
  width: 100%;
  padding: 20px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #f9f3f0; }
  .news-title {
    font-size: 4.5rem;
    line-height: 4.5rem;
    margin-bottom: 20px;
    font-weight: 600;
    position: relative; }
    .news-title span {
      font-size: 1.4rem;
      margin-left: 10px; }
  .news-inner {
    width: 100%; }
  .news-lists {
    width: 100%;
    height: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center; }
  .news-list:last-child {
    -webkit-box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.5);
            box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.5);
    opacity: 0;
    width: 420px;
    -webkit-transform: translate(0px, 50px);
            transform: translate(0px, 50px);
    background-color: white;
    border-radius: 3px; }
  .news-list:not(:last-child) {
    width: 240px;
    background-color: #fafafa;
    border-radius: 3px;
    position: relative;
    -webkit-box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.5);
            box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.5);
    opacity: 0;
    -webkit-transform: translate(0px, 50px);
            transform: translate(0px, 50px); }
    .news-list:not(:last-child)::after, .news-list:not(:last-child)::before {
      content: "";
      display: block;
      position: absolute;
      width: 50px;
      height: 50px; }
    .news-list:not(:last-child)::after {
      border-top: 5px solid #f57a00;
      border-left: 5px solid #f57a00;
      top: -20px;
      left: -20px; }
    .news-list:not(:last-child)::before {
      border-bottom: 5px solid #f57a00;
      border-right: 5px solid #f57a00;
      bottom: -20px;
      right: -20px; }
  .news-image {
    width: 100%;
    height: 170px;
    background-color: #999; }
  .news-topic {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-top: -5px; }
    .news-topic span {
      text-align: center;
      font-weight: 600;
      padding: 5px 0;
      width: 50%;
      display: block;
      border-bottom: 1px solid #b4b4b4; }
      .news-topic span:first-child {
        border-right: 1px solid #b4b4b4; }
  .news-content {
    padding: 5px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }

.genre {
  position: relative;
  width: 100%;
  padding: 20px;
  line-height: 2rem;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background-color: #f9f3f0; }
  .genre-title {
    font-weight: 600;
    font-size: 4.5rem;
    line-height: 4.5rem;
    margin-bottom: 10px; }
    .genre-title span {
      font-size: 1.4rem;
      margin-left: 10px; }
  .genre-inner {
    width: 100%;
    -webkit-box-sizing: border-box;
            box-sizing: border-box; }
  .genre-lists {
    width: 100%;
    height: 100%;
    margin-top: 30px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: distribute;
        justify-content: space-around;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap; }
  .genre-list {
    width: 500px;
    width: 45%;
    margin-bottom: 50px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.5);
            box-shadow: 1px 2px 10px rgba(0, 0, 0, 0.5);
    background: #fafafa;
    border-radius: 2px; }
  .genre-image {
    width: 60%;
    height: 250px;
    -o-object-fit: cover;
       object-fit: cover;
    background-color: #999; }
  .genre-content {
    width: 40%;
    padding: 10px;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    font-size: 1.4rem; }
    .genre-content span {
      font-size: 1.6rem;
      font-weight: 600;
      padding: 5px 0;
      margin-bottom: 5px;
      display: block;
      border-bottom: 1px solid #333; }

footer {
  height: 200px;
  width: 100%;
  background-color: #444;
  position: relative;
  top: 100vh; }
