@charset "UTF-8";
html {
  font-size: 10px;
}

.l-container {
  width: 100%;
}

.l-container #feature {
  margin: 0 auto;
  font-feature-settings: "palt";
  min-width: 140rem;
  width: 100%;
  text-align: center;
  overflow: hidden;
}

.l-container #feature img {
  image-rendering: -webkit-optimize-contrast;
  image-rendering: -moz-crisp-edges;
}

.l-container #feature .default-img {
  width: 100%;
  height: auto;
  display: block;
}

.l-container #feature * {
  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%;
  background: rgba(255, 255, 255, 0.6);
  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 .main {
  margin: 0 auto;
}

.l-container #feature .creditContainer {
  color: #231815;
  margin-top: 3.2rem;
  font-family: "nimbus-sans", sans-serif;
  font-weight: 400;
  font-style: normal;
  font-size: 1.2rem;
  letter-spacing: 0.05em;
  line-height: 2.6rem;
}

.l-container #feature .creditContainer * {
  color: #231815;
}

.l-container #feature .creditContainer .credit {
  display: flex;
  flex-wrap: wrap;
  gap: 0 1.3rem;
}

.l-container #feature .creditContainer li {
  position: relative;
}

.l-container #feature .creditContainer li::before {
  content: '';
  position: absolute;
  width: 100%;
  height: 1px;
  left: 0;
  top: 1.8rem;
  background-color: #231815;
}

.l-container #feature .creditContainer li a {
  transition: 0.3s;
  text-decoration: none;
}

.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: 0.4rem;
}

.l-container #feature .hero {
  margin: 2.8rem auto 0;
  width: 100%;
  position: relative;
}

.l-container #feature .hero__inner {
  width: 140rem;
  margin: 0 auto 0;
}

.l-container #feature .hero__img {
  margin: 0 auto 0;
  width: 85rem;
}

.l-container #feature .hero__text {
  margin-top: 9.4rem;
  font-weight: 500;
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN', Meiryo, メイリオ, Helvetica, Arial, sans-serif;
  font-size: 1.5rem;
  letter-spacing: 0.05em;
  line-height: 3.6rem;
  color: #000000;
  font-feature-settings: normal;
}

.l-container #feature .container {
  margin: 0 auto;
  width: 100%;
  position: relative;
}

.l-container #feature .container__inner {
  width: 140rem;
  margin: 0 auto;
}

@keyframes flowing_left {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(-100%);
    transform: translateX(-100%);
  }
}

@keyframes flowing_right {
  0% {
    -webkit-transform: translateX(0);
    transform: translateX(0);
  }
  100% {
    -webkit-transform: translateX(100%);
    transform: translateX(100%);
  }
}

.l-container #feature .scroll-text {
  display: flex;
  justify-content: flex-start;
  overflow: hidden;
  gap: 7.5rem;
  height: 6.27rem;
  width: auto;
  margin-top: 10.6rem;
}

.l-container #feature .scroll-text img {
  -webkit-animation: flowing_left 50s linear infinite;
  animation: flowing_left 50s linear infinite;
}

.l-container #feature .scroll-right {
  justify-content: flex-end;
}

.l-container #feature .scroll-right img {
  -webkit-animation: flowing_right 50s linear infinite;
  animation: flowing_right 50s linear infinite;
}

.l-container #feature .scroll-text-2 {
  margin-top: 10.2rem;
}

.l-container #feature .bottom-text {
  margin-top: 3.3rem;
  font-weight: 500;
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN', Meiryo, メイリオ, Helvetica, Arial, sans-serif;
  font-size: 1.3rem;
  text-align: justify;
  line-height: 2.7rem;
  letter-spacing: 0.05em;
  color: #000000;
}

.l-container #feature .textbox p {
  margin-top: 1.5rem;
  font-weight: 500;
  font-family: 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN', Meiryo, メイリオ, Helvetica, Arial, sans-serif;
  font-size: 1.3rem;
  text-align: justify;
  line-height: 2.7rem;
  letter-spacing: 0.05em;
  color: #000000;
}

.l-container #feature .container01 {
  padding-bottom: 9rem;
  background-color: #D1D0E0;
  position: relative;
}

.l-container #feature .container01 .bg-circle {
  width: calc(1460 * (100vw / 1400));
  position: absolute;
  z-index: -1;
  top: -46.9rem;
  left: -3rem;
}

.l-container #feature .container01__inner {
  margin: 10rem auto 0rem;
  position: relative;
  display: flex;
}

.l-container #feature .container01__fig01 {
  width: 48rem;
  margin-left: 9.2rem;
  margin-top: 0.4rem;
}

.l-container #feature .container01__fig02 {
  width: 56.2rem;
  margin-left: 10.8rem;
}

.l-container #feature .container01__fig02 .textbox .title-text {
  width: 37.8rem;
  margin-left: 0.4rem;
}

.l-container #feature .container01__fig02 .wrap {
  display: flex;
  gap: 5.1rem;
  margin-top: 3.8rem;
}

.l-container #feature .container01__fig02--img1, .l-container #feature .container01__fig02--img2 {
  width: 25.5rem;
}

.l-container #feature .container01__fig02--img1 {
  margin-top: 3.4rem;
}

.l-container #feature .container02__inner {
  display: flex;
  margin-top: 20.3rem;
}

.l-container #feature .container02 .wrap {
  display: flex;
}

.l-container #feature .container02__fig03 {
  margin: 0rem 5.3rem 0 30.8rem;
  position: relative;
  width: 55.91rem;
}

.l-container #feature .container02__fig03--img1, .l-container #feature .container02__fig03--img2, .l-container #feature .container02__fig03--img3 {
  width: 25rem;
}

.l-container #feature .container02__fig03--img1 {
  position: absolute;
  left: -31rem;
  top: 17.5rem;
}

.l-container #feature .container02__fig03--img2 {
  margin: 13.3rem 6rem 0 0;
}

.l-container #feature .container02__fig03--img3 {
  margin-top: 7.5rem;
}

.l-container #feature .container02__fig03 .textbox .title-text {
  width: 12.94rem;
}

.l-container #feature .container02__fig03 .textbox p {
  margin-top: 2.5rem;
}

.l-container #feature .container02__fig04 {
  width: 48rem;
}

.l-container #feature .container02__fig04 .creditContainer {
  width: 25rem;
}

.l-container #feature .container03__inner {
  display: flex;
  margin-top: 18.9rem;
  position: relative;
}

.l-container #feature .container03__fig05 {
  margin: 0.5rem 4.4rem 0 30.6rem;
  width: 48rem;
}

.l-container #feature .container03__fig05 .creditContainer {
  width: 23rem;
}

.l-container #feature .container03__fig06 {
  width: 50rem;
}

.l-container #feature .container03__fig06 .textbox .title-text {
  width: 33.63rem;
}

.l-container #feature .container03__fig06 .textbox p {
  margin-top: 2.7rem;
  letter-spacing: -0.052em;
}

.l-container #feature .container03__fig06--img1, .l-container #feature .container03__fig06--img2 {
  width: 25rem;
}

.l-container #feature .container03__fig06--img1 {
  margin: 5rem auto 0;
}

.l-container #feature .container03__fig06--img2 {
  position: absolute;
  left: -83rem;
  top: 17rem;
}

.l-container #feature .container03__fig06 .bottom-text {
  margin-top: 5.2rem;
}

.l-container #feature .view-all {
  width: 9rem;
  margin: 16.6rem auto 8rem;
}

.l-container #feature .target {
  opacity: 0;
  -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
  filter: alpha(opacity=0);
  -webkit-transform: translateY(20px);
  transform: translateY(20px);
  -webkit-transition: opacity 1.4s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: opacity 1.4s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: opacity 1.4s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition: opacity 1.4s cubic-bezier(0.165, 0.84, 0.44, 1), transform 0.7s cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 0.7s cubic-bezier(0.165, 0.84, 0.44, 1);
}

.l-container #feature .target[data-is-active="true"] {
  opacity: 1;
  -ms-filter: none;
  -webkit-filter: none;
  filter: none;
  -webkit-transform: translateY(0);
  transform: translateY(0);
}

.area-header {
  max-width: 100%;
}

.breadcrumbs {
  max-width: 100%;
}

.feature-snslist {
  overflow: hidden;
}

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

.pic__accordion {
  display: none !important;
}

.pc-header {
  overflow: hidden;
}

@media screen and (max-width: 1400px) {
  html {
    font-size: calc(10 * (100vw / 1400));
  }
}
