@charset "utf-8";

/* ------------------------------
              共通
------------------------------ */
.common__title {
  font-size: 7.9vw;
  padding: 0 11vw;
}

.common__title::before,
.common__title::after {
  width: 8.9vw;
  height: 2.4vw;
  top: 35%;
}

.common__title--ja {
  font-size: 7.4vw;
}

/* ------------------------------
              kv
------------------------------ */
.kv-text__wrapper {
  width: 100%;
  top: 8.45vw;
}

.kv__icon {
  width: 3.2vw;
}

.kv__title {
  font-size: 16.1vw;
  padding-left: 11.5vw;
}

.kv__title::before {
  width: 9.3vw;
  height: 15vw;
  left: -0.5vw;
}

.kv__text {
  font-size: 4.5vw;
  line-height: 1.5;
  margin-top: 2.4vw;
}

/* ------------------------------
          lead,nav
------------------------------ */
.lead__inner {
  padding: 12.4vw 0 12.9vw;
}

.lead__text {
  font-size: 3.6vw;
  line-height: 1.4;
  margin-top: 6.2vw;
  padding: 0 9vw;
}

.egift-nav__wrapper {
  margin-top: 5.8vw;
}

.egift-nav__list {
  width: 75vw;
  flex-wrap: wrap;
  column-gap: 3.9vw;
  row-gap: 3.3vw;
}

.egift-nav__item {
  width: 35vw;
  padding: 1.8vw 0 5.6vw;
}

.egift-nav__link {
  font-size: 2.9vw;
  letter-spacing: -0.025em;
}

.fa-chevron-down {
  font-size: 4vw;
  bottom: -4vw;
}

.lead-how-to-use__wrapper {
  width: 88vw;
  flex-direction: column;
  row-gap: 7.4vw;
  margin: 7.3vw auto 0;
}

.how-to-use-common__wrapper {
  width: 100%;
}

.lead-how-to-use__title {
  font-size: 5.1vw;
  padding: 3.3vw 0 2.8vw;
}

.how-to-use-in__wrapper {
  width: 100%;
  column-gap: 7.3vw;
  padding: 5.3vw 3.9vw 4.7vw;
}

.lead-how-to-use__text {
  font-size: 3.6vw;
  line-height: 1.3;
}

.lead-how-to-use__text--1line {
  padding: 0 0 4vw 0;
}

.how-to-use__img {
  margin-top: 3.3vw;
}

/* ------------------------------
          ご利用方法
------------------------------ */
.how-to-use__inner {
  padding: 10vw 0 11vw;
}

.tab-area {
  width: 83.1vw;
  column-gap: 2.14vw;
  margin: 9.3vw auto 0;
}

.tab {
  font-size: 3.6vw;
  padding: 3.2vw 0 3.6vw;
}

.step__wrapper {
  width: 88vw;
  padding: 5vw 0 13.5vw;
}

.panel__title {
  width: 35.8vw;
  font-size: 4vw;
  padding: 2vw 0 1.6vw;
}

.step__list {
  width: 88vw;
  display: flex;
  column-gap: 35px;
  font-feature-settings: "palt";
  text-align: center;
  margin: 0 auto;
}

.step__item {
  width: 79vw;
  padding: 0 4.5vw;
}

.step__num {
  font-size: 9vw;
  margin-top: 5.3vw;
}

.step__num--large {
  font-size: 9vw;
}

.step__img {
  width: 67vw;
  margin: 5.4vw auto 0
}

.step__title {
  font-size: 4vw;
  line-height: 1.2;
  margin-top: 6.7vw;
}

.step__text {
  font-size: 3.6vw;
  line-height: 1.4;
  text-align: center;
  margin-top: 3.9vw;
}

.step__img {}

.frame__top,
.frame__bottom {
  width: 97.1vw;
}

.frame__top {
  top: -1vw;
}

.step-slider .slick-dots {
  position: absolute;
  bottom: -7vw;
}

.step-slider .slick-prev,
.step-slider .slick-next {
  display: block;
}

.step-slider .slick-prev {
  left: 7vw;
}

.step-slider .slick-next {
  right: 7vw;
}

/* ------------------
      Recommend
------------------ */
.recommend__inner {
  padding: 11.8vw 0 13.5vw;
}

.recommend-title__ja {
  font-size: 3.3vw;
}

.recommend-slider {
  width: 74.8vw;
}

.recommend__list {
  width: 100%;
  margin: 7.9vw auto 0;
  /* position: relative; */
}

.recommend__catch {
  width: 100%;
  font-size: 5.1vw;
  line-height: 1.2;
  position: relative;
  top: 0;
}

.recommend__list img {
  width: 60vw;
  height: 54vw;
  padding-top: 3vw;
}

.recommend__list .img {
  width: 74.8vw;
  height: 55.2vw;
  position: relative;
  background-size: 74.8vw 55.2vw;
}

.recommend__data {
  width: 100%;
  margin-top: 15vw;
  padding: 0;
}

.name-and-price {
  font-size: 3.6vw;
  margin-top: 3.5vw;
}

.btn--cart {
  padding: 5.6vw 0 0;
}

.btn--cart a {
  width: 41vw;
  font-size: 3.1vw;
  line-height: 1;
  padding: 3.6vw 0;
}

.btn--cart a svg {
  font-size: 3vw;
  right: 5vw;
}

.link--detail {
  margin-top: 3.27vw;
}

.link--detail a {
  padding: 0 0 1.5vw 0;
  font-size: 3.1vw;
  line-height: 1;
}

.link--detail svg {
  margin-left: 2.3vw;
}

.kit-detail__title {
  font-size: 2.8vw;
}

.kit-text {
  width: 46.3vw;
  min-height: 28vw;
  margin: 4.6vw auto 0;
  padding: 3.8vw 0;
}

.kit-t {
  font-size: 2.59vw;
  line-height: 1.5;
  margin-top: 3vw;
  padding: 0 4vw;
}

.other-lineup__wrapper {
  max-width: 88.1vw;
  margin: 8.1vw auto 0;
  padding: 11.8vw 0 10vw;
  position: relative;
}

.other-lineup__wrapper::before,
.other-lineup__wrapper::after {
  height: 2vw;
}

.other-lineup__list {
  width: 100%;
}

.other-lineup__item {
  width: calc(100%/3);
  margin: 0;
}

.other__catch {
  font-size: 4vw;
  line-height: 1.3;
}

.other-lineup__item .img {
  width: 37.2vw;
  height: 37.2vw;
}

.recommend-obj4 {
  width: 7.6vw;
  top: 19.5vw;
  right: 8vw;
}

.recommend-obj5 {
  width: 5.4vw;
  top: 9.7vw;
  right: inherit;
  left: 3vw;
}

.recommend-obj6 {
  width: 8.7vw;
  top: 21.6vw;
  right: 0;
}

.obj-recommend--l {
  width: 20vw;
  top: -6vw;
}

.obj-recommend--r {
  width: 23vw;
  top: -9vw;
}

.slick-dots {
  margin-top: 7vw;
}

.recommend-slider .slick-prev {
  left: -9vw;
}

.recommend-slider .slick-next {
  right: -9vw;
}

.recommend-slider .slick-arrow {
  top: 30%;
}

.products__notes {
  width: 85vw;
  font-size: 3vw;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin: 8vw auto 0;
}

/* ------------------
Gift Service contents
------------------ */
.label__gs {
  width: 44vw;
}

.service-contents {
  background-size: 37.8vw auto;
  padding: 13vw 0;
}

.service-contents__inner {
  margin-top: 5vw;
}

.service-contents__title--en {
  font-size: 9vw;
}

.service-contents__title {
  font-size: 3.4vw;
  margin-top: 1.6vw;
}

.service-contents__list {
  flex-direction: column;
}

.service-contents__item img {
  display: block;
  width: 89vw;
  margin: 4.5vw auto 0;
}

.service-contents__text {
  font-size: 3.38vw;
  margin-top: 3.6vw;
}

.service-notes {
  font-size: 2.7vw;
}

.gift-service__line {
  padding: 7.2vw 0 7.4vw;
}

.common__line {
  width: 93vw;
  margin: 0 auto;
}

.obj-flower--l {
  width: 24vw;
  top: -15vw;
}

.obj-flower--r {
  width: 21vw;
  top: -12vw;
}

.gift__banner {
  width: 89vw;
  margin: 20vw auto 0;
}

/* FAQ */
.faq__list {
  width: 91vw;
  margin: 8.4vw auto 0;
}

.faq__inner {
  padding: 11.2vw 0 13.5vw;
}

.faq__list dl dt,
.faq__list dl dd {
  font-size: 3.6vw;
  line-height: 1.3;
}

.faq__list dl dt a {
  padding: 5.9vw 8vw 5.9vw 14vw;
}

.faq__list dl dt span.t,
.faq__list dl dd span.t {
  font-size: 6.1vw;
  padding: 1.5vw 2vw;
  left: 3vw;
}

.faq__list dl dt span.icon {
  right: 1vw;
  width: 26px;
  height: 26px;
}

.faq__list dl dt span.icon svg {
  font-size: 5vw;

}

.faq__list dl dd {
  padding: 5.9vw 14vw;
}

.faq__list dl dd span.t {
  padding: 1.1vw 2vw;
}