:root{
    --20px: 20px;
}

body{
    background: #000000;
    color: #ffffff;
    font-family:"Inter", "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
}

img{
    max-width: 100%;
    height: auto;
}

.main-image {
    width: 100%;
    height: 100vh;
    overflow: hidden;
}

.main-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    max-width: unset;
}

.scroll_down{
  position:absolute;
  bottom:50px;
  right:50%;
  animation: arrowmove 1s ease-in-out infinite;
}

.scroll_down a{
  position: absolute;
  left: -24px;
  bottom: 30px;
  color: #fff;
  font-size: 14px;
  letter-spacing: .2em;
  text-transform: uppercase;
  width: 24px;
  height: 24px;
  text-decoration: none;
}

.text {
  display: block;
  margin-top: 70px;
  margin-left: -14px;
  font-size: 12px;
  color: #fff;
  text-transform: uppercase;
  white-space: nowrap;
  letter-spacing: 2px;
}

.arrow {
  position: absolute;
  width: 28px;
  height: 5px;
  opacity: 0;
  transform: scale3d(0.5, 0.5, 0.5);
  animation: move 3s ease-out infinite;
}

.arrow:first-child {
  animation: move 3s ease-out 1s infinite;
}

.arrow:nth-child(2) {
  animation: move 3s ease-out 2s infinite;
}

.arrow:before,
.arrow:after {
  content: ' ';
  position: absolute;
  top: 0;
  height: 100%;
  width: 51%;
  background: #fff;
}

.arrow:before {
  left: 0;
  transform: skew(0deg, 30deg);
}

.arrow:after {
  right: 0;
  width: 50%;
  transform: skew(0deg, -30deg);
}

@keyframes move {
  25% { opacity: 1; }
  33% { opacity: 1; transform: translateY(30px); }
  67% { opacity: 1; transform: translateY(40px); }
  100% { opacity: 0; transform: translateY(55px) scale3d(0.5, 0.5, 0.5); }
}


.unit-block{
    margin: 50px 0 0;
    padding: 50px 0 50px;
}

.inner{
    max-width: 1200px;
    margin: 0 auto;
}

ul,li{
    list-style: none;
    padding: 0;
    margin: 0;
}

.lineupbox{
    background: url(../img/lineup/bk-img.png) top center no-repeat;
    background-size: 100%;
    padding: 60px 0;
    background-attachment: fixed
}

.lineup-title{
    text-align: center;
    font-size: 60px;
    margin: 60px 0;
}

.lineup-list{
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-around;
    margin: 0 0 80px;
}
.lineup-list:nth-child(odd){
    flex-direction: row-reverse;
}
.lineup-list li{
    width: 50%;
}

.lineup-list .lineup-info{
    padding: 30px;
}

.lineup-list .lineup-info p{
    letter-spacing: 0.05em;
}

.lineup-list .lineup-info .en-name{
    font-size: 40px;
    margin: 0 0 20px;
    letter-spacing: 0.05em;
}

.lineup-list .lineup-info .jp-name{
    display: block;
    font-size: 20px;
    color: #fa0505;
    font-style: normal;
}

.lineup-info{
    max-width: 400px;
}

/*--btn--*/
.button-23{
    margin: 30px 0 0;
}
.button-23 a {
  font-size: 14px;
  letter-spacing: 0.1em;
  color: #fff;
  font-weight: 400;
  border: 1px solid #fff;
  display: block;
  position: relative;
  box-sizing: border-box;
  max-width: 300px;
  text-align: center; 
  padding: 16px 64px;
  margin: 20px 0 0;
  text-decoration: none;
  cursor: pointer;
  transition: all 0.3s;
}

.button-23 a::after {
  content: "";
  position: absolute;
  top: 50%;
  right: -30px;
  width: 60px;
  height: 1px;
  background: #fff;
  transition: all 0.3s ease;
}

.button-23 a:hover::after {
  animation: OutIn-Line 700ms;
  transition: all 0.3s;
}

@keyframes OutIn-Line {
    0% {
        -webkit-transform: scale3d(1,1,1);
        transform: scale3d(1,1,1);
        -webkit-transform-origin: 100% 0;
        transform-origin: 100% 0
    }

    50% {
        -webkit-transform: scale3d(0,1,1);
        transform: scale3d(0,1,1);
        -webkit-transform-origin: 100% 0;
        transform-origin: 100% 0
    }

    50.1% {
        -webkit-transform: scale3d(0,1,1);
        transform: scale3d(0,1,1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    100% {
        -webkit-transform: scale3d(1,1,1);
        transform: scale3d(1,1,1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }
}


/*--btn end--*/

@media screen and (max-width:820px) {
    .lineup-list li{
    width: 70%;
    }
    .lineup-list .lineup-img{
    margin: 0 0 30px;
    }
    .lineupbox{
    background: url(../img/lineup/bk-img-sp.png) top center no-repeat;
    background-size:100%;
    padding: 60px 0;
}
}

@media screen and (max-width:500px) {
    .lineup-list li{
    width: 90%;
    }
}