@import url(https://fonts.googleapis.com/css2?family=Roboto:wght@400;500&family=Roboto+Mono&display=swap);
.p-top-first {
  height: 100svh;
  position: relative;
  width: 100%;
}
.p-top-first figure {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.p-top-first figure img {
  height: 100%;
  left: 0;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center bottom;
     object-position: center bottom;
  position: absolute;
  top: 0;
  width: 100%;
}
.p-top-first__txt {
  color: #00c3ff;
  display: flex;
  flex-direction: column;
  font-size: 15vh;
  left: 50%;
  line-height: 1.0833333333em;
  position: absolute;
  top: 53%;
  transform: translate(-50%, -50%);
  z-index: 2;
}
.p-top-first__txt span {
  font-family: "Roboto", sans-serif;
  font-weight: 500 !important;
}
.p-top-first__txt span:nth-child(2) {
  text-indent: 0.3em;
}
.p-top-first__txt span:nth-child(3) {
  text-indent: 0.6em;
}
.p-top-first__txt span:nth-child(4) {
  text-indent: 0.9em;
}
.p-top-first__scroll {
  color: #fff;
  bottom: 60px;
  font-family: "Roboto", sans-serif;
  font-weight: 500 !important;
  left: 50%;
  position: absolute;
  transform: translate(-50%, 0%);
  z-index: 3;
}
.p-top-first__scroll::after {
  background: #fff;
  content: "";
  display: block;
  height: 240px;
  left: 50%;
  position: absolute;
  transform: translate(0%, 16px);
  top: 100%;
  width: 1px;
}

.p-top-about {
  background-color: #000;
  padding-bottom: 90px;
  padding-top: 350px;
}
.p-top-about__hd {
  color: #00c3ff;
  font-size: 5.125rem;
  line-height: 1.4482758621em;
  text-align: center;
  white-space: nowrap;
}
.p-top-about__hd span {
  display: inline-block;
  text-align: left;
}
.p-top-about__container {
  margin-left: auto;
  margin-right: auto;
  max-width: min(950px, 92.9549902153%);
  width: 100%;
}
.p-top-about__content {
  box-shadow: inset -4px 0 0 #00c3ff;
  margin-top: 140px;
  padding-bottom: 80px;
  padding-top: 32px;
}
.p-top-about__txt-01 {
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 2.25rem;
  font-weight: 500 !important;
}
.p-top-about__txt-02 {
  color: #fff;
  font-size: 1.8125rem;
  margin-top: 20px;
}
.p-top-about__txt-03 {
  color: #fff;
  font-size: 2.5625rem;
  line-height: 1.7073170732em;
  margin-top: 96px;
  padding-right: 170px;
}

.p-top-product {
  aspect-ratio: 1980/1444;
  margin-top: 4.2929292929vw;
  position: relative;
  width: 100%;
}
.p-top-product__hd {
  color: #fff;
  font-family: "Roboto", sans-serif;
  font-size: 6.0606060606vw;
  font-weight: 500 !important;
  left: 0;
  position: absolute;
  top: 13%;
  transition: 0.3s;
  width: 100%;
  text-align: center;
}
.p-top-product figure {
  height: 100%;
  width: 100%;
}
.p-top-product figure img {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
.p-top-product__contents {
  align-items: center;
  background-color: rgba(0, 0, 0, 0.51);
  display: flex;
  flex-direction: column;
  height: 100%;
  left: 0;
  justify-content: center;
  opacity: 0;
  position: absolute;
  top: 0;
  transition: 0.3s;
  width: 100%;
}
.p-top-product__contents p {
  color: #00c3ff;
  font-size: 3.0303030303vw;
  line-height: 1.2833333333em;
  text-align: center;
}
.p-top-product__btns {
  font-size: 2.7777777778vw;
  margin-top: 4.6545454545em;
}
.p-top-product__btns > * {
  border-radius: 0.5818181818em;
  color: #fff;
  display: block;
  line-height: 2em;
  margin-top: 1.5454545455em;
  text-align: center;
  width: 7.2727272727em;
}
.p-top-product__btns > *:first-child {
  margin-top: 0;
}
.p-top-product__btns__btn-more {
  background-color: #00c3ff;
}
.p-top-product__btns__btn-purchase {
  box-shadow: inset 0 0 0 0.1454545455em #00c3ff;
  font-size: 2.7777777778vw;
  position: relative;
}
.p-top-product__btns__btn-purchase span {
  color: #fff;
  display: block;
  font-size: 2.7777777778vw;
  left: 0;
  line-height: 2em;
  text-align: center;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.p-top-product__btns__btn-purchase .cartjs_box {
  padding: 0 !important;
}
.p-top-product__btns__btn-purchase .cartjs_box input {
  background-color: transparent !important;
  color: transparent !important;
  display: block !important;
  font-size: 2.7777777778vw !important;
  height: 100% !important;
  margin: 0 !important;
  position: relative;
  width: 100% !important;
  z-index: 2;
}
.p-top-product__btns__btn-purchase .cartjs_box .cartjs_product_table {
  display: none;
}
.p-top-product:hover .p-top-product__hd {
  opacity: 0;
}
.p-top-product:hover .p-top-product__contents {
  opacity: 1;
}
@media screen and (max-width: 1179px){
  .p-top-first__txt {
    font-size: min(15.5405405405vh, 23.4096692112vw);
    top: 50%;
  }
  .p-top-first__scroll {
    bottom: 3.1531531532vh;
  }
  .p-top-first__scroll::after {
    height: 13.5135135135vh;
    transform: translate(0%, 0.5630630631vh);
  }
  .p-top-about {
    padding-bottom: 7.6335877863vw;
    padding-top: 29.6861747243vw;
  }
  .p-top-about__hd {
    font-size: 6.9550466497vw;
  }
  .p-top-about__container {
    max-width: none;
    padding-left: 8.481764207vw;
    padding-right: 10.1781170483vw;
    width: auto;
  }
  .p-top-about__content {
    margin-top: 11.8744698897vw;
    padding-bottom: 6.7854113656vw;
    padding-top: 2.7141645462vw;
  }
  .p-top-about__txt-01 {
    font-size: 3.0534351145vw;
  }
  .p-top-about__txt-02 {
    font-size: 2.45971162vw;
    margin-top: 1.6963528414vw;
  }
  .p-top-about__txt-03 {
    font-size: 3.4775233249vw;
    margin-top: 8.1424936387vw;
    padding-right: 14.4189991518vw;
  }
  .p-top-product {
    aspect-ratio: 1179/1443;
  }
  .p-top-product__hd {
    font-size: 10.1781170483vw;
  }
  .p-top-product__contents p {
    font-size: 5.0890585242vw;
  }
  .p-top-product__btns {
    font-size: 4.6649703138vw;
  }
  .p-top-product__btns__btn-purchase {
    font-size: 4.6649703138vw;
  }
  .p-top-product__btns__btn-purchase span {
    font-size: 4.6649703138vw;
  }
  .p-top-product__btns__btn-purchase .cartjs_box input {
    font-size: 4.6649703138vw !important;
  }
}
@media only screen and (max-width: 1024px){
  .p-top-about br {
    display: inline;
  }
  .p-top-product br {
    display: inline;
  }
}
/*# sourceMappingURL=../map/top.css.map */
