@charset "UTF-8";
/* CSS Document */

html {
  scroll-behavior: smooth;
}
/* 
body,
html {
  width: 100%;
  max-width: 100%;
  overflow-x: hidden;
  margin: 0;
  padding: 0 !important;
  box-sizing: border-box;
  display: flex;
  justify-content: space-around;
  font-family: 'Noto Sans JP', 'メイリオ', Meiryo, sans-serif
} */

main {
  overflow-y: scroll;
  scrollbar-width: none;
  -ms-overflow-style: none;
}

* {
  box-sizing: border-box;
}

img {
  width: 100%;
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

.content {
  width: 33.4%;
  overflow-x: hidden;
  margin-left: 24px;
}

.sidebar {
  width: 33.3%;
  position: fixed;
  height: 100vh;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: 0;
}

.sidebar--left {
  left: 0;
  bottom: 0;
  background-image: url(https://cdn.shopify.com/s/files/1/0593/3613/0738/files/bg-left.png);
  background-size: cover;
}

.sidebar--right {
  right: 0;
  background-color: #fcbbb7;
  background-image: url(https://cdn.shopify.com/s/files/1/0593/3613/0738/files/bg_check.jpg)
}

.cta-button {
  z-index: 9999;
}

.cta-button--desktop {
  width: 70%;
  position: absolute;
  bottom: 5%;
  max-width: 300px;
}

.cta-button--mobile {
  display: none;
  position: fixed;
  right: 4%;
  bottom: 2%;
  width: 50%;
  max-width: 300px;
}

.section-container {
  position: relative;
}

.hero__container {
  position: relative;
}

.hero__video {
  clip-path: ellipse(100% 60% at 50% 100px);
  width: 100%;
  height: auto;
  margin: 0 auto;
  display: block;
  border: 10px solid transparent !important;
  border-image-source: url(https://cdn.shopify.com/s/files/1/0593/3613/0738/files/bg_check.jpg) !important;
  border-image-slice: 5 !important;
  border-image-repeat: repeat !important;
}

.hero__decoration--logo {
  position: absolute;
  top: 5%;
  right: 8%;
  width: 3%;
}

.hero__decoration--flower-1 {
  position: absolute;
  top: 0;
  right: 13%;
  width: 20%;
}

.hero__decoration--flower-2 {
  position: absolute;
  top: 43%;
  left: 4%;
  width: 19%;
}

.hero__text--primary {
  position: absolute;
  top: 7%;
  width: 47%;
  left: 9%;
}

.hero__text--secondary {
  position: absolute;
  top: 16%;
  width: 62%;
  left: 21%;
}

.hero__text--tagline {
  position: absolute;
  top: 62%;
  width: 50%;
  right: 25%;
}

.nail-gallery {
  display: flex;
  padding: 0;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: -54%;
  list-style: none;
}

.nail-gallery__item {
  padding: 1% 4%;
  width: 26%;
}

.concept__container {
  position: relative;
}

.concept__heading--main {
  position: absolute;
  bottom: 26%;
  width: 60%;
  left: 6%;
}

.concept__heading--sub {
  position: absolute;
  bottom: 19%;
  width: 33%;
  left: 29%;
}

.concept__decoration--flower-1 {
  position: absolute;
  bottom: -95%;
  width: 20%;
  left: 3%;
}

.concept__decoration--flower-2 {
  position: absolute;
  bottom: 1%;
  width: 13%;
  right: 6%;
}

.concept__text--primary {
  width: 70%;
  margin: 4% auto;
}

.concept__text--secondary {
  z-index: -1;
  margin-top: -145%;
  margin-bottom: 4%;
  position: relative;
}

.debut__container {
  position: relative;
}

.debut__heading--main {
  position: absolute;
  bottom: 17%;
  width: 40%;
  left: 12%;
}

.debut__heading--sub {
  position: absolute;
  bottom: 11%;
  width: 43%;
  left: 29%;
}

.debut__text {
  width: 80%;
  margin: 4% auto;
}

.debut__target--kids {
  position: relative;
}

.debut__target--mama {
  position: relative;
  margin-top: -30%;
}

.debut__tooltip--kids {
  width: 30%;
  position: absolute;
  top: 5%;
  left: 54%;
}

.debut__tooltip--mama {
  width: 30%;
  position: absolute;
  bottom: 15%;
  left: 14%;
}

.points__header {
  width: 100%;
  overflow-x: hidden;
  padding-bottom: 110%;
  position: relative;
}

.points__header>img {
  width: 80%;
  right: -13%;
  position: absolute;
}

.points__decoration {
  width: 40%;
  position: absolute;
  left: 1%;
  top: 17%;
}

.points__decoration>img {
  transform: scaleX(-1);
}

.points__title--main {
  position: absolute;
  bottom: 39%;
  width: 44%;
  left: 12%;
}

.points__title--sub {
  position: absolute;
  bottom: 32%;
  width: 36%;
  left: 29%;
}

.feature {
  width: 80%;
  margin: -4% auto 30% auto;
  position: relative;
}

.feature--first {
  margin-top: -35%;
}

.feature__text {
  position: absolute;
  width: 80%;
  top: 85%;
}

.feature--first .feature__text {
  right: 25%;
}

.feature--second .feature__text {
  right: 0;
}

.feature--third .feature__text {
  right: 25%;
}

.feature::before {
  position: absolute;
  top: 5%;
  right: 4%;
  writing-mode: vertical-rl;
  font-size: 16px;
  font-weight: 700;
  color: #fff;
  letter-spacing: 4px;
  z-index: 1;
  font-family: "Roboto Slab", serif;
}

.feature--first::before {
  content: "#01";
}

.feature--second::before {
  content: "#02";
}

.feature--third::before {
  content: "#03";
}

.feature__image-wrapper {
  width: 100%;
  height: auto;
  overflow: hidden;
  position: relative;
  border-radius: 5%;
}

.point-pop-hana001 {
  position: absolute;
  width: 24%;
  top: 7%;
  left: -10%;
}

.point-pop-hana002 {
  position: absolute;
  width: 25%;
  top: -14%;
  left: 68%;
}

.point-pop-hana003 {
  position: absolute;
  width: 24%;
  top: -17%;
  left: -7%;
}

.shoplist_btn001 {
  width: 80%;
  margin: -5% auto 10% auto;
  position: relative;
  z-index: 1;
}

.howto__container {
  position: relative;
}

.howto__slider {
  width: 78%;
  margin: 0 auto;
  transform: translateY(-183%);
}

.howto__note {
  position: absolute;
  width: 89%;
  top: 50%;
  right: 5.5%;
}

.slider-arrow--next {
  position: absolute;
  top: 31%;
  right: -46px;
  width: 100px;
  height: 50px;
  background: url(https://cdn.shopify.com/s/files/1/0593/3613/0738/files/slick-btn.png?v=1744250665) no-repeat center center;
  background-size: contain;
  border: none;
  cursor: pointer;
}

.slider-arrow--prev {
  position: absolute;
  top: 31%;
  left: -46px;
  width: 100px;
  height: 50px;
  background: url('https://cdn.shopify.com/s/files/1/0593/3613/0738/files/slick-btn.png?v=1744250665') no-repeat center center;
  background-size: contain;
  border: none;
  cursor: pointer;
  transform: scaleX(-1);
}

.slick-dots li {
  margin: 0 0 -6% 0 !important;
}

.slick-dots li button::before {
  color: #ffffffa6 !important;
  opacity: 1 !important;
}

.slick-dots li.slick-active button::before {
  color: #fff !important;
  opacity: 1 !important;
}

.slick-dots {
  display: flex !important;
  justify-content: center;
  gap: -3px;
}

.slick-next:before,
.slick-prev:before {
  font-size: 0 !important;
}

.special__container {
  position: relative;
  margin-top: -100%;
}

.special__text--first {
  position: absolute;
  width: 37%;
  right: 57.5%;
  top: 8%;
}

.special__text--second {
  position: absolute;
  width: 40%;
  right: 49.2%;
  top: 18%;
}

.special__text--third {
  position: absolute;
  width: 45%;
  right: 49.5%;
  top: 28%;
}

.special__text--plus {
  position: absolute;
  width: 63%;
  right: 32.5%;
  top: 60%;
}

.gift__container {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
}

.gift__text--primary {
  position: absolute;
  width: 52%;
  right: 38%;
  top: 5%;
}

.gift__text--secondary {
  position: absolute;
  width: 54%;
  right: 37%;
  top: 11%;
}

.gift__item {
  position: absolute;
  width: 63%;
  right: 17%;
  top: 34%;
}

.shoplist_btn002 {
  width: 80%;
  margin: -52% auto 10% auto;
  position: relative;
  z-index: 1;
}

.gift__text002 {
  margin-top: 30px;
}

.about__footer img,
.about__text img,
.faq img {
  display: block;
}

.faq {
  background-image: url(https://cdn.shopify.com/s/files/1/0593/3613/0738/files/bg_check.jpg);
  width: 100%;
  margin: 0 auto;
  padding: 14% 0 4% 0;
}

.faq__title {
  width: 60%;
  margin: 0 auto 6% auto;
}

.faq-card {
  background: #fff;
  border-radius: 20px;
  padding: .8rem 1.8rem;
  margin-bottom: 1.5rem;
  box-shadow: 0 4px 12px rgba(0, 0, 0, .05);
  border: 2px dotted #f3dcdc;
  width: 84%;
  margin: 4% auto;
}

.faq-card h3 {
  color: #f68c84;
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 1rem;
}

.faq-card p {
  font-size: min(14px, 4vw);
  line-height: 1.4;
  color: #6c6565;
}

.faq-card a {
  color: #3498db;
  text-decoration: none;
  font-weight: 700;
  text-decoration-line: underline;
}

.faq-card a:hover {
  text-decoration: underline;
}

.interview__btn {
  width: 80%;
  margin: -24% auto 16% auto;
}

.pagetop__btn {
  width: 80%;
  margin: 0 auto;
}

.animation--float,
.animation--sway,
.animation--sway-reverse {
  overflow: hidden;
}

.animation--fade-in {
  opacity: 0;
  transform: translate3d(0, 5%, 0) scale(.9);
  transition: opacity .6s linear, transform .6s cubic-bezier(.25, .46, .45, .94);
}

.animation--fade-in.is-visible {
  opacity: 1;
  transform: scale(1);
}

.animation--reveal {
  display: block;
  height: auto;
  clip-path: inset(0 100% 0 0);
}

.animation--reveal.is-visible {
  animation: revealImage 1s ease-out forwards;
}

.animation--slide-right {
  opacity: 0;
  transform: translateX(50px);
}

.animation--slide-right.is-visible {
  animation: slideInRight .8s ease-out forwards;
}

.animation--slide-left {
  opacity: 0;
  transform: translateX(-50px);
}

.animation--slide-left.is-visible {
  animation: slideInLeft .8s ease-out forwards;
}

.animation--zoom.is-visible>img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1);
  animation: zoomInOut 3s 1 alternate ease-in-out;
  animation-fill-mode: forwards;
}

.animation--sway {
  animation: sway .6s steps(2) 0s alternate infinite;
}

.animation--sway-reverse {
  animation: sway .6s steps(2) 0s alternate-reverse infinite;
}

.animation--float {
  animation: float 4s linear infinite;
}

.animation--delay-1 {
  animation-delay: .2s;
}

.animation--delay-2 {
  animation-delay: .4s;
}

.animation--delay-3 {
  animation-delay: .6s;
}

.animation--delay-4 {
  animation-delay: .8s;
}

.animation--delay-5 {
  animation-delay: 1s;
}

.animation--delay-6 {
  animation-delay: 1.2s;
}

@keyframes revealImage {
  from {
    clip-path: inset(0 100% 0 0);
  }

  to {
    clip-path: inset(0 0 0 0);
  }
}

@keyframes slideInRight {
  from {
    opacity: 0;
    transform: translateX(50px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes slideInLeft {
  from {
    opacity: 0;
    transform: translateX(-50px);
  }

  to {
    opacity: 1;
    transform: translateX(0);
  }
}

@keyframes zoomInOut {
  0% {
    transform: scale(1);
  }

  100% {
    transform: scale(1.1);
  }
}

@keyframes sway {
  0% {
    transform: rotate(-10deg);
  }

  20% {
    transform: rotate(-8deg);
  }

  80% {
    transform: rotate(8deg);
  }

  100% {
    transform: rotate(10deg);
  }
}

@keyframes float {

  0%,
  100% {
    transform: translateY(0);
  }

  50% {
    transform: translateY(20px);
  }
}

@media screen and (max-width:768px) {
  body {
    display: block;
  }

  .sidebar {
    display: none !important;
  }

  .content {
    width: 100% !important;
  }

  .cta-button--mobile {
    display: block !important;
  }
}

.concept {
  position: relative;
  z-index: 1;
}

.lp-wrapper {
  display: flex;
  justify-content: space-around;
  width: 100vw;
  width: 100%;
}

.__pf [style*="--cw"] {
  padding: 0;
  max-width: none;
  margin: 0;
  width: 100%;
}

.pf-c {
  padding: 0 !important;
}

@media screen and (max-width: 768px) {
  .lp-wrapper {
    width: 100% !important;
  }

  .content {
    width: 100vw !important;
  }
}

/*  バッジ非表示 */
.swym-anchor-badge.show-badge {
  display: none !important;
}

/* lineup 260804追加 */
    a {
        text-decoration: none;
    }
    
    .lineup {
        background-color: #faf6f3;
        padding: 80px 0;
    } 
    
    .lineup img {
        width: 100%;
    }
    
    .lineup_title {
        width: 70%;
        margin: 0 auto 50px;
    }
    
    .lineup_flex {
        display: flex;
        gap:18px;
        width: 90%;
        margin: 0 auto;
    }
    
    .lineup_flex p {
        text-align: center;
        color: #E6555F;
    }
    
    .lineup_flex_img {
        box-shadow: 2px 2px 10px #5e5e5e;
    }
    
    .lineup_flex span {
        font-size: 1.4rem;
    }
    
    @media screen and (max-width: 480px) {
    .content {
        margin-left: 0;
    }
    .lineup_flex {
        display: block;
        width: 70%;
    }
.lineup_flex p {
    font-size: 1.7rem;
    margin-bottom: 40px;
}
.lineup_flex span {
    font-size: 1.6rem;
}
    }

.lang {
    display: flex;
    gap: 20px;
    margin: 50px auto;
    justify-content: center;
    /*font-size: 1.2rem;*/
    background: #fff;
}



.lang_flex {
    display: flex;
    max-width: 90%;
    align-items: baseline;
}



.lang_list {
    color: #565656 !important;
    font-weight: 300;
    text-align: center;
    padding: 16px 0;
    justify-content: center;
    align-items: center;
    display: flex;
    font-size: 1.5rem;
}



.lang_list img {
    width: 18%;
}