@charset "UTF-8";
:root {
  --scrollbar_width: 0px;
}

@font-face {
  font-family: "source-han-sans-japanese";
  src: url("../fonts/SourceHanSansJP-Regular.otf") format("opentype");
  font-weight: normal;
  font-style: normal;
}
@font-face {
  font-family: "source-han-sans-japanese";
  src: url("../fonts/SourceHanSansJP-Bold.otf") format("opentype");
  font-weight: bold;
  font-style: normal;
}
.max-w-content {
  max-width: 100%;
  padding: 0;
}

.fullWidth {
  position: relative;
  left: calc(50% - (50vw - var(--scrollbar_width) / 2));
  width: calc(100vw - var(--scrollbar_width));
  max-width: 100vw !important;
}

.l-container {
  max-width: 1920px;
  margin-left: auto;
  margin-right: auto;
  font-family: "source-han-sans-japanese", sans-serif;
  color: #000;
}
.l-container h2, .l-container h3, .l-container h4 {
  font-weight: 700;
}

section {
  margin-top: inherit;
  margin-bottom: inherit;
}

.ah-container {
  position: relative;
  max-width: min(65.625vw, 1260px);
  margin-left: auto;
  margin-right: auto;
}
@media (max-width: 767px) {
  .ah-container {
    max-width: none;
  }
}

footer {
  margin-top: 2.875rem !important;
}
@media (max-width: 767px) {
  footer {
    margin-top: 1px !important;
  }
}

.fadeIn {
  opacity: 0;
  -webkit-transition: opacity 1.2s;
  transition: opacity 1.2s;
  -webkit-transition-delay: 0.2s;
          transition-delay: 0.2s;
}
.fadeIn.-show {
  opacity: 1;
}
.fadeIn.-noDelay {
  -webkit-transition-delay: 0s;
          transition-delay: 0s;
}

ul[data-design-block-name=パンくず] {
  width: 100%;
  max-width: 67.7083333333%;
  padding-left: 1rem;
  padding-right: 1rem;
}
@media (max-width: 767px) {
  ul[data-design-block-name=パンくず] {
    max-width: none;
  }
}

.inline-block {
  display: inline-block;
}

@media (min-width: 768px) {
  .show-sp {
    display: none;
  }
}
@media (max-width: 767px) {
  .hide-sp {
    display: none;
  }
}
.ah-title {
  display: none;
}

.c-ah-brand {
  position: absolute;
  right: min(-6.0416666667vw, -116px);
  z-index: 1;
}
.c-ah-brand img {
  width: min(0.9375vw, 18px);
}
@media (max-width: 767px) {
  .c-ah-brand {
    display: none;
  }
}

.ah-visual {
  position: relative;
  margin-top: min(3.8333333333vw, 73.6px);
  margin-bottom: 0;
}
@media (max-width: 767px) {
  .ah-visual {
    position: sticky;
    top: -1px;
  }
  .ah-visual::before {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    height: calc(100lvh - 270px);
    z-index: 2;
    content: "";
    display: block;
    background: #000;
    opacity: 0;
    -webkit-transition: opacity 0.8s;
    transition: opacity 0.8s;
  }
}
@media (max-width: 767px) and (max-width: 767px) {
  .ah-visual::before {
    height: calc(100vh - 56px);
  }
}
@media (max-width: 767px) {
  .ah-visual.-isSticky::before {
    opacity: 0.7;
  }
  .ah-visual.-isSticky .ah-visual__scroll {
    opacity: 0;
  }
}
.ah-visual__slider {
  width: min(65.625vw, 1260px);
  margin: 0 auto;
}
.ah-visual__slider img {
  width: 100%;
}
@media (max-width: 767px) {
  .ah-visual__slider {
    width: 100%;
    margin: 0;
  }
  .ah-visual__slider img {
    height: calc(100vh - 56px);
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.ah-visual .ah-container {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: 0 auto;
}
.ah-visual__brand {
  bottom: initial;
  top: min(calc(100vh - min(15.1041666667vw, 290px) - 204px), min(29.9588541667vw, 575.21px));
}
.ah-visual__scroll {
  position: absolute;
  left: min(1.9791666667vw, 38px);
  top: min(calc(100vh - min(11.4583333333vw, 220px) - 204px), min(36.9791666667vw, 710px));
  z-index: 1;
  padding-left: min(0.8333333333vw, 16px);
  -webkit-transition-duration: 0.8s;
          transition-duration: 0.8s;
}
@media (max-width: 767px) {
  .ah-visual__scroll {
    left: 90.4vw;
    top: 99.7333333333vw;
    padding-left: 1.8266666667vw;
  }
}
.ah-visual__scroll .text {
  width: min(1.140625vw, 21.9px);
}
@media (max-width: 767px) {
  .ah-visual__scroll .text {
    width: 2.1672vw;
  }
}
.ah-visual__scroll .arrow {
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: min(1.0907760417vw, 20.9429px);
  height: 0;
  overflow: hidden;
}
@media (max-width: 767px) {
  .ah-visual__scroll .arrow {
    width: 2.1208266667vw;
  }
}
.ah-visual__scroll .arrow_inner {
  display: block;
  position: relative;
  bottom: 0;
  width: min(1.0907760417vw, 20.9429px);
  height: min(9.078125vw, 174.3px);
  background-image: url(../images/arrow-scroll.svg);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: min(1.0907760417vw, 20.9429px) auto;
}
@media (max-width: 767px) {
  .ah-visual__scroll .arrow_inner {
    width: 2.1208266667vw;
    height: 17.1324266667vw;
    background-image: url(../images/arrow-scroll_sp.svg);
    background-size: 2.1208266667vw auto;
  }
}
.ah-visual.-show .arrow.-start {
  -webkit-animation: scroll_anm 1s cubic-bezier(0.68, 0.24, 0.07, 1.02) 1 forwards;
          animation: scroll_anm 1s cubic-bezier(0.68, 0.24, 0.07, 1.02) 1 forwards;
}
@media (max-width: 767px) {
  .ah-visual.-show .arrow.-start {
    -webkit-animation: scroll_anm_sp 1s cubic-bezier(0.68, 0.24, 0.07, 1.02) 1 forwards;
            animation: scroll_anm_sp 1s cubic-bezier(0.68, 0.24, 0.07, 1.02) 1 forwards;
  }
}
.ah-visual.-show .arrow.-start .arrow_inner {
  -webkit-animation: scroll_anm2 1s cubic-bezier(0.68, 0.24, 0.07, 1.02) 1 1s forwards;
          animation: scroll_anm2 1s cubic-bezier(0.68, 0.24, 0.07, 1.02) 1 1s forwards;
}

@-webkit-keyframes scroll_anm {
  0% {
    height: 0;
  }
  100% {
    height: min(9.0625vw, 174px);
  }
}

@keyframes scroll_anm {
  0% {
    height: 0;
  }
  100% {
    height: min(9.0625vw, 174px);
  }
}
@-webkit-keyframes scroll_anm_sp {
  0% {
    height: 0;
  }
  100% {
    height: 17.1324266667vw;
  }
}
@keyframes scroll_anm_sp {
  0% {
    height: 0;
  }
  100% {
    height: 17.1324266667vw;
  }
}
@-webkit-keyframes scroll_anm2 {
  0% {
    top: 0;
    height: 100%;
  }
  100% {
    top: 100%;
    height: 0%;
  }
}
@keyframes scroll_anm2 {
  0% {
    top: 0;
    height: 100%;
  }
  100% {
    top: 100%;
    height: 0%;
  }
}
.ah-detail {
  padding-bottom: min(8.90625vw, 171px);
}
@media (max-width: 767px) {
  .ah-detail {
    padding-bottom: 0;
  }
}
.ah-detail__inner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin: min(9.6875vw, 186px) 0 0 min(5.4166666667vw, 104px);
}
@media (max-width: 767px) {
  .ah-detail__inner {
    display: block;
    padding: 0;
    margin: 0;
    margin-top: 1rem;
  }
}
.ah-detail__text {
  position: relative;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}
.ah-detail__text p {
  font-size: min(1vw, 19.2px);
  line-height: 2.04;
  margin-bottom: 1em;
  -webkit-transform: scale(0.9, 1);
          transform: scale(0.9, 1);
  -webkit-transform-origin: top left;
          transform-origin: top left;
  letter-spacing: 0.2em;
  white-space: nowrap;
}
.ah-detail__text p:last-child {
  margin-left: 0;
  margin-top: min(3.6458333333vw, 70px);
  -webkit-transform: unset;
          transform: unset;
}
.ah-detail__text p:last-child img {
  width: min(13.7369791667vw, 263.75px);
}
@media (max-width: 767px) {
  .ah-detail__text {
    width: 100%;
    padding: 0 9.0666666667vw 16.8vw;
  }
  .ah-detail__text p {
    color: #fff;
    font-size: 4.1333333333vw;
  }
  .ah-detail__text p:last-child {
    margin: 13.3333333333vw 0 0;
  }
  .ah-detail__text p:last-child img {
    width: 57.6vw;
  }
}
.ah-detail__points {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: reverse;
      -ms-flex-direction: column-reverse;
          flex-direction: column-reverse;
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-right: min(-0.3645833333vw, -7px);
  margin-top: min(17.7083333333vw, 340px);
}
@media (max-width: 767px) {
  .ah-detail__points {
    position: relative;
    display: block;
    width: 100%;
    margin: 0;
    height: 154.6666666667vw;
    background: #fff;
  }
}
.ah-detail__points li {
  opacity: 0;
}
.ah-detail__points li img {
  width: 100%;
}
.ah-detail__points li:nth-of-type(1) {
  width: min(2.5583697917vw, 49.1207px);
  margin-right: min(26.7369270833vw, 513.349px);
}
@media (max-width: 767px) {
  .ah-detail__points li:nth-of-type(1) {
    width: 12vw;
    bottom: 0;
    left: 29.8666666667vw;
  }
}
.ah-detail__points li:nth-of-type(2) {
  width: min(8.731328125vw, 167.6415px);
  margin-right: min(23.968609375vw, 460.1973px);
  margin-bottom: min(0.596453125vw, 11.4519px);
}
@media (max-width: 767px) {
  .ah-detail__points li:nth-of-type(2) {
    width: 39.4666666667vw;
    bottom: 12vw;
    left: 14.6666666667vw;
  }
}
.ah-detail__points li:nth-of-type(3) {
  width: min(7.5569322917vw, 145.0931px);
  margin-right: min(20.7427395833vw, 398.2606px);
  margin-bottom: min(0.3964427083vw, 7.6117px);
}
@media (max-width: 767px) {
  .ah-detail__points li:nth-of-type(3) {
    width: 34.4vw;
    bottom: 24.4533333333vw;
    left: 35.2vw;
  }
}
.ah-detail__points li:nth-of-type(4) {
  width: min(7.4177916667vw, 142.4216px);
  margin-right: min(16.996828125vw, 326.3391px);
}
@media (max-width: 767px) {
  .ah-detail__points li:nth-of-type(4) {
    width: 33.7333333333vw;
    bottom: 41.8666666667vw;
    left: 49.92vw;
  }
}
.ah-detail__points li:nth-of-type(5) {
  width: min(8.8774635417vw, 170.4473px);
  margin-right: min(12.4758385417vw, 239.5361px);
}
@media (max-width: 767px) {
  .ah-detail__points li:nth-of-type(5) {
    width: 39.2vw;
    bottom: 53.3333333333vw;
    left: 3.0133333333vw;
  }
}
.ah-detail__points li:nth-of-type(6) {
  width: min(10.0644427083vw, 193.2373px);
  margin-right: min(6.9023697917vw, 132.5255px);
  margin-bottom: min(0.12284375vw, 2.3586px);
}
@media (max-width: 767px) {
  .ah-detail__points li:nth-of-type(6) {
    width: 44.48vw;
    top: 41.8666666667vw;
    left: 20.6133333333vw;
  }
}
.ah-detail__points li:nth-of-type(7) {
  width: min(10.8760364583vw, 208.8199px);
}
@media (max-width: 767px) {
  .ah-detail__points li:nth-of-type(7) {
    width: 49.5733333333vw;
    top: -1.0666666667vw;
    left: 43.6266666667vw;
  }
}
@media (max-width: 767px) {
  .ah-detail__points li {
    position: absolute;
    margin: 0 !important;
  }
}

@-webkit-keyframes opacity_anm {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}

@keyframes opacity_anm {
  0% {
    opacity: 0;
  }
  100% {
    opacity: 1;
  }
}
.ah-links {
  padding-bottom: min(1.5625vw, 30px);
}
@media (max-width: 767px) {
  .ah-links {
    position: relative;
    z-index: 1;
    padding: 22.9333333333vw 0 0;
    background: #fff;
  }
  .ah-links .ah-container {
    padding: 0;
  }
}
.ah-links__banners {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: min(2.1875vw, 42px);
  width: min(60.3125vw, 1158px);
  margin: 0 auto;
}
@media (max-width: 767px) {
  .ah-links__banners {
    gap: 2.4vw;
    width: 100%;
  }
}
.ah-links__banners li {
  overflow: hidden;
}
.ah-links__banners .banner {
  position: relative;
  display: block;
  overflow: hidden;
}
.ah-links__banners .banner__image {
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}
.ah-links__banners .banner__title {
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: min(0.4166666667vw, 8px) min(0.5208333333vw, 10px);
  color: #fff;
  font-size: min(0.7083333333vw, 13.6px);
}
.ah-links__banners .banner__title > span {
  margin-right: min(1.5625vw, 30px);
}
.ah-links__banners .banner__title img {
  width: min(0.7291666667vw, 14px);
  -webkit-transition: all 0.25s;
  transition: all 0.25s;
}
@media (max-width: 767px) {
  .ah-links__banners .banner__title {
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 1.0666666667vw 1.6vw 1.0666666667vw 1.6vw;
    font-size: 2.4vw;
  }
  .ah-links__banners .banner__title img {
    width: 2.1333333333vw;
  }
  .ah-links__banners .banner__title .-spLong {
    display: inline-block;
    -webkit-transform: scale(0.8, 1);
            transform: scale(0.8, 1);
    -webkit-transform-origin: left top;
            transform-origin: left top;
    white-space: nowrap;
    font-size: 2.1333333333vw;
  }
}
@media (hover: hover) and (pointer: fine) {
  .ah-links__banners .banner:hover .banner__image {
    -webkit-transform: scale(1.15);
            transform: scale(1.15);
  }
  .ah-links__banners .banner:hover .banner__title img {
    -webkit-transform: translateX(0.5rem);
            transform: translateX(0.5rem);
  }
}
.ah-links__banners .banner.-cocoonPoint .banner__title {
  background: #EE7F67;
}
@media (max-width: 767px) {
  .ah-links__banners .banner.-cocoonPoint .banner__title img {
    -webkit-transform: translateX(-6.6666666667vw);
            transform: translateX(-6.6666666667vw);
  }
}
.ah-links__banners .banner.-influencer .banner__title {
  background: #FAC100;
}
.ah-links__banners .banner.-sheerPoint .banner__title {
  background: #4CBFF0;
}
.ah-links__banners .banner.-concept .banner__title {
  background: #009FE8;
}