@charset "UTF-8";

/*all----------------------------*/
html {
  font-size: 62.5%;
}

body {
  -webkit-tap-highlight-color: transparent;
}

#Wrap {
  width: auto;
}

footer {
  position: relative;
  z-index: 2;
}

.nav-top {
  display: none;
  z-index: 5;
}

:root {
  --font_regular: "ryo-gothic-plusn", sans-serif;
  --font_serif: "Noto Serif JP", serif;
  --font_eng: "Cormorant Garamond", serif;
  --font_mix: "Cormorant Garamond", "ryo-gothic-plusn", sans-serif;
  --color_regular: #52433B;
  --color_accent_01: #AA6647;
  --color_accent_02: #CB9375;
  --color_accent_03: #847B63;
  --color_01: #EBE5CA;
  --color_02: #EDE0C1;
  --color_bg: #FAF6EE;
}

.LP_page * {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  line-height: 1;
  letter-spacing: .1em;
}

.LP_page {
  padding-bottom: 10rem;
  background: var(--color_bg);
  font-family: var(--font_regular);
  color: var(--color_regular);
  overflow-x: clip;
  opacity: 0;
  transition: opacity 1s;
}

.LP_page.active {
  opacity: 1;
}

.LP_page picture {
  display: block;
  font-size: 0;
}

.LP_page a {
  display: block;
}

.LP_page a:hover {
  opacity: 1 !important;
}

.LP_page img {
  width: 100%;
  height: auto;
  vertical-align: bottom;
}

.LP_page sup {
  font-size: 1rem;
}

.LP_page .activePoint,
.LP_page .activeDelay {
  opacity: 0;
  transition: opacity 1s;
}

.LP_page .activeDelay.delay1 {
  transition-delay: .15s;
}

.LP_page .activeDelay.delay2 {
  transition-delay: .3s;
}

.LP_page .activeDelay.delay3 {
  transition-delay: .45s;
}

.LP_page .activeDelay.delay4 {
  transition-delay: .6s;
}

.LP_page .activePoint.active,
.LP_page .activePoint.active > .activeDelay {
  opacity: 1;
}
/*----------------------------all*/

/*mv,lead------------------------*/
.main_ttl {
  margin-bottom: 5rem;
}

.main_lead_wrap {
  margin-bottom: 5rem;
  text-align: center;
}

.main_lead_wrap h2 {
  margin-bottom: 4.5rem;
  font-family: var(--font_serif);
  font-size: 3rem;
  font-weight: 700;
  color: var(--color_accent_01);
}

.main_lead_wrap .main_lead {
  font-size: 1.8rem;
  font-weight: 500;
  line-height: 1.75;
}

.main_lead_wrap .main_lead:nth-of-type(n+2) {
  margin-top: 4rem;
}

.main_lead_wrap .main_lead .txt_highlight {
  color: var(--color_accent_01);
}
/*------------------------mv,lead*/

/*トピックス-----------------------*/
.topics_wrap {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: flex-end;
  gap: 3.5rem;
  width: 60rem;
  margin: .5rem auto 3rem;
  padding: 0 5rem 3.5rem 4.5rem;
}

.topics_wrap::before {
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 6rem);
  background: #fff;
  content: "";
}

.topics_wrap .txt_wrap {
  flex: 1;
  padding-bottom: .8rem;
}

.topics_wrap h3 {
  margin-bottom: 2rem;
  font-family: var(--font_eng);
  font-style: italic;
  font-size: 3.5rem;
  font-weight: 600;
  letter-spacing: .15em;
  opacity: .5;
}

.topics_wrap p {
  margin-bottom: 2rem;
  font-size: 1.5rem;
  line-height: 1.5;
}

.topics_wrap p .txt_L {
  display: block;
  margin-bottom: 2rem;
  font-family: var(--font_serif);
  font-size: 2.2rem;
  font-weight: 700;
}

.topics_wrap a {
  position: relative;
  width: fit-content;
  padding-right: 1.5rem;
  font-size: 1.7rem;
  font-weight: 500;
  letter-spacing: .05em;
  text-decoration: underline;
}

.topics_wrap a::before {
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  width: .8rem;
  height: .8rem;
  border-top: solid var(--color_regular) .15rem;
  border-right: solid var(--color_regular) .15rem;
  rotate: 45deg;
  box-sizing: border-box;
  content: "";
  transition: margin .3s;
}

.topics_wrap a:hover::before {
  margin-right: -.5rem;
}

.topics_wrap .topics_img {
  width: 15rem;
  box-shadow: 0 3px 6px rgba(0, 0, 0, .15);
  rotate: 4deg;
  animation: float 3s ease-in-out infinite alternate-reverse;
}

@keyframes float {
  0% {
    translate: 0 -.8rem;
  }

  100% {
    translate: 0 .8rem;
  }
}
/*-----------------------トピックス*/

/*ナビ----------------------------*/
.navigation_area {
  margin-bottom: 5rem;
  padding: 5rem 0;
}

.area_inner {
  width: 120rem;
  margin: 0 auto;
}

.navigation_area .area_inner {
  padding: 0 15rem;
}

.navigation_area .area_ttl {
  position: relative;
  margin-bottom: 2rem;
  text-align: center;
}

.navigation_area .area_ttl::before {
  position: absolute;
  top: 50%;
  left: 50%;
  translate: -50% -50%;
  width: 100%;
  height: .12rem;
  background: var(--color_regular);
  content: "";
}

.navigation_area .area_ttl span {
  position: relative;
  z-index: 1;
  padding: 0 3rem;
  background: var(--color_bg);
  font-family: var(--font_eng);
  font-size: 4rem;
  font-weight: 600;
  letter-spacing: .05em;
}

.navigation_list {
  display: flex;
  justify-content: center;
  gap: 2rem;
}

.navigation_list li a {
  position: relative;
  z-index: 1;
  width: 43rem;
}

.navigation_list li a::before {
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 11rem);
  content: "";
}

.navigation_list li:nth-of-type(1) a::before {
  background: linear-gradient(transparent, var(--color_01));
}

.navigation_list li:nth-of-type(2) a::before {
  background: linear-gradient(transparent, var(--color_02));
}

.navigation_list li a figure {
  width: 31rem;
  margin: 0 auto 1.8rem;
  overflow: clip;
}

.navigation_list li a figure img {
  transition: scale .5s;
}

.navigation_list li a:hover figure img {
  scale: 1.05;
}

.navigation_list li a p {
  position: relative;
  padding-bottom: 3.5rem;
  font-family: var(--font_serif);
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}

.navigation_list li a p::before {
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  width: 1rem;
  height: 1rem;
  margin-bottom: 1.5rem;
  border-right: solid var(--color_regular) .15rem;
  border-bottom: solid var(--color_regular) .15rem;
  rotate: 45deg;
  box-sizing: border-box;
  content: "";
  transition: margin .3s;
}

.navigation_list li a:hover p::before {
  margin-bottom: 1rem;
}
/*----------------------------ナビ*/


/*gift lineup---------------------*/
.each_giftCat {
  padding: 5rem 0 10rem;
}

.each_giftCat .area_inner {
  width: 130rem;
}

.giftCat_cath {
  position: relative;
  z-index: 1;
  margin: 0 0 .8rem 15rem;
  padding-top: 5rem;
  font-size: 2.4rem;
  line-height: 1.5;
  font-weight: 700;
  color: var(--color_accent_03);
}

.giftCat_cath::before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  width: 100vw;
  height: 35rem;
  margin-right: 49rem;
  content: "";
  scale: 0 1;
  transition: scale 2s;
  transform-origin: center left;
}

.each_giftCat.active .giftCat_cath::before {
  scale: 1;
}

#FromDaughterToMother .giftCat_cath::before {
  background: var(--color_01);
}

#FromMotherToGrandma .giftCat_cath::before {
  background: var(--color_02);
}

.giftCat_ttl {
  position: relative;
  z-index: 2;
  width: fit-content;
  margin: 0 20rem -4rem auto;
  padding: 1.8rem 2.8rem;
  background: rgba(255, 255, 255, .85);
  font-size: 3rem;
  font-weight: 500;
  translate: 0 2rem;
  opacity: 0;
  transition: translate 1s, opacity 1s;
  transition-delay: 1s;
}

.each_giftCat.active .giftCat_ttl {
  translate: 0 0;
  opacity: 1;
}

.giftCat_ttl .txt_highlight {
  font-family: var(--font_serif);
  font-size: 4.2rem;
  font-weight: 700;
}

.giftCat_ttl .txt_highlight:nth-of-type(1) {
  color: var(--color_accent_02);
}

.giftCat_ttl .txt_highlight:nth-of-type(2) {
  color: var(--color_accent_01);
}

.giftCat_img {
  position: relative;
  z-index: 1;
  width: 75rem;
  margin: 0 auto;
  opacity: 0;
  transition: opacity 1s;
  transition-delay: 1.4s;
}

.each_giftCat.active .giftCat_img {
  opacity: 1;
}

.giftCat_img picture {
  translate: 4rem 6rem;
  transition: translate 1.5s;
  transition-delay: 1.4s;
}

.each_giftCat.active .giftCat_img picture {
  translate: 0 0;
}

.giftCat_img img {
  rotate: -10deg;
  transform-origin: top right;
  transition: rotate 1.5s;
  transition-delay: 1.4s;
}

.each_giftCat.active .giftCat_img img {
  rotate: 0deg !important;
}

.giftCat_img::before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100vw;
  height: 24rem;
  margin: 17rem 0 0 64.5rem;
  opacity: .5;
  content: "";
  scale: 0 1;
  transition: scale 2s;
  transition-delay: 1.8s;
  transform-origin: center left;
}

.each_giftCat.active .giftCat_img::before {
  scale: 1;
}

#FromDaughterToMother .giftCat_img::before {
  background: var(--color_01);
}

#FromMotherToGrandma .giftCat_img::before {
  background: var(--color_02);
}

.giftCat_lead_wrap {
  position: relative;
  z-index: 1;
  margin: 3.5rem 0 5rem;
  text-align: center;
  opacity: 0;
  translate: 0 2rem;
  transition: opacity 1s, translate 1s;
  transition-delay: 2.2s;
}

.giftCat_lead:nth-of-type(n+2) {
  margin-top: 3rem;
}

.each_giftCat.active .giftCat_lead_wrap {
  translate: 0 0;
  opacity: 1;
}

.giftCat_lead {
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.75;
}

.giftCat_lead .txt_highlight {
  color: var(--color_accent_01);
}

.giftLineup_outside {
  display: flex;
}

.giftLineup_outside .area_ttl {
  position: sticky;
  top: 5rem;
  width: 5rem;
  height: fit-content;
  padding-top: 8rem;
  font-family: var(--font_eng);
  font-size: 5rem;
  font-weight: 600;
  letter-spacing: .05em;
  writing-mode: vertical-lr;
}

#FromDaughterToMother .giftLineup_outside .area_ttl {
  color: var(--color_01);
}

#FromMotherToGrandma .giftLineup_outside .area_ttl {
  color: var(--color_02);
}

.giftLineup_wrap {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  gap: 4rem 7rem;
  padding: 0 10rem 0 5rem;
}

.giftLineup_wrap .itm_list_outside .cat_ttl {
  margin-bottom: .5rem;
  font-family: var(--font_eng);
  font-size: 4rem;
  font-weight: 600;
  letter-spacing: .05em;
}

.giftLineup_wrap .itm_list_outside .cat_ttl .txt_L {
  font-size: 5.4rem;
  letter-spacing: .05em;
}

.giftLineup_wrap .itm_list_outside .cat_ttl .txt_S {
  margin-left: 1.2rem;
  font-family: var(--font_serif);
  font-size: 1.6rem;
  font-weight: 700;
}

.giftLineup_wrap .itm_list_wrap {
  max-width: 110rem;
  overflow-x: scroll;
  scrollbar-width: none;
}

.giftLineup_wrap .itm_list_wrap::-webkit-scrollbar {
  display: none;
}

.giftLineup_wrap .itm_list {
  position: relative;
  display: flex;
  gap: 1rem;
  width: fit-content;
  padding-top: 2rem;
}

.giftLineup_wrap .itm_list::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: .25rem;
  border-top: solid var(--color_regular) .12rem;
  border-bottom: solid var(--color_regular) .12rem;
  opacity: .8;
  content: "";
}

.giftLineup_wrap .itm_list li {
  position: relative;
  width: 20rem;
  padding: .5rem .5rem 8.5rem;
  background: #fff;
}
.giftLineup_wrap .itm_list li .itm_img {
  overflow: clip;
}

.giftLineup_wrap .itm_list li .itm_img img {
  transition: scale .5s;
}

.giftLineup_wrap .itm_list li .itm_img a:hover img {
  scale: 1.05;
}

.giftLineup_wrap .itm_list li .txt_wrap {
  padding: .8rem .8rem 0;
}

.giftLineup_wrap .itm_list li .itm_name {
  margin-bottom: 1rem;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .05em;
}

.giftLineup_wrap .itm_list li .itm_name .itm_brand {
  font-family: var(--font_eng);
  font-weight: 600;
  line-height: 1.4;
  letter-spacing: .05em;
}

.giftLineup_wrap .itm_list li .itm_name .itm_brand.txt_jpn {
  font-family: var(--font_regular);
  font-weight: 400;
}

.giftLineup_wrap .itm_list li .txt_wrap > div {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  padding: 0 1.3rem 2rem;
}

.giftLineup_wrap .itm_list li .itm_price_wrap {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.giftLineup_wrap .itm_list li .itm_price {
  font-size: 1.5rem;
  letter-spacing: .05em;
}

.giftLineup_wrap .itm_list li .itm_price .txt_tax {
  margin-left: .4rem;
  font-size: 1.1rem;
  letter-spacing: .05em;
}

.giftLineup_wrap .itm_list li .itm_link {
  position: relative;
  padding-right: 1.2rem;
  font-family: var(--font_eng);
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-decoration: underline;
}

.giftLineup_wrap .itm_list li .itm_link::before {
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  width: .8rem;
  height: .8rem;
  border-top: solid var(--color_regular) .15rem;
  border-right: solid var(--color_regular) .15rem;
  rotate: 45deg;
  box-sizing: border-box;
  content: "";
  transition: margin .3s;
}

.giftLineup_wrap .itm_list li .itm_link:hover::before {
  margin-right: -.3rem;
}

.LP_page .itm_cartin {
  width: fit-content;
}

.giftLineup_wrap .itm_list li .itm_cartin {
  margin: 1.3rem auto 0;
}

.LP_page .itm_cartin a {
  display: grid;
  place-items: center;
  width: 16rem;
  height: 2.8rem;
  border: solid var(--color_regular) .12rem;
  background: var(--color_regular);
  transition: background-color .3s;
}

.LP_page .itm_cartin a:hover {
  background: var(--color_bg);
}

.LP_page .itm_cartin a span {
  position: relative;
  padding-right: 2.6rem;
  font-family: var(--font_eng);
  font-size: 1.8rem;
  letter-spacing: .05em;
  font-weight: 700;
  color: #fff;
  transition: color .3s;
}

.LP_page .itm_cartin a:hover span {
  color: var(--color_regular);
}

.LP_page .itm_cartin a span::before {
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  width: 2rem;
  height: 2rem;
  mask-image: url(../img/icon_cart.svg);
  mask-size: cover;
  mask-position: center center;
  mask-repeat: no-repeat;
  -webkit-mask-image: url(../img/icon_cart.svg);
  -webkit-mask-size: cover;
  -webkit-mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  background: #fff;
  content: "";
  transition: background-color .3s;
}

.LP_page .itm_cartin a:hover span::before {
  background: var(--color_regular);
}

/*---------------------gift lineup*/


/*ランキング-----------------------*/
.ranking_outside {
  position: relative;
  z-index: 1;
  width: 100vw;
  margin: 9rem calc(50% - 50vw) 0;
  padding: 5rem 0 6rem;
}

#FromDaughterToMother .ranking_outside {
  background: var(--color_01);
}

#FromMotherToGrandma .ranking_outside {
  background: var(--color_02);
}

/*
.ranking_outside::before {
  position: absolute;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  height: calc(100% - (4.5rem / 2));
  content: "";
}
 
#FromDaughterToMother .ranking_outside::before {
  background: var(--color_01);
}

#FromMotherToGrandma .ranking_outside::before {
  background: var(--color_02);
}
*/

.ranking_outside > h3 {
  margin-bottom: 2.5rem;
  font-family: var(--font_eng);
  font-size: 4rem;
  font-weight: 600;
  letter-spacing: .05em;
  text-align: center;
}

.ranking_list.swiper-wrapper {
  transition-timing-function: linear;
}

.ranking_list_wrap .each_item {
  position: relative;
  width: 20rem !important;
  height: auto;
  margin-right: 1.5rem;
}

.ranking_list_wrap .each_item a {
  height: 100%;
  padding: .5rem .5rem 3.5rem;
  background: #fff;
}

.ranking_list_wrap .each_item .item_list__img {
  overflow: clip;
}

.ranking_list_wrap .each_item .item_list__img img {
  transition: scale .5s;
}

.ranking_list_wrap .each_item a:hover .item_list__img img {
  scale: 1.05;
}

.ranking_list_wrap .each_item .icn_rank {
  position: absolute;
  top: 0;
  left: 0;
  display: grid;
  place-items: center;
  width: 4rem;
  height: 4.5rem;
  margin-left: 1rem;
  border-radius: 0 0 10rem 10rem;
  background: var(--color_regular);
  font-family: var(--font_eng);
  font-style: italic;
  font-size: 2.8rem;
  font-weight: 700;
  color: #fff;
}

.ranking_list_wrap .each_item.item_rank1 .icn_rank {
  background: #C19C49;
}

.ranking_list_wrap .each_item.item_rank2 .icn_rank {
  background: #B5B5B5;
}

.ranking_list_wrap .each_item.item_rank3 .icn_rank {
  background: #B77E54;
}

.ranking_list_wrap .each_item .icn_rank span {
  letter-spacing: 0;
  padding-bottom: .8rem;
}

.ranking_list_wrap .each_item .item_list__cat {
  display: grid;
  place-items: center;
  margin-bottom: .8rem;
  padding: .4rem .3rem;
  background: var(--color_bg);
}

.ranking_list_wrap .each_item .item_list__cat span {
  font-size: 1.2rem;
  line-height: 1.3;
  letter-spacing: .05em;
  text-align: center;
}

.ranking_list_wrap .each_item .txt_wrap {
  padding: 0 .8rem;
}

.ranking_list_wrap .each_item .item_list__title {
  margin-bottom: 1.5rem;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1.4;
  letter-spacing: .05em;
  font-feature-settings: "palt";
  text-align: justify;
}

.ranking_list_wrap .each_item .item_list__price_wrap {
  position: absolute;
  bottom: 0;
  left: 0;
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 100%;
  margin-bottom: 2rem;
  padding: 0 1.3rem;
}

.ranking_list_wrap .each_item .item_list__price .txt_price span {
  font-size: 1.5rem;
  letter-spacing: .05em;
}

.ranking_list_wrap .each_item .item_list__price .txt_tax {
  font-size: 1.1rem;
  letter-spacing: .05em;
}

.ranking_list_wrap .each_item .item_list__link span {
  position: relative;
  padding-right: 1.2rem;
  font-family: var(--font_eng);
  font-size: 1.8rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-decoration: underline;
}

.ranking_list_wrap .each_item .item_list__link span::before {
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  width: .8rem;
  height: .8rem;
  border-top: solid var(--color_regular) .15rem;
  border-right: solid var(--color_regular) .15rem;
  rotate: 45deg;
  box-sizing: border-box;
  content: "";
  transition: margin .3s;
}

.ranking_list_wrap .each_item a:hover .item_list__link span::before {
  margin-right: -.5rem;
}

.ranking_list_wrap .each_item .item_list__review,
.ranking_list_wrap .each_item .soldout,
.ranking_list_wrap .each_item .item_list__cicon {
  display: none;
}

/*
.ranking_outside .btn_moreRanking {
  width: fit-content;
  margin: 4rem auto 0;
}

.ranking_outside .btn_moreRanking a {
  position: relative;
  display: grid;
  place-items: center;
  width: 28rem;
  height: 4.5rem;
  border: solid var(--color_regular) .12rem;
  background: var(--color_regular);
  font-size: 1.7rem;
  font-weight: 500;
  color: #fff;
  transition: background-color .3s, color .3s;
}

.ranking_outside .btn_moreRanking a:hover {
  background: var(--color_bg);
  color: var(--color_regular);
}

.ranking_outside .btn_moreRanking a::before {
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  width: .8rem;
  height: .8rem;
  margin-right: 1.5rem;
  border-top: solid #fff .15rem;
  border-right: solid #fff .15rem;
  rotate: 45deg;
  box-sizing: border-box;
  content: "";
  transition: margin .3s, border-color .3s;
}

.ranking_outside .btn_moreRanking a:hover::before {
  margin-right: 1rem;
  border-color: var(--color_regular);
}
*/

/*-----------------------ランキング*/

/*レビュー-------------------------*/
.review_area {
  padding: 5rem 0;
}

.review_area .area_ttl {
  margin-bottom: 2.5rem;
  font-family: var(--font_eng);
  font-size: 4rem;
  font-weight: 600;
  letter-spacing: .05em;
  text-align: center;
}

.review_list {
  display: flex;
  /*flex-wrap: wrap;*/
  gap: 2.5rem 1.5rem;
  width: fit-content;
}

.review_list .each_review a {
  width: 22rem;
  height: 100%;
  padding: 1rem 1rem 2rem;
  background: #fff;
}

.review_list .each_review .staff_wrap {
  display: flex;
  align-items: center;
  gap: .8rem;
  margin-bottom: .8rem;
}

.review_list .each_review .staff_wrap .staff_img {
  width: 5rem;
  height: 5rem;
  border-radius: 50%;
  overflow: clip;
}

.review_list .each_review .staff_wrap .txt_wrap {
  flex: 1;
  font-family: var(--font_eng);
  font-size: 1.5rem;
}

.review_list .each_review .staff_wrap .staff_name,
.review_list .each_review .staff_wrap .staff_affiliation {
  line-height: 1.3;
  letter-spacing: .05em;
}

.review_list .each_review .review_img {
  height: 20rem;
  overflow: clip;
}

.review_list .each_review .staff_wrap .staff_img img,
.review_list .each_review .review_img img {
  height: 100%;
  object-fit: cover;
  transition: scale .5s;
}

.review_list .each_review a:hover .review_img img {
  scale: 1.05;
}

.review_list .each_review .staff_comment {
  margin-top: 1rem;
  font-size: 1.3rem;
  line-height: 1.5;
  letter-spacing: .05em;
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.review_list_wrap .simplebar-wrapper {
  padding-bottom: 3.5rem;
}

.review_list_wrap .simplebar-track {
  height: 0;
}

.review_list_wrap .simplebar-track {
  position: relative;
  width: 33rem;
  height: .3rem;
  margin: 0 auto;
  padding: 0;
}

.review_list_wrap .simplebar-track::before {
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  width: 100%;
  height: .3rem;
  background: #52433B;
  opacity: .2;
  content: "";
}

.review_list_wrap .simplebar-content-wrapper {
  -ms-overflow-style: none;
  scrollbar-width: none;
}

.review_list_wrap .simplebar-content-wrapper::-webkit-scrollbar {
  display:none;
}

.review_list_wrap .simplebar-track .simplebar-scrollbar.simplebar-visible::before {
  opacity: 1;
}

.review_list_wrap .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  top: 0;
  height: 100%;
}

.review_list_wrap .simplebar-track .simplebar-scrollbar::before {
  top: 50% ;
  right: 0 !important;
  bottom: 0 ;
  left: 0 !important;
  translate: 0 -50%;
  height: .3rem;
  background: #52433B;
}

.review_list_wrap .simplebar-track.simplebar-vertical {
  display: none;
}

/*-------------------------レビュー*/

.LP_page .link_lp {
  width: 90rem;
  margin: 5rem auto 13rem;
  overflow: clip;
}

.LP_page .link_lp a img {
  transition: scale .5s;
}

.LP_page .link_lp a:hover img {
  scale: 1.03;
}

/*wrapping lineup-----------------*/
.wrapping_area {
  position: relative;
  z-index: 1;
  padding: 1rem 0 10rem;
}

.wrapping_area::before {
  position: absolute;
  z-index: -1;
  bottom: 0;
  left: 0;
  width: 100%;
  height: calc(100% - 4.5rem);
  background: #fff;
  content: "";
}

.wrapping_area .area_ttl {
  width: 110rem;
  margin: 0 auto 4rem;
  padding: 1.5rem 0;
  background: var(--color_regular);
  font-family: var(--font_eng);
  font-style: italic;
  font-size: 4.5rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-align: center;
  color: #fff;
}

.wrapping_area .area_lead {
  margin-bottom: 4.5rem;
  font-size: 1.7rem;
  font-weight: 500;
  line-height: 1.75;
  text-align: center;
}

.wrappingLineup_outside .wrappingLineup_wrap:nth-of-type(n+2) {
  margin-top: 8rem;
}

.wrappingLineup_wrap {
  display: flex;
  align-items: flex-end;
  gap: 6rem;
}

.wrappingLineup_wrap > div:nth-of-type(2) {
  flex: 1;
}

.wrappingLineup_wrap .cat_ttl {
  position: relative;
  z-index: 1;
  margin: 0 0 3rem 3rem;
  font-family: var(--font_serif);
  font-size: 1.7rem;
  font-weight: 700;
}

.wrappingLineup_wrap .cat_ttl .txt_eng {
  display: block;
  margin-bottom: 1.5rem;
  font-family: var(--font_eng);
  font-size: 4rem;
  font-weight: 600;
  letter-spacing: .05em;
  color: var(--color_accent_03);
}

.wrappingLineup_wrap .cat_ttl .txt_eng .txt_L {
  font-size: 5.4rem;
  letter-spacing: .05em;
}

.wrappingLineup_wrap .cat_ttl::before {
  position: absolute;
  z-index: -1;
  top: 0;
  right: 0;
  width: 100vw;
  height: 42rem;
  margin: 3.8rem 10rem 0 0;
  background: var(--color_bg);
  content: "";
}

.wrapping_img_wrap {
  position: relative;
  z-index: 1;
  width: 60rem;
}

.wrapping_img_wrap dl {
  position: absolute;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  gap: 1rem;
  margin: 2rem 0 0 3rem;
}

.wrappingLineup_wrap dt {
  width: fit-content;
  margin-bottom: 1.2rem;
  padding: .4rem 1rem;
  border: solid var(--color_regular) .12rem;
  font-size: 1.4rem;
  font-weight: 500;
}

.wrapping_img_wrap dt {
  margin-bottom: 0;
}

.wrapping_img_wrap dd p {
  font-size: 1.4rem;
}

.wrappingLineup_wrap .wrapping_lead {
  margin-bottom: 2.5rem;
  font-size: 1.6rem;
  font-weight: 500;
  line-height: 1.5;
}

.size_list_wrap {
  margin-bottom: 4.5rem;
}

.size_list_wrap .size_list {
  display: flex;
  flex-wrap: wrap;
  gap: .5rem 1.5rem;
}

.size_list_wrap dd p {
  font-size: 1.4rem;
}

.size_list_wrap .size_list li .txt_L {
  font-family: var(--font_eng);
  font-style: italic;
  font-size: 2.4rem;
  font-weight: 700;
  letter-spacing: .05em;
}

.size_list_wrap .size_list li a {
  display: inline-block;
  letter-spacing: .03em;
  text-decoration: underline;
}

.wrappingLineup_wrap .variation_list {
  display: grid;
}

#GiftBag.wrappingLineup_wrap .variation_list {
  grid-template-columns: repeat(3, 1fr);
  gap: 1.5rem;
}

#GiftEcoBag.wrappingLineup_wrap .variation_list {
  grid-template-columns: repeat(2, 1fr);
  gap: 2rem;
}

.wrappingLineup_wrap .variation_list > li {
  position: relative;
}

#GiftBag.wrappingLineup_wrap .variation_list > li:nth-of-type(n+2)::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: .1rem;
  height: calc(100% - 18rem);
  margin-left: calc(-1.5rem / 2);
  background: var(--color_regular);
  opacity: .3;
  content: "";
}

.wrappingLineup_wrap .variation_img_wrap {
  position: relative;
}

.wrappingLineup_wrap .variation_name {
  position: absolute;
  top: 0;
  font-family: var(--font_eng);
  font-size: 2.6rem;
  font-weight: 600;
  letter-spacing: .05em;
  white-space: nowrap;
}

#GiftBag.wrappingLineup_wrap .variation_name {
  left: 50%;
  translate: -50% 0;
  margin-top: -1.8rem;
}

#GiftEcoBag.wrappingLineup_wrap .variation_name {
  left: 0;
  margin: 1rem 0 0 1rem;
  pointer-events: none;
}

.wrappingLineup_wrap .variation_list .size_list {
  width: fit-content;
  margin: 1.2rem auto 0;
}

.wrappingLineup_wrap .variation_list .size_list li:nth-of-type(n+2) {
  margin-top: 1.2rem;
  padding-top: 1.2rem;
  border-top: dotted var(--color_regular) .1rem;
}

.wrappingLineup_wrap .variation_list .txt_wrap {
  width: fit-content;
  margin: 1.2rem auto 0;
}

.wrappingLineup_wrap .variation_list .size_list .itm_caption {
  margin-bottom: .8rem;
  font-size: 1.5rem;
  letter-spacing: .05em;
}

.wrappingLineup_wrap .variation_list .txt_wrap .itm_caption {
  margin-bottom: 1.2rem;
  font-size: 1.5rem;
  letter-spacing: .05em;
}

.wrappingLineup_wrap .variation_list .size_list .itm_caption .txt_price {
  margin-left: 1.5rem;
  letter-spacing: .05em;
}

.wrappingLineup_wrap .variation_list .txt_wrap .itm_caption .txt_price {
  display: block;
  margin-top: .8rem;
  letter-spacing: .05em;
}

.wrappingLineup_wrap .variation_list .itm_caption .txt_price .txt_tax {
  margin-left: .2rem;
  font-size: 1.1rem;
  letter-spacing: .05em;
}

.wrappingLineup_wrap .notes {
  margin-top: 2rem;
  font-size: 1.1rem;
  letter-spacing: .05em;
}
/*-----------------wrapping lineup*/

/*how to order--------------------*/
.howtoOrder_area {
  margin-top: 16rem;
}

.howtoOrder_area .each_howtoOrder:nth-of-type(n+2) {
  margin-top: 8rem;
}

.howtoOrder_area .howtoOrder_ttl {
  margin-bottom: 4.5rem;
  padding: 1.2rem 0;
  background: var(--color_regular);
  font-size: 2rem;
  font-weight: 700;
  text-align: center;
  color: #fff;
}

.howtoOrder_area .howtoOrder_ttl .txt_S {
  display: block;
  margin-top: 1rem;
  font-size: 1.4rem;
  font-weight: 400;
}
.howtoOrder_area .each_howtoOrder .step_list_wrap,
.howtoOrder_area .each_howtoOrder .variation_list_wrap {
  padding: 0 5rem;
}

.howtoOrder_area .step_list li:nth-of-type(n+2) {
  margin-top: 3rem;
}

.howtoOrder_area .step_list li {
  display: flex;
  align-items: center;
  gap: 4rem;
}

.howtoOrder_area .step_list li .step_img {
  width: 60rem;
  border: solid rgba(82, 67, 59, .3) .1rem;
}

.howtoOrder_area .step_list li .txt_wrap {
  flex: 1;
}

.howtoOrder_area .step_list li .step_num {
  position: relative;
  margin-bottom: 1.5rem;
  padding-bottom: 1rem;
  font-family: var(--font_mix);
  font-style: italic;
  font-size: 2.6rem;
  font-weight: 700;
}

.howtoOrder_area .step_list li .step_num::before {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 2.8rem;
  height: .2rem;
  background: var(--color_regular);
  content: "";
}

.howtoOrder_area .step_list li .step_txt {
  font-size: 1.4rem;
  line-height: 1.75;
}

.howtoOrder_area .step_list li .step_txt .notes {
  display: block;
  margin-top: .8rem;
  font-size: 1.1rem;
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em;
}

.howtoOrder_area .step_list li .step_txt .notes:nth-of-type(n+2) {
  margin-top: .4rem;
}

.howtoOrder_area .notes_list_wrap {
  width: 100rem;
  margin: 6rem auto 0;
  padding: 4rem 5rem;
  background: var(--color_bg);
}

.howtoOrder_area .notes_list_wrap h5 {
  position: relative;
  padding-left: 3.5rem;
  width: fit-content;
  margin: 0 auto 3rem;
  font-size: 1.8rem;
  font-weight: 700;
  text-align: center;
}

.howtoOrder_area .notes_list_wrap h5::before {
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  display: grid;
  place-items: center;
  width: 2.6rem;
  height: 2.6rem;
  padding-left: .1rem;
  border-radius: 50%;
  border: solid var(--color_regular) .3rem;
  box-sizing: border-box;
  font-size: 1.8rem;
  content: "！";
}

.howtoOrder_area .notes_list_wrap li {
  font-size: 1.3rem;
  line-height: 1.5;
  text-indent: -1.5em;
  padding-left: 1.5em;
}

.howtoOrder_area .notes_list_wrap li:nth-of-type(n+2) {
  margin-top: 1.5rem;
}

.howtoOrder_area .content_ttl {
  margin-bottom: 2.5rem;
  padding-bottom: 1rem;
  border-bottom: solid var(--color_regular) .2rem;
  font-size: 2rem;
}

.howtoOrder_area .variation_list_wrap {
  margin-bottom: 4rem;
}

.howtoOrder_area .variation_list {
  margin-bottom: 2rem;
}

.howtoOrder_area .variation_list li {
  font-size: 1.7rem;
  font-weight: 700;
}

.howtoOrder_area .variation_list li:nth-of-type(n+2) {
  margin-top: 1rem;
}

.howtoOrder_area .variation_list_wrap p {
  font-size: 1.6rem;
  line-height: 1.5;
  font-weight: 500;
}

.howtoOrder_area .variation_list_wrap p .notes {
  display: block;
  margin-top: 1rem;
  font-size: 1.1rem;
  font-weight: 400;
  line-height: 1.5;
  text-indent: -1em;
  padding-left: 1em;
}

.howtoOrder_area .variation_list_wrap p .notes:nth-of-type(n+2) {
  margin-top: .4rem;
}
/*--------------------how to order*/

/*footer--------------------------*/
.footerBnr_list {
  display: flex;
  justify-content: center;
  gap: 4rem;
  margin-top: 10rem;
}

.footerBnr_list li a {
  position: relative;
  width: 43rem;
  height: 100%;
  padding-bottom: 3.5rem;
}

.footerBnr_list li:nth-of-type(1) a {
  background: #F0B9C0;
}

.footerBnr_list li:nth-of-type(2) a {
  background: #D1A59E;
}

.footerBnr_list li a figure {
  overflow: clip;
}

.footerBnr_list li a figure img {
  transition: scale .5s;
}

.footerBnr_list li a:hover figure img {
  scale: 1.05;
}

.footerBnr_list li a .txt_wrap {
  padding: 0 2rem;
  color: #fff;
}

.footerBnr_list li a .txt_wrap h5 {
  position: relative;
  margin: -2.8rem 0 2rem;
  font-family: var(--font_eng);
  font-size: 3.8rem;
  font-weight: 600;
  letter-spacing: .05em;
}

.footerBnr_list li a .txt_wrap .bnr_lead {
  font-size: 1.3rem;
  font-weight: 500;
  line-height: 1.75;
}

.footerBnr_list li a .txt_wrap .page_link {
  position: absolute;
  bottom: 0;
  right: 0;
  margin: 0 2rem 1.5rem 0;
  padding-right: 1.5rem;
  font-family: var(--font_eng);
  font-size: 2rem;
  font-weight: 700;
  letter-spacing: .05em;
  text-decoration: underline;
  white-space: nowrap;
}

.footerBnr_list li a .txt_wrap .page_link::before {
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  width: .8rem;
  height: .8rem;
  border-top: solid #fff .15rem;
  border-right: solid #fff .15rem;
  rotate: 45deg;
  box-sizing: border-box;
  content: "";
  transition: margin .3s;
}

.footerBnr_list li a:hover .txt_wrap .page_link::before {
  margin-right: -.5rem;
}

.footer_nav.navigation_area {
  margin: 10rem 0 0;
  padding: 0;
}

.footer_nav.navigation_area .area_inner {
  width: fit-content;
}

.footer_nav.navigation_area .area_ttl span {
  font-size: 3rem;
}

.footer_nav .navigation_list {
  gap: 6rem;
}

.footer_nav .navigation_list li a {
  width: 28rem;
}

.footer_nav .navigation_list li a::before {
  display: none;
}

.footer_nav .navigation_list li a figure {
  width: auto;
}

.footer_nav .navigation_list li a p {
  padding-bottom: 0;
  font-size: 1.6rem;
}

.footer_nav .navigation_list li a p::before {
  display: none;
}

/*--------------------------footer*/

/*固定ナビ--------------------------*/
.fixed_navigation {
  position: fixed;
  z-index: 5;
  bottom: 0;
  display: flex;
  justify-content: center;
  width: 100%;
  border-top: solid var(--color_regular) .3rem;
  background: #fff;
  translate: 0 100%;
  transition: translate .3s;
}

.fixed_navigation.active {
  translate: 0 0;
}

.fixed_navigation li {
  position: relative;
}

.fixed_navigation li::before {
  position: absolute;
  top: 50%;
  left: 0;
  translate: 0 -50%;
  width: .1rem;
  height: calc(100% - 2rem);
  background: var(--color_regular);
  opacity: .5;
  content: "";
}

.fixed_navigation li:nth-last-of-type(1)::after {
  position: absolute;
  top: 50%;
  right: 0;
  translate: 0 -50%;
  width: .1rem;
  height: calc(100% - 2rem);
  background: var(--color_regular);
  opacity: .5;
  content: "";
}

.fixed_navigation li a {
  display: grid;
  place-items: center;
  width: calc(120rem / 3);
  height: 7rem;
  text-align: center;
}

.fixed_navigation li a p {
  font-family: var(--font_serif);
  font-size: 1.6rem;
  font-weight: 700;
  letter-spacing: .05em;
}

.fixed_navigation li a p .txt_eng {
  display: block;
  margin-top: .8rem;
  font-family: var(--font_eng);
  font-style: italic;
  font-size: 1.4rem;
  letter-spacing: .05em;
  color: var(--color_accent_01);
}

/*--------------------------固定ナビ*/



/*Smart phone---------------------------------------------*/
@media screen and  (max-width:768px) {
/*all----------------------------*/
.LP_page .only_pc {
  display: none;
}

#share {
  z-index: 5 !important;
  transition: translate .3s;
}

#share.move {
  translate: 0 -6rem;
}

.share-txt {
  margin: 0 !important;
  padding-bottom: 2rem;
  background: var(--color_bg);
}

.LP_page {
  padding-bottom: 6rem;
}
/*----------------------------all*/

/*mv,lead------------------------*/
.main_ttl {
  margin-bottom: 2.5rem;
}

.main_lead_wrap {
  margin-bottom: 4rem;
}

.main_lead_wrap h2 {
  margin-bottom: 2.5rem;
  font-size: 2rem;
  line-height: 1.5;
}

.main_lead_wrap .main_lead {
  font-size: 1.5rem;
}

.main_lead_wrap .main_lead:nth-of-type(n+2) {
  margin-top: 2rem;
}

/*------------------------mv,lead*/

/*トピックス-----------------------*/
.topics_wrap {
  gap: 2rem;
  width: 40rem;
  margin: 0 auto 4rem;
  padding: 0 2.5rem 2.5rem;
}

.topics_wrap::before {
  height: calc(100% - 4rem);
}

.topics_wrap .txt_wrap {
  padding-bottom: .5rem;
}

.topics_wrap h3 {
  margin-bottom: 1.5rem;
  font-size: 2.4rem;
}

.topics_wrap p {
  margin-bottom: 2rem;
  font-size: 1.2rem;
}

.topics_wrap p .txt_L {
  margin-bottom: 1.2rem;
  font-size: 1.6rem;
}

.topics_wrap a {
  padding-right: 1rem;
  font-size: 1.3rem;
}

.topics_wrap a::before {
  width: .6rem;
  height: .6rem;
}

.topics_wrap .topics_img {
  width: 11rem;
}
/*-----------------------トピックス*/

/*ナビ----------------------------*/
.navigation_area {
  margin-bottom: 3rem;
  padding: 2rem 0;
}

.area_inner {
  width: auto;
}

.navigation_area .area_inner {
  padding: 0;
}

.navigation_area .area_ttl {
  margin-bottom: 1.5rem;
}

.navigation_area .area_ttl::before {
  width: calc(100% - 3rem);
  height: .1rem;
}

.navigation_area .area_ttl span {
  padding: 0 1.2rem;
  font-size: 2.6rem;
}

.navigation_list {
  gap: 0;
}

.navigation_list li {
  width: calc(100% / 2);
}

.navigation_list li a {
  width: 100%;
}

.navigation_list li a::before {
  height: calc(100% - 6rem);
}

.navigation_list li a figure {
  width: 17rem;
  margin: 0 auto 1.2rem;
}

.navigation_list li a p {
  padding-bottom: 2.5rem;
  font-size: 1.1rem;
}

.navigation_list li a p::before {
  width: .8rem;
  height: .8rem;
  margin-bottom: 1.2rem;
}

.navigation_list li a:hover p::before {
  margin-bottom: .8rem;
}
/*----------------------------ナビ*/


/*gift lineup---------------------*/
.each_giftCat {
  padding: 2rem 0 7rem;
}

.each_giftCat .area_inner {
  width: auto;
}

.giftCat_cath {
  margin: 0 0 1rem 0;
  padding: 3rem 0 0 1.5rem;
  font-size: 1.5rem;
}

.giftCat_cath::before {
  right: auto;
  left: 0;
  width: 34rem;
  height: 19rem;
  margin-right: 0;
  transition: scale 1s;
}

.giftCat_ttl {
  margin: 0 1rem -3rem auto;
  padding: 1.2rem 1.8rem;
  font-size: 1.6rem;
}

.giftCat_ttl .txt_highlight {
  font-size: 2.2rem;
}

.giftCat_img {
  width: 36rem;
  margin: 0 0 0 1.5rem;
}

.giftCat_img::before {
  width: 100%;
  height: 14rem;
  margin: 10rem 0 0 20rem;
}

.giftCat_lead_wrap {
  margin: 2rem 0 3rem 3.5rem;
  text-align: left;
}

.giftCat_lead:nth-of-type(n+2) {
  margin-top: 2rem;
}

.giftCat_lead {
  font-size: 1.3rem;
}

.giftLineup_outside .area_ttl {
  top: 10rem;
  width: 3.5rem;
  padding: 5.5rem 0 0 .3rem;
  font-size: 2.4rem;
}

.giftLineup_wrap {
  display: block;
  padding: 0;
}

.giftLineup_wrap .itm_list_outside:nth-of-type(n+2) {
  margin-top: 2.5rem;
}

.giftLineup_wrap .itm_list_outside .cat_ttl {
  font-size: 3rem;
}

.giftLineup_wrap .itm_list_outside .cat_ttl .txt_L {
  font-size: 4rem;
}

.giftLineup_wrap .itm_list_outside .cat_ttl .txt_S {
  font-size: 1.4rem;
}

.giftLineup_wrap .itm_list_wrap {
  max-width: 39.5rem;
}

.giftLineup_wrap .itm_list {
  padding-top: 1.5rem;
}

.giftLineup_wrap .itm_list::after {
  position: absolute;
  top: 0;
  left: 100%;
  display: block;
  width: 2rem;
  height: .1rem;
  content: "";
}

.giftLineup_wrap .itm_list::before {
  height: .2rem;
  border-top: solid var(--color_regular) .1rem;
  border-bottom: solid var(--color_regular) .1rem;
}

.giftLineup_wrap .itm_list li {
  width: 16rem;
  padding: .5rem .5rem 6.5rem;
}

.giftLineup_wrap .itm_list li.lineSingle {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  width: 36rem;
  padding: .5rem 2rem .5rem .5rem;
}

.giftLineup_wrap .itm_list li.lineSingle .itm_img {
  width: 15rem;
}

.giftLineup_wrap .itm_list li .txt_wrap {
  padding: .8rem .5rem 0;
}

.giftLineup_wrap .itm_list li.lineSingle .txt_wrap {
  padding: 0;
  flex: 1;
}

.giftLineup_wrap .itm_list li .itm_name {
  margin-bottom: 1rem;
  font-size: 1.2rem;
}

.giftLineup_wrap .itm_list li .txt_wrap > div {
  padding: 0 1rem 1.5rem;
}

.giftLineup_wrap .itm_list li.lineSingle .txt_wrap > div {
  position: relative;
  width: fit-content;
  padding: 0;
}

.giftLineup_wrap .itm_list li .itm_price {
  font-size: 1.2rem;
}

.giftLineup_wrap .itm_list li .itm_price .txt_tax {
  margin-left: .3rem;
  font-size: 1rem;
}

.giftLineup_wrap .itm_list li .itm_link {
  padding-right: .8rem;
  font-size: 1.5rem;
}

.giftLineup_wrap .itm_list li .itm_link::before {
  width: .5rem;
  height: .5rem;
  border-width: .1rem;
}

.giftLineup_wrap .itm_list li .itm_link:hover::before {
  margin-right: -.3rem;
}

.giftLineup_wrap .itm_list li .itm_cartin {
  margin: 1.3rem auto 0;
}

.LP_page .itm_cartin a {
  width: 12rem;
  height: 2.4rem;
  border-width: .1rem;
}

.giftLineup_wrap .itm_list li.lineSingle .itm_cartin a {
  width: 14rem;
}

.LP_page .itm_cartin a span {
  padding-right: 2rem;
  font-size: 1.4rem;
}

.LP_page .itm_cartin a span::before {
  width: 1.5rem;
  height: 1.5rem;
}
/*---------------------gift lineup*/


/*ランキング-----------------------*/
.ranking_outside {
  width: 100%;
  margin: 5rem auto 0;
  padding: 3rem 0 4rem;
}

/*
.ranking_outside::before {
  height: calc(100% - (3.5rem / 2));
}
*/

.ranking_outside > h3 {
  margin-bottom: 2rem;
  font-size: 3rem;
}

.ranking_list_wrap .each_item {
  width: 16rem !important;
  margin-right: 1rem;
}

.ranking_list_wrap .each_item a {
  padding: .5rem .5rem 3rem;
}

.ranking_list_wrap .each_item .icn_rank {
  width: 3rem;
  height: 3.5rem;
  font-size: 2.4rem;
}

.ranking_list_wrap .each_item .item_list__cat {
  margin-bottom: .8rem;
  padding: .3rem .2rem;
}

.ranking_list_wrap .each_item .item_list__cat span {
  font-size: 1.1rem;
}

.ranking_list_wrap .each_item .txt_wrap {
  padding: 0 .5rem;
}

.ranking_list_wrap .each_item .item_list__title {
  margin-bottom: 1.2rem;
  font-size: 1.2rem;
}

.ranking_list_wrap .each_item .item_list__price_wrap {
  margin-bottom: 1.5rem;
  padding: 0 1rem;
}

.ranking_list_wrap .each_item .item_list__price .txt_price span {
  font-size: 1.2rem;
}

.ranking_list_wrap .each_item .item_list__price .txt_tax {
  font-size: 1rem;
}

.ranking_list_wrap .each_item .item_list__link span {
  padding-right: .8rem;
  font-size: 1.5rem;
}

.ranking_list_wrap .each_item .item_list__link span::before {
  width: .6rem;
  height: .6rem;
  border-width: .1rem;
}

.ranking_list_wrap .each_item a:hover .item_list__link span::before {
  margin-right: -.3rem;
}

/*
.ranking_outside .btn_moreRanking {
  margin: 2.5rem auto 0;
}

.ranking_outside .btn_moreRanking a {
  width: 24rem;
  height: 3.8rem;
  border-width: .1rem;
  font-size: 1.4rem;
}

.ranking_outside .btn_moreRanking a::before {
  width: .6rem;
  height: .6rem;
}
*/
/*-----------------------ランキング*/

/*レビュー-------------------------*/
.review_area {
  padding: 2rem 0;
}

.review_area .area_ttl {
  margin-bottom: 2rem;
  font-size: 3rem;
}

.review_list_wrap {
  padding: 0 1.5rem;
}

.review_list {
  gap: 2rem 1rem;
}

.review_list .each_review {
  position: relative;
}

.review_list .each_review:nth-last-of-type(1):after {
  position: absolute;
  top: 0;
  left: 100%;
  display: block;
  width: 1.5rem;
  height: .1rem;
  content: "";
}

.review_list .each_review a {
  width: 17rem;
  padding: 1rem 1rem 1.5rem;
}

.review_list .each_review .staff_wrap .staff_img {
  width: 4rem;
  height: 4rem;
}

.review_list .each_review .staff_wrap .txt_wrap {
  font-size: 1.2rem;
}

.review_list .each_review .review_img {
  height: 15rem;
}

.review_list .each_review .staff_comment {
  margin-top: .8rem;
  font-size: 1.1rem;
}

.review_list_wrap .simplebar-wrapper {
  padding-bottom: 2.5rem;
}

.review_list_wrap .simplebar-track {
  height: .2rem;
}

.review_list_wrap .simplebar-track::before {
  height: .2rem;
}

.review_list_wrap .simplebar-track .simplebar-scrollbar::before {
  height: .2rem;
}

/*-------------------------レビュー*/

.LP_page .link_lp {
  width: 40rem;
  margin: 4rem auto;
}

/*wrapping lineup-----------------*/
.wrapping_area {
  padding: 2rem 0 6rem;
}

.wrapping_area .area_ttl {
  width: fit-content;
  margin: 0 0 2rem;
  padding: .4rem 4rem 1rem 3rem;
  font-size: 3.6rem;
}

.wrapping_area .area_lead {
  margin-bottom: 3rem;
  padding: 0 1.5rem;
  font-size: 1.3rem;
  text-align: justify;
}

.wrappingLineup_outside .wrappingLineup_wrap:nth-of-type(n+2) {
  margin-top: 6rem;
}

.wrappingLineup_wrap {
  display: block;
}

.wrappingLineup_wrap > div:nth-of-type(2) {
  padding: 0 1.5rem;
}

.wrappingLineup_wrap .cat_ttl {
  margin: 0 0 2rem 0;
  padding-left: 3rem;
  font-size: 1.4rem;
}

.wrappingLineup_wrap .cat_ttl .txt_eng {
  margin-bottom: 1rem;
  font-size: 3rem;
}

.wrappingLineup_wrap .cat_ttl .txt_eng .txt_L {
  font-size: 4rem;
}

.wrappingLineup_wrap .cat_ttl::before {
  right: auto;
  left: 0;
  width: 36rem;
  height: 24.2rem;
  margin: 2.8rem 0 0 0;
}

.wrapping_img_wrap {
  width: 40rem;
  margin: 0 auto 2rem;
}

.wrapping_img_wrap dl {
  gap: .8rem;
  margin: 1.5rem 0 0 1.5rem;
}

.wrappingLineup_wrap dt {
  margin-bottom: .8rem;
  padding: .3rem .8rem;
  border-width: .1rem;
  font-size: 1.2rem;
}

.wrapping_img_wrap dt {
  margin-bottom: 0;
}

.wrapping_img_wrap dd p {
  font-size: 1.1rem;
}

.wrappingLineup_wrap .wrapping_lead {
  margin-bottom: 2rem;
  font-size: 1.3rem;
}

.size_list_wrap {
  margin-bottom: 4rem;
}

.size_list_wrap .size_list {
  gap: .6rem 1rem;
}

.size_list_wrap dd p {
  font-size: 1.1rem;
}

.size_list_wrap .size_list li .txt_L {
  font-size: 2rem;
}

#GiftBag.wrappingLineup_wrap .variation_list {
  gap: .8rem;
}

#GiftEcoBag.wrappingLineup_wrap .variation_list {
  gap: 1.2rem;
}

#GiftBag.wrappingLineup_wrap .variation_list > li:nth-of-type(n+2)::before {
  height: calc(100% - 14.5rem);
  margin-left: calc(-.8rem / 2);
}

.wrappingLineup_wrap .variation_name {
  font-size: 2rem;
}

#GiftBag.wrappingLineup_wrap .variation_name {
  margin-top: -1.4rem;
}

#GiftEcoBag.wrappingLineup_wrap .variation_name {
  margin: .6rem 0 0 .8rem;
}

.wrappingLineup_wrap .variation_list .size_list li:nth-of-type(n+2) {
  margin-top: 1.2rem;
  padding-top: 1.2rem;
}

.wrappingLineup_wrap .variation_list .txt_wrap {
  margin: 1.2rem auto 0;
}

.wrappingLineup_wrap .variation_list .size_list .itm_caption {
  margin-bottom: .5rem;
  font-size: 1.2rem;
}

.wrappingLineup_wrap .variation_list .txt_wrap .itm_caption {
  margin-bottom: .8rem;
  font-size: 1.2rem;
}

.wrappingLineup_wrap .variation_list .size_list .itm_caption .txt_price {
  margin-left: 1rem;
}

.wrappingLineup_wrap .variation_list .txt_wrap .itm_caption .txt_price {
  margin-top: .6rem;
}

.wrappingLineup_wrap .variation_list .itm_caption .txt_price .txt_tax {
  font-size: 1rem;
}

.wrappingLineup_wrap .notes {
  font-size: 1rem;
}
/*-----------------wrapping lineup*/

/*how to order--------------------*/
.howtoOrder_area {
  margin-top: 5rem;
}

.howtoOrder_area .each_howtoOrder:nth-of-type(n+2) {
  margin-top: 6rem;
}

.howtoOrder_area .howtoOrder_ttl {
  margin-bottom: 3rem;
  padding: 1.5rem 0;
  font-size: 1.8rem;
}

.howtoOrder_area .howtoOrder_ttl .txt_S {
  font-size: 1.3rem;
}
.howtoOrder_area .each_howtoOrder .step_list_wrap,
.howtoOrder_area .each_howtoOrder .variation_list_wrap {
  padding: 0 1.5rem;
}

.howtoOrder_area .step_list li:nth-of-type(n+2) {
  margin-top: 2.5rem;
}

.howtoOrder_area .step_list li {
  gap: 1.5rem;
}

.howtoOrder_area .step_list li .step_img {
  width: 19rem;
}

.howtoOrder_area .step_list li .step_num {
  font-size: 2.2rem;
}

.howtoOrder_area .step_list li .step_num::before {
  width: 2.4rem;
}

.howtoOrder_area .step_list li .step_txt {
  font-size: 1.3rem;
}

.howtoOrder_area .step_list li .step_txt .notes {
  font-size: 1rem;
}

.howtoOrder_area .notes_list_wrap {
  width: 40rem;
  margin: 4rem auto 0;
  padding: 3.5rem 2rem;
}

.howtoOrder_area .notes_list_wrap h5 {
  padding-left: 3rem;
  margin: 0 auto 2rem;
  font-size: 1.6rem;
}

.howtoOrder_area .notes_list_wrap h5::before {
  width: 2.4rem;
  height: 2.4rem;
  border-width: .2rem;
  font-size: 1.6rem;
}

.howtoOrder_area .notes_list_wrap li {
  font-size: 1.2rem;
}

.howtoOrder_area .notes_list_wrap li:nth-of-type(n+2) {
  margin-top: 1.2rem;
}

.howtoOrder_area .content_ttl {
  margin-bottom: 2rem;
  font-size: 1.6rem;
}

.howtoOrder_area .variation_list_wrap {
  margin-bottom: 4rem;
}

.howtoOrder_area .variation_list li {
  font-size: 1.5rem;
}

.howtoOrder_area .variation_list li:nth-of-type(n+2) {
  margin-top: .8rem;
}

.howtoOrder_area .variation_list_wrap p {
  font-size: 1.4rem;
}

.howtoOrder_area .variation_list_wrap p .notes {
  font-size: 1rem;
}
/*--------------------how to order*/

/*footer--------------------------*/
.footerBnr_list {
  display: block;
  margin-top: 6rem;
  padding: 0 1.5rem;
}

.footerBnr_list li:nth-of-type(n+2) {
  margin-top: 2.5rem;
}

.footerBnr_list li a {
  width: 100%;
  padding-bottom: 3rem;
}

.footerBnr_list li a .txt_wrap {
  padding: 0 1.5rem;
}

.footerBnr_list li a .txt_wrap h5 {
  margin: -2.6rem 0 1.5rem;
  font-size: 3.6rem;
}

.footerBnr_list li a .txt_wrap .bnr_lead {
  font-size: 1.1rem;
}

.footerBnr_list li a .txt_wrap .page_link {
  margin: 0 1.5rem 1.2rem 0;
  padding-right: .8rem;
  font-size: 1.5rem;
}

.footerBnr_list li a .txt_wrap .page_link::before {
  width: .6rem;
  height: .6rem;
}

.footerBnr_list li a:hover .txt_wrap .page_link::before {
  margin-right: -.3rem;
}

.footer_nav.navigation_area {
  margin: 7rem 0 0;
}

.footer_nav.navigation_area .area_ttl span {
  font-size: 2.6rem;
}

.footer_nav .navigation_list {
  gap: 2rem;
}

.footer_nav .navigation_list li a {
  width: 17rem;
}

.footer_nav .navigation_list li a p {
  font-size: 1.1rem;
}

/*--------------------------footer*/

/*固定ナビ--------------------------*/
.fixed_navigation {
  border-width: .2rem;
}

.fixed_navigation li {
  width: calc(100% / 3);
}

.fixed_navigation li::before {
  height: calc(100% - 1.5rem);
}

.fixed_navigation li:nth-of-type(1)::before {
  display: none;
}

.fixed_navigation li:nth-last-of-type(1)::after {
  display: none;
}

.fixed_navigation li a {
  width: 100%;
  height: 6rem;
}

.fixed_navigation li a p {
  font-size: 1.1rem;
  line-height: 1.3;
}

.fixed_navigation li a p .txt_eng {
  margin-top: .3rem;
  font-size: 1rem;
}

/*--------------------------固定ナビ*/

}

/*---------------------------------------------Smart phone*/

/*PC------------------------------------------------------*/
@media screen and  (min-width:769px) {
  .only_sp {
    display: none;
  }

  #header_bottom .inner {
    width: 100%;
  }
}
/*------------------------------------------------------PC*/

/*レスポンシブ＆タブレット対応-------------------------------*/
@media screen and (max-width: 1600px) and (min-width: 769px) {
  html {
    font-size: calc(10 * (100vw / 1600));
  }
}

@media screen and (max-width: 768px) {
  html {
    font-size: calc(10 * (100vw / 430));
  }
}
/*-------------------------------レスポンシブ＆タブレット対応*/