@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=NTR&family=Noto+Sans+JP:wght@100..900&family=Oooh+Baby&display=swap");
/* リセットCSS
===================================== */
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, button, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  border: 0;
  font: inherit;
  font-size: 0.6944444444vw;
  margin: 0;
  padding: 0;
  vertical-align: baseline;
  -webkit-font-smoothing: antialiased;
  font-family: "a-otf-ryumin-pr6n", "A-OTF Ryumin Pr6N";
}
@media (max-width: 767px) {
  html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, button, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
    font-size: 2.5445292621vw;
  }
}

html {
  line-height: 1;
}

ol, ul {
  list-style: none;
}

li, dd {
  list-style-type: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

caption, th, td {
  font-weight: normal;
  text-align: left;
  vertical-align: middle;
}

q, blockquote {
  quotes: none;
}

q:before, q:after {
  content: "";
  content: none;
}

blockquote:before, blockquote:after {
  content: "";
  content: none;
}

article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
  display: block;
}

img {
  border: none;
  vertical-align: bottom;
}

/* 基本設定
===================================== */
*,
*::before,
*::after {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

body {
  font-weight: 400;
  color: #353535;
}

a {
  cursor: pointer;
  text-decoration: none;
}

.note-show {
  display: none;
}
@media (max-width: 1440px) {
  .note-show {
    display: block;
  }
}

.note-hide {
  display: block;
}
@media (max-width: 1440px) {
  .note-hide {
    display: none;
  }
}

.tab-show {
  display: none;
}
@media (max-width: 1024px) {
  .tab-show {
    display: block;
  }
}

.tab-hide {
  display: block;
}
@media (max-width: 1024px) {
  .tab-hide {
    display: none;
  }
}

.sp-show {
  display: none;
}
@media (max-width: 767px) {
  .sp-show {
    display: block;
  }
}

.sp-hide {
  display: block;
}
@media (max-width: 767px) {
  .sp-hide {
    display: none;
  }
}

img.sp-hide, span.sp-hide {
  display: inline;
}
@media (max-width: 767px) {
  img.sp-hide, span.sp-hide {
    display: none;
  }
}

@keyframes textShadowAnimation {
  0% {
    text-shadow: 0 1.5em 0 #433F3F, 0 0 0 #433F3F;
  }
  100% {
    text-shadow: 0 0 0 #433F3F, 0 -1.5em 0 #433F3F;
  }
}
.header {
  position: fixed;
  top: 0;
  left: 0;
  height: 7.3rem;
  width: 100%;
  padding-left: 4.7rem;
  padding-right: 4.6rem;
  z-index: 99;
  transition: all 0.3s ease;
}
.header.scrolled {
  background: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(36.5px);
}
@media (max-width: 767px) {
  .header {
    height: 6rem;
    padding-left: 0;
    padding-right: 2.2rem;
  }
}
.header__inner {
  display: flex;
  height: 100%;
  justify-content: space-between;
  align-items: center;
}
@media (max-width: 767px) {
  .header__inner {
    justify-content: flex-end;
  }
}
.header .logo {
  width: 8.9rem;
}
.header .logo img {
  width: 100%;
}
.header .hamburger {
  display: flex;
  flex-direction: column;
  background-color: transparent;
  position: relative;
  z-index: 2;
}
.header .hamburger span {
  display: block;
  width: 21px;
  height: 2px;
  border-radius: 10px;
  background-color: #3E3939;
  transition: all 0.3s ease;
}
.header .hamburger .sp1 {
  margin-bottom: 4px;
}
.header .hamburger .sp3 {
  margin-top: 4px;
}
.header .hamburger.active .sp1 {
  transform: rotate(45deg);
  margin-bottom: -7.5px;
}
.header .hamburger.active .sp2 {
  opacity: 0;
}
.header .hamburger.active .sp3 {
  transform: rotate(-45deg);
}
.header__right {
  display: flex;
}
@media (max-width: 767px) {
  .header__right {
    position: fixed;
    top: 0;
    left: 0;
    flex-direction: column;
    width: 100%;
    height: 100vh;
    background-image: url(../../img/common/bg.webp);
    background-size: cover;
    align-items: center;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: all 0.3s;
  }
  .header__right::before {
    content: "";
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.1);
    backdrop-filter: blur(8px);
    position: absolute;
    opacity: 0;
    pointer-events: none;
    transition: all 0.3s ease;
    left: 0;
    top: 0;
  }
  .header__right.active {
    opacity: 1;
    visibility: visible;
    pointer-events: all;
  }
}
.header__links {
  display: flex;
  align-items: center;
  padding-top: 0.4rem;
}
@media (max-width: 767px) {
  .header__links {
    flex-direction: column;
    padding-top: 13rem;
  }
}
.header__links li {
  margin-right: 2.4rem;
}
@media (max-width: 767px) {
  .header__links li {
    margin-right: 0;
    margin-bottom: 2rem;
    text-align: center;
  }
}
.header__links li a {
  display: block;
}
.header__links li a span {
  font-size: 1.6rem;
  font-family: "NTR", sans-serif;
  display: inline-block;
  overflow: hidden;
  color: transparent;
  text-shadow: 0 1.5em 0 #433F3F, 0 0 0 #433F3F;
  transition: text-shadow 0.6s;
}
@media (min-width: 768px) {
  .header__links li a:hover span {
    text-shadow: 0 0 0 #433F3F, 0 -1.5em 0 #433F3F;
  }
}
.header__links li:last-child {
  margin-right: 2rem;
}
@media (max-width: 767px) {
  .header__links li:last-child {
    margin-right: 0;
  }
}
.header__menus {
  display: flex;
  align-items: center;
}
.header__menus.hide {
  display: none;
}
@media (max-width: 767px) {
  .header__menus {
    display: none;
  }
}
.header__menus li {
  margin-right: 1.5rem;
}
.header__menus .mypage img {
  width: 1.4rem;
}
.header__menus .favorite img {
  width: 1.4rem;
}
.header__menus .cart img {
  width: 1.21rem;
}
.header__online {
  margin-left: 8.4rem;
  position: relative;
}
@media (max-width: 767px) {
  .header__online {
    margin-left: 0;
  }
}
.header__online::before {
  content: "";
  background-color: #433F3F;
  position: absolute;
  left: -8.4rem;
  top: 50%;
  height: 0.05rem;
  width: 6.7rem;
}
@media (max-width: 767px) {
  .header__online::before {
    display: none;
  }
}
@media (min-width: 768px) {
  .header__online:hover::after {
    content: "";
    position: absolute;
    right: 0;
    bottom: 0;
    width: 20rem;
    bottom: -3rem;
    height: 3rem;
    background-color: transparent;
  }
  .header__online:hover .header__online-links {
    opacity: 1;
    pointer-events: all;
    visibility: visible;
  }
}
.header__online-content {
  position: relative;
}
.header__online-btn {
  width: 20rem;
  height: 3.3rem;
  display: flex;
  align-items: center;
  padding-left: 4.7rem;
  background: rgba(255, 255, 255, 0.54);
  border-radius: 99px;
  cursor: pointer;
  color: #353535;
}
.header__online-btn span {
  position: relative;
  top: 0.2rem;
  font-size: 1.4rem;
  font-family: "NTR", sans-serif;
  letter-spacing: 0.07em;
}
.header__online-btn img {
  width: 1.3rem;
  margin-left: 1rem;
}
@media (max-width: 767px) {
  .header__online-btn img {
    margin-left: 0;
    margin-right: 0.5rem;
  }
}
@media (max-width: 767px) {
  .header__online-btn {
    width: 15.6rem;
    justify-content: center;
    padding-left: 0;
  }
}
.header__online-links {
  position: absolute;
  top: 5rem;
  width: 20rem;
  padding: 1rem;
  border-radius: 8px;
  background: rgba(255, 255, 255, 0.8);
  box-shadow: 0px 4px 16px 0px rgba(0, 0, 0, 0.05);
  backdrop-filter: blur(2px);
  transition: all 0.3s;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
@media (max-width: 767px) {
  .header__online-links {
    position: fixed;
    width: 25rem;
    left: calc(50% - 12.5rem);
    top: 13rem;
  }
  .header__online-links.active {
    opacity: 1;
    pointer-events: all;
    visibility: visible;
  }
  .header__online-links .close {
    position: absolute;
    right: -1rem;
    top: -1rem;
  }
  .header__online-links .close img {
    width: 2.2rem;
  }
}
.header__online-links li {
  margin-bottom: 0.6rem;
}
.header__online-links a {
  display: flex;
  align-items: center;
  height: 4.8rem;
  width: 100%;
  background-color: #fff;
  border: 1px solid #EDEDE7;
  position: relative;
  transition: all 0.3s ease;
}
.header__online-links a:hover {
  opacity: 0.7;
}
.header__online-links a::after {
  content: "";
  width: 1rem;
  height: 1rem;
  position: absolute;
  background-image: url(../../img/common/link-out.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  right: 1.2rem;
}
.header__online-links a img {
  max-width: 7rem;
  object-fit: contain;
  max-height: 3.3rem;
}
.header__online-links a img.mini {
  max-width: 5.8rem;
}
.header__online-links a span {
  padding-left: 3.4rem;
  font-size: 1.1rem;
  font-weight: 400;
  letter-spacing: 0.07em;
  color: #000;
  font-family: "NTR", sans-serif, "Noto Sans JP", sans-serif;
  position: relative;
  top: 0rem;
}
.header__online-links a span::before {
  content: "";
  width: 0.8rem;
  height: 0.8rem;
  border-radius: 50%;
  position: absolute;
  background-color: #94B4C3;
  left: 1.6rem;
  top: 0.1rem;
}
.header__online-links a span.store {
  font-family: "Noto Sans JP", sans-serif;
}
.header__online-links a span.amazon::before {
  background-color: #F39C00;
}
.header__online-links a span.rakuten::before {
  background-color: #BF0101;
}
.header__online-links p {
  font-size: 1rem;
  line-height: 1.5em;
  letter-spacing: 0.03em;
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 400;
  color: #383838;
}
.header__sns {
  display: flex;
  gap: 0.55rem;
  margin-bottom: 3rem;
}
.header__sns img {
  height: 2rem;
  width: auto;
}

.header.active .header__right::before {
  opacity: 1;
  pointer-events: all;
}

.en {
  font-family: "NTR", sans-serif;
}

.hikki {
  font-family: "Oooh Baby", cursive;
}

.banner {
  position: fixed;
  bottom: 1rem;
  left: 0rem;
  padding: 1rem;
  z-index: 99;
  transition: all 0.3s ease;
}
.banner.hide {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
@media (max-width: 767px) {
  .banner {
    bottom: 0;
  }
}
.banner .banner-bg {
  position: absolute;
  width: 51.5rem;
  bottom: -2.3rem;
  left: -0.7rem;
  z-index: -1;
}
.banner .banner-bg img {
  width: 100%;
}
@media (max-width: 767px) {
  .banner .banner-bg {
    width: 109%;
    left: -1.5rem;
    bottom: -1.6rem;
  }
}
@media (max-width: 767px) {
  .banner {
    width: calc(100% - 1rem);
    left: 0.5rem;
  }
}
.banner .banner-close {
  position: absolute;
  right: -1.1rem;
  top: -1.1rem;
  cursor: pointer;
}
.banner .banner-close img {
  width: 2.2rem;
}
@media (max-width: 767px) {
  .banner .banner-close {
    right: -0.6rem;
  }
}
.banner__inner {
  background-size: cover;
  display: flex;
}
.banner__img {
  width: 11.5rem;
  bottom: 3rem;
  position: absolute;
}
@media (max-width: 767px) {
  .banner__img {
    width: 8.3rem;
  }
}
.banner .left {
  padding-top: 12.2rem;
  position: relative;
  width: 15rem;
  padding-left: 3.4rem;
}
@media (max-width: 767px) {
  .banner .left {
    width: 14.3rem;
    padding-left: 2.5rem;
    padding-top: 9rem;
  }
}
.banner .left a {
  display: flex;
}
.banner .left a p {
  font-size: 1rem;
  font-family: "a-otf-ryumin-pr6n", "A-OTF Ryumin Pr6N";
  letter-spacing: 0.1em;
  color: #676767;
  margin-right: 0.3rem;
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: #676767;
}
.banner .left a img {
  width: 1.1rem;
}
.banner .right {
  padding-right: 6.7rem;
  padding-left: 3rem;
  padding-top: 1.4rem;
  padding-bottom: 1.6rem;
}
@media (max-width: 767px) {
  .banner .right {
    padding-right: 3rem;
    padding-left: 0;
    padding-bottom: 0.8rem;
    padding-right: 0;
  }
}
.banner .right p {
  text-align: center;
}
.banner .right .hikki-ttl {
  font-size: 2.15rem;
  font-weight: 400;
  letter-spacing: 0.07em;
  color: #6F6C6C;
  -webkit-text-stroke-width: 0.03rem;
  -webkit-text-stroke-color: #6F6C6C;
  margin-bottom: 1rem;
}
@media (max-width: 767px) {
  .banner .right .hikki-ttl {
    font-size: 1.8rem;
  }
}
.banner .right .subttl {
  font-family: "a-otf-ryumin-pr6n", "A-OTF Ryumin Pr6N";
  color: #676767;
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: #676767;
  letter-spacing: 0.1em;
  font-size: 1.3rem;
}
@media (max-width: 767px) {
  .banner .right .subttl {
    font-size: 1.2rem;
  }
}
.banner .right .desc {
  text-align: center;
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: var(--, #676767);
  font-size: 1rem;
  letter-spacing: 0.14em;
  color: #676767;
  margin-bottom: 1.5rem;
  margin-top: 0.6rem;
}
@media (max-width: 767px) {
  .banner .right .desc {
    display: inline-block;
    transform: scale(0.9);
    margin-bottom: 1rem;
  }
}
.banner .right .btn-wrapper {
  display: flex;
  justify-content: center;
  position: relative;
}
.banner .right .btn-wrapper a {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 3.4rem;
  width: 18.9rem;
  border-radius: 26px;
  border: 0.3px solid #676767;
  background: rgba(255, 255, 255, 0.4);
  position: relative;
}
@media (max-width: 767px) {
  .banner .right .btn-wrapper a {
    width: 16.7rem;
    height: 2.6rem;
  }
}
.banner .right .btn-wrapper a::after {
  content: "";
  width: 1rem;
  height: 1rem;
  position: absolute;
  background-image: url(../../img/common/link-out.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
  right: 1.2rem;
}
.banner .right .btn-wrapper a img {
  max-width: 4.7rem;
  object-fit: contain;
  max-height: 1.5rem;
}
.banner .right .btn-wrapper a img.mini {
  max-width: 5.8rem;
}
@media (max-width: 767px) {
  .banner .right .btn-wrapper a img {
    max-height: 1.5rem;
    max-width: 4.7rem;
  }
}

.fv {
  height: 83rem;
  background-image: url(../../img/top/fv.webp);
  background-size: cover;
}
@media (max-width: 767px) {
  .fv {
    height: 52.4rem;
    background-image: url(../../img/top/fv-sp.webp);
  }
}
.fv h1 {
  color: #3E3939;
  -webkit-text-stroke-width: 0.05rem;
  -webkit-text-stroke-color: #3E3939;
  font-family: "A-OTF Ryumin Pr6N";
  font-size: 4rem;
  font-style: normal;
  font-weight: 300;
  line-height: 150%; /* 60px */
  letter-spacing: 0.01em;
  padding-top: 29.9rem;
  padding-left: 18rem;
}
@media (max-width: 767px) {
  .fv h1 {
    padding-left: 2rem;
    padding-top: 5rem;
    font-size: 3rem;
  }
}

.concept {
  background-image: url(../../img/top/about-bg.webp);
  background-size: cover;
  background-position: bottom center;
  padding-top: 15.7rem;
  position: relative;
  z-index: 2;
}
@media (max-width: 767px) {
  .concept {
    padding-top: 5.2rem;
    background-image: url(../../img/top/about-bg-sp.webp);
    background-image: none;
  }
}
.concept .concept1 {
  padding-left: 14rem;
  padding-right: 13rem;
  padding-bottom: 25rem;
  display: flex;
}
@media (max-width: 767px) {
  .concept .concept1 {
    padding-left: 2.2rem;
    padding-right: 2.2rem;
    padding-bottom: 7.5rem;
  }
}
@media (max-width: 767px) {
  .concept .concept1 {
    flex-direction: column-reverse;
  }
}
.concept .concept1 .left {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .concept .concept1 .left {
    padding-top: 3rem;
  }
}
.concept .concept1 .left .txt {
  width: 0.859rem;
}
.concept .concept1 .left .txt img {
  width: 100%;
}
@media (max-width: 767px) {
  .concept .concept1 .left .txt {
    display: none;
  }
}
.concept .concept1 .left .img {
  width: 47.4rem;
  margin-left: 3rem;
}
@media (max-width: 767px) {
  .concept .concept1 .left .img {
    width: 100%;
    margin-left: 0;
  }
}
.concept .concept1 .right {
  padding-left: 13rem;
  padding-top: 6.4rem;
}
@media (max-width: 767px) {
  .concept .concept1 .right {
    padding-top: 0;
    padding-left: 0;
  }
}
.concept .concept1 .right h4 {
  -webkit-text-stroke-width: 0.043rem;
  -webkit-text-stroke-color: #6F6C6C;
  font-size: 2.1552rem;
  letter-spacing: 0.07em;
  color: #676767;
}
@media (max-width: 767px) {
  .concept .concept1 .right h4 {
    text-align: center;
  }
}
.concept .concept1 .right h2 {
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: #676767;
  color: #676767;
  font-size: 2.6rem;
  letter-spacing: 0.1em;
  margin-top: 0.5rem;
  line-height: 1.5em;
  margin-bottom: 1.5rem;
}
@media (max-width: 767px) {
  .concept .concept1 .right h2 {
    font-size: 2.2rem;
    text-align: center;
  }
}
.concept .concept1 .right .desc p {
  font-size: 1.4rem;
  line-height: 2.28em;
  letter-spacing: 0.05em;
  margin-bottom: 0.8rem;
}
@media (max-width: 767px) {
  .concept .concept1 .right .desc p {
    text-align: center;
    margin: auto;
    margin-bottom: 1rem;
    max-width: 32rem;
  }
}
.concept .concept1 .right .more-wrapper {
  margin-top: 1.2rem;
  display: flex;
}
@media (max-width: 767px) {
  .concept .concept1 .right .more-wrapper {
    justify-content: center;
  }
}
.concept .concept1 .right .more {
  transition: all 0.3s ease;
}
.concept .concept1 .right .more:hover {
  opacity: 0.7;
}
.concept .concept1 .right .more img {
  width: 10.7rem;
}
@media (max-width: 767px) {
  .concept .concept1 .right .more {
    display: flex;
  }
}
.concept .concept2 {
  padding-top: 10.1rem;
  padding-bottom: 25rem;
}
@media (max-width: 767px) {
  .concept .concept2 {
    padding-top: 3rem;
    padding-left: 2.2rem;
    padding-right: 2.2rem;
    padding-bottom: 7rem;
  }
}
.concept .concept2 .ttl {
  padding-bottom: 7.8rem;
  position: relative;
}
@media (max-width: 767px) {
  .concept .concept2 .ttl {
    padding-bottom: 6.9rem;
  }
}
.concept .concept2 .ttl::before {
  content: "";
  width: 0.03rem;
  height: 5.1rem;
  background-color: black;
  position: absolute;
  left: calc(50% - 0.015rem);
  bottom: 1.8rem;
}
@media (max-width: 767px) {
  .concept .concept2 .ttl::before {
    height: 2.5rem;
    bottom: 1.3rem;
  }
}
.concept .concept2 .ttl h2 {
  text-align: center;
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: #676767;
  color: #676767;
  font-size: 2rem;
  letter-spacing: 0.1em;
  margin-bottom: 2rem;
}
.concept .concept2 .ttl p {
  text-align: center;
  letter-spacing: 0.05em;
  font-size: 1.4rem;
  line-height: 1.7em;
}
@media (max-width: 767px) {
  .concept .concept2 .ttl p {
    max-width: 32rem;
    margin: auto;
    font-size: 1.3rem;
  }
}
.concept .concept2 .img-wrapper {
  width: 73rem;
  margin: auto;
  box-shadow: 0px 4px 4px 0px rgba(0, 0, 0, 0.25);
}
@media (max-width: 767px) {
  .concept .concept2 .img-wrapper {
    width: 100%;
  }
}
.concept .concept2 .img-wrapper img {
  width: 100%;
}

@keyframes float {
  0% {
    transform: translate(0, 0) rotate(0deg);
  }
  20% {
    transform: translate(10px, -2px) rotate(10deg); /* 少し右上に揺れる */
  }
  40% {
    transform: translate(-15px, 3px) rotate(-10deg); /* 左下に揺れる */
  }
  60% {
    transform: translate(20px, 10px) rotate(5deg); /* 右下に揺れる */
  }
  80% {
    transform: translate(-25px, 1px) rotate(-5deg); /* 左に揺れる */
  }
  100% {
    transform: translate(0, 0) rotate(0deg);
  }
}
@keyframes float2 {
  0% {
    transform: translate(0, 0) rotate(0deg);
  }
  20% {
    transform: translate(-2px, -2px) rotate(10deg);
  }
  40% {
    transform: translate(5px, 3px) rotate(-10deg);
  }
  60% {
    transform: translate(6px, -6px) rotate(8deg);
  }
  80% {
    transform: translate(0px, 5px) rotate(-11deg);
  }
  100% {
    transform: translate(0, 0) rotate(0deg);
  }
}
.blur {
  transition: all 1s;
  filter: blur(10px);
  backface-visibility: hidden;
  transform: translateZ(0);
}
.blur.scrollin {
  filter: blur(0);
}

.nayami {
  padding-top: 19.6rem;
  padding-bottom: 7.4rem;
  background-image: url(../../img/top/problem-bg.webp);
  background-size: cover;
  margin-top: -11.2rem;
}
@media (max-width: 767px) {
  .nayami {
    padding-top: 6.1rem;
    margin-top: 0;
  }
}
.nayami .ttl {
  position: relative;
  padding-left: 45.5rem;
  margin-bottom: 4.5rem;
}
@media (max-width: 767px) {
  .nayami .ttl {
    padding-left: 0;
    margin-bottom: 3.5rem;
  }
}
.nayami .ttl .bg-txt {
  color: rgba(255, 255, 255, 0.3);
  font-size: 6.4rem;
  font-style: normal;
  font-weight: 400;
  line-height: 180%; /* 115.2px */
  letter-spacing: 0.05em;
  position: absolute;
  top: -6.5rem;
  left: 39.7rem;
}
@media (max-width: 767px) {
  .nayami .ttl .bg-txt {
    left: 0;
    font-size: 5rem;
    top: -4rem;
  }
}
.nayami .ttl h2 {
  color: white;
  font-size: 3rem;
  letter-spacing: 0.1em;
  -webkit-text-stroke-width: 0.02em;
  -webkit-text-stroke-color: #FFF;
}
@media (max-width: 767px) {
  .nayami .ttl h2 {
    line-height: 1.5em;
    text-align: center;
    font-size: 2.5rem;
  }
}
.nayami .flex {
  display: flex;
  justify-content: center;
}
.nayami .flex div {
  position: relative;
}
.nayami .flex div .bubbles {
  position: absolute;
  width: 4.2rem;
  height: 4.3rem;
  right: 3rem;
  top: 4rem;
  animation: float 12s ease-in-out infinite;
}
.nayami .flex div .bubbles .bubble1 {
  width: 3.3333rem;
  animation: float2 10s ease-in-out infinite;
}
.nayami .flex div .bubbles .bubble2 {
  width: 1rem;
  display: block;
  margin-left: 1.5rem;
  animation: float 20s ease-in-out infinite;
}
.nayami .flex div .bubbles2 {
  bottom: 4rem;
  left: 6rem;
  right: unset;
  top: unset;
  animation: float2 8s ease-in-out infinite reverse;
}
.nayami .flex div .bubbles1-2 {
  animation-delay: 2s;
  animation: float2 12s ease-in-out infinite;
}
.nayami .flex div .bubbles2-2 {
  animation-delay: 3s;
}
.nayami .flex div .bubbles1-3 {
  animation-delay: 2s;
}
.nayami .flex div .bubbles2-3 {
  animation-delay: 1s;
  animation: float 12s ease-in-out infinite reverse;
}
.nayami .flex div .bubbles1-4 {
  animation-delay: 2.5s;
}
.nayami .flex div .bubbles2-4 {
  animation-delay: 3.3s;
}
.nayami .flex img {
  width: 28.1rem;
  margin-left: -1.5rem;
  margin-right: -1.5rem;
}
.nayami .desc {
  padding-left: 34.6rem;
  padding-right: 34.6rem;
  display: flex;
  justify-content: center;
}
@media (max-width: 767px) {
  .nayami .desc {
    margin-top: 4rem;
    padding-left: 2.2rem;
    padding-right: 2.2rem;
    flex-direction: column;
    align-items: center;
  }
}
.nayami .desc .img-wrapper {
  width: 18.5rem;
}
.nayami .desc .img-wrapper img {
  width: 100%;
}
@media (max-width: 767px) {
  .nayami .desc .img-wrapper {
    width: 15.3rem;
    margin-bottom: 3.7rem;
  }
}
.nayami .desc .txt-wrapper {
  margin-left: 0rem;
  width: 55rem;
}
@media (max-width: 767px) {
  .nayami .desc .txt-wrapper {
    margin-left: 0;
    width: auto;
  }
}
.nayami .desc .txt-wrapper h3 {
  color: #FFF;
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: #FFF;
  font-size: 2.3rem;
  padding-bottom: 0.7rem;
  text-align: center;
  border-bottom: 1px solid white;
  margin-bottom: 1.2rem;
}
@media (max-width: 767px) {
  .nayami .desc .txt-wrapper h3 {
    line-height: 1.25em;
    text-align: center;
    border-bottom: none;
    position: relative;
    margin-bottom: 1.4rem;
    padding-bottom: 1.4rem;
  }
  .nayami .desc .txt-wrapper h3::after {
    content: "";
    width: 15rem;
    height: 0.05rem;
    background-color: #fff;
    position: absolute;
    left: calc(50% - 7.5rem);
    bottom: 0;
  }
}
.nayami .desc .txt-wrapper p {
  color: white;
  font-size: 1.5rem;
  color: #FFF;
  text-align: center;
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: #FFF;
  line-height: 1.93em;
}
@media (max-width: 767px) {
  .nayami .desc .txt-wrapper p {
    text-align: center;
    font-size: 1.3rem;
    max-width: 30.9rem;
  }
}
.nayami .desc .txt-wrapper .p2 {
  text-align: left;
  font-size: 1.3rem;
  line-height: 2em;
}
@media (max-width: 767px) {
  .nayami .desc .txt-wrapper .p2 {
    max-width: unset;
    text-align: center;
  }
}
@media (max-width: 767px) {
  .nayami .desc .txt-wrapper .p1 {
    font-size: 1.5rem;
    -webkit-text-stroke-width: 0.2px;
    -webkit-text-stroke-color: #FFF;
    max-width: 30.2rem;
    margin: auto;
    text-align: center;
    margin-bottom: 1.4rem;
  }
}
.nayami .swiper img {
  width: 100%;
  display: block;
  transform: scale(1.2);
}
.nayami .swiper .swiper-slide {
  position: relative;
}
.nayami .swiper .swiper-slide .bubbles {
  position: absolute;
  width: 4.2rem;
  height: 4.3rem;
  z-index: 2;
  right: 2rem;
  top: 3rem;
  animation: float 12s ease-in-out infinite;
}
.nayami .swiper .swiper-slide .bubbles .bubble1 {
  width: 3.3333rem;
  animation: float2 10s ease-in-out infinite;
}
.nayami .swiper .swiper-slide .bubbles .bubble2 {
  width: 1rem;
  display: block;
  margin-left: 1.5rem;
  animation: float 20s ease-in-out infinite;
}
.nayami .swiper .swiper-slide .bubbles2 {
  bottom: 2rem;
  left: 2rem;
  right: unset;
  top: unset;
  animation: float2 8s ease-in-out infinite reverse;
}
.nayami .swiper .swiper-slide .bubbles1-2 {
  animation-delay: 2s;
  animation: float2 12s ease-in-out infinite;
}
.nayami .swiper .swiper-slide .bubbles2-2 {
  animation-delay: 3s;
}
.nayami .swiper .swiper-slide .bubbles1-3 {
  animation-delay: 2s;
}
.nayami .swiper .swiper-slide .bubbles2-3 {
  animation-delay: 1s;
  animation: float 12s ease-in-out infinite reverse;
}
.nayami .swiper .swiper-slide .bubbles1-4 {
  animation-delay: 2.5s;
}
.nayami .swiper .swiper-slide .bubbles2-4 {
  animation-delay: 3.3s;
}

.detail {
  padding-top: 18rem;
  padding-bottom: 17rem;
  background-image: url(../../img/top/product-bg.webp);
  background-size: cover;
}
@media (max-width: 767px) {
  .detail {
    padding-left: 2.2rem;
    padding-right: 2.2rem;
    padding-top: 9.2rem;
    background-image: url(../../img/top/product-bg-sp.webp);
    background-position: center top;
    position: relative;
    z-index: 2;
    margin-top: -3rem;
    padding-bottom: 3.2rem;
  }
}
.detail .detail-img1 {
  width: 62.6rem;
  margin-left: 35.7rem;
}
.detail .detail-img1 img {
  width: 100%;
}
@media (max-width: 767px) {
  .detail .detail-img1 {
    display: none;
  }
}
.detail .flex {
  margin-top: -12.9rem;
  position: relative;
  z-index: 2;
  padding-right: 12.6rem;
  padding-left: 18.9rem;
  display: flex;
  justify-content: space-between;
  align-items: flex-end;
}
@media (max-width: 767px) {
  .detail .flex {
    padding-left: 0;
    padding-right: 0;
    margin-top: 0;
  }
}
.detail .flex .left {
  width: 71.1rem;
  padding-right: 15rem;
}
@media (max-width: 767px) {
  .detail .flex .left {
    width: 100%;
    padding-right: 0;
  }
  .detail .flex .left img {
    width: 100%;
    margin-bottom: 3rem;
  }
}
.detail .flex .left h2 {
  font-size: 2.3rem;
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: #3b3b3b;
  letter-spacing: 0.1em;
  color: #3b3b3b;
  position: relative;
  margin-bottom: 2rem;
}
.detail .flex .left h2::before {
  content: "";
  width: 1.1rem;
  height: 1.1rem;
  position: absolute;
  left: -1.5rem;
  top: 0.6rem;
  background: #94B4C3;
}
@media (max-width: 767px) {
  .detail .flex .left h2 {
    margin-left: 1.6rem;
  }
}
.detail .flex .left .wrap {
  margin-bottom: 1rem;
}
.detail .flex .left .wrap h4 {
  color: #616161;
  -webkit-text-stroke-width: 0.043rem;
  -webkit-text-stroke-color: #6F6C6C;
  font-size: 2.1552rem;
  letter-spacing: 0.07em;
  margin-bottom: 1rem;
}
.detail .flex .left .wrap h5 {
  color: #3e3939;
  -webkit-text-stroke-width: 0.43px;
  -webkit-text-stroke-color: #3e3939;
  font-size: 1.5rem;
  line-height: normal;
}
.detail .flex .left .wrap p {
  font-size: 1.4rem;
  line-height: 1.64em;
}
.detail .flex .left .last p {
  margin-bottom: 0.4rem;
}
@media (max-width: 767px) {
  .detail .flex .right {
    display: none;
  }
}
.detail .flex .right .img2 {
  width: 42.9rem;
  margin-bottom: 6rem;
}
.detail .flex .right .img2 img {
  width: 100%;
}
.detail .flex .right .ttl {
  position: relative;
  margin-bottom: 2.5rem;
}
.detail .flex .right .ttl::before {
  content: "";
  width: 25rem;
  height: 4.2rem;
  background-image: url(../../img/top/fukidashi.webp);
  background-size: contain;
  background-position: center top;
  background-repeat: no-repeat;
  position: absolute;
  left: -1.8rem;
  bottom: -3rem;
}
.detail .flex .right .ttl p {
  color: #676767;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #676767;
  font-size: 1.5rem;
}
.detail .flex .right .ttl p span {
  font-size: 2rem;
}
.detail .flex .right ul {
  padding-left: 1.5rem;
  padding-top: 1rem;
  margin-bottom: 4rem;
}
.detail .flex .right ul li {
  color: #424040;
  -webkit-text-stroke-width: 0.01rem;
  -webkit-text-stroke-color: #3E3939;
  font-size: 1.4rem;
  line-height: 2.14em;
  padding-left: 2rem;
  position: relative;
}
.detail .flex .right ul li::before {
  content: "";
  width: 1rem;
  height: 1rem;
  background-image: url(../../img/common/check.svg);
  background-size: contain;
  background-repeat: no-repeat;
  background-position: center;
  position: absolute;
  left: 0;
  top: 1rem;
}
.detail .flex .right .img3 {
  width: 37.5rem;
  margin-left: 1.5rem;
}
.detail .flex .right .img3 img {
  width: 100%;
}

.product {
  padding-top: 16.1rem;
  padding-bottom: 12.3rem;
  padding-left: 10rem;
  background-image: url(../../img/top/product2-bg.webp);
  background-size: cover;
}
@media (max-width: 767px) {
  .product {
    padding-top: 1.9rem;
    padding-left: 2.2rem;
    padding-right: 2.2rem;
    padding-bottom: 3rem;
  }
}
.product__inner {
  display: flex;
  align-items: flex-start;
}
.product .left .swiper {
  margin-left: 0;
  margin-right: 0;
}
.product .left .swiper img {
  width: 100%;
}
.product .left .slideshow {
  display: flex;
  align-items: flex-end;
}
.product .left .slideshow .slider-thumbnail {
  width: 8.8rem;
  height: 18rem;
}
.product .left .slideshow .slider-thumbnail img {
  height: 100%;
  object-fit: cover;
}
.product .left .slideshow .productMainSwiper {
  width: 50.3rem;
  margin-left: 1.5rem;
}
.product .left .slideshow .productMainSwiper .swiper-slide {
  height: auto;
}
.product .left .slideshow .productMainSwiper .swiper-slide img {
  height: 100%;
  object-fit: cover;
}
.product .right {
  background-color: #fff;
  border-radius: 0.7rem;
  padding-left: 3.2rem;
  padding-right: 3.6rem;
  padding-top: 3.5rem;
  padding-bottom: 3.3rem;
  margin-left: 4.8rem;
  width: 55rem;
}
@media (max-width: 767px) {
  .product .right {
    margin-left: 0;
    width: 100%;
    padding-bottom: 7.85rem;
    padding-left: 2rem;
    padding-right: 2rem;
    padding-top: 3rem;
  }
}
.product .right .ttl h4 {
  color: #383838;
  -webkit-text-stroke-width: 0.43px;
  -webkit-text-stroke-color: #6F6C6C;
  font-size: 2.4rem;
  letter-spacing: 0.07em;
  margin-bottom: 1rem;
}
.product .right .ttl p {
  font-size: 1.3rem;
  line-height: 1.84em;
  margin-bottom: 2.3rem;
}
@media (max-width: 767px) {
  .product .right .ttl p {
    margin-bottom: 2rem;
  }
}
@media (max-width: 767px) {
  .product .right .swiper {
    margin-bottom: 2.4rem;
  }
}
.product .right .swiper .swiper-slide {
  height: auto;
}
.product .right .swiper img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.product .right .price {
  font-size: 2.6rem;
  letter-spacing: 0.07em;
  color: #454545;
  margin-bottom: 3rem;
}
@media (max-width: 767px) {
  .product .right .price {
    margin-bottom: 1.7rem;
  }
}
.product .right .price .yen {
  font-size: 2.1rem;
  color: #454545;
  font-size: 2.1rem;
}
.product .right .price .tax {
  font-size: 1.2rem;
  letter-spacing: 0;
}
.product .right h3 {
  color: #676767;
  -webkit-text-stroke-width: 0.02em;
  -webkit-text-stroke-color: #676767;
  font-size: 1.7rem;
  line-height: 1.76em;
  margin-bottom: 0.3rem;
}
.product .right .purchase-link {
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-top: 1px solid black;
  border-bottom: 1px solid black;
}
@media (max-width: 767px) {
  .product .right .purchase-link {
    padding-top: 1.1rem;
    padding-bottom: 2rem;
  }
}
.product .right .purchase-link ul {
  display: flex;
  flex-wrap: wrap;
  gap: 0.8rem;
}
@media (max-width: 767px) {
  .product .right .purchase-link ul {
    gap: 0.6rem;
  }
}
@media (max-width: 767px) {
  .product .right .purchase-link ul li {
    width: 100%;
  }
}
.product .right .purchase-link ul li a {
  display: flex;
  align-items: center;
  height: 5rem;
  width: 23.5rem;
  padding: 1.1rem 2.7rem;
  background: #979FAE;
  box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.21);
  font-size: 1.4rem;
  color: white;
  -webkit-text-stroke-width: 0.03rem;
  -webkit-text-stroke-color: #FFF;
  position: relative;
  transition: all 0.3s ease;
}
@media (max-width: 767px) {
  .product .right .purchase-link ul li a {
    padding-left: 1.4rem;
  }
}
.product .right .purchase-link ul li a:hover {
  opacity: 0.7;
}
@media (max-width: 767px) {
  .product .right .purchase-link ul li a {
    width: 100%;
  }
}
.product .right .purchase-link ul li a::before {
  content: "";
  width: 0.75rem;
  height: 0.75rem;
  position: absolute;
  right: 2.1rem;
  top: calc(50% - 0.375rem);
  background-image: url(../../img/common/link-out-w.svg);
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}
.product .right .product-detail {
  padding-top: 1rem;
  padding-bottom: 1rem;
  padding-left: 2rem;
  position: relative;
  border-bottom: 1px solid black;
}
.product .right .product-detail::before {
  content: "";
  background: #94B4C3;
  width: 1.4rem;
  height: 1.4rem;
  position: absolute;
  left: 0;
  top: 1.4rem;
}
.product .right .product-detail p {
  margin-bottom: 0.6rem;
  color: black;
  font-size: 1.4rem;
  line-height: 1.64em;
}
.product .right .product-detail p:last-child {
  margin-bottom: 0;
}
.product .right .product-detail .ttl {
  color: #676767;
  -webkit-text-stroke-width: 0.2px;
  -webkit-text-stroke-color: #676767;
}
.product .right .product-deliver {
  padding-top: 1rem;
}
@media (max-width: 767px) {
  .product .right .product-deliver {
    padding-top: 1.6rem;
  }
}
.product .right .product-deliver .select-wrapper {
  position: relative;
  width: 10rem;
  margin-bottom: 1rem;
}
.product .right .product-deliver .select-wrapper::before {
  content: "";
  width: 1rem;
  height: 1.16rem;
  background-image: url(../../img/common/timer.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  left: 0.7rem;
  top: 0.8rem;
  z-index: 2;
  pointer-events: none;
}
.product .right .product-deliver .select-wrapper::after {
  content: "";
  width: 1.4rem;
  height: 1.4rem;
  background-image: url(../../img/common/select-arrow.svg);
  background-position: center;
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  right: 0.4rem;
  top: 0.6rem;
  z-index: 2;
  pointer-events: none;
}
.product .right .product-deliver .select-wrapper select {
  appearance: none;
  color: #3e3939;
  font-size: 1.2rem;
  width: 100%;
  height: 2.7rem;
  text-align: center;
  appearance: none;
  background-color: #fff;
  border: 1px solid black;
}
.product .right .product-deliver .deliver-day {
  font-size: 1.4rem;
  color: #6F6C6C;
  -webkit-text-stroke-width: 0.03rem;
  -webkit-text-stroke-color: #6F6C6C;
  line-height: 2.14em;
  margin-bottom: 0.4rem;
}
.product .right .product-deliver .deliver-day span {
  font-size: 1em;
}
.product .right .product-deliver .notice {
  color: #706B6B;
  -webkit-text-stroke-width: 0.01rem;
  -webkit-text-stroke-color: #6F6C6C;
  font-size: 1.2rem;
  line-height: 1.58em;
  margin-bottom: 1.8rem;
}
.product .right .btns a, .product .right .btns button {
  display: flex;
  width: 100%;
  height: 3.8rem;
  color: white;
  justify-content: center;
  align-items: center;
  color: #FFF;
  -webkit-text-stroke-width: 0.03rem;
  -webkit-text-stroke-color: #FFF;
  font-size: 1.4rem;
  transition: all 0.3s ease;
}
.product .right .btns a:hover, .product .right .btns button:hover {
  opacity: 0.7;
}
.product .right .btns .cart-btn, .product .right .btns .shopify-buy__btn {
  background: #979FAE;
  margin-bottom: 0.8rem;
  cursor: pointer;
}
.product .right .btns .purchase-now {
  background: #94B4C3;
}

.bottom-banner img {
  width: 100%;
}

.footer {
  background-image: url(../../img/top/footer-bg.webp);
  background-size: cover;
  padding-top: 7.8rem;
  padding-left: 9.4rem;
  padding-right: 4.4rem;
}
.footer a {
  transition: all 0.3s ease;
}
.footer a:hover {
  opacity: 0.7;
}
@media (max-width: 767px) {
  .footer {
    padding-top: 6rem;
    padding-left: 2.3rem;
    background-image: url(../../img/top/footer-bg-sp.webp);
    padding-right: 2rem;
  }
}
.footer .copy {
  padding-top: 12rem;
  padding-bottom: 1rem;
}
@media (max-width: 767px) {
  .footer .copy {
    padding-top: 4rem;
    padding-bottom: 1rem;
  }
}
.footer .copy p {
  text-align: center;
  font-size: 1.4rem;
  font-family: "Noto Sans JP", sans-serif;
  color: white;
  line-height: normal;
}
@media (max-width: 767px) {
  .footer .copy p {
    font-size: 1.3rem;
  }
}
.footer__inner {
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .footer__inner {
    flex-direction: column;
  }
}
@media (max-width: 767px) {
  .footer__inner .logo {
    margin-bottom: 4rem;
  }
}
.footer__inner .logo img {
  width: 15rem;
}
@media (max-width: 767px) {
  .footer__inner .logo img {
    width: 11.3rem;
  }
}
@media (max-width: 767px) {
  .footer__inner .links {
    border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  }
}
.footer__inner .links li {
  margin-bottom: 2rem;
}
@media (max-width: 767px) {
  .footer__inner .links li {
    padding-top: 2rem;
    padding-bottom: 2rem;
    border-top: 1px solid rgba(255, 255, 255, 0.3);
    margin-bottom: 0;
  }
}
.footer__inner .links li a {
  font-size: 1.6rem;
  font-family: "NTR", sans-serif;
  color: white;
}
.footer__inner .links li a.ja {
  font-size: 1.4rem;
}
@media (max-width: 767px) {
  .footer__inner .sns {
    margin-top: 2.2rem;
  }
}
.footer__inner .sns ul {
  display: flex;
}
@media (max-width: 767px) {
  .footer__inner .sns ul {
    justify-content: center;
  }
}
.footer__inner .sns ul li {
  margin-right: 0.4rem;
}
.footer__inner .sns ul img {
  width: 1.5rem;
}

.notfound {
  background-image: url(../../img/common/bg.webp);
  background-size: cover;
  padding-top: 23.2rem;
  padding-bottom: 18rem;
}
@media (max-width: 767px) {
  .notfound {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.notfound h1 {
  text-align: center;
  color: #676767;
  text-align: center;
  -webkit-text-stroke-width: 0.07rem;
  -webkit-text-stroke-color: #676767;
  font-size: 3rem;
  line-height: 1.2em;
  letter-spacing: 0.1em;
  margin-bottom: 4rem;
}
.notfound .box {
  max-width: 81.5rem;
  margin: auto;
  background-color: #fff;
  padding-top: 5rem;
  padding-bottom: 5rem;
}
@media (max-width: 767px) {
  .notfound .box {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.notfound .box p {
  color: #000;
  text-align: center;
  -webkit-text-stroke-width: 0.02rem;
  -webkit-text-stroke-color: #000;
  font-size: 1.6rem;
  line-height: 2.1em;
  letter-spacing: 0.07em;
}
@media (max-width: 767px) {
  .notfound .box p {
    font-size: 1.3rem;
  }
}

.terms {
  padding-top: 12rem;
  padding-bottom: 4rem;
  padding-left: 26rem;
}
@media (max-width: 767px) {
  .terms {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.terms h1 {
  color: #676767;
  -webkit-text-stroke-width: 0.3px;
  -webkit-text-stroke-color: #676767;
  font-size: 1.8rem;
  line-height: normal;
  margin-bottom: 1rem;
}
.terms p {
  color: #676767;
  -webkit-text-stroke-width: 0.3px;
  -webkit-text-stroke-color: #676767;
  font-size: 1.6rem;
  line-height: 2.5em;
}

.policy {
  padding-top: 12rem;
  padding-bottom: 4rem;
  padding-left: 27rem;
  padding-right: 27rem;
}
@media (max-width: 767px) {
  .policy {
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.policy h1 {
  color: #676767;
  -webkit-text-stroke-width: 0.3px;
  -webkit-text-stroke-color: #676767;
  font-size: 1.8rem;
  line-height: normal;
  margin-bottom: 1rem;
}
.policy p {
  color: #676767;
  -webkit-text-stroke-width: 0.3px;
  -webkit-text-stroke-color: #676767;
  font-size: 1.6rem;
  line-height: normal;
}
.policy ul li {
  position: relative;
  color: #676767;
  -webkit-text-stroke-width: 0.3px;
  -webkit-text-stroke-color: #676767;
  font-size: 1.6rem;
  line-height: normal;
  padding-left: 1.4em;
}
.policy ul li::before {
  content: "■";
  position: absolute;
  left: 0;
  top: 0;
}
.policy ul li ul li {
  padding-left: 1.2rem;
}
.policy ul li ul li::before {
  content: "-";
}
.policy .block {
  margin-bottom: 3rem;
}
.policy .block .indent {
  padding-left: 1rem;
}

.faq {
  background-image: url(../../img/common/bg.webp);
  background-size: cover;
  background-position: center;
  padding-top: 23.2rem;
  padding-bottom: 18rem;
}
@media (max-width: 767px) {
  .faq {
    padding-left: 2rem;
    padding-right: 2rem;
    padding-top: 10rem;
    padding-bottom: 10rem;
  }
}
.faq h1 {
  text-align: center;
  color: #676767;
  text-align: center;
  -webkit-text-stroke-width: 0.07rem;
  -webkit-text-stroke-color: #676767;
  font-size: 3rem;
  line-height: 1.2em;
  letter-spacing: 0.1em;
  margin-bottom: 4rem;
}
.faq__sec {
  max-width: 92.3rem;
  margin: auto;
}
.faq__sec .box {
  background-color: #fff;
  border-radius: 0.4rem;
  padding-top: 3rem;
  padding-left: 4rem;
  padding-right: 0.4rem;
  margin-bottom: 2rem;
}
@media (max-width: 767px) {
  .faq__sec .box {
    padding-top: 2rem;
    padding-left: 2rem;
    padding-right: 2rem;
  }
}
.faq__sec .box .q {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding-bottom: 3rem;
  padding-right: 3rem;
  cursor: pointer;
}
@media (max-width: 767px) {
  .faq__sec .box .q {
    padding-bottom: 2rem;
    padding-right: 1rem;
  }
}
.faq__sec .box .q .ttl {
  display: flex;
  align-items: center;
}
@media (max-width: 767px) {
  .faq__sec .box .q .ttl {
    padding-right: 1rem;
  }
}
.faq__sec .box .q .ttl p {
  color: #676767;
  -webkit-text-stroke-width: 0.4px;
  -webkit-text-stroke-color: #676767;
  font-size: 1.6rem;
}
@media (max-width: 767px) {
  .faq__sec .box .q .ttl p {
    font-size: 1.4rem;
    line-height: normal;
  }
}
.faq__sec .box .q span {
  color: #676767;
  -webkit-text-stroke-width: 0.4px;
  -webkit-text-stroke-color: #676767;
  font-size: 2rem;
  margin-right: 4rem;
}
@media (max-width: 767px) {
  .faq__sec .box .q span {
    font-size: 1.6rem;
    margin-right: 2rem;
  }
}
.faq__sec .box .q .circle {
  width: 18px;
  height: 18px;
  border-radius: 50%;
  border: 2px solid #676767;
  position: relative;
  flex-shrink: 0;
}
@media (max-width: 767px) {
  .faq__sec .box .q .circle {
    border-width: 2px;
  }
}
.faq__sec .box .q .circle::before {
  content: "";
  width: 10px;
  height: 2px;
  position: absolute;
  left: 2px;
  top: 6px;
  background-color: #676767;
  border-radius: 10px;
}
@media (max-width: 767px) {
  .faq__sec .box .q .circle::before {
    width: 10px;
    height: 2px;
    left: 2px;
    top: 6px;
  }
}
.faq__sec .box .q .circle::after {
  content: "";
  width: 10px;
  height: 2px;
  transform: rotate(90deg);
  position: absolute;
  left: 2px;
  border-radius: 10px;
  top: 6px;
  background-color: #676767;
  transition: all 0.3s;
}
@media (max-width: 767px) {
  .faq__sec .box .q .circle::after {
    width: 10px;
    height: 2px;
    left: 2px;
    top: 6px;
  }
}
.faq__sec .box .q.open .circle::after {
  transform: rotate(0);
}
.faq__sec .box .a {
  display: none;
  padding-bottom: 2rem;
  padding-top: 2rem;
  border-top: 1px dashed #676767;
}
.faq__sec .box .a .txt {
  display: flex;
  align-items: center;
  padding-right: 3rem;
}
@media (max-width: 767px) {
  .faq__sec .box .a .txt {
    padding-right: 0rem;
  }
}
.faq__sec .box .a .txt p {
  color: #676767;
  -webkit-text-stroke-width: 0.4px;
  -webkit-text-stroke-color: #676767;
  font-size: 1.6rem;
  line-height: normal;
  padding-right: 4rem;
}
@media (max-width: 767px) {
  .faq__sec .box .a .txt p {
    font-size: 1.4rem;
    padding-right: 0;
  }
}
.faq__sec .box .a .txt span {
  color: #94B4C3;
  -webkit-text-stroke-width: 0.4px;
  -webkit-text-stroke-color: #94B4C3;
  font-size: 2rem;
  margin-right: 4rem;
}
@media (max-width: 767px) {
  .faq__sec .box .a .txt span {
    font-size: 1.6rem;
    margin-right: 2rem;
  }
}

.shopify-buy-frame--product {
  max-width: unset !important;
  width: 100%;
}

.shopify-buy__btn-wrapper {
  margin-top: 0 !important;
}

body:not(.home) .shopify-buy-frame {
  display: none !important;
}

/*# sourceMappingURL=style.css.map */
