/* ============================================================= *

snowboarding

* ============================================================= */
/* p-snowboarding-root
============================== */
.p-snowboarding-root {
  overflow: hidden;
  padding-top: var(--header-height);

  --key-color: #FF7338;
  --key-color-light: #FF7338;
  --bg-black: #2e2e2e;
  --bg-white: #fff;
  --inner-padding: 20px;
  --inner-width: calc(100% - var(--inner-padding) * 2);
  --slash-deg: 8deg;
  --slash-tan: tan(var(--slash-deg));
  --slash-height: calc(var(--vw) * 100 * var(--slash-tan));
  --slope-desktop-px: clamp(.56223px, 0px + .07321vw, 1px);
  --slope-mobile-px: calc(1px + var(--slope-1px) * 1.04533);
}

@media screen and (max-width: 767px) {
  .p-snowboarding-root {
    --slash-deg: 8deg;
  }
}

/* p-snowboarding-border-title
============================== */
.p-snowboarding-border-title {
  width: fit-content;
  max-width: 100%;
  margin-block: var(--leading-trim);
  margin-inline: auto;
  padding-block: calc(16px + var(--slope-1px) * 4) calc(20px + var(--slope-1px) * 4);
  border-top: 3px solid;
  border-bottom: 3px solid;
  text-align: center;
  word-break: keep-all;
  overflow-wrap: anywhere;
  font-weight: 700;
  font-size: calc(48 * var(--slope-desktop-px));
  line-height: 1.3;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-border-title {
    font-size: calc(30 * var(--slope-mobile-px));
  }
}

*[data-intersection] .p-snowboarding-border-title {
  opacity: 0;

  translate: -30px 0;
}

*[data-intersecting="true"] .p-snowboarding-border-title {
  opacity: 1;
  transition: translate .4s cubic-bezier(.22, 1, .36, 1) .3s, opacity .3s ease-in-out .3s;

  translate: 0 0;
}

/* p-snowboarding-en-title
============================== */
.p-snowboarding-en-title {
  display: flex;
  align-items: center;
  flex-direction: column;
  gap: 30px 24px;
  margin-bottom: calc(-2px + var(--slope-1px) * 60);
}

@media screen and (max-width: 767px) {
  .p-snowboarding-en-title {
    flex-direction: column;
    margin-bottom: 15px;
  }
}

.p-snowboarding-en-title_main {
  margin-inline: auto;
}

.p-snowboarding-en-title__main img {
  object-fit: contain;
  width: 100%;
  height: auto;
}

.p-snowboarding-en-title__main.--message {
  margin-bottom: 4.375em;
  display: flex;
  justify-content: flex-end;
  margin-left: auto;
  width: 49.333%;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-en-title__main.--message {
    margin-bottom: 2.5625em;
    width: auto;
  }
}

.p-snowboarding-en-title__main.--message img {
  max-width: 592px;
  max-height: 110px;
  aspect-ratio: 592 / 110;
}

.p-snowboarding-en-title__main.--movie {
  width: 38.75%;
}

.p-snowboarding-en-title__main.--movie img {
  max-width: 465px;
  max-height: 127px;
  aspect-ratio: 465 / 127;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-en-title__main.--movie {
    width: auto;
  }
}

.p-snowboarding-en-title__main.--instagram img {
  max-width: 857px;
  width: 62.7vw;
  max-height: 129px;
  aspect-ratio: 857 / 129;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-en-title__main {
    width: auto;
    height: calc(129 / 857 * (100vw - 40px));
  }
  .p-snowboarding-en-title__main img {
    height: 100%;
  }
  .p-snowboarding-en-title__main.--instagram img {
    width: 100%;
  }
}

*[data-intersection] .p-snowboarding-en-title__main {
  opacity: 0;

  translate: -30px 0;
}

*[data-intersecting="true"] .p-snowboarding-en-title__main {
  opacity: 1;
  transition: translate .4s cubic-bezier(.22, 1, .36, 1) .3s, opacity .3s ease-in-out .3s;

  translate: 0 0;
}

.p-snowboarding-en-title__sub {
  width: fit-content;
  max-width: 100%;
  font-weight: 700;
  font-size: calc(36 * var(--slope-desktop-px));
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-en-title__sub {
    word-break: keep-all;
    overflow-wrap: anywhere;
    font-size: calc(26 * var(--slope-mobile-px));
    line-height: 1.3;
  }
}

*[data-intersection] .p-snowboarding-en-title__sub {
  opacity: 0;

  translate: -30px 0;
}

*[data-intersecting="true"] .p-snowboarding-en-title__sub {
  opacity: 1;
  transition: translate .4s cubic-bezier(.22, 1, .36, 1) .3s, opacity .3s ease-in-out .3s;

  translate: 0 0;
}

/* p-snowboarding-header
============================== */
.p-snowboarding-header {
  position: relative;
}

/* p-snowboarding-hero
============================== */
.p-snowboarding-hero {
  position: relative;
  min-height: calc(993 / 1366 * 100vw + 11vw - var(--header-height));
}
@media screen and (max-width: 767px) {
  .p-snowboarding-hero {
    min-height: calc(667 / 375 * 100vw + 22vw - var(--header-height));
  }
}

.p-snowboarding-hero__bg {
  position: absolute;
  margin-top: calc(0px - var(--header-height));
  inset: 0;
  z-index: -1;
  display: block;
  width: 100vw;
  height: auto;
  aspect-ratio: 1366 / 993;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-hero__bg {
    aspect-ratio: auto;
    height: 100%;
  }
}

.p-snowboarding-hero__bg img {
  width: 100%;
  object-fit: contain;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-hero__bg img {
    object-fit: cover;
    height: 100%;
  }
}

.p-snowboarding-hero__title {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  display: grid;
  grid-template-columns: 100%;
  gap: 0.5em;
  margin-top: 38.1655%;
  margin-left: 11.420%;
  font-weight: 900;
  font-size: calc(79 * var(--slope-desktop-px));
}

@media screen and (max-width: 767px) {
  .p-snowboarding-hero__title {
    top: 40%;
    left: 20px;
    width: fit-content;
    max-width: 100%;
    margin-inline: auto;
    margin-top: 0;
    font-size: calc(40 * var(--slope-mobile-px));
    transform: translateY(-50%);
  }
}

.p-snowboarding-hero__title ._honda,
.p-snowboarding-hero__title ._player {
  display: inline-flex;
  transform: skewY(calc(var(--slash-deg) * -1));
  transform-origin: right top;

  --slash-width: .25em;
}

.p-snowboarding-hero__title ._honda span,
.p-snowboarding-hero__title ._player span {
  position: relative;
  padding-right: .1em;
  padding-bottom: .1em;
  color: #fff;
  line-height: 1.1;
}

.p-snowboarding-hero__title ._honda span:nth-child(2),
.p-snowboarding-hero__title ._player span:nth-child(2) {
  margin-right: var(--slash-width);
}

.p-snowboarding-hero__title ._honda span:before,
.p-snowboarding-hero__title ._player span:before {
  content: "";
  position: absolute;
  top: 0;
  left: calc(var(--slash-width) * -1);
  z-index: -1;
  display: block;
  width: calc(100% + var(--slash-width) * 2);
  height: 100%;
  background: var(--bg-black);
  clip-path: polygon(var(--slash-width) 0, 100% 0, calc(100% - var(--slash-width)) 100%, 0 100%);
}

.p-snowboarding-hero__title ._honda {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  margin-left: 1em;
}

.p-snowboarding-hero__title ._times {
  position: absolute;
  right: -0.4052em;
  bottom: .5em;
  left: 0;
  z-index: 1;
  display: block;
  overflow: hidden;
  width: 2em;
  aspect-ratio: 1 / 1;
  margin-inline: auto;
  color: transparent;
  transform: skewY(calc(var(--slash-deg) * -1));
}

.p-snowboarding-hero__title ._times:before, .p-snowboarding-hero__title ._times:after {
  content: "";
  position: absolute;
  width: calc(100% / cos(45deg));
  height: 3px;
  background: var(--key-color);
}

.p-snowboarding-hero__title ._times:before {
  top: -1px;
  left: 0;
  transform: rotate(45deg);
  transform-origin: left center;
}

.p-snowboarding-hero__title ._times:after {
  top: -1px;
  right: 0;
  transform: rotate(-45deg);
  transform-origin: right center;
}

.p-snowboarding-hero__image {
  position: relative;
  width: 100%;
  height: 100%;
  min-height: calc(993 / 1366 * 100vw + 11vw - var(--header-height));
}
@media screen and (max-width: 767px) {
  .p-snowboarding-hero__image {
    min-height: calc(667 / 375 * 100vw + 22vw - var(--header-height));
  }
}

.p-snowboarding-hero__image img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}

.p-snowboarding-hero__image > div {
  position: absolute;
  top: 0;
  height: auto;
}

.p-snowboarding-hero__image > div._01 {
  left: 0;
  width: 41.508%;
  aspect-ratio: 567 / 382;
  opacity: 0;
  transition: transform 1s cubic-bezier(0.25, 1, 0.5, 1), opacity .2s cubic-bezier(0.25, 1, 0.5, 1);
  transform: translate3d(-100px, 30px, 0px);
}

@media screen and (max-width: 767px) {
  .p-snowboarding-hero__image > div._01 {
    width: 51.508%;
    opacity: 0;
  }
}

body.is-loaded .p-snowboarding-hero__image > div._01 {
  opacity: 1;
  transform: translate3d(0px, 0px, 0px);
}

.p-snowboarding-hero__image > div._02 {
  left: 14.495%;
  top: 22.5%;
  z-index: 1;
  overflow: hidden;
  width: 54.3192%;
  aspect-ratio: 742 / 400;
  opacity: 0;
  transition: transform 1s cubic-bezier(0.25, 1, 0.5, 1), opacity .2s cubic-bezier(0.25, 1, 0.5, 1);
  transition-delay: .4s;
  transform: rotateX(-10.93deg) translate3d(-100px, 30px, 0px);
}

@media screen and (max-width: 767px) {
  .p-snowboarding-hero__image > div._02 {
    top: 10%;
    left: 28%;
    width: 64.3192%;
  }
}

body.is-loaded .p-snowboarding-hero__image > div._02 {
  opacity: 1;
  transform: rotateX(-10.93deg) translate3d(0px, 0, 0px);
  
}

.p-snowboarding-hero__image > div._03 {
  top: 11.023%;
  right: 3.953%;
  width: 42.386%;
  aspect-ratio: 579 / 793;
  opacity: 0;
  transition: all 0.5s cubic-bezier(0.25, 1, 0.5, 1);
  transition-delay: .8s;
  transform: rotateX(-26.9deg) scale(0.8);
  z-index: 4;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-hero__image > div._03 {
    top: 55%;
    right: 40%;
    transform: rotateX(-26.9deg) scale(0.8) translateX(50%);
    width: 64%;
  }
}

body.is-loaded .p-snowboarding-hero__image > div._03 {
  opacity: 1;
  transform: rotateX(-26.9deg) scale(1);
}

@media screen and (max-width: 767px) {
  body.is-loaded .p-snowboarding-hero__image > div._03 {
    opacity: 1;
    transform: rotateX(-26.9deg) scale(1) translateX(50%);
  }
}

/* p-snowboarding-lead
============================== */
.p-snowboarding-lead {
  position: relative;
  top: -1em;
  padding: var(--slash-height)  0 0;
  margin-inline: auto;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-lead {
    padding-bottom: calc(16% + var(--slash-height));
  }
}

.p-snowboarding-lead__snow {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 30.81991%;
  height: auto;
  aspect-ratio: 421 / 418;
  z-index: -1;
  margin-top: -15.44%;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-lead__snow {
    width: 60%;
    margin-top: -40%;
  }
}

.p-snowboarding-lead__snow.--bottom {
  width: 28.33%;
  top: auto;
  bottom: 0;
  right: auto;
  left: 0;
  aspect-ratio: 387 / 575;
  margin-top: 0;
  margin-bottom: -6.58%;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-lead__snow.--bottom {
    width: 50%;
    margin-bottom: 0;
  }
}

.p-snowboarding-lead__snow img {
  object-fit: contain;
  width: 100%;
  height: auto;
}

.p-snowboarding-lead__inner {
  display: flex;
  flex-direction: column;
  gap: 2em;
  width: var(--inner-width);
  max-width: 1023px;
  margin-inline: auto;
  font-size: calc(17px + var(--slope-1px) * 3);
  position: relative;
  z-index: 5;
  margin-top: -14.641%;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-lead__inner {
    word-break: keep-all;
    overflow-wrap: anywhere;
    font-size: calc(17 * var(--slope-mobile-px));
  }
}

.p-snowboarding-lead__body {
  margin-block: var(--leading-trim);
  padding-top: calc(20.1742em * tan(8deg));
  font-weight: 900;
  font-size: clamp(40px, 4.3923vw, 60px);
  line-height: 1.5;
  transform: skewY(-8deg);
  transform-origin: left top;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-lead__body {
    font-size: calc(36 * var(--slope-mobile-px));
    line-height: 1.4;
  }
}

.p-snowboarding-lead__body em {
  color: var(--key-color-light);
}

.p-snowboarding-lead__body span {
  display: block;
}

*[data-intersection] .p-snowboarding-lead__body span {
  opacity: 0;

  translate: -30px 10px;
}

*[data-intersecting="true"] .p-snowboarding-lead__body span {
  opacity: 1;
  transition: all .6s cubic-bezier(.22, 1, .36, 1) .3s;

  translate: 0 0;
}

*[data-intersecting="true"] .p-snowboarding-lead__body span:nth-child(2) {
  transition-delay: .45s;
}

*[data-intersecting="true"] .p-snowboarding-lead__body span:nth-child(3) {
  transition-delay: .6s;
}

.p-snowboarding-lead__foot {
  margin-block: var(--leading-trim);
  font-weight: 700;
  line-height: 1.75;
  transform: skewY(-8deg);
  transform-origin: left top;
}

*[data-intersection] .p-snowboarding-lead__foot {
  opacity: 0;

  translate: -30px 10px;
}

*[data-intersecting="true"] .p-snowboarding-lead__foot {
  opacity: 1;
  transition: all .6s cubic-bezier(.22, 1, .36, 1) .75s;

  translate: 0 0;
}

.p-snowboarding-lead__foot > p {
  width: fit-content;
  max-width: 100%;
  margin-left: auto;
}

/* p-snowboarding-profile
============================== */
.p-snowboarding-profile {
  position: relative;
  margin-top: calc(112px * 0.4);
  min-height: calc(935 / 1342 * 100vw);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-profile {
    grid-template-columns: 100%;
    margin-top: calc(24 * var(--slope-mobile-px));
  }
}

.p-snowboarding-profile__inner {
  position: relative;
  display: flex;
  width: var(--inner-width);
  margin-inline: auto;
  z-index: 5;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-profile__inner {
    flex-direction: column;
  }
}

.p-snowboarding-profile__inner:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  line-height: 1;
  transform: translateY(-80%);
  background: center / contain no-repeat url(../img/profile-title.png);
  width: 46%;
  height: 112px;
  z-index: 3;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-profile__inner:before {
    top: 0;
    bottom: auto;
    margin-right: 0;
    width: 100%;
    height: calc(129 / 857 * (100vw - 40px));
  }
}

.p-snowboarding-profile__bg-container {
  position: absolute;
  z-index: 2;
  left: 0;
  bottom: 0;
  width: 100%;
  height: auto;
}

.p-snowboarding-profile__bg.--top {
  width: 100%;
  height: auto;
  aspect-ratio: 1342 / 935;
}

.p-snowboarding-profile__bg.--bottom {
  display: none;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-profile__bg-container {
    top: 5%;
    bottom: auto;
  }
  .p-snowboarding-profile__bg.--top {
    aspect-ratio: 569 / 586;
  }

  .p-snowboarding-profile__bg.--bottom {
    width: 100%;
    height: auto;
    aspect-ratio: 924 / 650;
    display: block;
    margin-top: 2%;
  }
}

.p-snowboarding-profile__bg img {
  object-fit: contain;
  width: 100%;
  height: 100%;
}

.p-snowboarding-profile__image {
  width: 50.5833%;
  position: relative;
  z-index: 5;
  margin-left: 2%;
  display: flex;
  align-items: flex-end;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-profile__image {
    width: 90%;
    margin-inline: auto;
    padding-top: 60px;
  }
}

.p-snowboarding-profile__image img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.p-snowboarding-profile__contents {
  position: relative;
  padding: 0% 0% 0% 4%;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-profile__contents {
    padding-inline: 0;
    padding-top: var(--inner-padding);
  }
}


.p-snowboarding-profile__head {
  position: relative;
  width: fit-content;
  max-width: 100%;
  margin-bottom: calc(42px + var(--slope-1px) * 8);
  padding-bottom: .25em;
  font-size: calc(15 * var(--slope-desktop-px));
}

@media screen and (max-width: 767px) {
  .p-snowboarding-profile__head {
    font-size: calc(13 * var(--slope-mobile-px));
  }
}

*[data-intersection] .p-snowboarding-profile__head {
  opacity: 0;

  translate: -30px 0;
}

*[data-intersecting="true"] .p-snowboarding-profile__head {
  opacity: 1;
  transition: translate .4s cubic-bezier(.22, 1, .36, 1) .3s, opacity .3s ease-in-out .3s;

  translate: 0 0;
}

.p-snowboarding-profile__name {
  font-weight: 900;
  font-size: calc(64 * var(--slope-desktop-px));
  line-height: 1;
  margin-bottom: 0.3125em;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-profile__name {
    font-size: calc(48 * var(--slope-mobile-px));
  }
}

.p-snowboarding-profile__ruby {
  font-weight: 700;
  font-size: calc(15px + var(--slope-1px) * 1);
}

.p-snowboarding-profile__body-head {
  display: flex;
  gap: 2.1875em;
}

.p-snowboarding-profile-item {
  display: grid;
  grid-template-columns: 100%;
  gap: calc(12px + var(--slope-1px) * 1);
  font-weight: 500;
}

.p-snowboarding-profile-item.--foot {
  margin-top: 2em;
  margin-bottom: 3.25em;
}

*[data-intersection] .p-snowboarding-profile-item {
  opacity: 0;

  translate: -30px 0;
}

*[data-intersecting="true"] .p-snowboarding-profile-item {
  opacity: 1;
  transition: translate .4s cubic-bezier(.22, 1, .36, 1) .3s, opacity .3s ease-in-out .3s;

  translate: 0 0;
}


.p-snowboarding-profile-item__head {
  margin-block: var(--leading-trim);
  font-size: calc(16px + var(--slope-1px) * 2);
}

.p-snowboarding-profile-item__body {
  padding: 0 0 0 0.75em;
  border-left: 2px solid var(--key-color);
  font-size: clamp(15px, 1.6666vw, 20px);
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-profile-item__body {
    font-size: calc(17px + var(--slope-1px) * 3);
  }
}

.p-snowboarding-profile-item__body dl {
  display: flex;
}

.p-snowboarding-profile-item__body dl dt {
  min-width: 4em;
  display: inline-block;
}

/* p-snowboarding-message
============================== */
.p-snowboarding-message {
  position: relative;
  margin-top: -4.5%;
  padding-top: 9.956%;
  padding-bottom: 9.956%;
  background: top center / contain no-repeat url(../img/message-bg.png);
  min-height: calc(816 / 1366 * 100vw);
  z-index: 6;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-message {
    padding-top: 17.066%;
    margin-top: 0;
    background: top center / contain no-repeat url(../img/message-bg.png);
    min-height: 1px;
  }
}

.p-snowboarding-message__inner {
  width: var(--inner-width);
  max-width: 1200px;
  margin-inline: auto;
}


.p-snowboarding-message__body {
  text-align: center;
  word-break: keep-all;
  overflow-wrap: anywhere;
  font-size: clamp(15px, 1.6666vw, 20px);
  line-height: 2;
  font-weight: 500;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-message__body {
    text-align: justify;
    word-break: normal;
    letter-spacing: 0.05em;
    font-size: calc(17px + var(--slope-1px) * 3);
  }
}

.p-snowboarding-message__body[data-intersection] {
  opacity: 0;

  translate: 0 30px;
}

.p-snowboarding-message__body[data-intersecting="true"] {
  opacity: 1;
  transition: all .6s ease-in-out;

  translate: 0 0;
}

.p-snowboarding-message__body em {
  background: var(--key-color);
  color: #fff;
}

/* p-snowboarding-movie
============================== */
@media screen and (max-width: 767px) {
  .p-snowboarding-movie {
    padding-top: calc(100vw / 1366 * 234);
  }
}
.p-snowboarding-movie__main {
  position: relative;
  padding-top: 12%;
  padding-bottom: calc(100vw / 1366 * 389);
  margin-top: -16.5%;
  z-index: 7;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-movie__main {
    padding-top: calc(12% - 10px);
  }
}

.p-snowboarding-movie__main:before,
.p-snowboarding-movie__main:after {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  left: 0;
  z-index: -1;
}

.p-snowboarding-movie__main:before {
  background: var(--key-color);
  bottom: 0;
  top: auto;
  height: calc(100% - clamp(15%, 26.45vw, 50%));
}

.p-snowboarding-movie__main:after {
  top: 0;
  height: 100%;
  background: top center / contain no-repeat url(../img/bg-orange.png);
}

/* p-snowboarding-movie-block
============================== */
.p-snowboarding-movie-block {
  width: var(--inner-width);
  max-width: 1200px;
  margin-inline: auto;
  color: #fff;
}

.p-snowboarding-movie-block__body {
  position: relative;
  z-index: 1;
  padding: calc(16px + var(--slope-1px) * 24);
  border-radius: calc(6px + var(--slope-1px) * 4);
  background: #fff;
}

.p-snowboarding-movie-block__body[data-intersection] {
  opacity: 0;

  translate: 0 30px;
}

.p-snowboarding-movie-block__body[data-intersecting="true"] {
  opacity: 1;
  transition: all .6s ease-in-out;

  translate: 0 0;
}

.p-snowboarding-movie-block__video {
  position: relative;
  display: block;
  overflow: hidden;
  border-radius: 6px;
  background: #000;
}

.p-snowboarding-movie-block__video img {
  opacity: .8;
}

.p-snowboarding-movie-block__button {
  position: absolute;
  inset: 0;
  width: 420px;
  height: 60px;
  margin: auto;
  border: 1px solid #fff;
  border-radius: 30px;
  background: url(../img/play.png) 0 50%/207px auto repeat-x;
  animation: playmovie 3s linear infinite;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-movie-block__button {
    width: 215px;
    height: 40px;
    background-size: 133px auto;
    animation: playmovie_mobile 3s linear infinite;
  }
}

@keyframes playmovie {
  0% {
    background-position: 0 50%;
  }
  100% {
    background-position: -207px 50%;
  }
}

@keyframes playmovie_mobile {
  0% {
    background-position: 0 50%;
  }
  100% {
    background-position: -133px 50%;
  }
}

/* p-snowboarding-car
============================== */
.p-snowboarding-car {
  color: #fff;
  position: relative;
  padding-top: calc(100vw / 1366 * 234);
  padding-bottom: calc(100vw / 1366 * 234);
  margin-top: calc((0vw - 100vw) / 1366 * 332);
  z-index: 8;
  min-height: calc(968 / 1366 * 100vw);
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-car {
  padding-top: calc(100vw / 1366 * 234 * 2);
  min-height: calc(760 / 375 * 100vw);
}
}

.p-snowboarding-car__bg {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  left: 0;
  z-index: -1;
  top: 0;
  height: 100%;
  aspect-ratio: 1366 / 968;
}
.p-snowboarding-car__bg.--sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-car__bg.--pc {
    display: none;
  }
  .p-snowboarding-car__bg.--sp {
    display: block;
    aspect-ratio: 375 / 860;
    height: auto;
  }
}

.p-snowboarding-car__bg img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.p-snowboarding-car__inner {
  display: grid;
  align-items: end;
  grid-template-columns: 1fr 46.22222%;
  gap: 30px 20px;
  width: var(--inner-width);
  max-width: 1200px;
  margin-inline: auto;
}

.p-snowboarding-car__inner[data-intersection] {
  opacity: 0;

  translate: 30px 0;
}

.p-snowboarding-car__inner[data-intersecting="true"] {
  opacity: 1;
  transition: all .4s ease-in-out;

  translate: 0 0;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-car__inner {
    grid-template-columns: 100%;
    gap: 40px;
  }
}

.p-snowboarding-car__contents {
  display: grid;
  grid-template-columns: 100%;
  gap: calc(40px + var(--slope-1px) * 8);
  width: fit-content;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-car__contents {
    width: 100%;
  }
}

.p-snowboarding-car__head {
  display: flex;
  align-items: center;
  gap: 24px 10px;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-car__head {
    flex-direction: column;
  }
}

.p-snowboarding-car__main {
  line-height: .9;
  width: 100%;
  height: auto;
}

.p-snowboarding-car__main img {
  width: 100%;
  height: auto;
  object-fit: contain;
}

.p-snowboarding-car__main.--zr-v {
  max-width: 411px;
  width: 65.655%;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-car__main.--zr-v {
    width: 80.533%;
  }
}

.p-snowboarding-car__sub {
  margin-block: var(--leading-trim);
  font-weight: 900;
  font-size: calc(34 * var(--slope-desktop-px));
  line-height: 1.4;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-car__sub {
    text-align: center;
    font-size: calc(26 * var(--slope-mobile-px));
    line-height: 1.3;
  }
}

.p-snowboarding-car__body {
  margin-block: var(--leading-trim);
  font-size: calc(17px + var(--slope-1px) * 3);
  line-height: 2;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-car__body {
    text-align: center;
    line-height: 1.8;
  }
}

.p-snowboarding-car__body > p {
  font-size: calc(17px + var(--slope-1px) * 3);
  overflow-wrap: anywhere;
  margin-bottom: 1.75em;
  font-size: clamp(15px, 1.6666vw, 20px);
}
@media screen and (max-width: 767px) {
  .p-snowboarding-car__body > p {
    margin-bottom: 0;
    font-size: calc(17px + var(--slope-1px) * 3);
  }
}

.p-snowboarding-car__body span {
  display: inline-block;
}

.p-snowboarding-car__image {
  margin-right: -22.173%;
}

.p-snowboarding-car__image figcaption {
  top: -1em;
  text-align: right;
  font-size: calc(10px + var(--slope-1px) * 2);
  line-height: 1.5;
  margin-right: 22.173%;
}

/* p-snowboarding-topics
============================== */
.p-snowboarding-topics {
  padding-top: calc(40px + var(--slope-1px) * 40);
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-topics {
    padding-top: calc(100vw / 1366 * 234 * 2);
  }
}

.p-snowboarding-topics__snow {
  position: absolute;
  top: 0;
  right: 0;
  display: block;
  width: 30.81991%;
  height: auto;
  aspect-ratio: 421 / 418;
  z-index: -1;
  margin-top: -11%;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-topics__snow {
    width: 60%;
    margin-top: 0;
  }
}

.p-snowboarding-topics__snow.--bottom {
  width: 28.33%;
  top: auto;
  bottom: 0;
  right: auto;
  left: 0;
  aspect-ratio: 387 / 575;
  margin-top: 0;
  margin-bottom: -6.58%;
}
@media screen and (max-width: 767px) {
  .p-snowboarding-topics__snow.--bottom {
    width: 50%;
    margin-bottom: 0;
  }
}

.p-snowboarding-topics__snow img {
  object-fit: contain;
  width: 100%;
  height: auto;
}

.p-snowboarding-topics__inner {
  width: var(--inner-width);
  max-width: 1000px;
  margin-inline: auto;
}

.p-snowboarding-topics__head {
  margin-bottom: calc(32px + var(--slope-1px) * 16);
}

/* p-snowboarding-topics-list
============================== */
.p-snowboarding-topics-list__item {
  --bg-color: transparent;
}

.p-snowboarding-topics-list__item:nth-child(2n+1) {
  --bg-color: #f6f6f6;
}

*[data-intersection] .p-snowboarding-topics-list__item {
  opacity: 0;

  translate: 0 30px;
}

*[data-intersecting="true"] .p-snowboarding-topics-list__item {
  opacity: 1;
  transition: all .6s ease-in-out;

  translate: 0 0;
}

/* p-snowboarding-topics-item
============================== */
.p-snowboarding-topics-item {
  display: grid;
  grid-template-columns: 5.3em 4.2em 1fr;
  gap: 20px;
  padding: calc(24px + var(--slope-1px) * 6) calc(16px + var(--slope-1px) * 8);
  border-radius: 5px;
  background: var(--bg-color);
  text-decoration: none;
  font-weight: 500;
  font-size: calc(17px + var(--slope-1px) * 3);

  --label-color: var(--bg-black);
}

.p-snowboarding-topics-item._event {
  --label-color: var(--key-color);
}

@media screen and (max-width: 767px) {
  .p-snowboarding-topics-item {
    justify-content: start;
    grid-template-columns: auto 1fr;
    gap: 16px 12px;
  }
}

.p-snowboarding-topics-item__label {
  display: flex;
  justify-content: center;
  align-items: center;
  align-self: start;
  padding: 6px 6px 10px;
  border-radius: 3px;
  background: var(--label-color);
  color: #fff;
  font-size: calc(16px + var(--slope-1px) * 2);
  line-height: 1;
}

@media screen and (max-width: 767px) {
  .p-snowboarding-topics-item__label {
    justify-self: start;
    width: 4.875em;
  }
}

@media screen and (max-width: 767px) {
  .p-snowboarding-topics-item__text {
    grid-column: span 2;
  }
}

a.p-snowboarding-topics-item:hover .p-snowboarding-topics-item__text {
  text-decoration: underline;
}

/* p-snowboarding-instagram
============================== */
.p-snowboarding-instagram {
  position: relative;
  padding-top: 12%;
  padding-bottom: calc(48px + var(--slope-1px) * 16);
}
@media screen and (max-width: 767px) {
  .p-snowboarding-instagram {
    padding-top: calc(12% - 10px);
  }
}

.p-snowboarding-instagram:before,
.p-snowboarding-instagram:after {
  content: "";
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  left: 0;
  z-index: -1;
}

.p-snowboarding-instagram:before {
  background: var(--key-color);
  bottom: 0;
  top: auto;
  height: calc(100% - clamp(10%, 26.45vw, 50%));
}

.p-snowboarding-instagram:after {
  top: 0;
  height: 100%;
  background: top center / contain no-repeat url(../img/bg-orange.png);
}

.p-snowboarding-instagram__inner {
  position: relative;
  width: var(--inner-width);
  max-width: 1200px;
  margin-inline: auto;
  color: #fff;
}

.p-snowboarding-instagram__body {
  position: relative;
  z-index: 1;
}

.p-snowboarding-instagram__foot {
  margin-top: calc(32px + var(--slope-1px) * 8);
}

.p-snowboarding-instagram__button {
  position: relative;
  display: block;
  width: fit-content;
  max-width: 100%;
  margin-inline: auto;
  padding: calc(16px + var(--slope-1px) * 2) 60px calc(20px + var(--slope-1px) * 2);
  border-radius: 50px;
  background: #fff;
  text-decoration: none;
  font-weight: 700;
  font-size: calc(16px + var(--slope-1px) * 2);
  line-height: 1;
  transition: all .2s ease-out;
}

.p-snowboarding-instagram__button:hover {
  opacity: .7;
}

.p-snowboarding-instagram__button > i {
  content: "";
  position: absolute;
  top: 0;
  right: 16px;
  bottom: 0;
  display: block;
  width: calc(20px + var(--slope-1px) * 2);
  height: calc(20px + var(--slope-1px) * 2);
  margin-block: auto;
}

/* p-snowboarding-instagram-image
============================== */
.p-snowboarding-instagram-image {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 2px;
}

@media screen and (max-width: 560px) {
  .p-snowboarding-instagram-image {
    grid-template-columns: repeat(2, 1fr);
  }
}

.p-snowboarding-instagram-image__item {
  transition: all .5s ease-in-out .3s;
}

.p-snowboarding-instagram-image__item:nth-child(2) {
  transition-delay: .5s;
}

.p-snowboarding-instagram-image__item:nth-child(3) {
  transition-delay: .7s;
}

.p-snowboarding-instagram-image__item:nth-child(4) {
  transition-delay: .9s;
}

.p-snowboarding-instagram-image[data-intersection] .p-snowboarding-instagram-image__item {
  opacity: 0;
  transform: translateY(10px);
}

.p-snowboarding-instagram-image[data-intersecting="true"] .p-snowboarding-instagram-image__item {
  opacity: 1;
  transform: translateY(0);
}
