@charset "UTF-8";
@font-face {
  font-family: "Linux Libertine";
  src: url("../fonts/LinLibertine_R.woff2") format("woff2"), url("../fonts/LinLibertine_R.woff") format("woff");
  font-weight: normal;
  font-style: normal;
  font-display: swap;
}
body {
  /* 主要なブラウザ向けの指定 */
  user-select: none;
  /* 古いSafari向けの指定 */
  -webkit-user-select: none;
  /* 古いFirefox向けの指定 */
  -moz-user-select: none;
  /* Microsoft Edge/IE向けの指定 */
  -ms-user-select: none;
}

.l-container {
  width: 100%;
}

.l-container #feature {
  margin: 0 auto;
  width: 100%;
  text-align: center;
  overflow: clip;
  position: relative;
}
.l-container #feature * {
  color: #0A0E0D;
  box-sizing: border-box;
}
.l-container #feature *::after {
  box-sizing: border-box;
}
.l-container #feature *::before {
  box-sizing: border-box;
}
.l-container #feature a {
  display: block;
  text-decoration: none;
  position: relative;
}
.l-container #feature a::after {
  content: "";
  opacity: 0;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transition: all 0.4s;
}
.l-container #feature a:hover {
  cursor: pointer;
}
.l-container #feature a:hover::after {
  opacity: 1;
  transition: 0.4s;
}
.l-container #feature .default-img {
  width: 100%;
  display: block;
}
.l-container #feature picture {
  display: block;
}
.l-container #feature .creditContainer {
  margin-top: 0.4285714286vw;
  margin-top: min(0.6rem, 6px);
  font-family: "Linux Libertine", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 0.9vw;
  font-size: min(1.26rem, 12.6px);
  letter-spacing: 0.025em;
  line-height: 0.6994285714vw;
  line-height: min(0.979rem, 9.79px);
}
.l-container #feature .creditContainer .credit {
  display: flex;
  flex-wrap: wrap;
}
.l-container #feature .creditContainer li a {
  text-decoration: none;
  transition: 0.3s;
}
.l-container #feature .creditContainer li a:hover {
  opacity: 0.6;
  cursor: pointer;
  text-decoration: none;
}
.l-container #feature .creditContainer li a::after {
  display: none;
}
.l-container #feature .creditContainer .price {
  margin-left: 0vw;
}
.l-container #feature .creditContainer .month {
  margin-left: 0.3428571429vw;
  margin-left: min(0.48rem, 4.8px);
}
.l-container #feature .container {
  margin: 0 auto 0;
  width: 100%;
  position: relative;
  z-index: 1;
}
.l-container #feature .container__mv {
  width: 100%;
}
.l-container #feature .container__inner {
  width: 140rem;
  margin: 0 auto;
  display: flex;
  justify-content: center;
  position: relative;
}
.l-container #feature .container__left {
  width: 100%;
}
.l-container #feature .container__left .fixed__wrapper {
  position: relative;
  height: 100%;
  padding-bottom: min(40rem, 400px);
}
.l-container #feature .container__left--title {
  width: min(20rem, 200px);
  margin-inline: auto;
  position: sticky;
  top: 50vh;
}
.l-container #feature .container__left--title picture {
  transition: opacity 0.8s ease;
}
.l-container #feature .container__left--title .blue {
  opacity: 1;
}
.l-container #feature .container__left--title .pink {
  position: absolute;
  top: 0rem;
  left: 0rem;
  opacity: 0;
}
.l-container #feature .container__left--title.is-pink .blue {
  opacity: 0;
}
.l-container #feature .container__left--title.is-pink .pink {
  opacity: 1;
}
.l-container #feature .container__center {
  width: min(45rem, 450px);
  margin: 0 auto min(12rem, 120px);
  flex-shrink: 0;
}
.l-container #feature .container__center--sec00 {
  position: relative;
}
.l-container #feature .container__center--sec00 .line {
  height: 11.5714285714vw;
  height: min(16.2rem, 162px);
  width: 0.1rem;
  background-color: #0A0E0D;
  margin-inline: auto;
  margin-top: 0vw;
}
.l-container #feature .container__center--sec00 .mv_text {
  width: 26.0142857143vw;
  width: min(36.42rem, 364.2px);
  margin: 7.7142857143vw auto 0;
  margin: min(10.8rem, 108px) auto 0;
}
.l-container #feature .container__center--sec00 .mv_title {
  width: 8.4857142857vw;
  width: min(11.88rem, 118.8px);
  margin: 6vw auto 0;
  margin: min(8.4rem, 84px) auto 0;
}
.l-container #feature .container__center--sec01 {
  position: relative;
  background-color: #B9D9EA;
  margin-top: 1.4142857143vw;
  margin-top: min(1.98rem, 19.8px);
}
.l-container #feature .container__center--sec01 .link01 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
}
.l-container #feature .container__center--sec01 .credit01 {
  width: 12.8571428571vw;
  width: min(18rem, 180px);
  margin-left: 0.5571428571vw;
  margin-left: min(0.78rem, 7.8px);
}
.l-container #feature .container__center--sec01 .credit02 {
  width: 15.4285714286vw;
  width: min(21.6rem, 216px);
  margin-top: 0.6428571429vw;
  margin-top: min(0.9rem, 9px);
  margin-left: 15.9857142857vw;
  margin-left: min(22.38rem, 223.8px);
}
.l-container #feature .container__center--sec01 .credit02 .credit {
  justify-content: flex-end;
}
.l-container #feature .container__center--sec01 .link02 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 0.4285714286vw;
  margin-top: min(0.6rem, 6px);
}
.l-container #feature .container__center--sec02 {
  position: relative;
}
.l-container #feature .container__center--sec02 .link03 {
  width: 14.3571428571vw;
  width: min(20.1rem, 201px);
  margin-inline: auto;
  margin-top: 7.8857142857vw;
  margin-top: min(11.04rem, 110.4px);
}
.l-container #feature .container__center--sec02 p {
  margin: 0;
}
.l-container #feature .container__center--sec02 .credit__anim {
  margin-top: 0.0857142857vw;
  margin-top: min(0.12rem, 1.2px);
  font-family: "Linux Libertine", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 0.9vw;
  font-size: min(1.26rem, 12.6px);
  letter-spacing: 0.025em;
  line-height: 0.6994285714vw;
  line-height: min(0.979rem, 9.79px);
}
.l-container #feature .container__center--sec02 .credit__position01 {
  position: absolute;
  top: 18.8142857143vw;
  top: min(26.34rem, 263.4px);
  left: 6.6428571429vw;
  left: min(9.3rem, 93px);
  z-index: 10;
}
.l-container #feature .container__center--sec02 .credit__position02 {
  position: absolute;
  top: 18.8142857143vw;
  top: min(26.34rem, 263.4px);
  left: 17.6571428571vw;
  left: min(24.72rem, 247.2px);
  z-index: 10;
}
.l-container #feature .container__center--sec02 .link04 {
  width: 14.3571428571vw;
  width: min(20.1rem, 201px);
  margin-left: 8.4428571429vw;
  margin-left: min(11.82rem, 118.2px);
  margin-top: 0.4285714286vw;
  margin-top: min(0.6rem, 6px);
}
.l-container #feature .container__center--sec03 {
  position: relative;
}
.l-container #feature .container__center--sec03 .link05 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 8.7vw;
  margin-top: min(12.18rem, 121.8px);
}
.l-container #feature .container__center--sec03 .credit03 {
  width: 12.8571428571vw;
  width: min(18rem, 180px);
  margin-left: 0.5571428571vw;
  margin-left: min(0.78rem, 7.8px);
}
.l-container #feature .container__center--sec03 .credit04 {
  width: 15.4285714286vw;
  width: min(21.6rem, 216px);
  margin-top: 1.2428571429vw;
  margin-top: min(1.74rem, 17.4px);
  margin-left: 15.9857142857vw;
  margin-left: min(22.38rem, 223.8px);
}
.l-container #feature .container__center--sec03 .credit04 .credit {
  justify-content: flex-end;
}
.l-container #feature .container__center--sec03 .link06 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 0.5142857143vw;
  margin-top: min(0.72rem, 7.2px);
}
.l-container #feature .container__center--sec03 .img01 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: -0.1285714286vw;
  margin-top: max(-0.18rem, -1.8px);
}
.l-container #feature .container__center--sec04 {
  position: relative;
}
.l-container #feature .container__center--sec04 .link07 {
  width: 24vw;
  width: min(33.6rem, 336px);
  margin-left: auto;
  margin-top: 9.3vw;
  margin-top: min(13.02rem, 130.2px);
}
.l-container #feature .container__center--sec04 .rabel {
  width: 4.8985714286vw;
  width: min(6.858rem, 68.58px);
  position: absolute;
  top: 1.8428571429vw;
  top: min(2.58rem, 25.8px);
  left: 4.7571428571vw;
  left: min(6.66rem, 66.6px);
  pointer-events: none;
}
.l-container #feature .container__center--sec04 .creditContainer {
  margin-top: 0.8142857143vw;
  margin-top: min(1.14rem, 11.4px);
}
.l-container #feature .container__center--sec04 .creditContainer .credit {
  width: 18vw;
  width: min(25.2rem, 252px);
  margin-left: 8.1428571429vw;
  margin-left: min(11.4rem, 114px);
  gap: 0 0.9428571429vw;
  gap: 0 min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec05 {
  position: relative;
  background-color: #B9D9EA;
}
.l-container #feature .container__center--sec05 .swiper-container {
  margin-top: 11.4857142857vw;
  margin-top: min(16.08rem, 160.8px);
  overflow: visible !important;
  position: relative;
  width: min(45rem, 450px);
  overflow: hidden;
}
.l-container #feature .container__center--sec05 .swiper-container .swiper-wrapper {
  overflow: hidden;
}
.l-container #feature .container__center--sec05 .swiper-container .swiper-slide {
  width: min(45rem, 450px) !important;
  overflow: hidden;
}
.l-container #feature .container__center--sec05 .swiper-container .swiper-slide a {
  overflow: hidden;
}
.l-container #feature .container__center--sec05 .swiper-container .swiper-slide img {
  width: 100%;
  height: 100%;
}
.l-container #feature .container__center--sec05 .credit06 {
  width: 18vw;
  width: min(25.2rem, 252px);
  margin-left: 0.5571428571vw;
  margin-left: min(0.78rem, 7.8px);
}
.l-container #feature .container__center--sec05 .credit06 .credit {
  gap: 0 0.9428571429vw;
  gap: 0 min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec05 .credit07 {
  width: 15.4285714286vw;
  width: min(21.6rem, 216px);
  margin-top: 1.3285714286vw;
  margin-top: min(1.86rem, 18.6px);
  margin-left: 15.9857142857vw;
  margin-left: min(22.38rem, 223.8px);
}
.l-container #feature .container__center--sec05 .credit07 .credit {
  justify-content: flex-end;
}
.l-container #feature .container__center--sec05 .link10 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 0.3857142857vw;
  margin-top: min(0.54rem, 5.4px);
}
.l-container #feature .container__center--sec06 {
  position: relative;
}
.l-container #feature .container__center--sec06 .img02 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 0.9428571429vw;
  margin-top: min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec06 .link11 {
  width: 24vw;
  width: min(33.6rem, 336px);
  margin-left: auto;
  margin-top: 8.1428571429vw;
  margin-top: min(11.4rem, 114px);
}
.l-container #feature .container__center--sec06 .rabel {
  width: 4.8985714286vw;
  width: min(6.858rem, 68.58px);
  position: absolute;
  bottom: 6.3428571429vw;
  bottom: min(8.88rem, 88.8px);
  left: 4.7571428571vw;
  left: min(6.66rem, 66.6px);
  pointer-events: none;
}
.l-container #feature .container__center--sec06 .creditContainer {
  margin-top: 0.8142857143vw;
  margin-top: min(1.14rem, 11.4px);
}
.l-container #feature .container__center--sec06 .creditContainer .credit {
  width: 22.7142857143vw;
  width: min(31.8rem, 318px);
  margin-left: 8.1428571429vw;
  margin-left: min(11.4rem, 114px);
  gap: 0 0.9428571429vw;
  gap: 0 min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec07 {
  position: relative;
}
.l-container #feature .container__center--sec07 .link12 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 7.5428571429vw;
  margin-top: min(10.56rem, 105.6px);
}
.l-container #feature .container__center--sec07 .credit09 {
  width: 18vw;
  width: min(25.2rem, 252px);
  margin-left: 0.5571428571vw;
  margin-left: min(0.78rem, 7.8px);
  margin-top: 0.5142857143vw;
  margin-top: min(0.72rem, 7.2px);
}
.l-container #feature .container__center--sec07 .credit09 .credit {
  gap: 0 0.9428571429vw;
  gap: 0 min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec07 .credit10 {
  width: 15.4285714286vw;
  width: min(21.6rem, 216px);
  margin-top: 1.8428571429vw;
  margin-top: min(2.58rem, 25.8px);
  margin-left: 16.1571428571vw;
  margin-left: min(22.62rem, 226.2px);
}
.l-container #feature .container__center--sec07 .credit10 .credit {
  justify-content: flex-end;
}
.l-container #feature .container__center--sec07 .link13 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 0.5571428571vw;
  margin-top: min(0.78rem, 7.8px);
}
.l-container #feature .container__center--sec08 {
  position: relative;
}
.l-container #feature .container__center--sec08 .link14 {
  width: 14.3571428571vw;
  width: min(20.1rem, 201px);
  margin-left: 9.1285714286vw;
  margin-left: min(12.78rem, 127.8px);
  margin-top: 5.0571428571vw;
  margin-top: min(7.08rem, 70.8px);
}
.l-container #feature .container__center--sec08 p {
  margin: 0;
}
.l-container #feature .container__center--sec08 .credit__anim {
  margin-top: 0.0857142857vw;
  margin-top: min(0.12rem, 1.2px);
  font-family: "Linux Libertine", serif;
  font-weight: 400;
  font-style: normal;
  font-size: 0.9vw;
  font-size: min(1.26rem, 12.6px);
  letter-spacing: 0.025em;
  line-height: 0.6994285714vw;
  line-height: min(0.979rem, 9.79px);
}
.l-container #feature .container__center--sec08 .credit__position01 {
  position: absolute;
  top: 18.3857142857vw;
  top: min(25.74rem, 257.4px);
  left: 4.7571428571vw;
  left: min(6.66rem, 66.6px);
  z-index: 10;
}
.l-container #feature .container__center--sec08 .credit__position02 {
  position: absolute;
  top: 18.3857142857vw;
  top: min(25.74rem, 257.4px);
  left: 16.7142857143vw;
  left: min(23.4rem, 234px);
  z-index: 10;
}
.l-container #feature .container__center--sec08 .link15 {
  width: 14.3571428571vw;
  width: min(20.1rem, 201px);
  margin-left: 8.6571428571vw;
  margin-left: min(12.12rem, 121.2px);
  margin-top: 0.1714285714vw;
  margin-top: min(0.24rem, 2.4px);
}
.l-container #feature .container__center--sec09 {
  position: relative;
  background-color: #B9D9EA;
}
.l-container #feature .container__center--sec09 .link16 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 9.3vw;
  margin-top: min(13.02rem, 130.2px);
}
.l-container #feature .container__center--sec09 .credit11 {
  width: 18vw;
  width: min(25.2rem, 252px);
  margin-left: 0.8142857143vw;
  margin-left: min(1.14rem, 11.4px);
  margin-top: 0.6857142857vw;
  margin-top: min(0.96rem, 9.6px);
}
.l-container #feature .container__center--sec09 .credit11 .credit {
  gap: 0 0.9428571429vw;
  gap: 0 min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec09 .credit12 {
  width: 15.4285714286vw;
  width: min(21.6rem, 216px);
  margin-top: 0.9428571429vw;
  margin-top: min(1.32rem, 13.2px);
  margin-left: 15.8571428571vw;
  margin-left: min(22.2rem, 222px);
}
.l-container #feature .container__center--sec09 .credit12 .credit {
  justify-content: flex-end;
}
.l-container #feature .container__center--sec09 .swiper-container {
  margin-top: 0.6vw;
  margin-top: min(0.84rem, 8.4px);
  overflow: visible !important;
  position: relative;
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  overflow: hidden;
}
.l-container #feature .container__center--sec09 .swiper-container .swiper-wrapper {
  overflow: hidden;
}
.l-container #feature .container__center--sec09 .swiper-container .swiper-slide {
  width: min(45rem, 450px) !important;
  overflow: hidden;
}
.l-container #feature .container__center--sec09 .swiper-container .swiper-slide a {
  overflow: hidden;
}
.l-container #feature .container__center--sec09 .swiper-container .swiper-slide img {
  width: 100%;
  height: 100%;
}
.l-container #feature .container__center--sec09 .img03 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 0rem;
}
.l-container #feature .container__center--sec10 {
  position: relative;
}
.l-container #feature .container__center--sec10 .link19 {
  width: 24vw;
  width: min(33.6rem, 336px);
  margin-left: auto;
  margin-top: 7.8857142857vw;
  margin-top: min(11.04rem, 110.4px);
}
.l-container #feature .container__center--sec10 .rabel {
  width: 4.8985714286vw;
  width: min(6.858rem, 68.58px);
  position: absolute;
  top: 5.9142857143vw;
  top: min(8.28rem, 82.8px);
  left: 5.2714285714vw;
  left: min(7.38rem, 73.8px);
  pointer-events: none;
}
.l-container #feature .container__center--sec10 .creditContainer {
  margin-top: 0.8142857143vw;
  margin-top: min(1.14rem, 11.4px);
}
.l-container #feature .container__center--sec10 .creditContainer .credit {
  width: 18vw;
  width: min(25.2rem, 252px);
  margin-left: 8.1428571429vw;
  margin-left: min(11.4rem, 114px);
  gap: 0 0.9428571429vw;
  gap: 0 min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec11 {
  position: relative;
}
.l-container #feature .container__center--sec11 .swiper-container {
  margin-top: 8.1857142857vw;
  margin-top: min(11.46rem, 114.6px);
  overflow: visible !important;
  position: relative;
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  overflow: hidden;
}
.l-container #feature .container__center--sec11 .swiper-container .swiper-wrapper {
  overflow: hidden;
}
.l-container #feature .container__center--sec11 .swiper-container .swiper-slide {
  width: min(45rem, 450px) !important;
  overflow: hidden;
}
.l-container #feature .container__center--sec11 .swiper-container .swiper-slide a {
  overflow: hidden;
}
.l-container #feature .container__center--sec11 .swiper-container .swiper-slide img {
  width: 100%;
  height: 100%;
}
.l-container #feature .container__center--sec11 .credit14 {
  width: 21.4285714286vw;
  width: min(30rem, 300px);
  margin-left: 0.8142857143vw;
  margin-left: min(1.14rem, 11.4px);
  margin-top: 0.6857142857vw;
  margin-top: min(0.96rem, 9.6px);
}
.l-container #feature .container__center--sec11 .credit14 .credit {
  gap: 0 0.9428571429vw;
  gap: 0 min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec11 .credit15 {
  width: 15vw;
  width: min(21rem, 210px);
  margin-top: 0.6857142857vw;
  margin-top: min(0.96rem, 9.6px);
  margin-left: 16.2857142857vw;
  margin-left: min(22.8rem, 228px);
}
.l-container #feature .container__center--sec11 .credit15 .credit {
  justify-content: flex-end;
}
.l-container #feature .container__center--sec11 .link22 {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 0.8142857143vw;
  margin-top: min(1.14rem, 11.4px);
}
.l-container #feature .container__center--sec12 {
  position: relative;
}
.l-container #feature .container__center--sec12 .link23 {
  width: 24vw;
  width: min(33.6rem, 336px);
  margin-left: auto;
  margin-top: 8.7428571429vw;
  margin-top: min(12.24rem, 122.4px);
}
.l-container #feature .container__center--sec12 .rabel {
  width: 4.8985714286vw;
  width: min(6.858rem, 68.58px);
  position: absolute;
  top: 5.2285714286vw;
  top: min(7.32rem, 73.2px);
  left: 5.7vw;
  left: min(7.98rem, 79.8px);
  pointer-events: none;
}
.l-container #feature .container__center--sec12 .creditContainer {
  margin-top: 0.8142857143vw;
  margin-top: min(1.14rem, 11.4px);
}
.l-container #feature .container__center--sec12 .creditContainer .credit {
  width: 13.7142857143vw;
  width: min(19.2rem, 192px);
  margin-left: 8.1428571429vw;
  margin-left: min(11.4rem, 114px);
  gap: 0 0.9428571429vw;
  gap: 0 min(1.32rem, 13.2px);
}
.l-container #feature .container__center--sec13 {
  position: relative;
}
.l-container #feature .container__center--sec13 .staff {
  width: 32.1428571429vw;
  width: min(45rem, 450px);
  margin-top: 6.6857142857vw;
  margin-top: min(9.36rem, 93.6px);
}
.l-container #feature .container__center--sec13 .linkA {
  width: 6.9vw;
  width: min(9.66rem, 96.6px);
  position: absolute;
  top: 16.4571428571vw;
  top: min(23.04rem, 230.4px);
  left: 1.7142857143vw;
  left: min(2.4rem, 24px);
}
.l-container #feature .container__right {
  width: 100%;
}
.l-container #feature .container__right .fixed__wrapper {
  position: relative;
  height: 100%;
  padding-bottom: min(40rem, 400px);
}
.l-container #feature .container__right--title {
  width: min(14.5rem, 145px);
  margin-inline: auto;
  position: sticky;
  top: 50vh;
}
.l-container #feature .container__right--title picture {
  transition: opacity 0.8s ease;
}
.l-container #feature .container__right--title .blue {
  opacity: 1;
}
.l-container #feature .container__right--title .pink {
  position: absolute;
  top: 0rem;
  left: 0rem;
  opacity: 0;
}
.l-container #feature .container__right--title.is-pink .blue {
  opacity: 0;
}
.l-container #feature .container__right--title.is-pink .pink {
  opacity: 1;
}

.target[data-animation=fadeIn] {
  opacity: 0;
  filter: blur(2rem);
  transition: opacity 2s, transform 2s, filter 2s;
}
.target[data-animation=fadeIn][data-is-active=true] {
  opacity: 1;
  filter: blur(0);
}

.target[data-animation=fadeInUp] {
  opacity: 0;
  transform: translateY(5rem);
  transition: opacity 1.5s ease, transform 1.5s ease;
}
.target[data-animation=fadeInUp][data-is-active=true] {
  opacity: 1;
  transform: translateY(0);
}

.l-footer,
.pc-footer {
  overflow: hidden;
  padding: 0;
  margin: 0;
}

@media screen and (min-width: 1400px) {
  html {
    font-size: 0.7142857143vw;
  }
}

@media screen and (max-width: 1400px) {
  html {
    font-size: 0.7142857143vw;
  }
}