body {
  background: linear-gradient(to right, #343434, #262626);
}

#page {
  background-color: transparent;
  transition: background-color 0.1s ease;
}

#page.is-sec-global-racing {
  background-color: #000000;
}

#page::before {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  content: "";
  background: linear-gradient(to right, #f8f8f8, #dcdcdc);
  opacity: 0;
  transition: opacity 0.1s ease;
}

#page.is-sec-kawasaki-world::before {
  opacity: 1;
}

.kv {
  position: relative;
  z-index: 2;
  margin-top: 10px;
}

@media screen and (max-width:768px) {
  .kv {
    margin-top: 0;
    padding-top: 5.2083333333vw;
  }
}

.kv__scroll {
  position: absolute;
  transform: rotate(90deg);
  transform-origin: left center;
  color: #727272;
  display: flex;
  align-items: center;
  left: 2.6315789474vw;
  bottom: 155px;
  letter-spacing: 0.08em;
}

@media screen and (max-width:768px) {
  .kv__scroll {
    left: initial;
    right: 3.90625vw;
    font-size: 1.1rem;
    transform-origin: right center;
    bottom: -10px;
  }
}

.kv__scroll::after {
  display: block;
  content: "";
  width: 100px;
  height: 1px;
  background-color: #727272;
  margin-left: 20px;
}

@media screen and (max-width:768px) {
  .kv__scroll::after {
    width: 80px;
    margin-left: 7px;
  }
}

@media screen and (max-width:768px) {
  .kv__container {
    padding-left: 0;
    padding-right: 7.8125vw;
  }
}

.kv-main {
  box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.15);
}

.news {
  position: relative;
  display: flex;
  justify-content: flex-end;
  z-index: 1;
  margin: -3.6184210526vw 0 0;
}

@media screen and (max-width:768px) {
  .news {
    margin: -10.9375vw 0 0;
  }
}

.news__container {
  max-width: 1200px;
  width: calc(100% - 5.2631578947vw);
}

@media screen and (max-width:768px) {
  .news__container {
    width: 100%;
  }
}

.news__wrapper {
  position: relative;
  color: #c5c5c5;
  background-color: #3f3f3f;
  width: 100%;
  padding: 6.5789473684vw 0.6578947368vw 3.9473684211vw 3.9473684211vw;
}

@media screen and (max-width:768px) {
  .news__wrapper {
    padding: 19.53125vw 0 9.6354166667vw 7.8125vw;
  }
}

@media screen and (max-width:768px) {
  .news__head {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}

.news__ttl {
  color: #fff;
  width: 16rem;
}

@media print, screen and (min-width:769px) {
  .news__ttl {
    position: absolute;
  }
}

.news__ttl span {
  display: block;
  font-size: 1.6rem;
}

@media screen and (max-width:768px) {
  .news__ttl span {
    font-size: 3.6458333333vw;
  }
}

.news__ttl b {
  display: block;
  font-size: 4rem;
  line-height: 1;
  margin-top: 3px;
}

@media screen and (max-width:768px) {
  .news__ttl b {
    font-size: 9.1145833333vw;
  }
}

@media print, screen and (min-width:769px) {
  .news-article {
    width: calc(100% - 310px);
    border-right: 1px solid #828282;
    margin-left: 150px;
    padding-right: 30px;
  }
}

@media screen and (max-width:768px) {
  .news-article {
    margin-top: 6.5104166667vw;
  }
}

.news-article__item + .news-article__item {
  margin-top: 25px;
}

@media screen and (max-width:768px) {
  .news-article__item + .news-article__item {
    margin-top: max(3.90625vw, 15px);
  }
}

@media print, screen and (min-width:769px) {
  .news-article__link:hover {
    color: #69be28;
  }
}

.news-article__info {
  font-size: 1.3rem;
  color: #727272;
}

@media screen and (max-width:768px) {
  .news-article__info {
    font-size: 1.1rem;
    font-size: max(2.8645833333vw, 1.1rem);
  }
}

.news-article__cat {
  position: relative;
  padding-left: 15px;
  margin-left: 15px;
}

.news-article__cat::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 1px;
  height: 100%;
  background-color: #727272;
}

.news-article__txt {
  font-weight: 500;
  font-size: 1.5rem;
  margin-top: 8px;
  line-height: 1.8;
}

@media screen and (max-width:768px) {
  .news-article__txt {
    font-size: 1.2rem;
    font-size: max(3.125vw, 1.2rem);
    margin-top: 5px;
  }
}

@media print, screen and (min-width:769px) {
  .news-more {
    position: absolute;
    top: 6.5789473684vw;
    bottom: 2.6315789474vw;
    margin: auto;
    right: 0;
    width: 150px;
    text-align: center;
    align-self: center;
    display: flex;
    align-items: center;
    justify-content: center;
  }
}

@media screen and (max-width:768px) {
  .news-more {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 32.5520833333vw;
    border-left: 1px solid #727272;
    height: 10.4166666667vw;
  }
}

.news-more a {
  font-weight: 500;
  color: #f8f8f8;
  font-size: 1.6rem;
}

@media print, screen and (min-width:769px) {
  .news-more a:hover {
    color: #69be28;
  }
}

@media screen and (max-width:768px) {
  .news-more a {
    font-size: 3.6458333333vw;
  }
}

.hyodorogen {
  position: relative;
  padding-top: 16.8421052632vw;
  padding-bottom: 23.0263157895vw;
  opacity: 1;
  transition: opacity 0.3s ease 0.2s;
}

.hyodorogen::before {
  position: absolute;
  content: "";
  width: 26.3157894737vw;
  height: 26.3157894737vw;
  border-radius: 100vh;
  background-color: #515151;
  box-shadow: 0px 0px 16.4473684211vw 26.3157894737vw #515151;
}

@media screen and (max-width:768px) {
  .hyodorogen {
    padding-top: 26.0416666667vw;
    padding-bottom: 70.3125vw;
  }
}

.is-sec-kawasaki-world .hyodorogen,
.is-sec-global-racing .hyodorogen {
  opacity: 0;
  transition: opacity 0.2s ease 0s;
}

.hyodorogen__box {
  position: absolute;
  background: #414141;
  width: 89.4736842105vw;
  height: 34.8684210526vw;
  bottom: 15.1315789474vw;
  left: 0;
}

@media screen and (max-width:768px) {
  .hyodorogen__box {
    width: 89.84375vw;
    height: 58.59375vw;
    bottom: 26.0416666667vw;
  }
}

.hyodorogen__container {
  padding-left: 10.5263157895vw;
}

@media screen and (max-width:768px) {
  .hyodorogen__container {
    padding-left: 7.8125vw;
  }
}

.hyodorogen-main {
  box-shadow: 0px 10px 30px 0px rgba(0, 0, 0, 0.15);
}

.hyodorogen__side-ttl {
  position: absolute;
  font-size: 5.9210526316vw;
  transform: rotate(90deg);
  transform-origin: left center;
  line-height: 1.2;
  z-index: 1;
  top: 7.8947368421vw;
  left: 9.8684210526vw;
  letter-spacing: 0.05em;
  font-weight: 300;
  color: #fff;
}

@media screen and (max-width:768px) {
  .hyodorogen__side-ttl {
    font-size: 9.1145833333vw;
    top: 11.71875vw;
    width: 130.2083333333vw;
    left: 7.8125vw;
  }
}

.hyodorogen__txts {
  position: absolute;
  margin-top: -17.1052631579vw;
  margin-left: -6.5789473684vw;
}

@media screen and (max-width:768px) {
  .hyodorogen__txts {
    margin-top: -2.6041666667vw;
    margin-left: 7.8125vw;
  }
}

.hyodorogen__ttl {
  font-size: 3.9473684211vw;
  color: #fff;
  font-weight: 500;
  line-height: 1;
}

@media screen and (max-width:768px) {
  .hyodorogen__ttl {
    font-size: 7.8125vw;
  }
}

.hyodorogen__lead {
  color: #fff;
  margin-top: 1.9736842105vw;
  font-weight: 500;
  font-size: 1.8rem;
  font-size: max(1.1842105263vw, 1.6rem);
  line-height: 1.8;
}

@media screen and (max-width:768px) {
  .hyodorogen__lead {
    font-size: 1.3rem;
    font-size: max(3.3854166667vw, 1.3rem);
    margin-top: 5.2083333333vw;
    mix-blend-mode: difference;
  }
}

.hyodorogen__link-btn {
  margin-top: 2.6315789474vw;
}

@media screen and (max-width:768px) {
  .hyodorogen__link-btn {
    margin-top: 1.953125vw;
  }
}

.global-racing {
  position: relative;
  z-index: 1;
  padding-top: 23.6842105263vw;
  padding-bottom: 23.0263157895vw;
  opacity: 0;
  transition: opacity 0.2s ease 0s;
}

@media screen and (max-width:768px) {
  .global-racing {
    padding-top: 26.0416666667vw;
    padding-bottom: 36.4583333333vw;
  }
}

.is-sec-global-racing .global-racing {
  opacity: 1;
  transition: opacity 0.3s ease 0.2s;
}

.global-racing__ttl {
  position: absolute;
  text-align: center;
  top: 11.1842105263vw;
  left: 0;
  right: 0;
  font-size: 11.1842105263vw;
  letter-spacing: 0.05em;
  color: #fff;
  z-index: 2;
  font-weight: 500;
}

@media screen and (max-width:768px) {
  .global-racing__ttl {
    font-size: 15.625vw;
    top: 10.4166666667vw;
    text-align: center;
    width: 104.1666666667vw;
    left: -1.953125vw;
    right: -3.2552083333vw;
  }
}

.global-racing-main {
  z-index: 1;
}

.global-racing__txts {
  position: relative;
  margin-left: 47.3684210526vw;
  margin-top: 6.5789473684vw;
  z-index: 3;
}

@media screen and (max-width:768px) {
  .global-racing__txts {
    margin-left: 0;
    margin-top: 10.4166666667vw;
  }
}

.global-racing__s-ttl {
  font-size: 2.7631578947vw;
  font-weight: 400;
  line-height: 1.8;
  color: #9f9f9f;
}

@media screen and (max-width:768px) {
  .global-racing__s-ttl {
    font-size: 6.25vw;
  }
}

.global-racing__lead {
  line-height: 3;
  margin-top: 3.2894736842vw;
  font-size: 1.4rem;
  font-size: max(0.9210526316vw, 1.4rem);
  color: #7e7e7e;
  font-weight: 500;
}

@media screen and (max-width:768px) {
  .global-racing__lead {
    font-size: 1.3rem;
    font-size: max(3.3854166667vw, 1.3rem);
    line-height: 2.5;
  }
}

@media screen and (max-width:768px) {
  .global-racing-dec__txt {
    position: absolute;
    transform: rotate(90deg);
    transform-origin: right center;
    color: #0f0f0f;
    letter-spacing: 0.03em;
    font-size: 28.6458333333vw;
    line-height: 1;
    margin-top: 136.71875vw;
    width: 182.2916666667vw;
    right: 10.4166666667vw;
  }
}

.global-racing__link-btn__ico {
  margin-top: 1.9736842105vw;
}

@media screen and (max-width:768px) {
  .global-racing__link-btn__ico {
    margin-top: 3.90625vw;
  }
}

@media print, screen and (min-width:769px) {
  .global-racing-dec__txt01 {
    position: absolute;
    color: #0f0f0f;
    transform: rotate(90deg);
    transform-origin: left center;
    font-size: 14.4736842105vw;
    margin-top: -21.0526315789vw;
    left: 42.7631578947vw;
    letter-spacing: 0.03em;
  }
}

@media print, screen and (min-width:769px) {
  .global-racing-dec__txt02 {
    position: absolute;
    color: #0f0f0f;
    transform: rotate(90deg);
    transform-origin: left center;
    font-size: 14.4736842105vw;
    margin-top: -5.9210526316vw;
    left: 11.8421052632vw;
    letter-spacing: 0.03em;
  }
}

.global-racing-dec__pic1 {
  position: absolute;
  width: 31.5789473684vw;
  z-index: 2;
  margin-top: -10.8552631579vw;
  left: 2.6315789474vw;
}

@media screen and (max-width:768px) {
  .global-racing-dec__pic1 {
    left: initial;
    right: 0;
    margin-top: -16.9270833333vw;
    width: 23.4375vw;
  }
}

.global-racing-dec__pic2 {
  position: absolute;
  width: 22.3684210526vw;
  z-index: 2;
  margin-top: 13.1578947368vw;
  left: 19.7368421053vw;
}

@media screen and (max-width:768px) {
  .global-racing-dec__pic2 {
    left: initial;
    right: 9.1145833333vw;
    margin-top: 42.96875vw;
    width: 35.4166666667vw;
  }
}

.kawasaki-world {
  position: relative;
  padding-top: 16.4473684211vw;
  padding-bottom: 9.8684210526vw;
  opacity: 0;
  transition: opacity 0.2s ease 0s;
}

@media print, screen and (min-width:769px) {
  .kawasaki-world {
    min-height: 103.9473684211vw;
  }
}

@media screen and (max-width:768px) {
  .kawasaki-world {
    padding-top: 26.0416666667vw;
    padding-bottom: 26.0416666667vw;
  }
}

.is-sec-kawasaki-world .kawasaki-world {
  opacity: 1;
  transition: opacity 0.3s ease 0.2s;
}

@media print, screen and (min-width:769px) {
  .kawasaki-world-main {
    position: absolute;
    margin-left: 26.3157894737vw;
    width: calc(100% - 36.8421052632vw);
  }
}

.kawasaki-world__txts {
  position: relative;
  z-index: 1;
  display: inline-block;
  mix-blend-mode: difference;
  opacity: 0;
  transition: opacity 0.2s ease 0.5s;
}

@media print, screen and (min-width:769px) {
  .kawasaki-world__txts {
    padding-top: 16.4473684211vw;
    width: 41.4473684211vw;
  }
}

@media screen and (max-width:768px) {
  .kawasaki-world__txts {
    margin-top: -9.1145833333vw;
    margin-left: 2.6041666667vw;
  }
}

.is-sec-kawasaki-world .kawasaki-world__txts {
  opacity: 1;
  color: #fff;
}

.kawasaki-world__ttl {
  font-size: 8.5526315789vw;
  font-weight: 400;
  letter-spacing: -0.01em;
  line-height: 1.05;
}

@media screen and (max-width:768px) {
  .kawasaki-world__ttl {
    font-size: 14.3229166667vw;
  }
}

.kawasaki-world__lead {
  line-height: 2;
  margin-top: 3.2894736842vw;
  font-size: 1.8rem;
  font-size: max(1.1842105263vw, 1.6rem);
  font-weight: 500;
}

@media screen and (max-width:768px) {
  .kawasaki-world__lead {
    font-size: 1.3rem;
    font-size: max(3.3854166667vw, 1.3rem);
  }
}

.kawasaki-world__link-btn {
  display: block;
}

@media print, screen and (min-width:769px) {
  .kawasaki-world__link-btn {
    margin-top: 3.2894736842vw;
    width: 9.2105263158vw;
  }
}

@media screen and (max-width:768px) {
  .kawasaki-world__link-btn {
    margin-top: 2.6041666667vw;
    margin-left: 3.90625vw;
  }
}

.kawasaki-world__side-ttl {
  color: #fff;
  font-size: 4.6052631579vw;
  font-weight: 300;
  letter-spacing: 0.08em;
}

@media screen and (max-width:768px) {
  .kawasaki-world__side-ttl {
    font-size: 9.6354166667vw;
  }
}

.kawasaki-world__side-ttl__horizontal {
  position: absolute;
  top: 12.1710526316vw;
  right: 2.9605263158vw;
  z-index: 1;
}

@media screen and (max-width:768px) {
  .kawasaki-world__side-ttl__horizontal {
    top: 16.2760416667vw;
    right: 1.3020833333vw;
  }
}

.kawasaki-world__side-ttl__vertical {
  position: absolute;
  top: 40.7894736842vw;
  right: 5.4605263158vw;
  transform: rotate(90deg);
  transform-origin: right center;
  z-index: 1;
}

@media screen and (max-width:768px) {
  .kawasaki-world__side-ttl__vertical {
    top: 78.125vw;
    right: 6.5104166667vw;
  }
}

