@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;400;700&family=Noto+Serif+JP&display=swap");
@-webkit-keyframes animation-key {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
    -webkit-filter: none;
            filter: none;
  }
}
@keyframes animation-key {
  0% {
    opacity: 0;
  }
  to {
    opacity: 1;
    -webkit-transform: none;
            transform: none;
    -webkit-filter: none;
            filter: none;
  }
}
#rhythm-2025winter {
  font-family: "ヒラギノ明朝 ProN", "Hiragino Mincho ProN", "Yu Mincho Light", "YuMincho", "Yu Mincho", "游明朝体", sans-serif;
  font-weight: 100;
  font-style: normal;
  color: #333300;
  background: #d6d6cc;
  margin-left: auto;
  margin-right: auto;
}
#rhythm-2025winter .fcEN {
  font-family: "EB Garamond", serif;
}
#rhythm-2025winter img {
  max-width: 100%;
}
#rhythm-2025winter .iv,
#rhythm-2025winter .ivo,
#rhythm-2025winter .inview {
  visibility: hidden;
}
#rhythm-2025winter .fadeIn {
  opacity: 0;
  -webkit-animation: animation-key 0.8s ease-in 0.5s both;
          animation: animation-key 0.8s ease-in 0.5s both;
}
#rhythm-2025winter .fadeInUp {
  opacity: 0;
  -webkit-transform: translate(0, 15px);
          transform: translate(0, 15px);
  -webkit-animation: animation-key 0.8s ease-in-out 0.5s both;
          animation: animation-key 0.8s ease-in-out 0.5s both;
}
#rhythm-2025winter .fadeInLft {
  opacity: 0;
  -webkit-transform: translate(-25px, 0);
          transform: translate(-25px, 0);
  -webkit-animation: animation-key 0.8s ease-in-out 0.5s both;
          animation: animation-key 0.8s ease-in-out 0.5s both;
}
#rhythm-2025winter .blur {
  opacity: 0;
  -webkit-filter: blur(10px);
          filter: blur(10px);
  -webkit-animation: animation-key 0.8s ease-in 0.5s both;
          animation: animation-key 0.8s ease-in 0.5s both;
}
#rhythm-2025winter .c-outer {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}
#rhythm-2025winter .c-inner {
  max-width: 960px;
  margin-left: auto;
  margin-right: auto;
}
#rhythm-2025winter p {
  margin: 0;
}
#rhythm-2025winter a {
  color: #041f1e;
  -webkit-transition: 0.3s;
  transition: 0.3s;
}
#rhythm-2025winter a:hover {
  opacity: 0.7;
}
#rhythm-2025winter .mv {
  width: 100%;
  text-align: center;
}
#rhythm-2025winter .lead {
  width: 915px;
  margin: 115px auto 0;
  text-align: left;
}
#rhythm-2025winter .lead__title {
  font-size: 24px;
  line-height: 1.85;
  letter-spacing: 0.05em;
}
#rhythm-2025winter .lead__title span {
  display: block;
  font-size: 21px;
  letter-spacing: 0.1em;
}
#rhythm-2025winter .lead__txt {
  font-size: 14px;
  line-height: 3;
  letter-spacing: 0.1em;
  margin-top: 30px;
  z-index: 1;
}
#rhythm-2025winter .code__block {
  position: relative;
  margin: 0 auto;
}
#rhythm-2025winter .code__back {
  position: absolute;
  margin: 0;
}
#rhythm-2025winter .code__figure {
  position: relative;
  display: block;
  text-align: left;
  margin: 0;
  z-index: 1;
}
#rhythm-2025winter .code__text {
  position: absolute;
  font-size: 14px;
  line-height: 1.71;
  letter-spacing: 0.05em;
  text-align: left;
}
#rhythm-2025winter .code__credit {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  font-size: 14px;
  line-height: 2.57;
  font-weight: 200;
  letter-spacing: 0.05em;
  text-align: left;
  z-index: 2;
}
#rhythm-2025winter .code__link {
  display: inline-block;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: 0.05em;
  color: inherit;
  margin-top: 30px;
  border-bottom: 1px solid #333300;
}
#rhythm-2025winter .code01 {
  margin-top: 188px;
}
#rhythm-2025winter .code01__block.--01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#rhythm-2025winter .code01__block.--02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-top: -125px;
  padding: 0 107px 0 125px;
}
#rhythm-2025winter .code01__figure.--01 {
  margin-left: 223px;
}
#rhythm-2025winter .code01__figure.--02 {
  position: absolute;
  top: 220px;
  left: 604px;
}
#rhythm-2025winter .code01__figure.--03 {
  margin-top: 271px;
  margin-left: 195px;
}
#rhythm-2025winter .code01__back.--01 {
  top: 320px;
  left: 339px;
}
#rhythm-2025winter .code01__text {
  top: 80px;
  left: 606px;
}
#rhythm-2025winter .code01__credit {
  margin-top: 140px;
}
#rhythm-2025winter .code02 {
  margin-top: 408px;
}
#rhythm-2025winter .code02__block.--02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-top: -54px;
  padding-left: 233px;
  padding-right: 174px;
}
#rhythm-2025winter .code02__figure.--01 {
  text-align: right;
  margin-right: 242px;
}
#rhythm-2025winter .code02__figure.--02 {
  padding-bottom: 17px;
}
#rhythm-2025winter .code02__back.--01 {
  top: 210px;
  left: 90px;
}
#rhythm-2025winter .code02__text {
  top: 80px;
  left: 100px;
}
#rhythm-2025winter .code03 {
  margin-top: 367px;
}
#rhythm-2025winter .code03__block.--01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#rhythm-2025winter .code03__block.--02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-top: -234px;
  padding: 0 56px 325px 78px;
}
#rhythm-2025winter .code03__figure.--01 {
  margin-top: 353px;
}
#rhythm-2025winter .code03__figure.--02 {
  margin-top: 152px;
  margin-left: 91px;
}
#rhythm-2025winter .code03__figure.--03 {
  margin-left: 84px;
}
#rhythm-2025winter .code03__figure.--05 {
  position: absolute;
  bottom: 0;
  left: 452px;
}
#rhythm-2025winter .code03__back.--01 {
  top: 323px;
  right: 152px;
}
#rhythm-2025winter .code03__text {
  top: 35px;
  left: 100px;
}
#rhythm-2025winter .code03__credit {
  margin-bottom: -95px;
}
#rhythm-2025winter .code04 {
  margin-top: 315px;
}
#rhythm-2025winter .code04__block.--01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#rhythm-2025winter .code04__block.--02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  margin-top: -60px;
  padding-left: 95px;
  padding-right: 145px;
}
#rhythm-2025winter .code04__figure.--01 {
  margin-top: 808px;
  margin-left: 33px;
}
#rhythm-2025winter .code04__figure.--02 {
  margin-top: 257px;
  margin-left: -18px;
}
#rhythm-2025winter .code04__figure.--03 {
  margin-left: auto;
}
#rhythm-2025winter .code04__figure.--04 {
  position: absolute;
  top: 400px;
  right: 0;
}
#rhythm-2025winter .code04__back.--01 {
  top: 444px;
  left: 158px;
}
#rhythm-2025winter .code04__text {
  top: 131px;
  left: 173px;
}
#rhythm-2025winter .code04__credit {
  margin-bottom: 150px;
}
#rhythm-2025winter .code05 {
  margin-top: 430px;
}
#rhythm-2025winter .code05__block.--01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-bottom: 120px;
}
#rhythm-2025winter .code05__block.--02 {
  margin-top: -25px;
  margin-left: 60px;
}
#rhythm-2025winter .code05__figure.--01 {
  margin-left: 23px;
  z-index: 2;
}
#rhythm-2025winter .code05__figure.--02 {
  margin-top: 286px;
  margin-left: -75px;
}
#rhythm-2025winter .code05__back.--01 {
  bottom: 0;
  right: 110px;
}
#rhythm-2025winter .code05__text {
  top: 82px;
  right: 177px;
}
#rhythm-2025winter .code06 {
  margin-top: 338px;
}
#rhythm-2025winter .code06__block.--01 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
#rhythm-2025winter .code06__block.--02 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  gap: 100px;
  margin-top: 290px;
  padding-left: 53px;
}
#rhythm-2025winter .code06__figure.--01 {
  margin-left: 487px;
}
#rhythm-2025winter .code06__figure.--02 {
  position: absolute;
  top: 442px;
  left: 63px;
}
#rhythm-2025winter .code06__figure.--03 {
  margin-top: 208px;
  margin-left: auto;
  margin-right: 63px;
}
#rhythm-2025winter .code06__back.--01 {
  top: 192px;
  left: 197px;
}
#rhythm-2025winter .code06__text {
  top: 152px;
  right: 97px;
}
#rhythm-2025winter .code06__credit {
  margin-top: -10px;
}
#rhythm-2025winter .foot {
  color: #fff;
  background: #494929;
  margin-top: 363px;
  padding-top: 115px;
  padding-bottom: 95px;
  text-align: center;
}
#rhythm-2025winter .foot__inner {
  margin: 0 auto;
}
#rhythm-2025winter .foot__logo {
  width: 422px;
  margin: 0 auto;
}
#rhythm-2025winter .foot__title {
  margin-top: 30px;
  font-size: 24px;
  font-weight: 400;
  letter-spacing: 0.08em;
}
#rhythm-2025winter .foot__staff {
  font-size: 14px;
  line-height: 1.71;
  letter-spacing: 0.05em;
  margin-top: 38px;
}
#rhythm-2025winter .foot__note {
  font-size: 14px;
  letter-spacing: 0.05em;
  font-optical-sizing: auto;
  font-weight: 100;
  margin: 71px 0 48px;
}
#rhythm-2025winter .foot__btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  text-decoration: none;
  width: 432px;
  height: 50px;
  font-size: 14px;
  font-weight: 400;
  letter-spacing: 0.1em;
  line-height: 1;
  color: #494929;
  background: #ffffff;
  -webkit-transition: 0.3s;
  transition: 0.3s;
  margin: 0 auto;
}
#rhythm-2025winter .foot__btn:hover {
  opacity: 0.8;
}