@charset "UTF-8";
/* --- BASEデザインテーマ「Giftbox（ギフトボックス）」CSS ---*/
#membership, #membership .heading-wrapper, .communityData .communityMain, .blogDetail, .itemDescription, #appsItemDetailCustom, .item_related_wrap, .cate_items_tags, .top_pickup, .top_info_wrap, .top_insta .top_insta_wrap, .items_wrap, .foot_wrap {
  max-width: 120em;
  margin: 0 auto;
}

.items_wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5em 2%;
}
@media only screen and (min-width: 768px) {
  .items_wrap {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 5em 6.25%;
  }
}

.item_status li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.1;
  display: inline-block;
  padding: 0.142em 0.571em;
  letter-spacing: 0.05em;
  border-radius: 0.142em;
  margin: 0 0.214em 0.214em 0;
  color: #FFF;
  background: #C1C1C1;
}

.foot_menu ul li, .menu_cat li,
.menu_main li {
  position: relative;
}
.foot_menu ul li:before, .menu_cat li:before,
.menu_main li:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: var(--font-clr);
  opacity: 0.2;
}
.foot_menu ul li a, .menu_cat li a,
.menu_main li a {
  display: block;
  padding: 0.857em 3.142em 0.857em 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  text-decoration: none;
}
.foot_menu ul li a::after, .menu_cat li a::after,
.menu_main li a::after {
  content: "";
  display: block;
  position: absolute;
  right: 0.857em;
  top: calc(50% - 0.35em);
  height: 0.5em;
  width: 0.5em;
  border-color: var(--font-clr);
  border-top: solid 1px;
  border-right: solid 1px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media only screen and (min-width: 768px) {
  .menu_cat,
  .menu_main {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 2%;
  }
}

#privacy dl::before, .communityData .limited::before, .faq_data::before,
.faq_data dd::after, .foot_nav .foot_nav_link::before, .foot_nav .foot_nav_link::after, header::after {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  border-top: solid 1px;
}

#law h2, #privacy h2, .inquirySection h1, .blog_section h1, .top_items h2, .top_concept h2, .top_info_wrap h2, .top_insta h2 {
  margin-bottom: 1.769em;
  font-size: 22.6px;
  font-size: 2.26rem;
  font-weight: 400;
  text-align: center;
  line-height: 1.1;
}

#law, #privacy, .inquirySection, .blog_section, .top_items, .top_pickup_wrap, .top_info, .top_insta {
  padding: 5em 2em;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  #law, #privacy, .inquirySection, .blog_section, .top_items, .top_pickup_wrap, .top_info, .top_insta {
    padding: 5em 5em;
  }
}
@media only screen and (min-width: 1024px) {
  #law, #privacy, .inquirySection, .blog_section, .top_items, .top_pickup_wrap, .top_info, .top_insta {
    padding: 10em 5em;
  }
}

.communityData .communityMain .communityRegister .communityButton, .communitySignin a {
  display: block;
  margin: 0;
  padding: 0.875em 0.625em;
  font-size: 16px;
  font-size: 1.6rem;
  text-decoration: none;
  line-height: 1;
  background: #221C64;
  border-radius: 0.312em;
  color: #FFF;
  font-family: "Noto Sans JP", "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
  opacity: 1;
  -webkit-transition: opacity 1.5s;
  transition: opacity 1.5s;
}
.communityData .communityMain .communityRegister .communityButton:hover, .communitySignin a:hover, .communityData .communityMain .communityRegister .communityButton:active, .communitySignin a:active {
  cursor: pointer;
  opacity: 0.5;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

#membership, #membership .heading-wrapper, .communityData .communityMain, .blogDetail, .itemDescription, #appsItemDetailCustom, .item_related_wrap, .cate_items_tags, .top_pickup, .top_info_wrap, .top_insta .top_insta_wrap, .items_wrap, .foot_wrap {
  max-width: 120em;
  margin: 0 auto;
}

.items_wrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 5em 2%;
}
@media only screen and (min-width: 768px) {
  .items_wrap {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 5em 6.25%;
  }
}

.faq_data dt span::before, .faq_data dd span::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  z-index: -1;
}

.item_status li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.1;
  display: inline-block;
  padding: 0.142em 0.571em;
  letter-spacing: 0.05em;
  border-radius: 0.142em;
  margin: 0 0.214em 0.214em 0;
  color: #FFF;
  background: #C1C1C1;
}

.foot_menu ul li, .menu_cat li,
.menu_main li {
  position: relative;
}
.foot_menu ul li:before, .menu_cat li:before,
.menu_main li:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  height: 1px;
  background: var(--font-clr);
  opacity: 0.2;
}
.foot_menu ul li a, .menu_cat li a,
.menu_main li a {
  display: block;
  padding: 0.857em 3.142em 0.857em 0;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  text-decoration: none;
}
.foot_menu ul li a::after, .menu_cat li a::after,
.menu_main li a::after {
  content: "";
  display: block;
  position: absolute;
  right: 0.857em;
  top: calc(50% - 0.35em);
  height: 0.5em;
  width: 0.5em;
  border-color: var(--font-clr);
  border-top: solid 1px;
  border-right: solid 1px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media only screen and (min-width: 768px) {
  .menu_cat,
  .menu_main {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 2%;
  }
}

#privacy dl::before, .communityData .limited::before, .faq_data::before,
.faq_data dd::after, .foot_nav .foot_nav_link::before, .foot_nav .foot_nav_link::after, header::after {
  content: "";
  display: block;
  width: 100%;
  height: 0;
  border-top: solid 1px;
}

#law h2, #privacy h2, .inquirySection h1, .blog_section h1, .top_items h2, .top_concept h2, .top_info_wrap h2, .top_insta h2 {
  margin-bottom: 1.769em;
  font-size: 22.6px;
  font-size: 2.26rem;
  font-weight: 400;
  text-align: center;
  line-height: 1.1;
}

#law, #privacy, .inquirySection, .blog_section, .top_items, .top_pickup_wrap, .top_info, .top_insta {
  padding: 5em 2em;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  #law, #privacy, .inquirySection, .blog_section, .top_items, .top_pickup_wrap, .top_info, .top_insta {
    padding: 5em 5em;
  }
}
@media only screen and (min-width: 1024px) {
  #law, #privacy, .inquirySection, .blog_section, .top_items, .top_pickup_wrap, .top_info, .top_insta {
    padding: 10em 5em;
  }
}

.top_info_wrap .notshop, #notshop {
  margin-top: 2.5em;
  padding: 1.5em 2em;
  border-radius: 0.3em;
  background: var(--clr-bg3);
}
.top_info_wrap .notshop:first-child, #notshop:first-child {
  margin-top: 0;
}
.top_info_wrap .notshop p, #notshop p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  color: var(--font-clr);
}

:root {
  --clr-bg1: #E4D9C4;
  --clr-bg2: #F5F1EB;
  --clr-bg3: #E5F0EA;
  --clr-point1: #9E8033;
  --clr-point2: #6B7B68;
  --font-clr: #605850;
  --clr-red: #C36F6F;
}

.th-baige {
  --clr-bg1: #E4D9C4;
  --clr-bg2: #F5F1EB;
  --clr-bg3: #E5F0EA;
  --clr-point1: #9E8033;
  --clr-point2: #6B7B68;
  --font-clr: #605850;
}

.th-pink {
  --clr-bg1:#FFEEEE;
  --clr-bg2:#EED0D0;
  --clr-bg3:#E1E1E7;
  --clr-point1:#AC6E6E;
  --clr-point2:#686888;
  --font-clr:#573949;
}

.th-blue {
  --clr-bg1:#E3E7EF;
  --clr-bg2: #CAD1DE;
  --clr-bg3:#F2DDE1;
  --clr-point1:#5A709A;
  --clr-point2:#BD576A;
  --font-clr:#3D4459;
}

.th-gray {
  --clr-bg1:#F2F2F2;
  --clr-bg2:#E3E3E3;
  --clr-bg3:#DBDBDB;
  --clr-point1:#3E3E3E;
  --clr-point2:#4B4B4B;
  --font-clr:#2C2C2C;
}

.th-black {
  --clr-bg1:#414452;
  --clr-bg2:#212227;
  --clr-bg3:#675934;
  --clr-point1:#9E8033;
  --clr-point2:#9E8033;
  --font-clr:#E0E0E0;
}

#notshop {
  max-width: 120em;
  margin-right: auto;
  margin-left: auto;
  text-align: center;
}

html {
  font-size: 100%;
  font-size: 62.5%; /*10px*/
}

body {
  font-family: "Noto Serif JP", "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding: 0;
  margin: 0;
  background-repeat: repeat;
}

img {
  max-width: 100%;
  height: auto;
}

input, select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
}

input, textarea, select, button {
  color: inherit;
}

li {
  list-style: none;
}

a:link, a:visited {
  color: inherit;
  opacity: 1;
  -webkit-transition: opacity 1.5s;
  transition: opacity 1.5s;
}
a:hover, a:active {
  color: inherit;
  opacity: 0.5;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

body {
  font-family: "Noto Serif JP", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ", "メイリオ", serif;
  -webkit-font-feature-settings: "palt";
          font-feature-settings: "palt";
  font-weight: 500;
}

.mincho {
  font-family: "Noto Serif JP", "Yu Mincho Medium", "游明朝 Medium", "YuMincho", "游明朝体", serif;
  font-weight: 500;
}

.gothic {
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体";
}

.logo-lib {
  font-family: "Libre Baskerville", "Noto Serif JP", serif !important;
  font-weight: 800 !important;
  letter-spacing: 0.075em !important;
}

.ff-lib .top_info h2,
.ff-lib .top_concept h2,
.ff-lib .top_items h2,
.ff-lib .top_insta h2,
.ff-lib .sec_ttl,
.ff-lib .item_related h2,
.ff-lib .inquirySection h1,
.ff-lib .blog_section h1,
.ff-lib .communityTitle,
.ff-lib #membership .heading {
  font-family: "Libre Baskerville", "Noto Serif JP", serif !important;
  font-weight: 800 !important;
  letter-spacing: 0.075em !important;
}

.logo-lato {
  font-family: "Lato", "Noto Sans", sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.075em !important;
}

.ff-lato .top_info h2,
.ff-lato .top_concept h2,
.ff-lato .top_items h2,
.ff-lato .top_insta h2,
.ff-lato .sec_ttl,
.ff-lato .item_related h2,
.ff-lato .inquirySection h1,
.ff-lato .blog_section h1,
.ff-lato .communityTitle,
.ff-lato #membership .heading {
  font-family: "Lato", "Noto Sans", sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.075em !important;
}

.logo-cor {
  font-family: "Cormorant", "Noto Serif JP", serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.075em !important;
}

.ff-cor .top_info h2,
.ff-cor .top_concept h2,
.ff-cor .top_items h2,
.ff-cor .top_insta h2,
.ff-cor .sec_ttl,
.ff-cor .item_related h2,
.ff-cor .inquirySection h1,
.ff-cor .blog_section h1,
.ff-cor .communityTitle,
.ff-cor #membership .heading {
  font-family: "Cormorant", "Noto Serif JP", serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.075em !important;
}

.logo-pla {
  font-family: "Playball", "Noto Serif JP", serif !important;
  font-weight: 500 !important;
  letter-spacing: 0em !important;
}

.ff-pla .top_info h2,
.ff-pla .top_concept h2,
.ff-pla .top_items h2,
.ff-pla .top_insta h2,
.ff-pla .sec_ttl,
.ff-pla .item_related h2,
.ff-pla .inquirySection h1,
.ff-pla .blog_section h1,
.ff-pla .communityTitle,
.ff-pla #membership .heading {
  font-family: "Playball", "Noto Serif JP", serif !important;
  font-weight: 500 !important;
  letter-spacing: 0em !important;
}

.logo-osw {
  font-family: "Oswald", "Noto Sans", sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: 0em !important;
}

.ff-osw .top_info h2,
.ff-osw .top_concept h2,
.ff-osw .top_items h2,
.ff-osw .top_insta h2,
.ff-osw .sec_ttl,
.ff-osw .item_related h2,
.ff-osw .inquirySection h1,
.ff-osw .blog_section h1,
.ff-osw .communityTitle,
.ff-osw #membership .heading {
  font-family: "Oswald", "Noto Sans", sans-serif !important;
  font-weight: 800 !important;
  letter-spacing: 0em !important;
}

.logo-jos {
  font-family: "Josefin Slab", "Noto Sans", sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.075em !important;
}

.ff-jos .top_info h2,
.ff-jos .top_concept h2,
.ff-jos .top_items h2,
.ff-jos .top_insta h2,
.ff-jos .sec_ttl,
.ff-jos .item_related h2,
.ff-jos .inquirySection h1,
.ff-jos .blog_section h1,
.ff-jos .communityTitle,
.ff-jos #membership .heading {
  font-family: "Josefin Slab", "Noto Sans", sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.075em !important;
}

.logo-mon {
  font-family: "Monoton", "Noto Sans", sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0em !important;
}

.ff-mon .top_info h2,
.ff-mon .top_concept h2,
.ff-mon .top_items h2,
.ff-mon .top_insta h2,
.ff-mon .sec_ttl,
.ff-mon .item_related h2,
.ff-mon .inquirySection h1,
.ff-mon .blog_section h1,
.ff-mon .communityTitle,
.ff-mon #membership .heading {
  font-family: "Monoton", "Noto Sans", sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0em !important;
}

.logo-mp {
  font-family: "M PLUS 1", "Noto Sans", sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.075em !important;
}

.ff-mp .top_info h2,
.ff-mp .top_concept h2,
.ff-mp .top_items h2,
.ff-mp .top_insta h2,
.ff-mp .sec_ttl,
.ff-mp .item_related h2,
.ff-mp .inquirySection h1,
.ff-mp .blog_section h1,
.ff-mp .communityTitle,
.ff-mp #membership .heading {
  font-family: "M PLUS 1", "Noto Sans", sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.075em !important;
}

.logo-saw {
  font-family: "Sawarabi Mincho", "Noto Serif JP", serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
}

.ff-saw .top_info h2,
.ff-saw .top_concept h2,
.ff-saw .top_items h2,
.ff-saw .top_insta h2,
.ff-saw .sec_ttl,
.ff-saw .item_related h2,
.ff-saw .inquirySection h1,
.ff-saw .blog_section h1,
.ff-saw .communityTitle,
.ff-saw #membership .heading {
  font-family: "Sawarabi Mincho", "Noto Serif JP", serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.05em !important;
}

.logo-mpr {
  font-family: "M PLUS Rounded 1c", "Noto Sans", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.075em !important;
}

.ff-mpr .top_info h2,
.ff-mpr .top_concept h2,
.ff-mpr .top_items h2,
.ff-mpr .top_insta h2,
.ff-mpr .sec_ttl,
.ff-mpr .item_related h2,
.ff-mpr .inquirySection h1,
.ff-mpr .blog_section h1,
.ff-mpr .communityTitle,
.ff-mpr #membership .heading {
  font-family: "M PLUS Rounded 1c", "Noto Sans", sans-serif !important;
  font-weight: 700 !important;
  letter-spacing: 0.075em !important;
}

.i-gray #baseMenu .base img {
  -webkit-filter: brightness(100%);
          filter: brightness(100%);
}

.i-white #baseMenu .base img {
  -webkit-filter: brightness(300%);
          filter: brightness(300%);
}

.i-black #baseMenu .base img {
  -webkit-filter: brightness(-300%);
          filter: brightness(-300%);
}

.type-b-line a,
a.type-b-line,
button.type-b-line, .type-b-block a,
a.type-b-block,
button.type-b-block, .type-a-line a,
a.type-a-line,
button.type-a-line, .type-a-block a,
a.type-a-block,
button.type-a-block {
  font-size: 14px;
  font-size: 1.4rem;
  height: 2.5em;
  padding: 0.428em 3.571em;
  border: 1px solid var(--clr-point1);
  background: transparent;
  cursor: pointer;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  position: relative;
  display: inline-block;
  text-decoration: none;
  text-align: center;
}
.type-b-line a:hover,
a.type-b-line:hover,
button.type-b-line:hover, .type-b-block a:hover,
a.type-b-block:hover,
button.type-b-block:hover, .type-a-line a:hover,
a.type-a-line:hover,
button.type-a-line:hover, .type-a-block a:hover,
a.type-a-block:hover,
button.type-a-block:hover {
  text-decoration: none;
}

.type-a-line a,
a.type-a-line,
button.type-a-line, .type-a-block a,
a.type-a-block,
button.type-a-block {
  padding: 0;
  border: none;
}
.type-a-line a span,
a.type-a-line span,
button.type-a-line span, .type-a-block a span,
a.type-a-block span,
button.type-a-block span {
  position: relative;
  display: block;
  width: 100%;
  height: 100%;
  padding: 0.5em 3.571em;
}
.type-a-line a span:before,
a.type-a-line span:before,
button.type-a-line span:before, .type-a-block a span:before,
a.type-a-block span:before,
button.type-a-block span:before, .type-a-line a span:after,
a.type-a-line span:after,
button.type-a-line span:after, .type-a-block a span:after,
a.type-a-block span:after,
button.type-a-block span:after {
  position: absolute;
  content: "";
  background: var(--clr-point1);
}
.type-a-line a span:before,
a.type-a-line span:before,
button.type-a-line span:before, .type-a-block a span:before,
a.type-a-block span:before,
button.type-a-block span:before {
  left: 0;
  top: 0;
  height: 1px;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.type-a-line a span:after,
a.type-a-line span:after,
button.type-a-line span:after, .type-a-block a span:after,
a.type-a-block span:after,
button.type-a-block span:after {
  right: 0;
  bottom: 0;
  height: 1px;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.type-a-line a:before,
a.type-a-line:before,
button.type-a-line:before, .type-a-block a:before,
a.type-a-block:before,
button.type-a-block:before, .type-a-line a:after,
a.type-a-line:after,
button.type-a-line:after, .type-a-block a:after,
a.type-a-block:after,
button.type-a-block:after {
  position: absolute;
  content: "";
  width: 1px;
  background: var(--clr-point1);
}
.type-a-line a:before,
a.type-a-line:before,
button.type-a-line:before, .type-a-block a:before,
a.type-a-block:before,
button.type-a-block:before {
  right: 0;
  top: 0;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.type-a-line a:after,
a.type-a-line:after,
button.type-a-line:after, .type-a-block a:after,
a.type-a-block:after,
button.type-a-block:after {
  left: 0;
  bottom: 0;
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.type-a-line a:hover,
a.type-a-line:hover,
button.type-a-line:hover, .type-a-block a:hover,
a.type-a-block:hover,
button.type-a-block:hover {
  opacity: 1;
}
.type-a-line a:hover:before,
a.type-a-line:hover:before,
button.type-a-line:hover:before, .type-a-block a:hover:before,
a.type-a-block:hover:before,
button.type-a-block:hover:before {
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}
.type-a-line a:hover:after,
a.type-a-line:hover:after,
button.type-a-line:hover:after, .type-a-block a:hover:after,
a.type-a-block:hover:after,
button.type-a-block:hover:after {
  -webkit-transition: all 500ms ease;
  transition: all 500ms ease;
}

.type-a-block a,
a.type-a-block,
button.type-a-block {
  background: var(--clr-point1);
  color: #FFF;
}
.type-a-block a span:before,
a.type-a-block span:before,
button.type-a-block span:before {
  width: 0%;
}
.type-a-block a span:after,
a.type-a-block span:after,
button.type-a-block span:after {
  width: 0%;
}
.type-a-block a span:hover:before,
a.type-a-block span:hover:before,
button.type-a-block span:hover:before {
  width: 100%;
}
.type-a-block a span:hover:after,
a.type-a-block span:hover:after,
button.type-a-block span:hover:after {
  width: 100%;
}
.type-a-block a:before, .type-a-block a:after,
a.type-a-block:before,
a.type-a-block:after,
button.type-a-block:before,
button.type-a-block:after {
  height: 0%;
}
.type-a-block a:hover,
a.type-a-block:hover,
button.type-a-block:hover {
  color: var(--clr-point1);
  background: transparent;
}
.type-a-block a:hover:before,
a.type-a-block:hover:before,
button.type-a-block:hover:before {
  height: 100%;
}
.type-a-block a:hover:after,
a.type-a-block:hover:after,
button.type-a-block:hover:after {
  height: 100%;
}

.type-a-line a,
a.type-a-line,
button.type-a-line {
  background: transparent;
  color: var(--clr-point1);
  -webkit-transition: all 1000ms ease;
  transition: all 1000ms ease;
}
.type-a-line a span:before,
a.type-a-line span:before,
button.type-a-line span:before {
  width: 100%;
}
.type-a-line a span:after,
a.type-a-line span:after,
button.type-a-line span:after {
  width: 100%;
}
.type-a-line a span:hover:before,
a.type-a-line span:hover:before,
button.type-a-line span:hover:before {
  width: 0%;
}
.type-a-line a span:hover:after,
a.type-a-line span:hover:after,
button.type-a-line span:hover:after {
  width: 0%;
}
.type-a-line a:before, .type-a-line a:after,
a.type-a-line:before,
a.type-a-line:after,
button.type-a-line:before,
button.type-a-line:after {
  height: 100%;
}
.type-a-line a:hover,
a.type-a-line:hover,
button.type-a-line:hover {
  color: #FFF;
  background: var(--clr-point1);
  -webkit-transition: all 1000ms ease;
  transition: all 1000ms ease;
}
.type-a-line a:hover:before,
a.type-a-line:hover:before,
button.type-a-line:hover:before {
  height: 0%;
}
.type-a-line a:hover:after,
a.type-a-line:hover:after,
button.type-a-line:hover:after {
  height: 0%;
}

@media only screen and (min-width: 1024px) {
  .type-a-block a,
  .type-a-line a,
  a.type-a-block,
  a.type-a-line,
  button.type-a-block,
  button.type-a-line {
    height: 3.214em;
  }
  .type-a-block a span,
  .type-a-line a span,
  a.type-a-block span,
  a.type-a-line span,
  button.type-a-block span,
  button.type-a-line span {
    padding: 0.857em 3.571em;
  }
}
.type-b-line a,
a.type-b-line,
button.type-b-line, .type-b-block a,
a.type-b-block,
button.type-b-block {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  overflow: hidden;
  z-index: 0;
}
.type-b-line a:after,
a.type-b-line:after,
button.type-b-line:after, .type-b-block a:after,
a.type-b-block:after,
button.type-b-block:after {
  position: absolute;
  content: " ";
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
}
.type-b-line a:hover,
a.type-b-line:hover,
button.type-b-line:hover, .type-b-block a:hover,
a.type-b-block:hover,
button.type-b-block:hover {
  opacity: 1;
}

.type-b-block a,
a.type-b-block,
button.type-b-block {
  color: #FFF;
}
.type-b-block a:after,
a.type-b-block:after,
button.type-b-block:after {
  background: var(--clr-point1);
  -webkit-transform: scale(1);
  transform: scale(1);
}
.type-b-block a:hover,
a.type-b-block:hover,
button.type-b-block:hover {
  color: var(--clr-point1);
}
.type-b-block a:hover:after,
a.type-b-block:hover:after,
button.type-b-block:hover:after {
  background: transparent;
  -webkit-transform: scale(0.1);
  transform: scale(0.1);
}

.type-b-line a,
a.type-b-line,
button.type-b-line {
  color: var(--clr-point1);
}
.type-b-line a:after,
a.type-b-line:after,
button.type-b-line:after {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: scale(0.1);
  transform: scale(0.1);
}
.type-b-line a:hover,
a.type-b-line:hover,
button.type-b-line:hover {
  color: #FFF;
}
.type-b-line a:hover:after,
a.type-b-line:hover:after,
button.type-b-line:hover:after {
  background: var(--clr-point1);
  -webkit-transform: scale(1);
  transform: scale(1);
}

@media only screen and (min-width: 1024px) {
  .type-b-block a,
  .type-b-line a,
  a.type-b-block,
  a.type-b-line,
  button.type-b-block,
  button.type-b-line {
    height: 3.214em;
    padding: 0.785em 3.571em;
  }
}
body.is-menuopen {
  overflow: hidden;
}
@media only screen and (min-width: 1024px) {
  body.is-menuopen {
    overflow: auto;
  }
}

.body_wrap {
  position: relative;
}

header {
  position: sticky;
  top: 0;
  padding: 0 2em;
  width: 100%;
  z-index: 110;
  background: #FFF;
  color: var(--font-clr);
}
header::after {
  position: absolute;
  left: 0;
  width: 100%;
  border-color: var(--font-clr);
  opacity: 0.2;
}

.is-menuopen header::after {
  opacity: 0;
}

.head_wrap {
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.head_wrap .menu_main {
  display: none;
}

.head_logo {
  padding: 0.663em 0;
  font-size: 22.6px;
  font-size: 2.26rem;
  word-break: break-all;
  line-height: 1;
}
.head_logo img {
  max-height: 0.973em;
  width: auto;
}
.head_logo a:link, .head_logo a:visited {
  text-decoration: none;
}
.head_logo a:hover, .head_logo a:active {
  text-decoration: none;
}

.head_btn_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-item-align: center;
      align-self: center;
}
.head_btn_wrap .base {
  display: none;
}
.head_btn_wrap #cart_icon {
  width: 2.5em;
  margin-top: -0.3em;
}

.menu_btn_search {
  display: none;
}
.menu_btn_search .search-container {
  display: none;
}

.menu_wrap {
  display: none;
  position: fixed;
  top: 5.6em;
  left: 0;
  width: 100%;
  height: calc(100dvh - 5.6em);
  height: calc(100vh - 5.6em);
  padding: 4em 2em 17em 2em;
  color: var(--font-clr);
  background: var(--clr-bg1);
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
  z-index: 100;
}
.menu_wrap .search form {
  display: block;
  position: relative;
}
.menu_wrap .search input[type=text] {
  width: 100%;
  padding: 0.562em 2.5em 0.562em 0.937em;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.1;
  border-radius: 1.093em;
  background: var(--clr-bg2);
  border: none;
  color: var(--font-clr);
}
.menu_wrap .search input:-webkit-autofill {
  -webkit-transition: all 5000s ease-in-out 0s !important;
  transition: all 5000s ease-in-out 0s !important;
}
.menu_wrap .search button {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 16px;
  font-size: 1.6rem;
  display: block;
  height: 2.187em;
  width: 2.5em;
  padding: 0.187em 0.625em 0 0;
  background: none;
  border: 0;
  fill: var(--font-clr);
}
.menu_wrap .search button span {
  display: inline-block;
  height: 0;
  width: 1.25em;
  padding-top: 1.25em;
  overflow: hidden;
}
.menu_wrap .search button:hover {
  cursor: pointer;
}

.menu_ttl {
  margin: 2em 0 0.937em 0;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1;
}

.menu_btn_search .search-box,
.menu_wrap .search button span {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20px 20px"><path fill="%23605850" d="M19.6914 18.3859L14.0552 12.7334C14.3258 12.3908 14.5672 12.0243 14.7783 11.6388C14.785 11.6266 14.7904 11.6138 14.7971 11.6014C14.891 11.4279 14.9799 11.2512 15.0608 11.0699C15.0965 10.9902 15.1254 10.9077 15.1582 10.8269C15.2063 10.7089 15.2566 10.5922 15.299 10.4712C15.329 10.3852 15.3522 10.2968 15.3793 10.2097C15.4173 10.0879 15.4575 9.96731 15.4895 9.84294C15.503 9.79083 15.5116 9.73727 15.524 9.6847C15.6611 9.10505 15.7393 8.5027 15.7402 7.88157C15.7417 6.82462 15.5334 5.81669 15.1572 4.8954C15.1527 4.88473 15.1489 4.87391 15.1445 4.86325C15.1012 4.75864 15.0553 4.65559 15.0077 4.55348C15.0013 4.53977 14.9956 4.52591 14.9891 4.51231C14.9394 4.40696 14.8868 4.30317 14.8325 4.2004C14.8277 4.1911 14.8233 4.18149 14.8183 4.17219C13.4966 1.69337 10.8879 0.00446064 7.88157 7.51167e-06C7.24204 -0.000890926 6.62165 0.0788356 6.02602 0.222273C5.98958 0.230945 5.95239 0.236609 5.9161 0.245789C5.78423 0.279617 5.65602 0.321843 5.52688 0.362273C5.44743 0.386961 5.36681 0.407547 5.28829 0.434851C5.15821 0.480125 5.03227 0.53364 4.90559 0.585476C4.8338 0.614773 4.76063 0.639929 4.68973 0.671492C4.09165 0.936726 3.53259 1.27395 3.02477 1.67399C2.527 2.06048 2.07602 2.50688 1.68497 3.00372C1.41407 3.34739 1.17255 3.71493 0.961258 4.10141C0.959149 4.10524 0.95743 4.10919 0.955477 4.11302C0.856376 4.29505 0.763524 4.48091 0.678758 4.67134C0.647196 4.74208 0.621883 4.81509 0.592469 4.88657C0.540165 5.01387 0.486336 5.14028 0.440633 5.27079C0.413641 5.34821 0.393055 5.42766 0.368524 5.50587C0.327352 5.63637 0.284696 5.76579 0.250204 5.89907C0.238602 5.94419 0.231297 5.9904 0.220477 6.03583C0.0805161 6.62141 0.000945808 7.23063 8.30845e-06 7.85876C-0.00624169 12.2061 3.51446 15.734 7.85876 15.7402C8.51446 15.7411 9.15009 15.6588 9.75899 15.5083C9.77895 15.5032 9.79938 15.5004 9.81923 15.4954C9.96634 15.4577 10.1097 15.4114 10.2533 15.3656C10.3179 15.345 10.3838 15.3284 10.4478 15.3061C10.5789 15.2607 10.7061 15.2067 10.8338 15.1546C10.9059 15.1252 10.9795 15.0997 11.0506 15.0682C11.2009 15.0014 11.3467 14.9262 11.4921 14.8504C11.5366 14.8271 11.5825 14.8074 11.6267 14.7833C12.0097 14.574 12.3741 14.3343 12.7154 14.0662L18.3547 19.7219C18.537 19.9049 18.7793 19.9997 19.0217 20C19.261 20.0003 19.5034 19.9062 19.6894 19.7239C20.0584 19.356 20.0593 18.7579 19.6914 18.3859ZM13.7727 7.87872C13.7709 9.16622 13.3566 10.3555 12.6502 11.3241C12.2809 11.8399 11.8302 12.2893 11.3134 12.6601C10.3427 13.3638 9.14911 13.7746 7.86161 13.7727C4.60649 13.768 1.9629 11.1166 1.96763 7.86165C1.96946 6.57399 2.38368 5.38149 3.09005 4.41294C3.45915 3.90036 3.91313 3.4477 4.42692 3.08012C5.39747 2.37641 6.59122 1.96583 7.87872 1.96766C11.1337 1.97235 13.7774 4.6236 13.7727 7.87872Z" /></svg>');
}

.mypage_icon svg {
  margin: -0.1em -0.4em 0 0;
  width: 2em;
  fill: var(--font-clr);
}

@media only screen and (min-width: 768px) {
  header {
    padding: 0 5em;
  }
  .head_logo {
    padding: 0.928em 0;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  .head_logo img {
    max-height: 0.983em;
  }
  .menu_wrap {
    padding: 4em 5em 8em 5em;
    top: 11em;
  }
}
@media only screen and (min-width: 1024px) {
  header {
    padding: 0 5em;
  }
  header::after {
    opacity: 0;
    -webkit-transition: opacity 1s;
    transition: opacity 1s;
  }
  header.is-scroll::after {
    opacity: 0.2;
    -webkit-transition: opacity 1s;
    transition: opacity 1s;
  }
  header .search_blind {
    display: none;
    content: "";
    position: absolute;
    left: 0;
    right: 3.5em;
    width: 100%;
    height: 100%;
    background-color: #FFF;
    z-index: 1;
    opacity: 0.75;
  }
  .head_wrap {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .head_wrap .menu_main {
    display: block;
    -ms-flex-item-align: center;
        align-self: center;
  }
  .head_logo {
    padding: 0.655em 0;
    -webkit-box-flex: 1;
        -ms-flex-positive: 1;
            flex-grow: 1;
  }
  .menu_btn_search {
    display: block;
    position: relative;
    height: 3.5em;
    width: 4.5em;
  }
  .menu_btn_search .search-container {
    position: absolute;
    width: 3.5em;
    height: 3.5em;
    left: 1.5em;
    display: block;
    z-index: 2;
  }
  .menu_btn_search .search-box {
    position: absolute;
    right: 0;
    font-size: 16px;
    font-size: 1.6rem;
    -webkit-transition: width 0.6s, border-radius 0.6s, background 0.6s, -webkit-box-shadow 0.6s;
    transition: width 0.6s, border-radius 0.6s, background 0.6s, -webkit-box-shadow 0.6s;
    transition: width 0.6s, border-radius 0.6s, background 0.6s, box-shadow 0.6s;
    transition: width 0.6s, border-radius 0.6s, background 0.6s, box-shadow 0.6s, -webkit-box-shadow 0.6s;
    width: 2.187em;
    height: 2.187em;
    border-radius: 1.062em;
    border: none;
    cursor: pointer;
    background-color: inherit;
    background-position: 8px 8px;
    background-size: 18px 18px;
    background-repeat: no-repeat;
    -webkit-box-shadow: 0 0 0 var(--clr-bg2);
            box-shadow: 0 0 0 var(--clr-bg2);
  }
  .menu_btn_search .search-box:hover {
    background-color: var(--font-clr);
    -webkit-box-shadow: 0 0 0.312em var(--clr-bg2);
            box-shadow: 0 0 0.312em var(--clr-bg2);
  }
  .menu_btn_search .search-box:focus {
    -webkit-transition: width 0.6s cubic-bezier(0, 1.22, 0.66, 1.39), border-radius 0.6s, background 0.6s;
    transition: width 0.6s cubic-bezier(0, 1.22, 0.66, 1.39), border-radius 0.6s, background 0.6s;
    border: none;
    outline: none;
    -webkit-box-shadow: none;
            box-shadow: none;
    padding-left: 2.5em;
    padding-right: 0.625em;
    cursor: text;
    width: 15.625em;
    border-radius: auto;
    background-color: var(--clr-bg2);
    color: var(--font-clr);
  }
  .menu_btn_search .search-box:not(:focus) {
    text-indent: -500em;
  }
  .menu_btn_search input:-webkit-autofill {
    -webkit-transition: all 5000s ease-in-out 0s !important;
    transition: all 5000s ease-in-out 0s !important;
  }
  .menu_btn_search #search-submit {
    position: absolute;
    left: -500em;
  }
  .head_wrap {
    position: relative;
  }
  .head_wrap::before {
    display: none;
    -webkit-transition: 1s;
    transition: 1s;
  }
  #baseMenu .cart {
    margin: 0.6em 0.8em 0 0;
  }
  .mypage_icon svg {
    margin: 0.5em 0 0 3em;
    width: 2.2em;
  }
  .menu_wrap {
    position: relative;
    top: auto;
  }
  .menu_wrap .menu_main {
    display: none;
  }
  .menu_wrap {
    padding: 0;
    width: auto;
    height: auto;
    display: block;
    position: relative;
    overflow: auto;
  }
  .menu_wrap .search {
    display: none;
  }
  .menu_ttl {
    display: none;
  }
  .menu_cat {
    display: block;
    text-align: right;
    background: var(--clr-bg2);
    padding: 0.8em 5em;
  }
  .menu_cat li {
    position: relative;
    display: inline-block;
    padding: 0.714em 0 0.714em 2.142em;
    margin-left: 2.142em;
  }
  .menu_cat li:before {
    content: "";
    bottom: 0.928em;
    left: 0;
    width: 1px;
    height: 1.428em;
  }
  .menu_cat li:first-child {
    padding-left: 0;
  }
  .menu_cat li:first-child:before {
    content: normal;
  }
  .menu_cat li a {
    padding: 0;
  }
  .menu_cat li a::after {
    content: normal;
  }
  .menu_main {
    display: block;
    text-align: right;
  }
  .menu_main li {
    position: relative;
    display: inline-block;
  }
  .menu_main li + li {
    margin-left: 2.142em;
  }
  .menu_main li:before {
    content: normal;
  }
  .menu_main li a {
    display: block;
    padding: 0;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
    text-decoration: none;
  }
  .menu_main li a::after {
    content: normal;
  }
  .menu_btn {
    display: none;
  }
}
#baseMenu .cart {
  padding: 0 0 0 2.5em;
  width: 4.5em;
  position: relative;
}
#baseMenu .cart-badge {
  display: block !important;
}
#baseMenu .cart-qty {
  position: absolute;
  top: -4px;
  right: -7px;
  padding: 0;
  height: 14px;
  min-width: 14px;
  color: #FFF;
  background: var(--clr-red);
  border-radius: 50%;
  font-size: 10px !important;
  font-weight: 500;
  line-height: 1.3;
  text-align: center;
}

.menu_btn {
  margin: 0.2em 0 0 2.5em;
  width: 1.8em;
  height: 1.8em;
  fill: var(--font-clr);
}

.info_wrapper a {
  color: #FFF;
}

.informationBanner {
  --information-banner-textColor: #FFF;
  --information-banner-iconColor: #FFF;
}
.informationBanner a {
  color: #FFF;
}

.informationBanner {
  text-decoration: none;
  /*デフォルト値*/
  /*デフォルト値*/
}
.informationBanner:hover {
  opacity: 1;
}
.informationBanner .informationBannerClose {
  padding: 0 13px;
  margin: -8px 8px -8px -16px;
  margin: -8px 8px -8px -10px;
  opacity: 1;
  -webkit-transition: opacity 1.5s;
  transition: opacity 1.5s;
  color: inherit;
}
.informationBanner .informationBannerClose:hover {
  opacity: 0.5;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  cursor: pointer;
}
.informationBanner .informationBannerIcon {
  min-width: 18px;
}
.informationBanner .informationBannerIcon i {
  font-size: 15px;
  line-height: 24px;
}
.informationBanner .informationBannerArrow {
  font-size: 14px;
}
.informationBanner .informationBannerArrow:hover {
  cursor: pointer;
}

#footer {
  background: var(--clr-bg1);
  padding: 5em 2em 8em 2em;
  color: var(--font-clr);
}

.foot_logo {
  margin-bottom: 1.366em;
  font-size: 36.6px;
  font-size: 3.66rem;
  font-weight: 400;
  word-break: break-all;
  line-height: 1.1;
  text-align: center;
}
.foot_logo img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 0.983em;
}
.foot_logo a:link, .foot_logo a:visited {
  text-decoration: none;
}
.foot_logo a:hover, .foot_logo a:active {
  text-decoration: none;
}

.foot_ttl {
  margin-bottom: 1.25em;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.1;
  text-align: center;
}

.foot_sns {
  text-align: center;
}
.foot_sns li {
  display: inline-block;
  font-size: 14px;
  font-size: 1.4rem;
}
.foot_sns li svg {
  fill: var(--font-clr);
  width: 2.5em;
  height: 2.5em;
}
.foot_sns li a {
  text-decoration: none;
}
.foot_sns .sns_icon li + li {
  margin-left: 1.785em;
}
.foot_sns .sns_txt {
  margin-top: 1.6em;
}
.foot_sns .sns_txt li + li:before {
  content: "／";
  margin: 0 0.25em;
}

.foot_mail p {
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
}
.foot_mail form {
  margin-top: 2em;
  display: block;
}
.foot_mail .x_mailMagazineSubscribe_field {
  width: 100%;
  display: grid;
  grid-template-columns: 1fr 5em;
  grid-template-rows: 1fr;
  grid-column-gap: 2px;
  grid-row-gap: 0px;
}
.foot_mail .x_mailMagazineSubscribe_field input[type=email] {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.1;
  height: 2.125em;
  padding: 0.5em;
  border: 0;
  border-radius: 0.125em;
  width: 100%;
  background: #FFF;
  color: #605850;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体";
}
.foot_mail .x_mailMagazineSubscribe_field input[type=email]::-webkit-input-placeholder {
  color: #999;
}
.foot_mail .x_mailMagazineSubscribe_field input[type=email]::-moz-placeholder {
  color: #999;
}
.foot_mail .x_mailMagazineSubscribe_field input[type=email]:-ms-input-placeholder {
  color: #999;
}
.foot_mail .x_mailMagazineSubscribe_field input[type=email]::-ms-input-placeholder {
  color: #999;
}
.foot_mail .x_mailMagazineSubscribe_field input[type=email]::placeholder {
  color: #999;
}
.foot_mail .x_mailMagazineSubscribe_field button {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.3;
  padding: 0.666em 0 0.833em 0;
  height: 2.833em;
  border: 0;
  border-radius: 0.166em;
  vertical-align: 0.166em;
  font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", "YuGothic", "游ゴシック体";
  color: #FFF;
  background: var(--clr-point1);
}
.foot_mail .x_mailMagazineSubscribe_confirm {
  font-size: 12px;
  font-size: 1.2rem;
}

.foot_pay {
  text-align: center;
}
.foot_pay .how li {
  display: inline-block;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2.1428571429;
}
.foot_pay .how li::after {
  content: "・";
}
.foot_pay .how li:last-child::after {
  content: normal;
}
.foot_pay .creditcard {
  margin-top: 2em;
}
.foot_pay .creditcard li {
  display: inline-block;
  font-size: 10px;
  font-size: 1rem;
}
.foot_pay .creditcard li + li {
  margin-left: 0.5em;
}
.foot_pay .creditcard img {
  width: 3em;
}

.foot_wrap .foot_box {
  margin-top: 6.4em;
}
@media only screen and (min-width: 768px) {
  .foot_wrap {
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 6%;
  }
  .foot_wrap .footwrapA .foot_box:first-child,
  .foot_wrap .footwrapB .foot_box:first-child {
    margin-top: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .foot_wrap {
    display: block;
  }
  .foot_wrap::before, .foot_wrap::after {
    content: "";
    display: table;
    clear: both;
    overflow: hidden;
  }
  .foot_wrap .footwrapA {
    float: left;
    width: 29.33%;
    margin-right: 6%;
  }
  .foot_wrap .footwrapB {
    float: left;
    width: 64.66%;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 0 9%;
  }
  .foot_wrap .footwrapB .foot_box {
    margin-top: 0;
  }
}

.foot_nav .foot_nav_link {
  position: relative;
  margin: 6.4em 0;
}
.foot_nav .foot_nav_link::before, .foot_nav .foot_nav_link::after {
  border-color: var(--font-clr);
  opacity: 0.2;
}
.foot_nav .foot_nav_link::before {
  margin-bottom: 2em;
}
.foot_nav .foot_nav_link::after {
  margin-top: 2em;
}
.foot_nav .foot_nav_link li {
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
}
.foot_nav .foot_nav_link li + li {
  margin-top: 1.428em;
}
.foot_nav .foot_nav_link li a {
  text-decoration: none;
}
.foot_nav .copy small {
  font-size: 12px;
  font-size: 1.2rem;
  display: block;
  text-align: center;
}
.foot_nav #baseMenu {
  margin-top: 2em;
}
.foot_nav #baseMenu:first-child {
  margin-top: 0;
}
.foot_nav #baseMenu .cart {
  display: none;
}
.foot_nav #baseMenu .base {
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
}
.foot_nav #baseMenu .base img {
  width: 2em;
}

.foot_lang {
  margin-top: 2em;
  text-align: center;
}
.foot_lang .lang,
.foot_lang .currency {
  display: inline-block;
  position: relative;
}
.foot_lang .lang::after,
.foot_lang .currency::after {
  content: "";
  position: absolute;
  top: 0.8em;
  right: 0.9em;
  display: block;
  height: 0.8em;
  width: 0.8em;
  border-top: solid 1px;
  border-right: solid 1px;
  border-color: var(--font-clr);
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
  border-radius: 0.1em;
}
.foot_lang .currency {
  margin-left: 1em;
}
.foot_lang select {
  position: relative;
  padding: 0.428em 2.285em 0.428em 0.642em;
  height: 2.285em;
  font-size: 14px;
  font-size: 1.4rem;
  font-family: inherit;
  line-height: 1.5;
  background: red;
  background: var(--clr-bg2);
  color: var(--font-clr);
  border: 0;
  border-radius: 0.142em;
}

@media only screen and (min-width: 768px) {
  #footer {
    padding: 5em 5em;
  }
  .foot_logo {
    text-align: left;
  }
  .foot_ttl {
    margin-bottom: 1.875em;
    text-align: left;
  }
  .foot_sns {
    text-align: left;
  }
  .foot_mail p {
    text-align: left;
  }
  .foot_menu ul li:before {
    content: normal;
  }
  .foot_menu ul li a {
    display: inline-block;
    padding: 0;
    line-height: 2.1428571429;
  }
  .foot_menu ul li a::after {
    content: normal;
  }
  .foot_pay {
    text-align: left;
  }
  .foot_pay .how li {
    display: block;
  }
  .foot_pay .how li::before {
    content: "・";
  }
  .foot_pay .how li::after {
    content: "・";
    content: normal;
  }
  .foot_pay .creditcard {
    margin-top: 2em;
  }
  .foot_pay .creditcard li {
    display: inline-block;
    font-size: 10px;
    font-size: 1rem;
  }
  .foot_pay .creditcard li + li {
    margin-left: 0.5em;
  }
  .foot_pay .creditcard img {
    width: 3em;
  }
  .foot_nav {
    position: relative;
    padding: 10em 26em 5em 0;
  }
  .foot_nav::before {
    content: "";
    position: absolute;
    top: 5em;
    display: block;
    width: 100%;
    height: 0;
    border-top: solid 1px;
    border-color: var(--font-clr);
    opacity: 0.2;
  }
  .foot_nav .foot_nav_link {
    margin: 0;
  }
  .foot_nav .foot_nav_link::before, .foot_nav .foot_nav_link::after {
    content: normal;
  }
  .foot_nav .foot_nav_link li {
    display: inline-block;
    margin-right: 1.428em;
  }
  .foot_nav .foot_nav_link li + li {
    margin-top: 0;
    margin-bottom: 1.428em;
  }
  .foot_nav .copy small {
    margin-top: 0.833em;
    text-align: left;
  }
  .foot_nav #baseMenu {
    position: absolute;
    top: 10em;
    right: 0;
    margin: 0;
  }
  .foot_nav #baseMenu .base img {
    width: 3em;
  }
  .foot_lang {
    position: absolute;
    top: 10em;
    right: 5em;
    margin: 0;
    text-align: right;
  }
}
@media only screen and (min-width: 1024px) {
  #footer {
    padding: 8em 5em;
  }
  .foot_logo {
    max-width: 32.786em;
    margin: 0 auto 2.185em auto;
  }
  .foot_nav {
    padding: 14em 26em 0 0;
    max-width: 120em;
    margin: 0 auto;
  }
  .foot_nav::before {
    top: 8em;
  }
  .foot_lang {
    top: 14em;
  }
  .foot_nav #baseMenu {
    top: 14em;
  }
}
.item {
  position: relative;
}
.item a {
  display: block;
  text-decoration: none;
}
.item a:link picture img, .item a:visited picture img {
  -webkit-transition: -webkit-transform 1.5s ease;
  transition: -webkit-transform 1.5s ease;
  transition: transform 1.5s ease;
  transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}
.item a:hover picture img, .item a:active picture img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: -webkit-transform 2s ease;
  transition: -webkit-transform 2s ease;
  transition: transform 2s ease;
  transition: transform 2s ease, -webkit-transform 2s ease;
}
.item .label_image {
  position: absolute;
  left: -0.3em;
  top: -0.3em;
  width: 6em;
  height: auto;
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
  z-index: 2;
}
.img-sq .item .item_img {
  aspect-ratio: 1/1;
}
.img-la-gold .item .item_img {
  aspect-ratio: 1.618/1;
}
.img-la-screen .item .item_img {
  aspect-ratio: 4/3;
}
.img-pt-gold .item .item_img {
  aspect-ratio: 1/1.618;
}
.img-pt-screen .item .item_img {
  aspect-ratio: 3/4;
}
.item .item_img {
  display: block;
  width: 100%;
  height: auto;
  overflow: hidden;
  position: relative;
}
.item .item_img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: bottom;
}
.item .item_img .soldout_cover {
  position: absolute;
  bottom: 0;
  width: 100%;
  display: block;
  padding: 0.555em;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: center;
  line-height: 1;
  color: #FFF;
  width: 100%;
  background: rgba(96, 88, 80, 0.8);
  z-index: 1;
}
.item .item_img_no {
  position: relative;
  display: block;
  background: var(--clr-bg2);
  width: 100%;
  height: 100%;
}
.item .item_img_no span {
  position: absolute;
  top: 50%;
  left: 50%;
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--font-clr);
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.item .item_data {
  padding: 1.5em 0;
}
.item .item_name {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
  overflow-wrap: break-word;
  word-break: break-all;
}
.item .item_price,
.item .discount {
  margin-top: 0.714em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
  overflow-wrap: break-word;
  word-break: break-all;
}
.item .item_price {
  opacity: 0.5;
}
.item .discount .discountPrice__calcPrice {
  color: var(--clr-red);
  margin-right: 0.25em;
}
.item .discount .discountPrice__default {
  text-decoration: line-through;
  opacity: 0.5;
}
.item .item_status {
  margin-top: 1.6em;
}
@media only screen and (min-width: 768px) {
  .item .label_image {
    left: -1.5em;
    top: -1.5em;
  }
  .item .item_data {
    padding: 2.5em 0;
  }
  .item .item_name {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .item .item_price,
  .item .discount {
    margin-top: 1.111em;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .item .item_status {
    margin-top: 2em;
  }
  .item .item_img_no span {
    font-size: 22.6px;
    font-size: 2.26rem;
  }
}
@media only screen and (min-width: 1024px) {
  .item .label_image {
    left: -2em;
    top: -2em;
    width: 8em;
  }
}

.item_status {
  margin-top: 1.6em;
}
.item_status .soldout_cover {
  background: #A19191;
}
.item_status .coming_soon {
  background: #DDD978;
}
.item_status .discountPrice {
  background: #C36F6F;
}
.item_status .lottery {
  background: #699659;
}
.item_status .community {
  background: #E7AF5B;
}
.item_status .preOrder {
  background: #79BFC3;
}
.item_status .takeout {
  background: #AB99BD;
}

.item_more {
  margin-top: 2.142em;
  text-align: center;
  font-size: 14px;
  font-size: 1.4rem;
}
.item_more a {
  width: 14.285em !important;
  margin: 0 auto;
}
@media only screen and (min-width: 768px) {
  .item_more {
    max-width: 85.714em;
    margin: 3.571em auto 0 auto;
  }
  .item_more a {
    width: 100% !important;
  }
}

.loader_wrap {
  padding: 0;
  position: relative;
  background: var(--clr-point1);
  height: 3.5em;
  width: 20em;
  margin: 3em auto 0 auto;
}
@media only screen and (min-width: 768px) {
  .loader_wrap {
    width: 100%;
    max-width: 120em;
    margin: 5em auto 0 auto;
  }
}
@media only screen and (min-width: 1024px) {
  .loader_wrap {
    height: 4.5em;
  }
}

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
  width: 1.2em;
  height: 1.2em;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: load7 1.8s infinite ease-in-out;
  animation: load7 1.8s infinite ease-in-out;
}

.loader {
  color: #FFF;
  font-size: 10px;
  font-size: 1rem;
  margin: 0 auto;
  position: relative;
  text-indent: -9999em;
  -webkit-transform: translate(0, -0.45em);
  transform: translate(0, -0.45em);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
.loader:hover {
  cursor: pointer;
}
@media only screen and (min-width: 1024px) {
  .loader {
    -webkit-transform: translate(0, 0.3em);
    transform: translate(0, 0em);
  }
}

.loader:before,
.loader:after {
  content: "";
  position: absolute;
  top: 0;
}

.loader:before {
  left: -2em;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}

.loader:after {
  left: 2em;
}

@-webkit-keyframes load7 {
  0%, 80%, 100% {
    -webkit-box-shadow: 0 1.6em 0 -1.3em;
            box-shadow: 0 1.6em 0 -1.3em;
  }
  40% {
    -webkit-box-shadow: 0 1.6em 0 0;
            box-shadow: 0 1.6em 0 0;
  }
}
@keyframes load7 {
  0%, 80%, 100% {
    -webkit-box-shadow: 0 1.6em 0 -1.3em;
            box-shadow: 0 1.6em 0 -1.3em;
  }
  40% {
    -webkit-box-shadow: 0 1.6em 0 0;
            box-shadow: 0 1.6em 0 0;
  }
}
.postageOpen {
  font-size: 12px;
  font-size: 1.2rem;
  display: inline;
  font-weight: normal;
  text-decoration: none !important;
  padding: 0.166em 0.666em 0.25em;
  border: 1px solid #000;
  font-weight: normal;
  border-radius: 2px;
  color: var(--clr-point1);
  border-color: var(--clr-point1);
}
.postageOpen svg {
  font-size: 10px;
  font-size: 1rem;
  width: 1.6em;
  margin-right: 0.5em;
  fill: var(--clr-point1);
}

.bnr-float {
  font-size: 10px;
  font-size: 1rem;
  position: fixed;
  right: 50%;
  bottom: 8em;
  -webkit-transform: translateX(50%);
          transform: translateX(50%);
  z-index: 99;
  display: none;
}
.bnr-float img {
  width: auto;
  height: auto;
  max-width: 20em;
  max-height: 20em;
}
.bnr-float .bnr-float-close {
  display: block;
  position: absolute;
  right: -1.5em;
  top: -1.5em;
  width: 3.5em;
  height: 3.5em;
  background: url('data:image/svg+xml;charset=utf8,%3Csvg id="a" xmlns="http%3A//www.w3.org/2000/svg" viewBox="0 0 35 35"%3E%3Ccircle cx="17.5" cy="17.5" r="12.5" style="fill%3A%23444; stroke-width%3A0px;"/%3E%3Cpath d="m18.914,17.5l4.293-4.293c.391-.391.391-1.023,0-1.414s-1.023-.391-1.414,0l-4.293,4.293-4.293-4.293c-.391-.391-1.023-.391-1.414,0s-.391,1.023,0,1.414l4.293,4.293-4.293,4.293c-.391.391-.391,1.023,0,1.414.195.195.451.293.707.293s.512-.098.707-.293l4.293-4.293,4.293,4.293c.195.195.451.293.707.293s.512-.098.707-.293c.391-.391.391-1.023,0-1.414l-4.293-4.293Z" style="fill%3A%23fff; stroke-width%3A0px;"/%3E%3C/svg%3E') center center no-repeat;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  opacity: 1;
}
.bnr-float .bnr-float-close:hover {
  cursor: pointer;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
  opacity: 0.75;
}
@media only screen and (min-width: 768px) {
  .bnr-float {
    bottom: 10em;
    right: 3em;
    -webkit-transform: translateX(0);
            transform: translateX(0);
  }
  .bnr-float img {
    max-width: 30em;
    max-height: 30em;
  }
}

@media only screen and (min-width: 768px) {
  .top_insta h2 {
    margin-bottom: 1.092em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
}

.top_slider {
  position: relative;
}
.top_slider .items {
  width: 100%;
  height: 100%;
}
.top_slider .items a:hover {
  opacity: 1;
}
.top_slider .items img {
  width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.top_slider .slick-dots {
  display: block;
  position: absolute;
  bottom: 0;
  width: 100%;
  text-align: center;
}
.top_slider .slick-dots li {
  display: inline-block;
}
.top_slider .slick-dots li button {
  position: relative;
  font-size: 10px;
  font-size: 1rem;
  height: 0;
  width: 2.5em;
  padding-top: 2em;
  background: none;
  border: 0;
  overflow: hidden;
}
.top_slider .slick-dots li button:after {
  content: "";
  position: absolute;
  left: 0.6em;
  top: 0.7em;
  display: block;
  width: 1.2em;
  height: 1.2em;
  background: #FFF;
  border-radius: 50%;
}
.top_slider .slick-dots li.slick-active button:after {
  background: var(--clr-point1);
}
@media only screen and (min-width: 768px) {
  .top_slider .slick-dots li button {
    padding-top: 2.5em;
  }
}

@media only screen and (min-width: 1024px) {
  .top_info {
    padding-top: 8em;
  }
}

.top_info_wrap .shopinfo {
  margin-top: 2.5em;
  padding: 1.5em 2em;
  background: var(--clr-bg2);
  border-radius: 0.3em;
}
.top_info_wrap .shopinfo:first-child {
  margin-top: 0;
}
.top_info_wrap .shopinfo p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
.top_info_wrap .shopinfo a {
  display: block;
  position: relative;
}
.top_info_wrap .shopinfo a::after {
  content: "";
  display: block;
  position: absolute;
  right: 0.071em;
  top: calc(50% - 0.35em);
  height: 0.571em;
  width: 0.571em;
  border-color: var(--font-clr);
  border-top: solid 1px;
  border-right: solid 1px;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.top_info_wrap dl {
  margin-top: 2.5em;
}
.top_info_wrap dl:first-child {
  margin-top: 0;
}
.top_info_wrap dt {
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
}
.top_info_wrap dd + dt {
  margin-top: 2.083em;
}
.top_info_wrap dd {
  margin-top: 0.571em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.4;
}
@media only screen and (min-width: 768px) {
  .top_info_wrap h2 {
    text-align: left;
  }
  .top_info_wrap dl {
    display: grid;
    grid-template-columns: fit-content(30%) 1fr;
    grid-column-gap: 30px;
    grid-row-gap: 25px;
  }
  .top_info_wrap dt {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.4;
  }
  .top_info_wrap dd + dt {
    margin: 0;
  }
  .top_info_wrap dd {
    margin: 0;
  }
}
@media only screen and (min-width: 1024px) {
  .top_info_wrap {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .top_info_wrap h2 {
    padding-right: 3.539em;
  }
  .top_info_wrap .top_info_inner {
    width: 100%;
  }
}

.top_info_banner {
  display: block;
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
}
.top_info_wrap:has(dl) + .top_info_banner, .top_info_wrap:has(.notshop) + .top_info_banner, .top_info_wrap:has(.shopinfo) + .top_info_banner {
  margin-top: 2.5em;
}
.top_info_banner img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}
@media only screen and (min-width: 768px) {
  .top_info_wrap:has(dl) + .top_info_banner, .top_info_wrap:has(.notshop) + .top_info_banner, .top_info_wrap:has(.shopinfo) + .top_info_banner {
    margin-top: 2em;
  }
  .top_info_banner img {
    max-width: 56em;
  }
}
@media only screen and (min-width: 1024px) {
  .top_info_wrap:has(dl) + .top_info_banner, .top_info_wrap:has(.notshop) + .top_info_banner, .top_info_wrap:has(.shopinfo) + .top_info_banner {
    margin-top: 8em;
  }
  .top_info_banner img {
    max-width: 88em;
  }
}

.top_concept {
  position: relative;
  background-color: var(--clr-bg2);
  background-size: cover;
  background-position: center;
  overflow: hidden;
}
.top_concept .wrap {
  z-index: 1;
  color: #FFF;
  position: relative;
}
.top_concept.is-bg .wrap::before {
  content: "";
  position: absolute;
  top: -25em;
  left: 0;
  display: block;
  height: calc(100% + 50em);
  width: 100%;
  background: rgba(64, 49, 49, 0.5);
  z-index: -1;
}
.top_concept .inner {
  padding: 5em 4.5em;
}
.top_concept .inner .txt {
  margin-bottom: 1.875em;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
  white-space: pre-line;
}
.top_concept .inner .btn {
  text-align: center;
}
.top_concept .inner .type-a-line a {
  color: #FFF;
}
.top_concept .inner .type-a-line a span:before {
  background: #FFF;
}
.top_concept .inner .type-a-line a span:after {
  background: #FFF;
}
.top_concept .inner .type-a-line a span:hover {
  background: transparent;
}
.top_concept .inner .type-a-line a:before, .top_concept .inner .type-a-line a:after {
  background: #FFF;
}
.top_concept .inner .type-a-line a:hover {
  color: var(--clr-point1);
  background: #FFF;
}
.top_concept .inner .type-b-line a {
  color: #FFF;
  border: 1px solid #FFF;
}
.top_concept .inner .type-b-line a:after {
  -webkit-transition: all 0.3s ease;
  transition: all 0.3s ease;
  -webkit-transform: scale(0.1);
  transform: scale(0.1);
}
.top_concept .inner .type-b-line a:hover {
  color: var(--clr-point1);
}
.top_concept .inner .type-b-line a:hover:after {
  background: #FFF;
  -webkit-transform: scale(1);
  transform: scale(1);
}
@media only screen and (min-width: 768px) {
  .top_concept .inner {
    padding: 5em 10em;
  }
  .top_concept .inner h2 {
    margin-bottom: 1.092em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  .top_concept .inner .btn a {
    width: 14.285em;
  }
}
@media only screen and (min-width: 1024px) {
  .top_concept .inner {
    padding: 10em 15em;
    max-width: 130em;
    margin: 0 auto;
  }
  .top_concept .inner .txt {
    margin-bottom: 3.333em;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .top_concept .inner .btn a {
    width: 20em;
  }
}

@media only screen and (min-width: 1024px) {
  .top_pickup_wrap {
    padding: 15em 5em;
  }
}

.top_pickup picture {
  font-size: 10px;
  font-size: 1rem;
  line-height: 1;
}
.top_pickup picture img {
  width: 100%;
  height: auto;
}
.top_pickup h2 {
  margin-top: 1.327em;
  font-size: 22.6px;
  font-size: 2.26rem;
  font-weight: 400;
  line-height: 2;
}
.top_pickup .price,
.top_pickup .txt {
  margin-top: 2.142em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.top_pickup .btn {
  margin-top: 2.142em;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
}
.top_pickup + .top_pickup {
  margin-top: 5em;
}
@media only screen and (min-width: 768px) {
  .top_pickup {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .top_pickup picture {
    display: block;
    width: calc(50% - 1.5em);
  }
  .top_pickup .pickup_data {
    width: calc(50% - 1.5em);
  }
  .top_pickup .pickup_data .price {
    margin-top: 1.327em;
    font-size: 22.6px;
    font-size: 2.26rem;
    font-weight: 400;
    line-height: 2;
  }
  .top_pickup .pickup_data h2 {
    margin-top: -0.5em;
  }
  .top_pickup .btn {
    text-align: left;
  }
  .top_pickup .btn a {
    width: 14.285em;
  }
}
@media only screen and (min-width: 1024px) {
  .top_pickup picture {
    display: block;
    width: 60%;
  }
  .top_pickup .pickup_data {
    width: 33.33%;
  }
  .top_pickup .pickup_data h2 {
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  .top_pickup .pickup_data .price {
    margin-top: 2.212em;
  }
  .top_pickup .pickup_data .txt {
    margin-top: 3.571em;
  }
  .top_pickup .pickup_data .btn {
    margin-top: 3.571em;
  }
  .top_pickup .pickup_data .btn a {
    width: 20em;
  }
  .top_pickup + .top_pickup {
    margin-top: 15em;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
        -ms-flex-direction: row-reverse;
            flex-direction: row-reverse;
  }
}

@media only screen and (min-width: 1024px) {
  .top_items h2 {
    margin-bottom: 1.092em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
}

.top_items_cate {
  max-width: 120em;
  margin: 3em auto;
  padding: 0 2em 2em 2em;
  background: var(--clr-bg2);
  text-align: center;
}
.top_items_cate li {
  position: relative;
  display: inline-block;
  margin: 1.25em 0 0 0;
  padding: 0 1.25em;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.4;
}
.top_items_cate li::before {
  content: "";
  position: absolute;
  left: 0;
  background: var(--font-clr);
  width: 1px;
  height: 100%;
  opacity: 0.2;
}
.top_items_cate li:first-child::before {
  content: normal;
}
.top_items_cate a {
  text-decoration: none;
}
@media only screen and (min-width: 768px) {
  .top_items_cate {
    margin: 5em auto;
  }
}
@media only screen and (min-width: 1024px) {
  .top_items_cate {
    margin: 6em auto;
  }
}

@media only screen and (min-width: 1024px) {
  .bread_wrap + .top_items {
    padding: 8em 5em 10em 5em;
  }
  .bread_wrap + .top_items h2 {
    margin-bottom: 2.185em;
  }
}

.cate_items_tags {
  text-align: center;
  margin-bottom: 2em;
}
.cate_items_tags li {
  display: inline;
}
.cate_items_tags li a {
  display: inline-block;
  padding: 0.214em 1.071em;
  margin: 0 0.285em 0.714em 0.285em;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: 400;
  text-decoration: none;
  line-height: 1.6;
  letter-spacing: 0.05em;
  color: #FFF;
  background: var(--clr-point1);
}
@media only screen and (min-width: 768px) {
  .cate_items_tags {
    margin-bottom: 6em;
  }
  .cate_items_tags li a {
    padding: 0.166em 0.833em;
    margin: 0 0.444em 0.555em 0.444em;
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1024px) {
  .cate_items_tags {
    margin-bottom: 8em;
  }
}

.item_wrap {
  padding: 0 2em 5em 2em;
  margin: 0 auto;
  color: var(--font-clr);
}
@media only screen and (min-width: 768px) {
  .item_wrap {
    max-width: 130em;
    padding: 0 5em 6em 5em;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .item_wrap .item_img_wrap {
    width: 50%;
  }
  .item_wrap .item_detail {
    width: calc(50% - 3em);
  }
}
@media only screen and (min-width: 1024px) {
  .item_wrap {
    padding: 0 5em 8em 5em;
  }
  .item_wrap .item_img_wrap {
    width: 50%;
  }
  .item_wrap .item_detail {
    width: calc(50% - 8em);
  }
}

.item_img_wrap {
  position: relative;
}
.item_img_wrap .label_image {
  position: absolute;
  left: -0.3em;
  top: -0.3em;
  width: 6em;
  height: auto;
  font-size: 10px;
  font-size: 1rem;
  z-index: 1;
}
.item_img_wrap .slick-track img {
  width: 100%;
  height: auto;
}
.item_img_wrap .slick-prev,
.item_img_wrap .slick-next {
  position: absolute;
  top: 0;
  top: calc(50% - 3em);
  font-size: 10px;
  font-size: 1rem;
  z-index: 1;
  width: 4em;
  height: 0;
  padding-top: 6em;
  overflow: hidden;
  border: 0;
  background: none;
}
.item_img_wrap .slick-prev::before,
.item_img_wrap .slick-next::before {
  position: absolute;
  top: 2.4em;
  content: "";
  display: block;
  width: 1.2em;
  height: 1.2em;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  border-radius: 1px;
}
.item_img_wrap .slick-prev:hover,
.item_img_wrap .slick-next:hover {
  cursor: pointer;
}
.item_img_wrap .slick-prev {
  left: 0;
}
.item_img_wrap .slick-prev::before {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  left: 1.2em;
}
.item_img_wrap .slick-next {
  right: 0;
}
.item_img_wrap .slick-next::before {
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  right: 1.2em;
}
.item_img_wrap .thumbs_dots {
  margin: 1em 0 0;
}
.item_img_wrap .thumbs_list {
  display: grid;
  grid-template-columns: repeat(6, 1fr);
  grid-column-gap: 0.9em;
  grid-row-gap: 1em;
}
.item_img_wrap .thumbs_list li {
  padding-top: 100%;
  opacity: 0.75;
  cursor: pointer;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  background-position: 50% 50% !important;
}
.item_img_wrap .thumbs_list li.slick-active {
  opacity: 1;
}
.item_img_wrap .item_slider_no {
  position: relative;
  background: var(--clr-bg2);
  height: 0;
  padding-top: 100%;
}
.item_img_wrap .item_slider_no span {
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 26.6px;
  font-size: 2.66rem;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
@media only screen and (min-width: 768px) {
  .item_img_wrap .label_image {
    left: -2em;
    top: -1em;
    width: 8em;
  }
  .item_img_wrap .slick-prev::before,
  .item_img_wrap .slick-next::before {
    top: 2em;
    width: 2em;
    height: 2em;
  }
  .item_img_wrap .slick-prev::before {
    left: 1.7em;
  }
  .item_img_wrap .slick-next::before {
    right: 1.7em;
  }
}
@media only screen and (min-width: 1024px) {
  .item_img_wrap .thumbs_list {
    grid-template-columns: repeat(8, 1fr);
  }
}

.item_ttl {
  margin-top: 2.212em;
  font-size: 22.6px;
  font-size: 2.26rem;
  font-weight: 400;
  line-height: 2;
}
.item_ttl .filename {
  display: block;
  font-size: 14px;
  font-size: 1.4rem;
}

.itemPrice {
  margin-top: 1.327em;
  font-size: 22.6px;
  font-size: 2.26rem;
  line-height: 1.2;
}

.item_discountPrice,
.item_subscPrice {
  margin-top: 3em;
  font-size: 10px;
  font-size: 1rem;
}
.item_discountPrice .discountPrice__ratio,
.item_subscPrice .discountPrice__ratio {
  display: inline-block;
  padding: 0.142em 0.571em;
  margin-right: 0.714em;
  font-size: 14px;
  font-size: 1.4rem;
  color: #FFF;
  background: var(--clr-red);
  border-radius: 0.142em;
  vertical-align: 0.2em;
}
.item_discountPrice .discountPrice__calcPrice,
.item_subscPrice .discountPrice__calcPrice {
  display: inline-block;
  color: var(--clr-red);
  font-size: 22.6px;
  font-size: 2.26rem;
}
.item_discountPrice .discountPrice__default,
.item_subscPrice .discountPrice__default {
  margin-top: 0.714em;
  font-size: 14px;
  font-size: 1.4rem;
}

.item_subscPrice .discountPrice__calcPrice {
  color: var(--font-clr);
}
.item_subscPrice .dubscPrice__tag {
  font-size: 14px;
  font-size: 1.4rem;
  margin-bottom: 0.714em;
  margin-top: 1.428em;
}
.item_subscPrice .dubscPrice__tag:first-child {
  margin-top: 0;
}
.item_subscPrice:has(.discountPrice__default) .dubscPrice__tag {
  margin-top: 2.142em;
}
.item_subscPrice:has(.discountPrice__default) .dubscPrice__tag:first-child {
  margin-top: 0;
}
.item_subscPrice:has(.discountPrice__default) .discountPrice__calcPrice {
  color: var(--clr-red);
}

.bnplBanner {
  margin-top: 15px;
}

.x_purchaseForm {
  margin-top: 3em;
}
.x_purchaseForm label {
  display: block;
  margin: 1.071em 0 0.357em 0;
  font-size: 14px;
  font-size: 1.4rem;
}
.x_purchaseForm .itemOption__caption {
  display: block;
  margin: 0.416em 0;
  font-size: 12px;
  font-size: 1.2rem;
}
.x_purchaseForm .itemOption__bottomCaptionBlock {
  margin-top: 0.5em;
  font-family: "Noto Sans JP", "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
}
.x_purchaseForm .itemOption__caption--error {
  padding: 0 1em;
  font-size: 10px;
  font-size: 1rem;
  line-height: 2;
  color: #FFF;
  background: var(--clr-red);
  border-radius: 0.2em;
}
.x_purchaseForm .itemOption__count {
  display: inline-block;
  font-size: 12px;
  font-size: 1.2rem;
}
.x_purchaseForm select,
.x_purchaseForm input[type=text] {
  font-size: 16px;
  font-size: 1.6rem;
  min-width: 3.75em;
  padding: 0.375em 3.125em 0.375em 0.625em;
  font-family: inherit;
  border: solid 1px;
  border-color: var(--font-clr);
  border-radius: 0.125em;
  background-color: var(--clr-bg2);
  color: var(--font-clr) !important;
}
.x_purchaseForm input[type=text] {
  width: 100%;
}
.x_purchaseForm select {
  position: relative;
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background-repeat: no-repeat;
  background-size: 1.875em 1.875em;
  background-position: 100% 0.187em;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30px 30px"><polygon fill="%23★" points="15 18.5 10.5 11.5 19.5 11.5 15 18.5" /></svg>');
}
.x_purchaseForm select::-ms-expand {
  display: none;
}
.x_purchaseForm .cot-shipping-methodInfoToggle {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0;
}

.item_detail .lottery__label, .item_detail .communityLabel__title, .item_detail .takeout__label, .item_detail .preOrder__label, .item_detail .comingSoon, .item_detail .soldout_cover {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.6;
  display: inline-block;
  padding: 0.357em 0.714em;
  letter-spacing: 0.05em;
  border-radius: 0.142em;
  margin: 2.142em 0 0.357em 0;
  color: #FFF;
  background: #C1C1C1;
}

.item_detail .attention,
.item_detail .takeout__data,
.item_detail .communityLabel__note,
.item_detail .lottery__data,
.item_detail .preOrder {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.item_detail .soldout_cover {
  background: #A19191;
}
.item_detail .comingSoon {
  background: #DDD978;
}
.item_detail .preOrder__label {
  background: #79BFC3;
}
.item_detail .takeout__label {
  background: #AB99BD;
}
.item_detail .communityLabel__title {
  background: #E7AF5B;
}
.item_detail .communityLabel {
  background: none !important;
  padding: 0 !important;
  margin: 0 !important;
  font-weight: 400 !important;
  color: inherit;
}
.item_detail .communityLabel .communityLabel__note {
  margin-top: 0 !important;
  color: inherit;
}
.item_detail .communityModal {
  color: #605850;
}
.item_detail .lottery__label {
  background: #699659;
}
.item_detail .ageVerificationWarning {
  margin-top: 1.327em;
  font-size: 22.6px;
  font-size: 2.26rem;
  color: var(--clr-point1) !important;
  line-height: 1.6;
}
.item_detail .ageVerificationWarning .si-attentionTriangle {
  font-size: 20px;
  font-size: 2rem;
}
.item_detail .membershipPoint__amountWrapper {
  font-size: 14px;
  font-size: 1.4rem;
  display: inline-block;
  padding: 0.142em 0.714em;
  margin: 2.142em 0 0.714em 0;
  font-weight: normal;
  border-radius: 0.142em;
  border: 1px solid;
}
.item_detail .membershipPoint {
  font-size: 14px;
  font-size: 1.4rem;
}
.item_detail .membershipPoint .membershipPoint__amount {
  font-size: 22.6px;
  font-size: 2.26rem;
  font-weight: normal;
}
.item_detail .membershipPoint .membershipPoint__pointName {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
}

.takeoutModal__text {
  font-size: 14px;
  font-size: 1.4rem;
}

.communityBox {
  margin-top: 3em;
}

.communitySignin {
  padding: 2em;
  text-align: center;
  background: var(--clr-bg2);
  border: 0 !important;
}
.communitySignin p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.purchaseButton,
.easyOverseasSales {
  margin-top: 3em;
}
.purchaseButton button,
.purchaseButton a.purchaseButton__btn,
.easyOverseasSales button,
.easyOverseasSales a.purchaseButton__btn {
  display: block;
  width: 100%;
  padding: 1.312em 0.625em 1.437em 0.625em;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  font-family: "Noto Sans JP", "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
  font-weight: 400;
  text-align: center;
  text-decoration: none;
  border: 0;
  background: var(--clr-point1);
  color: #FFF;
  border-radius: 0.187em;
  opacity: 1;
  -webkit-transition: opacity 1.5s;
  transition: opacity 1.5s;
}
.purchaseButton button:hover,
.purchaseButton a.purchaseButton__btn:hover,
.easyOverseasSales button:hover,
.easyOverseasSales a.purchaseButton__btn:hover {
  cursor: pointer;
  opacity: 0.5;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
.purchaseButton button.purchaseButton__btn--notApplying, .purchaseButton button.purchaseButton__btn--disabled,
.purchaseButton a.purchaseButton__btn.purchaseButton__btn--notApplying,
.purchaseButton a.purchaseButton__btn.purchaseButton__btn--disabled,
.easyOverseasSales button.purchaseButton__btn--notApplying,
.easyOverseasSales button.purchaseButton__btn--disabled,
.easyOverseasSales a.purchaseButton__btn.purchaseButton__btn--notApplying,
.easyOverseasSales a.purchaseButton__btn.purchaseButton__btn--disabled {
  background: #808080 !important;
}
.purchaseButton button.purchaseButton__btn--notApplying:hover, .purchaseButton button.purchaseButton__btn--disabled:hover,
.purchaseButton a.purchaseButton__btn.purchaseButton__btn--notApplying:hover,
.purchaseButton a.purchaseButton__btn.purchaseButton__btn--disabled:hover,
.easyOverseasSales button.purchaseButton__btn--notApplying:hover,
.easyOverseasSales button.purchaseButton__btn--disabled:hover,
.easyOverseasSales a.purchaseButton__btn.purchaseButton__btn--notApplying:hover,
.easyOverseasSales a.purchaseButton__btn.purchaseButton__btn--disabled:hover {
  cursor: not-allowed;
  opacity: 1;
}

.easyOverseasSales .easyOverseasSales__label {
  display: block;
  width: 100%;
  color: var(--font-clr);
  font-size: 14px;
  font-size: 1.4rem;
  text-align: left !important;
}
.easyOverseasSales .purchaseButton__btn:disabled {
  background: #808080 !important;
}
.easyOverseasSales .purchaseButton__btn:disabled:hover {
  cursor: not-allowed;
  opacity: 1;
}
.easyOverseasSales .easyOverseasSalesArea {
  font-size: 10px;
  font-size: 1rem;
  text-align: center;
}
.easyOverseasSales .easyOverseasSalesArea a {
  font-size: 12px;
  font-size: 1.2rem;
  color: var(--font-clr);
  font-weight: normal;
  text-decoration: underline;
}
.easyOverseasSales .easyOverseasSalesArea a:hover {
  cursor: pointer;
}

.shareButtons {
  margin-top: 3em;
}
.shareButtons dt, .shareButtons dd {
  display: inline-block;
}
.shareButtons dt {
  padding-right: 3em;
  font-size: 10px;
  font-size: 1rem;
  position: relative;
}
.shareButtons dt::before, .shareButtons dt::after {
  content: "";
  position: absolute;
  top: 0.5em;
  display: block;
  width: 0.6em;
  height: 0.6em;
  border-top: solid 1px;
  border-right: solid 1px;
  border-color: var(--font-clr);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
.shareButtons dt::before {
  right: 1.3em;
}
.shareButtons dt::after {
  right: 1em;
}
.shareButtons dd + dd {
  margin-left: 0.7em;
  font-size: 10px;
  font-size: 1rem;
}
.shareButtons dd a {
  padding: 0.5em 1em 0.6em 3em;
  display: inline-block;
  font-family: "Noto Sans JP", "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
  font-weight: 400;
  line-height: 1;
  text-decoration: none;
  color: #FFF;
  border-radius: 0.2em;
  background-position: 0.5em 0em;
}
.shareButtons .facebook a {
  background-color: #1A77F2;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20px 20px"><path fill="%23ffffff"  d="M16,10.04c0-3.33-2.69-6.04-6-6.04s-6,2.7-6,6.04c0,3.01,2.19,5.51,5.06,5.96v-4.22h-1.52v-1.74h1.52v-1.33c0-1.51,.9-2.35,2.27-2.35,.66,0,1.34,.12,1.34,.12v1.49h-.76c-.75,0-.98,.47-.98,.94v1.13h1.66l-.27,1.74h-1.4v4.22c2.87-.45,5.06-2.95,5.06-5.96Z" /></svg>');
}
.shareButtons .twitter a {
  background-color: #000;
  background-image: url('data:image/svg+xml;utf8,<svg width="20" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20px 20.45px"><path fill="%23ffffff" d="m10.99,9.13l4.34-5.05h-1.03l-3.77,4.39-3.01-4.39h-3.48l4.56,6.63-4.56,5.3h1.03l3.98-4.63,3.18,4.63h3.48l-4.73-6.88h0Zm-1.41,1.64l-.46-.66-3.67-5.25h1.58l2.96,4.24.46.66,3.85,5.51h-1.58l-3.14-4.5h0Z" /></svg>');
  background-repeat: no-repeat;
}
@media only screen and (min-width: 1024px) {
  .shareButtons {
    width: 70%;
    text-align: right;
    margin: 3em 0 0 auto;
  }
}

#reportBtn {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 1.071em;
  line-height: 1;
}
@media only screen and (min-width: 1024px) {
  #reportBtn {
    width: 30%;
    margin: -1.429em auto 0 0;
  }
}

.item_section {
  padding: 5em 2em;
}

.itemDescription {
  color: var(--font-clr);
}
.itemDescription p {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
}

#appsItemDetailCustom {
  color: var(--font-clr);
}

.appsItemDetailCustomTag_heading {
  margin-top: 1.666em auto;
  font-size: 18px;
  font-size: 1.8rem;
}
.appsItemDetailCustomTag_heading:first-child {
  margin-top: 0;
}
.appsItemDetailCustomTag_heading:last-child {
  margin-bottom: 0;
}

.appsItemDetailCustomTag_description {
  margin: 1.875em auto;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
}
.appsItemDetailCustomTag_description:first-child {
  margin-top: 0;
}
.appsItemDetailCustomTag_description:last-child {
  margin-bottom: 0;
}

#appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_vimeo,
#appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_youtube {
  max-width: 70em;
  height: auto;
  padding: 0;
  margin: 0 auto;
  position: relative;
}
#appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_vimeo::before,
#appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_youtube::before {
  content: "";
  display: block;
  height: 0;
  padding-bottom: 56.25%;
  width: 100%;
  background: none;
}
#appsItemDetailCustom #appsItemDetailCustomTag .item_video_wrap {
  margin: 3em auto;
}
#appsItemDetailCustom #appsItemDetailCustomTag .item_video_wrap:first-child {
  margin-top: 0;
}
#appsItemDetailCustom #appsItemDetailCustomTag .item_video_wrap:last-child {
  margin-bottom: 0;
}
#appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_slider {
  max-width: 70em;
  margin: 0 auto;
}
#appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_slider::before, #appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_slider::after {
  position: absolute;
  top: 0;
  content: "";
  display: block;
  width: 100%;
  height: 0;
  padding-top: 100%;
}
#appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_slider::before {
  left: 100%;
}
#appsItemDetailCustom #appsItemDetailCustomTag .appsItemDetailCustomTag_slider::after {
  right: 100%;
}
#appsItemDetailCustom #appsItemDetailCustomTag .item_slider_wrap {
  position: relative;
  margin: 3em auto;
  overflow: hidden;
}
#appsItemDetailCustom #appsItemDetailCustomTag .item_slider_wrap:first-child {
  margin-top: 0;
}
#appsItemDetailCustom #appsItemDetailCustomTag .item_slider_wrap:last-child {
  margin-bottom: 0;
}
#appsItemDetailCustom #appsItemDetailCustomTag .item_image_wrap {
  margin: 3em auto;
  text-align: center;
}
#appsItemDetailCustom #appsItemDetailCustomTag .item_image_wrap img {
  display: inline;
  margin: 0;
  max-width: 100%;
  height: auto;
}

.item_wrap + .item_section #appsItemDetailCustomTag .item_video_wrap {
  background: var(--clr-bg3);
}
.item_wrap + .item_section #appsItemDetailCustomTag .appsItemDetailCustomTag_slider::before, .item_wrap + .item_section #appsItemDetailCustomTag .appsItemDetailCustomTag_slider::after {
  background: var(--clr-bg3);
}

.item_section + .item_section #appsItemDetailCustomTag .item_video_wrap {
  background: var(--clr-bg2);
}
.item_section + .item_section #appsItemDetailCustomTag .appsItemDetailCustomTag_slider::before, .item_section + .item_section #appsItemDetailCustomTag .appsItemDetailCustomTag_slider::after {
  background: var(--clr-bg2);
}

.review01 {
  color: var(--font-clr);
  max-width: 120em;
  margin: 0 auto !important;
}
.review01 .review01__title {
  font-weight: 18px !important;
  font-weight: 1.8rem !important;
  margin-bottom: 1.111em;
  padding: 0;
}

.review01__radio:checked + label {
  display: grid;
  place-items: center;
  line-height: 1;
}

.item_related {
  color: var(--font-clr);
}
.item_related h2 {
  font-size: 22.6px;
  font-size: 2.26rem;
  text-align: center;
  margin-bottom: 1.327em;
}

.item_related_wrap {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 5em 6.25%;
  gap: 0 1em;
}

@media only screen and (min-width: 768px) {
  .item_ttl {
    margin-top: -0.5em;
  }
  .itemPrice {
    margin-top: 0.884em;
  }
  .item_discountPrice {
    margin-top: 2em !important;
  }
  .item_section {
    padding: 6em 5em;
  }
  .itemDescription p {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .appsItemDetailCustomTag_heading {
    font-size: 22.6px;
    font-size: 2.26rem;
  }
  .review01 .review01__title {
    font-size: 22.6px !important;
    font-size: 2.26rem !important;
    margin-bottom: 0.884em;
  }
  .item_related h2 {
    max-width: 32.786em;
    margin: 0 auto 1.639em auto;
    font-size: 36.6px;
    font-size: 3.66rem;
    text-align: left;
  }
  .item_related_wrap {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0 6.25%;
  }
}
@media only screen and (min-width: 1024px) {
  .item_ttl {
    margin-top: -0.5em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  .itemPrice {
    margin-top: 1.327em;
  }
  .item_discountPrice {
    margin-top: 3em !important;
  }
  .item_section {
    padding: 8em 5em;
  }
  .item_related h2 {
    margin: 0 auto 2.185em auto;
  }
  #itemAttention {
    margin-bottom: 4em;
  }
}
.centeringFixForPostageInfo {
  position: fixed !important;
}

.communityModal {
  width: initial;
  max-height: 90%;
  overflow: scroll;
}
@media only screen and (min-width: 1024px) {
  .communityModal {
    overflow: auto;
  }
}

.bread_wrap {
  overflow-x: auto;
}

.breadcrumb {
  width: 1000vw;
  margin-right: -900vw;
  width: -moz-fit-content;
  width: -webkit-fit-content;
  width: fit-content;
  padding: 1.3em 0.5em 1.3em 2em;
  color: var(--font-clr);
}
.breadcrumb li {
  position: relative;
  display: inline-block;
  display: inline;
  margin-right: 1.25em;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 2;
}
.breadcrumb li + li {
  margin: 0 1.25em 0 2.083em;
}
.breadcrumb li + li:last-child {
  margin-right: 2.083em;
}
.breadcrumb li + li::before {
  content: "";
  position: absolute;
  left: -2.084em;
  top: 0.416em;
  display: block;
  width: 0.666em;
  height: 0.666em;
  border-top: solid 1px;
  border-left: solid 1px;
  border-color: var(--font-clr);
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}
.breadcrumb a {
  display: inline;
  text-decoration: none;
}
@media only screen and (min-width: 768px) {
  .breadcrumb {
    padding: 1.7em 3.5em 1.7em 5em;
  }
}
@media only screen and (min-width: 1024px) {
  .breadcrumb {
    width: 100%;
    margin-right: 0;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
}

.sub_img img {
  width: 100%;
  height: auto;
}

.sub_section {
  padding: 5em 0;
  color: var(--font-clr);
  background: var(--clr-bg2);
}
.sub_section + .sub_section + .sub_section, .sub_section + .sub_section + .sub_section + .sub_section + .sub_section {
  background: var(--clr-bg2);
}
.sub_section + .sub_section + .sub_section .shop_item .noimg, .sub_section + .sub_section + .sub_section + .sub_section + .sub_section .shop_item .noimg {
  background: rgba(255, 255, 255, 0.5);
}
.sub_section + .sub_section, .sub_section + .sub_section + .sub_section + .sub_section {
  background: inherit;
}
.sub_section + .sub_section .shop_item .noimg, .sub_section + .sub_section + .sub_section + .sub_section .shop_item .noimg {
  background: var(--clr-bg2);
}
.sub_section .sec_ttl {
  margin-bottom: 1.327em;
  font-size: 22.6px;
  font-size: 2.26rem;
  font-weight: 400;
  text-align: center;
  line-height: 1.1;
}
.sub_section .sec_inner {
  max-width: 110em;
  padding: 0 2em;
  margin: 0 auto;
}
.sub_section .txt {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  white-space: pre-line;
}
.sub_section .txt + .sec_img {
  margin-top: 3em;
}
.sub_section .sec_img {
  display: block;
  line-height: 1;
  text-align: center;
}
.sub_section .sec_img img {
  max-width: 100%;
}
@media only screen and (min-width: 768px) {
  .sub_section {
    padding: 5em 0;
  }
  .sub_section .sec_ttl {
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  .sub_section .sec_inner {
    padding: 0 5em;
  }
}
@media only screen and (min-width: 1024px) {
  .sub_section {
    padding: 8em 0;
  }
  .sub_section .sec_ttl {
    margin-bottom: 1.639em;
  }
  .sub_section .txt {
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 2;
  }
  .sub_section .txt + .sec_img {
    margin-top: 6em;
  }
}

.shop_item + .shop_item {
  margin-top: 5em;
}
.shop_item picture img {
  width: 100%;
}
.shop_item .noimg {
  position: relative;
  height: 0;
  padding-top: 56.7164%;
  font-size: 36.6px;
  font-size: 3.66rem;
  background: rgba(255, 255, 255, 0.5);
  text-align: center;
}
.shop_item .noimg span {
  display: block;
  position: absolute;
  left: 50%;
  top: 50%;
  max-height: 100%;
  max-width: 100%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  overflow: hidden;
}
.shop_item .noimg img {
  position: absolute;
  max-width: 60%;
  max-height: 60%;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.shop_item .ttl {
  font-size: 18px;
  font-size: 1.8rem;
  margin-top: 1.666em;
}
.shop_item .shop_data {
  margin-top: 2em;
}
.shop_item .shop_data dt, .shop_item .shop_data dd {
  font-size: 14px;
  font-size: 1.4rem;
}
.shop_item .shop_data dt {
  font-weight: 700;
  color: var(--clr-point1);
}
.shop_item .shop_data dd {
  margin-top: 0.714em;
}
.shop_item .shop_data dd + dt {
  margin-top: 1.428em;
}
.shop_item .shop_data .address {
  pointer-events: none;
}
.shop_item .shop_data .map {
  display: inline-block;
  margin-top: 0.833em;
  padding: 0.25em 1.25em;
  font-size: 12px;
  font-size: 1.2rem;
  text-decoration: none;
  color: #FFF;
  background: var(--clr-point1);
  border-radius: 0.25em;
}
@media only screen and (min-width: 768px) {
  .shop_item {
    display: grid;
    grid-template-columns: 30em 1fr;
    grid-column-gap: 5em;
    grid-row-gap: 0px;
  }
  .shop_item picture,
  .shop_item .noimg {
    grid-area: 1/1/3/2;
  }
  .shop_item .ttl {
    grid-area: 1/2/2/3;
    margin-top: -0.278em;
  }
  .shop_item .shop_data {
    grid-area: 2/2/3/3;
  }
}
@media only screen and (min-width: 1024px) {
  .shop_item {
    padding: 5em;
    position: relative;
    display: grid;
    grid-template-columns: 33.333% 1fr;
    grid-column-gap: 5%;
  }
  .shop_item .shop_data {
    display: grid;
    grid-template-columns: 10em 1fr;
    grid-column-gap: 2em;
    grid-row-gap: 2em;
  }
  .shop_item .shop_data dd {
    margin: 0;
  }
  .shop_item .shop_data dd + dt {
    margin: 0;
  }
  .shop_item::before, .shop_item::after {
    content: "";
    position: absolute;
    left: 0;
    display: block;
    width: 100%;
    height: 0;
    border-top: solid 1px;
    border-color: var(--font-clr);
    opacity: 0.2;
  }
  .shop_item::before {
    top: 0;
  }
  .shop_item::after {
    bottom: 0;
  }
  .shop_item + .shop_item {
    margin: 0;
  }
  .shop_item + .shop_item::before {
    content: normal;
  }
}

.faq_data {
  position: relative;
}
.faq_data::before,
.faq_data dd::after {
  position: absolute;
  left: 0;
  border-color: var(--font-clr);
  opacity: 0.2;
}
.faq_data dt, .faq_data dd {
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.faq_data dt span, .faq_data dd span {
  display: block;
  position: absolute;
  left: 0;
  width: 1.555em;
  padding: 0.277em 0;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: center;
  line-height: 1;
  color: #FFF;
  z-index: 1;
}
.faq_data dt span::before, .faq_data dd span::before {
  background: var(--clr-point1);
  border-radius: 0.111em;
}
.faq_data dt {
  padding: 2.142em 0 1.428em 3.428em;
  color: var(--clr-point1);
}
.faq_data dd {
  padding: 0 0 2.142em 3.428em;
}
.faq_data dd span::before {
  opacity: 0.4;
}
.faq_data dd::after {
  bottom: 0;
}
@media only screen and (min-width: 768px) {
  .faq_data dt span, .faq_data dd span {
    left: 1.111em;
  }
  .faq_data dt {
    padding: 1.666em 1.111em 1.111em 3.777em;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.555;
  }
  .faq_data dd {
    padding: 0 1.428em 2.142em 4.857em;
  }
}
@media only screen and (min-width: 1024px) {
  .faq_data dt span, .faq_data dd span {
    left: 2.777em;
  }
  .faq_data dt {
    padding: 1.327em 2.212em 0.884em 4.336em;
    font-size: 22.6px;
    font-size: 2.26rem;
    line-height: 1.327;
  }
  .faq_data dd {
    padding: 0 3.125em 1.875em 6.125em;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.fap_more {
  margin-top: 3.571em;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
}
@media only screen and (min-width: 768px) {
  .fap_more {
    margin-top: 1.875em;
    font-size: 16px;
    font-size: 1.6rem;
  }
}

.blog_section.is-detail {
  background: var(--clr-bg2);
}
@media only screen and (min-width: 1024px) {
  .blog_section {
    padding: 8em 5em 10em 5em;
  }
  .blog_section h1 {
    margin-bottom: 2.185em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
}

.blogListMain .blog_inner {
  margin: 0 0 5em 0;
  position: relative;
  border: 0 !important;
  padding: 0 !important;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
}
.blogListMain .blog_inner .blog_head_image,
.blogListMain .blog_inner .blog_title,
.blogListMain .blog_inner .blog_publish {
  opacity: 1;
  -webkit-transition: opacity 1.5s;
  transition: opacity 1.5s;
}
.blogListMain .blog_inner .blog_head_image img,
.blogListMain .blog_inner .blog_title img,
.blogListMain .blog_inner .blog_publish img {
  -webkit-transition: -webkit-transform 1.5s ease;
  transition: -webkit-transform 1.5s ease;
  transition: transform 1.5s ease;
  transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}
.blogListMain .blog_inner .blog_head_image {
  position: relative;
  width: 100%;
  height: 0;
  padding-top: 61.05%;
  overflow: hidden;
}
.blogListMain .blog_inner .blog_head_image img {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.blogListMain .blog_inner .blog_head_image.hide {
  background: var(--clr-bg2);
}
.blogListMain .blog_inner .blog_head_image.hide::before {
  content: "No Image";
  position: absolute;
  left: 50%;
  top: 50%;
  font-size: 22.6px;
  font-size: 2.26rem;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.blogListMain .blog_inner .blog_head_image.hide img {
  display: none;
}
.blogListMain .blog_inner:hover .blog_head_image,
.blogListMain .blog_inner:hover .blog_title,
.blogListMain .blog_inner:hover .blog_publish {
  opacity: 0.5;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
.blogListMain .blog_inner:hover .blog_head_image img,
.blogListMain .blog_inner:hover .blog_title img,
.blogListMain .blog_inner:hover .blog_publish img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: -webkit-transform 2s ease;
  transition: -webkit-transform 2s ease;
  transition: transform 2s ease;
  transition: transform 2s ease, -webkit-transform 2s ease;
}
.blogListMain .blog_head_image {
  -webkit-box-ordinal-group: 2;
      -ms-flex-order: 1;
          order: 1;
  line-height: 1;
  overflow: hidden;
}
.blogListMain .blog_head_image img {
  width: 100%;
  height: auto;
}
.blogListMain .blog_title {
  -webkit-box-ordinal-group: 3;
      -ms-flex-order: 2;
          order: 2;
  margin: 0;
}
.blogListMain .blog_title a {
  text-decoration: none;
}
.blogListMain .blog_title h2 {
  margin-top: 0.833em;
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2 !important;
}
.blogListMain .blog_publish {
  margin: 0 !important;
  -webkit-box-ordinal-group: 4;
      -ms-flex-order: 3;
          order: 3;
}
.blogListMain .blog_publish p {
  margin-top: 0.625em;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
}
.blogListMain .blog_body {
  display: none;
}
.blogListMain .blog_contents {
  height: 0 !important;
}
.blogListMain .read_more {
  position: absolute;
  bottom: auto !important;
  width: 100%;
  height: 100%;
  padding: 0 !important;
  overflow: hidden;
}
.blogListMain .read_more a {
  display: block;
  width: 100%;
  height: 0;
  padding-top: 200vh;
}
@media only screen and (min-width: 768px) {
  .blogListMain {
    max-width: 100em;
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
  }
  .blogListMain .blog_inner {
    width: 47.5% !important;
    margin: 0 0 6em 0;
  }
  .blogListMain .paginate-wrp {
    margin: 0;
  }
}

#about .paginate-wrp {
  width: 100%;
}
#about .paginate-wrp::before, #about .paginate-wrp::after {
  content: "";
  display: table;
  clear: both;
  overflow: hidden;
}
#about .paginate {
  padding: 0;
  display: block !important;
  text-align: center;
  font-size: 0;
  letter-spacing: -1em;
}
#about .paginate li {
  position: relative;
  margin: 0 0 0 0.5em !important;
  display: inline-block;
  font-size: 16px;
  font-size: 1.6rem;
  border: 0 !important;
  background: var(--clr-bg2);
}
#about .paginate li:first-child {
  margin: 0;
}
#about .paginate .current a {
  background: var(--clr-point1);
  color: var(--clr-bg2);
}
#about .paginate a {
  display: block;
  line-height: 1 !important;
  text-decoration: none;
  padding: 0.562em 0 !important;
  min-width: 2.187em;
  font-size: 16px !important;
  font-size: 1.6rem !important;
  font-weight: 700;
  text-align: center;
  border: solid 1px var(--clr-point1);
}
#about .paginate a:link, #about .paginate a:visited {
  background: var(--clr-bg2);
  color: var(--clr-point1);
  -webkit-transition: background 1.5s, color 1.5s;
  transition: background 1.5s, color 1.5s;
}
#about .paginate a:hover {
  opacity: 1;
  background: var(--clr-point1);
  color: var(--clr-bg2);
  -webkit-transition: background 0.5s, color 0.5s;
  transition: background 0.5s, color 0.5s;
}
#about .paginate .prev a,
#about .paginate .next a {
  min-width: 3.75em;
}

.main + .btn {
  font-size: 14px;
  font-size: 1.4rem;
  height: 3.214em;
  text-align: center;
}
.main + .btn a {
  min-width: 20em;
}
.main + .type-a-block a {
  height: 3.214em;
}
.main + .type-a-block a span {
  padding: 0.857em 3.571em;
}
.main + .type-b-block a {
  height: 3.214em;
  padding: 0.785em 3.571em;
}

.blogDetail {
  padding: 4.5em 2em 0 2em;
}
.blogDetail .blog_inner {
  padding: 0 !important;
  border: 0 !important;
}
.blogDetail .blog_title h2 {
  font-size: 22.6px;
  font-size: 2.26rem;
  font-weight: 400;
}
.blogDetail .blog_title a {
  text-decoration: none;
}
.blogDetail .blog_publish {
  font-size: 12px;
  font-size: 1.2rem;
  margin-top: 1.25em;
  line-height: 1;
}
.blogDetail .blog_body {
  margin-top: 2.812em;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 2;
}
.blogDetail .blog_body p {
  font-size: inherit;
}
.blogDetail .social {
  background: var(--clr-bg2);
  width: auto !important;
  margin: 5em -2em 0 -2em !important;
  padding: 3em 0 !important;
  text-align: center;
}
.blogDetail .social li {
  display: inline-block;
  margin-left: 2em;
}
.blogDetail .social li:first-child {
  margin: 0;
}
@media only screen and (min-width: 768px) {
  .blogDetail {
    padding: 7.5em 5em 0 5em;
  }
  .blogDetail .blog_title h2 {
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  .blogDetail .blog_publish {
    font-size: 18px;
    font-size: 1.8rem;
    margin-top: 0.833em;
  }
  .blogDetail .social {
    margin: 8em -5em 0 -5em !important;
    padding: 8em 0 !important;
  }
}

.blog_youtube_wrap {
  background: var(--clr-bg2);
}
.blog_youtube_wrap .blog_youtube_inner {
  position: relative;
  width: 100%;
  max-width: 70em;
  margin: 0 auto;
  font-size: 10px;
  font-size: 1rem;
}
.blog_youtube_wrap .blog_youtube_inner::before {
  content: "";
  position: relative;
  display: block;
  height: 0;
  padding-bottom: 56.25%;
  width: 100%;
}
.blog_youtube_wrap .blog_youtube_inner .youtube {
  position: absolute;
  left: 0;
  top: 0;
  height: 100%;
  width: 100%;
}

.communityData {
  color: var(--font-clr);
}
.communityData .communityMain {
  width: auto;
  padding: 4.5em 2em 0 2em;
}
.communityData .communityMain .communityTitle {
  font-size: 22.6px;
  font-size: 2.26rem;
  font-weight: 400;
}
.communityData .communityMain .communityContent {
  display: block;
  padding: 0;
  border: 0;
}
.communityData .communityMain .communityOverview {
  width: auto;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.communityData .communityMain .communityNav {
  display: block;
  width: auto;
  margin: 5em -2em 0 -2em;
  padding: 5em 2em;
  background: var(--clr-bg2);
}
.communityData .communityMain .communityPrice {
  margin-bottom: 3em;
  text-align: center;
  font-family: "Noto Sans JP", "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
}
.communityData .communityMain .communityPrice h3 {
  font-size: 16px;
  font-size: 1.6rem;
}
.communityData .communityMain .communityPrice h3 + p {
  margin: 0;
  font-size: 24px;
  font-size: 2.4rem;
}
.communityData .communityMain .communityRegister .communityButton img {
  display: inline-block;
}
.communityData .communityMain .communityRegister .communityButton__guest {
  margin: 1.25em 0;
  padding: 1em 0.625em 1.125em 0.625em;
  background: #252525;
}
.communityData .communityMain .communityRegister .communityTerm,
.communityData .communityMain .communityRegister .communityTextNotice {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.communityData .communityMain .communityRegister .communityTerm a,
.communityData .communityMain .communityRegister .communityTextNotice a {
  color: inherit;
}
.communityData .communityMain .communitySignin {
  position: relative;
  margin-top: 2em;
  padding: 2em;
  z-index: 0;
  border: 0;
  background: none;
}
.communityData .communityMain .communitySignin p {
  margin-bottom: 0.714em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.communityData .communityMain .communitySignin::before {
  content: "";
  display: block;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border: solid 1px;
  border-color: var(--font-clr);
  z-index: -1;
  opacity: 0.2;
}
.communityData .limited {
  width: auto !important;
  padding: 5em 0;
}
.communityData .limited::before {
  margin-bottom: 5em;
  border-color: var(--font-clr);
  opacity: 0.2;
}
.communityData .limited + .limited {
  padding-top: 0;
}
.communityData .limited .communityItemHeader,
.communityData .limited .communityUrlHeader {
  margin: 0;
  font-size: 18px;
  font-size: 1.8rem;
  text-align: center;
}
.communityData .limited .communityItemHeader + p,
.communityData .limited .communityUrlHeader + p {
  margin-top: 1.666em;
  font-size: 12px;
  font-size: 1.2rem;
  text-align: center;
}
.communityData .communityItems {
  display: grid !important;
  grid-template-columns: 1fr 1fr;
  gap: 5em 2%;
  margin: 2.5em -0.5em 0 -0.5em;
}
.communityData .communityItems .communityItem {
  margin: 0 0.5em !important;
  margin: 0 !important;
  padding: 0 !important;
}
.communityData .communityItems .communityItem img.communityLabelImage {
  width: 5em;
  height: 5em;
  left: -1.5em;
  top: -1.5em;
  z-index: 1;
}
.communityData .communityItems .communityItem div.communityImageContainer {
  width: 100%;
  height: auto;
  position: relative;
  overflow: hidden;
}
.img-sq .communityData .communityItems .communityItem div.communityImageContainer {
  aspect-ratio: 1/1;
}
.img-la-gold .communityData .communityItems .communityItem div.communityImageContainer {
  aspect-ratio: 1.618/1;
}
.img-la-screen .communityData .communityItems .communityItem div.communityImageContainer {
  aspect-ratio: 4/3;
}
.img-pt-gold .communityData .communityItems .communityItem div.communityImageContainer {
  aspect-ratio: 1/1.618;
}
.img-pt-screen .communityData .communityItems .communityItem div.communityImageContainer {
  aspect-ratio: 3/4;
}
.communityData .communityItems .communityItem div.communityImageContainer img {
  width: 100%;
  height: 100%;
  max-width: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  vertical-align: bottom;
  -webkit-transition: -webkit-transform 1.5s ease;
  transition: -webkit-transform 1.5s ease;
  transition: transform 1.5s ease;
  transition: transform 1.5s ease, -webkit-transform 1.5s ease;
}
.communityData .communityItems .communityItem div.communityImageContainer img:hover {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
  -webkit-transition: -webkit-transform 2s ease;
  transition: -webkit-transform 2s ease;
  transition: transform 2s ease;
  transition: transform 2s ease, -webkit-transform 2s ease;
}
.communityData .communityItems .communityItem .communityItemMeta {
  position: relative;
  padding: 1.5em 0 0 0;
}
.communityData .communityItems .communityItem .communityItemMeta .communityItemTitle {
  margin: 0;
  width: auto;
  height: auto;
  max-height: none;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
.communityData .communityItems .communityItem .communityItemMeta .communityItemPrice {
  margin: 0.833em 0 1.25em 0;
  font-size: 12px;
  font-size: 1.2rem;
  overflow-wrap: break-word;
  word-break: break-all;
}
.communityData .communityItems .communityItem .communityItemMeta .communityItemPrice.discount {
  color: var(--clr-red);
}
.communityData .communityItems .communityItem .communityItemMeta .communityItemPrice .discount {
  display: inline-block;
  padding: 0.2em 0.8em;
  margin-right: 0.5em;
  font-size: 10px;
  font-size: 1rem;
  font-weight: 400;
  color: #FFF;
  background: var(--clr-red);
  border-radius: 0.2em;
  vertical-align: 0.2em;
}
.communityData .communityItems .communityItem .communityItemMeta .communityItemLabel.comingSoon {
  display: inline-block;
  margin: 0 0.166em 0.333em 0;
  padding: 0.333em 0.666em;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  color: #FFF;
  border-radius: 0.166em;
  border: 0;
}
.communityData .communityItems .communityItem .communityItemMeta .comingSoon {
  background: #DDD978;
}
.communityData .communityItems .communityItem .communityItemMeta .communityItemLabel.soldOutText {
  position: absolute;
  top: -2.286em;
  display: block;
  padding: 0.714em;
  height: 2.285em;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1;
  color: #FFF;
  width: 100%;
  background: rgba(96, 88, 80, 0.8);
  z-index: 1;
}
.communityData .communityItems .communityItem .communityItemMetaSub {
  display: block;
  margin: 0 0 2.5em 0 !important;
}
.communityData .communityItems .communityItem .communityItemMetaSub .communityItemLabelBlock.preOrder,
.communityData .communityItems .communityItem .communityItemMetaSub .communityItemLabelBlock.community {
  display: inline-block;
  margin: 0 0.166em 0.333em 0;
  padding: 0.333em 0.666em;
  font-size: 12px;
  font-size: 1.2rem;
  font-weight: 400;
  color: #FFF;
  border-radius: 0.166em;
  border: 0;
}
.communityData .communityItems .communityItem .communityItemMetaSub .preOrder {
  background: #79BFC3 !important;
}
.communityData .communityItems .communityItem .communityItemMetaSub .community {
  background: #E7AF5B !important;
}
@media only screen and (min-width: 768px) {
  .communityData .communityItems {
    grid-template-columns: 1fr 1fr 1fr;
    gap: 5em 6.25%;
  }
  .communityData .communityItems .communityItem img.communityLabelImage {
    width: 6em;
    height: 6em;
  }
  .communityData .communityItems .communityItem .communityItemMeta .communityItemLabel.soldOutText {
    top: -2.223em;
    padding: 0.555em;
    height: 2.222em;
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1024px) {
  .communityData .communityItems .communityItem img.communityLabelImage {
    width: 8em;
    height: 8em;
    left: -2em;
    top: -2em;
  }
}

.is-logout + .limited::before {
  content: normal;
}

#limitedUrl {
  overflow: hidden;
}
#limitedUrl #productsLimitedUrl {
  display: block;
  margin-top: 2.5em;
}
#limitedUrl #productsLimitedUrl .urlBox {
  position: relative;
  margin: 2em 0 0 0;
  padding: 0;
  background: none;
  border: 0;
  width: auto;
}
#limitedUrl #productsLimitedUrl .urlBox:first-child {
  margin-top: 0;
}
#limitedUrl #productsLimitedUrl .urlBox:nth-child(2) {
  margin-left: 0;
}
#limitedUrl #productsLimitedUrl .urlBox .title {
  display: block;
  width: 100%;
  padding: 1.071em 3.571em 1.071em 1.428em;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  background: var(--clr-bg2);
}
#limitedUrl #productsLimitedUrl .urlBox .url {
  display: inline;
}
#limitedUrl #productsLimitedUrl .urlBox a {
  position: absolute;
  left: 0;
  top: 0;
  display: block;
  width: 100%;
  height: 100%;
  text-indent: 10000em;
}
#limitedUrl #productsLimitedUrl .urlBox a::after {
  content: "";
  display: block;
  position: absolute;
  right: 1.428em;
  top: calc(50% - 0.35em);
  width: 0.714em;
  height: 0.714em;
  border-top: solid 1px;
  border-right: solid 1px;
  border-color: var(--font-clr);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.communityMain .communityLogout,
.communityMain .openLeaveModal {
  font-size: 14px !important;
  font-size: 1.4rem !important;
  text-align: center !important;
  color: var(--font-clr) !important;
}
.communityMain .communityLogout {
  margin: 0 !important;
}
.communityMain .openLeaveModal {
  width: 100%;
  margin: 1.428em 0 5.714em 0 !important;
  opacity: 1;
  -webkit-transition: opacity 1.5s;
  transition: opacity 1.5s;
}
.communityMain .openLeaveModal:hover {
  opacity: 0.5;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

@media only screen and (min-width: 768px) {
  .main.communityData .communityMain {
    padding: 7.5em 5em 0 5em;
  }
  .main.communityData .communityMain .communityTitle {
    margin-bottom: 1.639em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  .main.communityData .communityMain .communityOverview {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .main.communityData .communityMain .communityNav {
    margin: 8em 0 0 0;
    padding: 8em 5em;
  }
  .main.communityData .communityMain .communityPrice {
    margin-bottom: 3em;
    text-align: center;
    font-family: "Noto Sans JP", "メイリオ", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", sans-serif;
  }
  .main.communityData .communityMain .communityPrice h3 {
    margin: 0 auto;
    max-width: 32.5em;
  }
  .main.communityData .communityMain .communityPrice h3 + p {
    margin: 0 auto;
    max-width: 21.666em;
  }
  .main.communityData .communityMain .communityRegister .communityButton {
    max-width: 32.5em;
    margin-right: auto;
    margin-left: auto;
  }
  .main.communityData .communityMain .communityRegister .communityButton__guest {
    margin: 1.25em auto;
  }
  .main.communityData .communityMain .communityRegister .communityTerm,
  .main.communityData .communityMain .communityRegister .communityTextNotice {
    max-width: 37.142em;
    margin: 0 auto;
  }
  .main.communityData .communityMain .communitySignin {
    position: relative;
    max-width: 52em;
    margin: 2em auto 0 auto;
  }
  .main.communityData .communityMain .limited {
    width: auto !important;
    padding: 8em 0;
  }
  .main.communityData .communityMain .limited::before {
    margin-bottom: 8em;
  }
  .main.communityData .communityMain .limited + .limited {
    padding-top: 0;
  }
  .main.communityData .communityMain .limited .communityItemHeader,
  .main.communityData .communityMain .limited .communityUrlHeader {
    font-size: 22.6px;
    font-size: 2.26rem;
    text-align: left;
  }
  .main.communityData .communityMain .limited .communityItemHeader + p,
  .main.communityData .communityMain .limited .communityUrlHeader + p {
    margin-top: 1.428em;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: left;
  }
  .main.communityData .communityMain .communityItems {
    margin: 5em 0 0 0;
  }
  .main.communityData .communityMain .communityItems .communityItem {
    margin: 0 0 0 6.37505% !important;
    margin: 0 !important;
    -webkit-box-flex: 0;
        -ms-flex-positive: 0;
            flex-grow: 0;
  }
  .main.communityData .communityMain .communityItems .communityItem:first-child {
    margin: 0 !important;
  }
  .main.communityData .communityMain .communityItems .communityItem .communityItemMeta {
    padding: 2.5em 0 0 0;
  }
  .main.communityData .communityMain .communityItems .communityItem .communityItemMeta .communityItemTitle {
    font-size: 22.6px;
    font-size: 2.26rem;
  }
  .main.communityData .communityMain .communityItems .communityItem .communityItemMeta .communityItemPrice {
    margin-top: 1.111em;
    font-size: 18px;
    font-size: 1.8rem;
  }
  .main.communityData .communityMain .communityItems .communityItem .communityItemMeta .communityItemPrice .discount {
    padding: 0.333em 0.666em 0.25em 0.666em;
    margin-right: 0.833em;
    font-size: 12px;
    font-size: 1.2rem;
    font-weight: 400;
    border-radius: 0.166em;
  }
}
@media only screen and (min-width: 1024px) {
  #limitedUrl #productsLimitedUrl::before, #limitedUrl #productsLimitedUrl::after {
    content: "";
    display: table;
    clear: both;
    overflow: hidden;
  }
  #limitedUrl #productsLimitedUrl .urlBox {
    margin: 2.5em 0 0 2em !important;
    width: calc(50% - 1em);
    float: left;
  }
  #limitedUrl #productsLimitedUrl .urlBox:nth-child(1), #limitedUrl #productsLimitedUrl .urlBox:nth-child(2) {
    margin-top: 0 !important;
  }
  #limitedUrl #productsLimitedUrl .urlBox:nth-child(2n+1) {
    margin-left: 0 !important;
  }
}
.communityNotExists {
  max-width: 85.714em;
  margin: 1.785em auto 3.571em auto;
  padding: 1.071em 1.428em;
  border-radius: 0.214em;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.4;
}

#membership {
  width: auto;
  padding: 4.5em 2em !important;
  color: var(--font-clr);
}
#membership .flash-message {
  margin: 0 0 3.2em 0;
}
#membership .link-wrapper,
#membership .mypage-link,
#membership .leave-wrapper {
  font-size: 14px;
  font-size: 1.4rem;
  height: 3.214em;
}
#membership .link-wrapper button,
#membership .link-wrapper a,
#membership .mypage-link button,
#membership .mypage-link a,
#membership .leave-wrapper button,
#membership .leave-wrapper a {
  font-size: 14px;
  font-size: 1.4rem;
  height: 3.214em;
}
#membership .link-wrapper .type-a-block span,
#membership .mypage-link .type-a-block span,
#membership .leave-wrapper .type-a-block span {
  padding: 0.857em 3.571em;
  height: 3.214em;
}
@media only screen and (min-width: 768px) {
  #membership .link-wrapper .type-a-block span,
  #membership .mypage-link .type-a-block span,
  #membership .leave-wrapper .type-a-block span {
    min-width: 20em;
  }
}
#membership .link-wrapper .type-b-block,
#membership .mypage-link .type-b-block,
#membership .leave-wrapper .type-b-block {
  height: 3.214em;
  padding: 0.785em 3.571em;
}
@media only screen and (min-width: 768px) {
  #membership .link-wrapper .type-b-block,
  #membership .mypage-link .type-b-block,
  #membership .leave-wrapper .type-b-block {
    min-width: 20em;
  }
}
#membership .link-wrapper button {
  width: 100%;
}
@media only screen and (min-width: 768px) {
  #membership .link-wrapper button {
    width: 20em;
    max-width: 50%;
  }
}
#membership .content .heading {
  font-size: 22.6px;
  font-size: 2.26rem;
  margin: 0;
  font-weight: 400;
  text-align: center;
}
#membership .content > .description {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 3.571em 0;
}
#membership .content > .description p {
  line-height: 2;
}
#membership .heading-wrapper {
  width: auto;
}
#membership .img-wrapper {
  margin-bottom: 5em;
}
#membership .img-wrapper .img {
  max-height: none !important;
  height: auto !important;
}
#membership > .login .register-description {
  font-size: 14px;
  font-size: 1.4rem;
  font-size: 14px !important;
  font-size: 1.4rem !important;
}
#membership > .login .register-link {
  font-size: 14px;
  font-size: 1.4rem;
  color: var(--clr-point1);
}
#membership > .guide .register {
  padding: 5em 2em;
  background: var(--clr-bg1);
}
#membership > .guide .register .heading {
  font-size: 22.6px;
  font-size: 2.26rem;
  margin-bottom: 1.327em;
}
#membership > .guide .register .box {
  margin: 20px auto 40px auto !important;
}
#membership > .guide .register .description,
#membership > .guide .register .login {
  font-size: 14px;
  font-size: 1.4rem;
}
#membership > .guide .register .description-link,
#membership > .guide .register .login-link {
  color: var(--font-clr);
}
#membership > .guide .heading-point {
  position: relative;
  font-size: 18px;
  font-size: 1.8rem;
  padding-left: 1.666em;
}
#membership > .guide .heading-point::before {
  content: "？";
  display: block;
  position: absolute;
  left: 0;
  top: 0.357em;
  width: 1.428em;
  height: 1.428em;
  padding: 0 0 0 0.071em;
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.285em;
  color: var(--clr-point1);
  z-index: 1;
  border-radius: 50%;
  border: solid 1px var(--clr-point1);
}
#membership > .guide ul.description {
  font-size: 14px;
  font-size: 1.4rem;
  margin: 1.428em 0 0 0;
}
#membership > .guide ul.description li {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
#membership > .guide ul.description li::before {
  content: "・";
}
#membership > .guide .mypage-link {
  margin: 3em 0 5em 0;
}
#membership .draft {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
#membership .draft .heading-wrapper {
  margin-bottom: 2.212em;
  width: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
#membership .draft .heading-wrapper .heading {
  font-size: 22.6px;
  font-size: 2.26rem;
}
#membership .draft .heading-wrapper .logout {
  font-family: inherit;
  color: var(--clr-bg1);
  font-weight: bold;
  background: transparent;
}
#membership .draft .point-info-login-link {
  font-weight: bold;
}
#membership .draft .leave-wrapper .leave {
  font-family: inherit;
  font-weight: bold;
  background: transparent;
}
#membership .draft .content .message {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 0.555em auto 2.222em auto;
}
#membership .draft .content .point-amount {
  font-size: 24px;
  font-size: 2.4rem;
}
#membership .mypage .heading-wrapper {
  margin-bottom: 2.212em;
}
#membership .mypage .heading-wrapper .heading {
  font-size: 22.6px;
  font-size: 2.26rem;
}
#membership .mypage .info {
  padding: 5em 2em;
  background: var(--clr-bg1);
}
#membership .mypage .info .card {
  border: none !important;
}
#membership .mypage .content .edit-wrapper .edit {
  color: var(--clr-point1);
  font-weight: bold;
}
#membership .mypage .content .definition-list {
  font-size: 10px;
  font-size: 1rem;
}
#membership .mypage .content .definition-list:has(.point-amount) {
  margin-top: 0 !important;
  border: solid 1px var(--clr-point1);
  border-radius: 0.5em;
}
#membership .mypage .content .definition-list:has(.point-amount) .definition-term {
  background: var(--clr-point1);
  color: var(--clr-bg2);
  padding: 0.781em;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  text-align: center;
  border-radius: 0.187em 0.187em 0 0;
  letter-spacing: 0.05em;
}
#membership .mypage .content .definition-list:has(.point-amount) .definition-description {
  z-index: 0;
  display: block;
  font-size: 10px;
  font-size: 1rem;
  background: none;
  position: relative;
  margin: 0;
}
#membership .mypage .content .definition-list:has(.point-amount) .definition-description::before {
  background: none;
  border: solid 1px var(--font-clr);
  border-top: 0;
  opacity: 0.15;
  border-radius: 0 0 0.5em 0.5em;
}
#membership .mypage .content .definition-list:has(.point-amount) .definition-description .point-amount {
  font-size: 28px;
  font-size: 2.8rem;
  color: var(--clr-point1);
  background: none;
}
#membership .mypage .content .definition-list:has(.point-amount) .definition-description .point-expiry-date {
  font-size: 13px;
  font-size: 1.3rem;
  margin-top: 0.769em;
  color: var(--clr-point1);
}
#membership .mypage .content .definition-list:has(.point-amount) .point-history, #membership .mypage .content .definition-list:has(.point-amount) + .about-wrapper {
  font-size: 14px;
  font-size: 1.4rem;
  display: block;
  line-height: 2;
}
#membership .mypage .content .definition-list:has(.point-amount) .point-history a, #membership .mypage .content .definition-list:has(.point-amount) + .about-wrapper a {
  font-size: inherit;
  padding: 0 0 0 1.071em;
  position: relative;
  font-weight: 500;
  color: var(--font-clr);
}
#membership .mypage .content .definition-list:has(.point-amount) .point-history a::before, #membership .mypage .content .definition-list:has(.point-amount) + .about-wrapper a::before {
  content: "";
  position: absolute;
  left: -0.072em;
  top: 0.428em;
  width: 0.571em;
  height: 0.571em;
  border-top: solid 1px var(--font-clr);
  border-right: solid 1px var(--font-clr);
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}
#membership .mypage .content .definition-list:has(.mail-address) {
  display: grid;
  grid-template-columns: 1fr;
  grid-column-gap: 2em;
  grid-row-gap: 0.5em;
  margin: 2em 0 0 0;
  font-size: 10px;
  font-size: 1rem;
}
@media only screen and (min-width: 1024px) {
  #membership .mypage .content .definition-list:has(.mail-address) {
    grid-template-columns: auto 1fr;
  }
}
#membership .mypage .content .definition-list:has(.mail-address) .definition-term {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  font-weight: medium;
  line-height: 2;
}
#membership .mypage .content .definition-list:has(.mail-address) .definition-term::after {
  content: "：";
}
#membership .mypage .content .definition-list:has(.mail-address) .definition-description {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  line-height: 2;
  padding: 0;
  margin: 0;
  position: relative;
  background: none;
}
#membership .mypage .content .definition-list:has(.mail-address) .mail-address {
  padding: 0 !important;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1;
  text-align: left;
  font-weight: normal;
  line-height: 2;
  background: none !important;
}
#membership .mypage .content .bar {
  background-color: var(--clr_bg2);
}
#membership .mypage .content:has(.point-amount) .bar {
  display: none;
}
#membership .mypage .content .point-amount {
  font-size: 24px;
  font-size: 2.4rem;
  background: rgba(255, 255, 255, 0.5);
}
#membership .mypage .definition-edit-button .edit {
  border: 1px solid var(--clr-point1);
  color: var(--clr-point1);
}
#membership .mypage .mail-address {
  font-size: 14px;
  font-size: 1.4rem;
  background: #fff !important;
}
#membership .mypage .logout,
#membership .mypage #open-modal-button {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  font-family: inherit;
  color: var(--clr-point1);
  background: transparent !important;
  opacity: 1;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}
#membership .mypage .logout:hover,
#membership .mypage #open-modal-button:hover {
  opacity: 0.5;
  -webkit-transition: opacity 0.5s;
  transition: opacity 0.5s;
}

#membership .howto {
  background: var(--clr-bg3);
}
#membership .howto .caption .text {
  color: var(--clr-point2);
  font-size: 14px;
  font-size: 1.4rem;
}
#membership .howto .description {
  margin: 0 !important;
  padding: 20px 20px 0 20px;
  border-top: solid 1px var(--clr-point2);
}
#membership .howto .description .text {
  color: var(--clr-point2);
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8;
}
#membership .howto #howto-icon svg {
  fill: var(--clr-point2);
}
#membership .reward-list {
  position: relative;
  margin: 5em 0;
  padding: 3em 0;
  font-size: 10px;
  font-size: 1rem;
  z-index: 1;
}
#membership .reward-list::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  border-top: solid 1px var(--font-clr);
  border-bottom: solid 1px var(--font-clr);
  opacity: 0.2;
  z-index: -1;
}
#membership .reward-list .title {
  font-size: 18px;
  font-size: 1.8rem;
  line-height: 2;
  color: var(--clr-point1);
}
#membership .reward-list .bar {
  display: none;
}
#membership .reward-list .description {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 1.8;
  margin: 1.071em 0 0 0;
}
#membership .reward-list .reward-card-list {
  display: grid;
  grid-column-gap: 2em;
  grid-row-gap: 3em;
  grid-template-columns: repeat(2, 1fr);
  margin-top: 2.5em;
  font-size: 10px;
  font-size: 1rem;
}
#membership .reward-list .reward-detail-wrapper {
  margin: 0;
}
#membership .reward-list .reward-detail-wrapper .title {
  font-size: 16px;
  font-size: 1.6rem;
  margin: 0.937em 0 0 0;
  font-weight: normal;
  line-height: 2;
}
#membership .reward-list .reward-detail-wrapper .exchange-point-wrapper {
  position: relative;
  margin: 1em 0 0 0;
  padding: 0 0 0 1.8em;
  font-size: 10px;
  font-size: 1rem;
  opacity: 0.5;
}
#membership .reward-list .reward-detail-wrapper .exchange-point-wrapper svg {
  display: none;
}
#membership .reward-list .reward-detail-wrapper .exchange-point-wrapper::before {
  content: "P";
  display: grid;
  place-items: center;
  position: absolute;
  left: 0;
  top: 0.2em;
  width: 1.4em;
  height: 1.4em;
  font-size: 10px;
  font-size: 1rem;
  font-weight: normal;
  line-height: 0.75;
  border: solid 1px var(--font-clr);
  border-radius: 50%;
}
#membership .reward-list .reward-detail-wrapper .exchange-point-wrapper .exchange-point {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  margin: 0;
}
#membership .reward-list .reward-detail-wrapper .description {
  font-size: 14px;
  font-size: 1.4rem;
  margin-top: 0.714em;
}
@media only screen and (min-width: 768px) {
  #membership .howto .caption .text {
    font-size: 16px;
    font-size: 1.6rem;
  }
  #membership .howto .description {
    padding: 20px 30px 0 30px;
  }
  #membership .howto .description .text {
    font-size: 14px !important;
    font-size: 1.4rem !important;
  }
  #membership .reward-list {
    padding: 3em 5em;
  }
  #membership .reward-list .description {
    font-size: 16px;
    font-size: 1.6rem;
    margin: 0.937em 0 0 0;
  }
  #membership .reward-list .reward-card-list {
    grid-column-gap: 2.2em;
    grid-row-gap: 5em;
    grid-template-columns: repeat(3, 1fr);
    margin-top: 2.5em;
  }
  #membership .reward-list .reward-detail-wrapper {
    margin: 0;
  }
}
@media only screen and (min-width: 1024px) {
  #membership .reward-list {
    margin: 8em 0;
    padding: 5em;
  }
  #membership .reward-list .reward-card-list {
    grid-column-gap: 4em;
    margin-top: 4em;
  }
}

#membership .guide .link,
#membership .login .link {
  font-size: 14px !important;
  font-size: 1.4rem !important;
  font-weight: normal !important;
  background-color: var(--clr-point1);
}
#membership .mail-magazine .mail-magazine-wrapper {
  margin: 3em auto 0 auto;
}
#membership .mail-magazine .mail-magazine-wrapper .label {
  color: var(--font-clr);
}
#membership .mail-magazine .mail-magazine-wrapper .checkbox {
  border: 1px solid var(--clr-bg2);
}
#membership .mail-magazine .mail-magazine-wrapper .checkbox:checked {
  border: 1px solid var(--clr-point1);
  -webkit-box-shadow: 0 0 0 24px var(--clr-point1) inset;
          box-shadow: 0 0 0 24px var(--clr-point1) inset;
}

@media only screen and (min-width: 768px) {
  #membership {
    padding: 7.5em 5em !important;
  }
  #membership .content .heading {
    font-size: 36.6px;
    font-size: 3.66rem;
    margin: 0 0 1.639em 0 !important;
  }
  #membership .img-wrapper {
    margin-bottom: 8em;
  }
  #membership .description > p {
    font-size: 18px !important;
    font-size: 1.8rem !important;
  }
  #membership > .guide .register {
    margin: 8em auto 0 auto !important;
    padding: 8em 5em !important;
  }
  #membership .mypage .heading-wrapper {
    margin: 0 0 6em 0 !important;
  }
  #membership .mypage .heading-wrapper .heading {
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  #membership .mypage .info {
    padding: 5em;
  }
  #membership .draft .heading-wrapper {
    margin: 0 0 6em 0 !important;
  }
  #membership .draft .heading-wrapper .heading {
    font-size: 36.6px;
    font-size: 3.66rem;
  }
}
@media only screen and (min-width: 1024px) {
  #membership .mypage .card,
  #membership .draft .card {
    margin-right: 5em;
  }
}
#membership .point-history .content .point-history-summary {
  font-size: 10px;
  font-size: 1rem;
  margin-bottom: 4.8em;
}
#membership .point-history .content .point-name {
  font-size: 18px;
  font-size: 1.8rem;
  text-align: left;
  margin-bottom: 1.666em;
  color: var(--font-clr);
}
#membership .point-history .content .description {
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1.8;
  color: var(--font-clr);
}
#membership .point-history .content .point-history-empty-text {
  border: 0;
  padding: 1.25em;
  font-size: 16px;
  font-size: 1.6rem;
  position: relative;
  background: var(--clr-bg2);
  color: var(--clr-point1);
}
#membership .point-history .content .point-history-list {
  position: relative;
  padding: 2em;
  font-size: 10px;
  font-size: 1rem;
  border: 0;
  background: var(--clr-bg2);
}
#membership .point-history .content .card {
  font-size: 10px;
  font-size: 1rem;
  border: 0;
  padding: 2em 0 0 0;
  display: grid;
  grid-template-columns: auto 1fr;
  grid-template-rows: repeat(3, auto);
  grid-column-gap: 2em;
}
#membership .point-history .content .card:first-child {
  padding-top: 0;
}
#membership .point-history .content .card + .card {
  margin-top: 2.2em;
  position: relative;
  border-top: solid 1px var(--clr-bg1);
}
#membership .point-history .content .card .caption {
  margin: 0;
  grid-area: 1/1/4/2;
  font-size: 16px;
  font-size: 1.6rem;
  line-height: 1;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: var(--font-clr);
}
#membership .point-history .content .card .caption .action-type {
  display: inline-block;
  font-size: 11px;
  font-size: 1.1rem;
  background: #999;
  color: #FFF;
  padding: 0.454em 0.909em 0.545em 0.909em;
  border-radius: 0.181em;
}
#membership .point-history .content .card .point {
  margin: 0;
  grid-area: 1/2/2/3;
  font-size: 22.6px;
  font-size: 2.26rem;
  line-height: 1.4;
  text-align: right;
  color: var(--font-clr);
}
#membership .point-history .content .card .order-header-unique-key {
  margin: 0;
  grid-area: 2/2/3/3;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
  text-align: right;
  color: var(--font-clr);
}
#membership .point-history .content .card .reward-name {
  grid-area: 3/2/4/3;
  font-size: 12px;
  font-size: 1.2rem;
  line-height: 1.4;
  text-align: right;
  color: var(--font-clr);
}
#membership .point-history .content .card.is-get .caption .action-type {
  background: var(--clr-red);
}
#membership .point-history .content .card.is-get .point {
  color: var(--clr-red);
}
#membership .point-history .content .card.is-return .caption .action-type {
  background: #4e6897;
}
#membership .point-history .content .card.is-return .point {
  color: #4e6897;
}
@media only screen and (min-width: 768px) {
  #membership .point-history .content .point-name {
    font-size: 22.6px;
    font-size: 2.26rem;
    margin-bottom: 1.327em;
  }
  #membership .point-history .content .point-history-empty-text {
    padding: 3.125em;
  }
  #membership .point-history .content .point-history-list {
    padding: 5em;
  }
  #membership .point-history .content .card {
    padding: 2.5em 0 0 0;
  }
  #membership .point-history .content .card + .card {
    margin-top: 2.9em;
  }
  #membership .point-history .content .card .caption .action-type {
    font-size: 13px;
    font-size: 1.3rem;
    padding: 0.384em 0.769em;
    border-radius: 0.153em;
  }
  #membership .point-history .content .card .point {
    font-size: 36.6px;
    font-size: 3.66rem;
    font-weight: 600;
  }
  #membership .point-history .content .card .order-header-unique-key {
    font-size: 14px;
    font-size: 1.4rem;
  }
  #membership .point-history .content .card .reward-name {
    font-size: 14px;
    font-size: 1.4rem;
  }
}
@media only screen and (min-width: 1024px) {
  #membership .point-history .content .point-name {
    margin-bottom: 2.212em;
  }
}
#membership .point-history .pagination {
  font-size: 10px;
  font-size: 1rem;
  margin: 5em 0;
}
#membership .point-history .pagination .page-block {
  margin-inline: 3px;
}
#membership .point-history .pagination .page-block a.page-link,
#membership .point-history .pagination .page-block span.current {
  position: relative;
  margin: 0 0.062em;
  padding: 0.562em;
  min-width: 2.187em;
  height: 2.187em;
  font-size: 16px;
  font-size: 1.6rem;
  font-weight: normal;
  line-height: 1;
  background: none;
  border: 0;
}
#membership .point-history .pagination .page-block span.current {
  color: var(--clr-bg2);
  background: var(--clr-point1);
}
#membership .point-history .pagination .page-block a.page-link {
  color: var(--clr-point1);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  z-index: 0;
  background: var(--clr-bg2);
  border: solid 1px var(--clr-point1);
}
#membership .point-history .pagination .page-block a.page-link:hover {
  color: var(--clr-bg2);
  opacity: 1;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  background: var(--clr-point1);
}
#membership .point-history .pagination .page-block span.ellipses {
  color: var(--clr-point1);
  opacity: 0.5;
}
@media only screen and (min-width: 768px) {
  #membership .point-history .pagination {
    margin: 3.2em 0;
  }
}
@media only screen and (min-width: 1024px) {
  #membership .point-history .pagination {
    margin: 6.4em 0;
  }
}

.inquirySection h1 + p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  text-align: center;
}
.inquirySection form {
  margin: 3em -2em 3em -2em;
  padding: 5em 2em;
  background: var(--clr-bg2);
}
.inquirySection dt,
.inquirySection dd {
  font-size: 14px;
  font-size: 1.4rem;
}
.inquirySection dt {
  margin: 1.428em 0 0.357em 0;
}
.inquirySection dt:first-child {
  margin-top: 0;
}
.inquirySection .error {
  display: inline;
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
  color: var(--clr-point1);
}
.inquirySection input[type=text],
.inquirySection textarea {
  font-size: 16px;
  font-size: 1.6rem;
  width: 100%;
  padding: 0.375em 2.187em 0.375em 0.625em;
  font-family: inherit;
  border: solid 1px;
  border-color: var(--font-clr);
  border-radius: 0.125em;
  background: #FFF;
  color: #333;
}
.inquirySection .control-panel {
  margin-top: 5em;
  text-align: center;
}
.inquirySection button {
  min-width: 20em;
  font-family: inherit;
}
@media only screen and (min-width: 768px) {
  .inquirySection h1 + p {
    font-size: 18px;
    font-size: 1.8rem;
  }
  .inquirySection form {
    max-width: 100em;
    margin: 6em auto;
    padding: 8em 10em 6em 10em;
  }
}
@media only screen and (min-width: 1024px) {
  .inquirySection {
    padding: 8em 5em 10em 5em;
  }
  .inquirySection h1 {
    margin-bottom: 2.185em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
  .inquirySection form {
    padding: 8em 20em 6em 20em;
  }
}

#inquiryCompleteSection {
  text-align: center;
}
#inquiryCompleteSection p + a {
  margin: 2.142em 0 3.571em 0;
  min-width: 20em;
}

#law h3 {
  font-size: 18px;
  font-size: 1.8rem;
  margin-top: 1.388em;
}
#law h3 + p {
  margin-top: 0.714em;
}
#law p {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
#law .atobaraiTerm {
  margin-top: 2em;
  padding: 3em;
  background: var(--clr-bg2);
}
#law .atobaraiTerm .atobaraiTerm__title {
  font-weight: 700;
  margin-bottom: 0.25em;
}
@media only screen and (min-width: 1024px) {
  #law {
    max-width: 110em;
    margin: 0 auto;
    padding: 8em 5em 10em 5em;
  }
  #law h2 {
    margin-bottom: 2.185em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
}

#privacy dl {
  padding-top: 5em;
}
#privacy dl::before {
  border-color: var(--font-clr);
  opacity: 0.2;
}
#privacy p,
#privacy dd {
  font-size: 14px;
  font-size: 1.4rem;
  line-height: 2;
}
#privacy p ul,
#privacy dd ul {
  margin-top: 2em;
  padding: 2em;
  background: var(--clr-bg2);
}
#privacy dt {
  font-size: 18px;
  font-size: 1.8rem;
  margin: 2.777em 0 1.388em 0;
}
@media only screen and (min-width: 768px) {
  #privacy .privacy_intro {
    font-size: 18px;
    font-size: 1.8rem;
  }
}
@media only screen and (min-width: 1024px) {
  #privacy {
    max-width: 110em;
    margin: 0 auto;
    padding: 8em 5em 10em 5em;
  }
  #privacy h2 {
    margin-bottom: 2.185em;
    font-size: 36.6px;
    font-size: 3.66rem;
  }
}

.th-baige .x_purchaseForm select {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30px 30px"><polygon fill="%23605850" points="15 18.5 10.5 11.5 19.5 11.5 15 18.5" /></svg>');
}

.th-pink .x_purchaseForm select {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30px 30px"><polygon fill="%23573949" points="15 18.5 10.5 11.5 19.5 11.5 15 18.5" /></svg>');
}

.th-blue .x_purchaseForm select {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30px 30px"><polygon fill="%233D4459" points="15 18.5 10.5 11.5 19.5 11.5 15 18.5" /></svg>');
}

.th-gray .x_purchaseForm select {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30px 30px"><polygon fill="%232C2C2C" points="15 18.5 10.5 11.5 19.5 11.5 15 18.5" /></svg>');
}

.th-black .x_purchaseForm select {
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 30px 30px"><polygon fill="%23E0E0E0" points="15 18.5 10.5 11.5 19.5 11.5 15 18.5" /></svg>');
}

.th-black #footer #baseMenu img {
  -webkit-filter: brightness(238%);
          filter: brightness(238%);
}
.th-black #law .telnumValid__icon {
  -webkit-filter: brightness(70%) invert(100%);
          filter: brightness(70%) invert(100%);
}
.th-black #law .telnumValid__txt {
  background: var(--clr-bg1);
}
.th-black #membership .info .card {
  background: var(--font-clr);
  color: var(--clr-bg1);
}
.th-black #membership .howto {
  background: var(--clr-bg1);
}
.th-black #membership .howto .caption .text {
  color: var(--font-clr);
  font-weight: normal;
}
.th-black #membership .howto .description {
  border-top: solid 1px var(--clr-bg2);
}
.th-black #membership .howto .description .text {
  color: var(--font-clr);
}
.th-black #membership .mypage .content .definition-list:has(.point-amount) {
  border-color: var(--clr-bg2);
}
.th-black #membership .mypage .content .definition-list:has(.point-amount) .definition-term {
  background-color: var(--clr-bg2);
  color: var(--font-clr);
  font-weight: normal;
}
.th-black #membership .mypage .content .definition-list:has(.point-amount) .definition-description .point-amount {
  color: var(--font-clr);
}
.th-black #membership .mypage .content .definition-list:has(.point-amount) .definition-description .point-expiry-date {
  color: var(--font-clr);
}